Point d’entrée des extensions
Dans l’API Reactor, une extension représente l’instance installée d’un package d’extension. Une extension rend les fonctionnalités définies par un package d’extension disponibles pour une propriété. Ces fonctionnalités sont exploitées lors de la création des extensions et des composants de règle.
Une extension appartient à une seule propriété. Une propriété peut avoir de nombreuses extensions, mais pas plus d’une instance installée d’un package d’extension donné.
Prise en main
Le point d’entrée utilisé dans ce guide fait partie de lʼAPI Reactor. Avant de poursuivre, consultez le guide de prise en main pour obtenir des informations importantes sur la façon de s’authentifier auprès de l’API.
Récupération dʼune liste dʼextensions list
Vous pouvez récupérer une liste d’extensions pour une propriété en effectuant une requête GET.
Format d’API
GET properties/{PROPERTY_ID}/extensions
{PROPERTY_ID}
id
de la propriété dont vous souhaitez répertorier les extensions.created_at
dirty
display_name
enabled
name
origin_id
published
published_at
revision_number
updated_at
version
Requête
curl -X GET \
https://reactor.adobe.io/properties/PRee071cb5b7794f42b74c913e1ad2e325/extensions \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H "Content-Type: application/vnd.api+json" \
-H 'Accept: application/vnd.api+json;revision=1'
Réponse
Une réponse réussie renvoie une liste d’extensions définies sous la propriété spécifiée.
{
"data": [
{
"id": "EXd9d80c87afb6432ba823a58d3e78299b",
"type": "extensions",
"attributes": {
"created_at": "2020-12-14T17:40:21.000Z",
"deleted_at": null,
"dirty": false,
"enabled": true,
"name": "kessel-test",
"published": false,
"published_at": null,
"revision_number": 0,
"updated_at": "2020-12-14T17:40:21.000Z",
"delegate_descriptor_id": null,
"display_name": "Kessel Test",
"review_status": "unsubmitted",
"version": "1.2.0",
"settings": "{}"
},
"relationships": {
"libraries": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXd9d80c87afb6432ba823a58d3e78299b/libraries"
}
},
"revisions": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXd9d80c87afb6432ba823a58d3e78299b/revisions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXd9d80c87afb6432ba823a58d3e78299b/notes"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXd9d80c87afb6432ba823a58d3e78299b/property"
},
"data": {
"id": "PRee071cb5b7794f42b74c913e1ad2e325",
"type": "properties"
}
},
"origin": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXd9d80c87afb6432ba823a58d3e78299b/origin"
},
"data": {
"id": "EXd9d80c87afb6432ba823a58d3e78299b",
"type": "extensions"
}
},
"updated_with_extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXd9d80c87afb6432ba823a58d3e78299b/updated_with_extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
},
"extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXd9d80c87afb6432ba823a58d3e78299b/extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PRee071cb5b7794f42b74c913e1ad2e325",
"origin": "https://reactor.adobe.io/extensions/EXd9d80c87afb6432ba823a58d3e78299b",
"self": "https://reactor.adobe.io/extensions/EXd9d80c87afb6432ba823a58d3e78299b",
"extension_package": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a",
"latest_extension_package": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a"
},
"meta": {
"latest_revision_number": 1
}
}
],
"meta": {
"pagination": {
"current_page": 1,
"next_page": null,
"prev_page": null,
"total_pages": 1,
"total_count": 1
}
}
}
Recherche d’une extension lookup
Vous pouvez rechercher une extension en fournissant son identifiant dans le chemin d’accès d’une requête GET.
deleted_at
dans la balise meta
des données d’extension renvoyées.Format d’API
GET /extensions/{EXTENSION_ID}
EXTENSION_ID
id
de l’extension que vous voulez rechercher.Requête
curl -X GET \
https://reactor.adobe.io/extensions/EX2ba586f436ac48e390a1ee7e8c9a8f6e \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H "Content-Type: application/vnd.api+json" \
-H 'Accept: application/vnd.api+json;revision=1'
Réponse
Une réponse réussie renvoie les détails de l’extension.
{
"data": {
"id": "EX2ba586f436ac48e390a1ee7e8c9a8f6e",
"type": "extensions",
"attributes": {
"created_at": "2020-12-14T17:40:09.823Z",
"deleted_at": null,
"dirty": false,
"enabled": true,
"name": "kessel-test",
"published": false,
"published_at": null,
"revision_number": 0,
"updated_at": "2020-12-14T17:40:09.823Z",
"delegate_descriptor_id": null,
"display_name": "Kessel Test",
"review_status": "unsubmitted",
"version": "1.2.0",
"settings": "{}"
},
"relationships": {
"libraries": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX2ba586f436ac48e390a1ee7e8c9a8f6e/libraries"
}
},
"revisions": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX2ba586f436ac48e390a1ee7e8c9a8f6e/revisions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX2ba586f436ac48e390a1ee7e8c9a8f6e/notes"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX2ba586f436ac48e390a1ee7e8c9a8f6e/property"
},
"data": {
"id": "PR2254ac6a096c4df38508700093d3e153",
"type": "properties"
}
},
"origin": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX2ba586f436ac48e390a1ee7e8c9a8f6e/origin"
},
"data": {
"id": "EX2ba586f436ac48e390a1ee7e8c9a8f6e",
"type": "extensions"
}
},
"updated_with_extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX2ba586f436ac48e390a1ee7e8c9a8f6e/updated_with_extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
},
"extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX2ba586f436ac48e390a1ee7e8c9a8f6e/extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR2254ac6a096c4df38508700093d3e153",
"origin": "https://reactor.adobe.io/extensions/EX2ba586f436ac48e390a1ee7e8c9a8f6e",
"self": "https://reactor.adobe.io/extensions/EX2ba586f436ac48e390a1ee7e8c9a8f6e",
"extension_package": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a",
"latest_extension_package": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a"
},
"meta": {
"latest_revision_number": 1
}
}
}
Création ou mise à jour d’une extension create
Les extensions sont créées en référençant un package d’extension et en ajoutant l’extension installée à une propriété. Une fois la tâche d’installation terminée, une réponse est renvoyée, indiquant si l’extension a été installée avec succès.
Format d’API
POST /properties/{PROPERTY_ID}/extensions
PROPERTY_ID
id
de la propriété sous laquelle vous souhaitez installer l’extension.Requête
curl -X POST \
https://reactor.adobe.io/properties/PRee071cb5b7794f42b74c913e1ad2e325/extensions \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Content-Type: application/vnd.api+json' \
-d '{
"data": {
"attributes": {
"delegate_descriptor_id": "example-package::extensionConfiguration::config",
"enabled": true,
"settings": "{\"elementProperty\":\"html\",\"elementSelector\":\".target-element\"}"
},
"relationships": {
"extension_package": {
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
}
},
"type": "extensions"
}
}'
relationships.extension_package
attributes.delegate_descriptor_id
attributes.enabled
attributes.settings
Réponse
Une réponse réussie renvoie les détails de l’extension nouvellement créée.
{
"data": {
"id": "EX8ce7ced633f34bd48d33089ff8fad082",
"type": "extensions",
"attributes": {
"created_at": "2020-12-14T17:32:56.137Z",
"deleted_at": null,
"dirty": false,
"enabled": true,
"name": "kessel-test",
"published": false,
"published_at": null,
"revision_number": 0,
"updated_at": "2020-12-14T17:32:56.137Z",
"delegate_descriptor_id": "example-package::extensionConfiguration::config",
"display_name": "Kessel Test",
"review_status": "unsubmitted",
"version": "1.2.0",
"settings": "{\"elementProperty\":\"html\",\"elementSelector\":\".target-element\"}"
},
"relationships": {
"libraries": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/libraries"
}
},
"revisions": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/revisions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/notes"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/property"
},
"data": {
"id": "PRcf1f3e4c218b4caab8191fab003a8355",
"type": "properties"
}
},
"origin": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/origin"
},
"data": {
"id": "EX8ce7ced633f34bd48d33089ff8fad082",
"type": "extensions"
}
},
"updated_with_extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/updated_with_extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
},
"extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PRcf1f3e4c218b4caab8191fab003a8355",
"origin": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082",
"self": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082",
"extension_package": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a",
"latest_extension_package": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a"
},
"meta": {
"latest_revision_number": 1
}
}
}
Révision d’une extension revise
Vous pouvez réviser une extension en incluant son identifiant dans le chemin d’accès d’une requête PATCH.
Format d’API
PATCH /extensions/{EXTENSION_ID}
EXTENSION_ID
id
de l’extension que vous souhaitez réviser.Requête
Comme pour la création d’une extension, une version locale du package révisé doit être téléchargée via les données de formulaire.
curl -X PATCH \
https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Content-Type: application/vnd.api+json' \
-d '{
"data": {
"attributes": {
"enabled": false,
},
"meta": {
"action": "revise"
},
"id": "EX85509bc7baea4f8599bc44024ed3f110",
"type": "extensions"
}
}'
attributes
delegate_descriptor_id
, enabled
et settings
.meta.action
revise
lors de l’exécution d’une révision.Réponse
Une réponse réussie renvoie les détails de l’extension révisée, avec sa propriété meta.latest_revision_number
augmentée de 1.
{
"data": {
"id": "EX8ce7ced633f34bd48d33089ff8fad082",
"type": "extensions",
"attributes": {
"created_at": "2020-12-14T17:32:56.137Z",
"deleted_at": null,
"dirty": false,
"enabled": false,
"name": "kessel-test",
"published": false,
"published_at": null,
"revision_number": 0,
"updated_at": "2020-12-14T17:32:56.137Z",
"delegate_descriptor_id": "example-package::extensionConfiguration::config",
"display_name": "Kessel Test",
"review_status": "unsubmitted",
"version": "1.2.0",
"settings": "{\"elementProperty\":\"html\",\"elementSelector\":\".target-element\"}"
},
"relationships": {
"libraries": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/libraries"
}
},
"revisions": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/revisions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/notes"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/property"
},
"data": {
"id": "PRcf1f3e4c218b4caab8191fab003a8355",
"type": "properties"
}
},
"origin": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/origin"
},
"data": {
"id": "EX8ce7ced633f34bd48d33089ff8fad082",
"type": "extensions"
}
},
"updated_with_extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/updated_with_extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
},
"extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PRcf1f3e4c218b4caab8191fab003a8355",
"origin": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082",
"self": "https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082",
"extension_package": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a",
"latest_extension_package": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a"
},
"meta": {
"latest_revision_number": 2
}
}
}
Suppression d’une extension private-release
Vous pouvez supprimer une extension en incluant son identifiant dans le chemin dʼaccès dʼune requête DELETE.
Format d’API
DELETE /extensions/{EXTENSION_ID}
EXTENSION_ID
id
de l’extension que vous souhaitez supprimer.Requête
curl -X DELETE \
https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}'
Réponse
Une réponse réussie renvoie un état HTTP 204 (No Content) sans corps de réponse, indiquant que l’extension a été supprimée.
Gestion des notes pour une extension notes
Les extensions sont des ressources « remarquables », ce qui signifie que vous pouvez créer et récupérer des notes textuelles sur chaque ressource. Pour plus d’informations sur la gestion des notes pour les extensions et d’autres ressources compatibles, consultez le guide de point d’entrée des notes.
Récupération des ressources associées pour une extension related
Les appels suivants montrent comment récupérer les ressources associées pour une extension. Lors de la recherche d’une extension, ces relations sont répertoriées sous la propriété relationships
.
Pour plus d’informations sur les relations dans l’API Reactor, consultez le guide des relations.
Liste des bibliothèques associées pour une extension libraries
Vous pouvez répertorier les bibliothèques qui utilisent une extension en ajoutant /libraries
au chemin d’accès d’une requête de recherche.
Format d’API
GET /extensions/{EXTENSION_ID}/libraries
{EXTENSION_ID}
id
de l’extension dont vous souhaitez répertorier les bibliothèques.Requête
curl -X GET \
https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/libraries \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H "Content-Type: application/vnd.api+json" \
-H 'Accept: application/vnd.api+json;revision=1'
Réponse
Une réponse réussie renvoie une liste de bibliothèques qui utilisent l’extension spécifiée.
{
"data": [
{
"id": "LB62d20ad807a949e6b13b0a2c7299eb65",
"type": "libraries",
"attributes": {
"created_at": "2020-12-14T17:50:19.589Z",
"name": "My Library",
"published_at": null,
"state": "development",
"updated_at": "2020-12-14T17:50:19.589Z",
"build_required": true
},
"relationships": {
"builds": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB62d20ad807a949e6b13b0a2c7299eb65/builds"
}
},
"environment": {
"links": {
"self": "https://reactor.adobe.io/libraries/LB62d20ad807a949e6b13b0a2c7299eb65/relationships/environment"
},
"data": null
},
"data_elements": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB62d20ad807a949e6b13b0a2c7299eb65/data_elements",
"self": "https://reactor.adobe.io/libraries/LB62d20ad807a949e6b13b0a2c7299eb65/relationships/data_elements"
}
},
"extensions": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB62d20ad807a949e6b13b0a2c7299eb65/extensions",
"self": "https://reactor.adobe.io/libraries/LB62d20ad807a949e6b13b0a2c7299eb65/relationships/extensions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB62d20ad807a949e6b13b0a2c7299eb65/notes"
}
},
"rules": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB62d20ad807a949e6b13b0a2c7299eb65/rules",
"self": "https://reactor.adobe.io/libraries/LB62d20ad807a949e6b13b0a2c7299eb65/relationships/rules"
}
},
"upstream_library": {
"data": null
},
"property": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB62d20ad807a949e6b13b0a2c7299eb65/property"
},
"data": {
"id": "PR241ba9cd56324ac192de68d658f20cb0",
"type": "properties"
}
},
"last_build": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB62d20ad807a949e6b13b0a2c7299eb65/last_build"
},
"data": null
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR241ba9cd56324ac192de68d658f20cb0",
"self": "https://reactor.adobe.io/libraries/LB62d20ad807a949e6b13b0a2c7299eb65"
},
"meta": {
"build_status": null,
"build_required_detail": "No build found since last state change"
}
}
],
"meta": {
"pagination": {
"current_page": 1,
"next_page": null,
"prev_page": null,
"total_pages": 1,
"total_count": 1
}
}
}
Liste des révisions associées pour une extension revisions
Vous pouvez répertorier les précédentes révisions d’une extension en ajoutant /revisions
au chemin d’accès d’une requête de recherche.
Format d’API
GET /extensions/{EXTENSION_ID}/revisions
{EXTENSION_ID}
id
de l’extension dont vous souhaitez répertorier les révisions.Requête
curl -X GET \
https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/revisions \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H "Content-Type: application/vnd.api+json" \
-H 'Accept: application/vnd.api+json;revision=1'
Réponse
Une réponse réussie renvoie une liste de révisions pour l’extension spécifiée.
{
"data": [
{
"id": "EXbfcca9f3ce9d40318b9115159a951e09",
"type": "extensions",
"attributes": {
"created_at": "2020-12-14T17:41:09.023Z",
"deleted_at": null,
"dirty": false,
"enabled": true,
"name": "kessel-test",
"published": false,
"published_at": null,
"revision_number": 1,
"updated_at": "2020-12-14T17:41:09.023Z",
"delegate_descriptor_id": null,
"display_name": "Kessel Test",
"review_status": "unsubmitted",
"version": "1.2.0",
"settings": "{}"
},
"relationships": {
"libraries": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXbfcca9f3ce9d40318b9115159a951e09/libraries"
}
},
"revisions": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXbfcca9f3ce9d40318b9115159a951e09/revisions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXbfcca9f3ce9d40318b9115159a951e09/notes"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXbfcca9f3ce9d40318b9115159a951e09/property"
},
"data": {
"id": "PR92de152ae31e48a692142ea65c1efeb9",
"type": "properties"
}
},
"origin": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXbfcca9f3ce9d40318b9115159a951e09/origin"
},
"data": {
"id": "EXd485e07fb3d3429b997768ae40de8f02",
"type": "extensions"
}
},
"updated_with_extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXbfcca9f3ce9d40318b9115159a951e09/updated_with_extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
},
"extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXbfcca9f3ce9d40318b9115159a951e09/extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR92de152ae31e48a692142ea65c1efeb9",
"origin": "https://reactor.adobe.io/extensions/EXd485e07fb3d3429b997768ae40de8f02",
"self": "https://reactor.adobe.io/extensions/EXbfcca9f3ce9d40318b9115159a951e09",
"extension_package": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a",
"latest_extension_package": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a"
},
"meta": {
"latest_revision_number": 1
}
},
{
"id": "EXd485e07fb3d3429b997768ae40de8f02",
"type": "extensions",
"attributes": {
"created_at": "2020-12-14T17:41:09.002Z",
"deleted_at": null,
"dirty": false,
"enabled": true,
"name": "kessel-test",
"published": false,
"published_at": null,
"revision_number": 0,
"updated_at": "2020-12-14T17:41:09.002Z",
"delegate_descriptor_id": null,
"display_name": "Kessel Test",
"review_status": "unsubmitted",
"version": "1.2.0",
"settings": "{}"
},
"relationships": {
"libraries": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXd485e07fb3d3429b997768ae40de8f02/libraries"
}
},
"revisions": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXd485e07fb3d3429b997768ae40de8f02/revisions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXd485e07fb3d3429b997768ae40de8f02/notes"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXd485e07fb3d3429b997768ae40de8f02/property"
},
"data": {
"id": "PR92de152ae31e48a692142ea65c1efeb9",
"type": "properties"
}
},
"origin": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXd485e07fb3d3429b997768ae40de8f02/origin"
},
"data": {
"id": "EXd485e07fb3d3429b997768ae40de8f02",
"type": "extensions"
}
},
"updated_with_extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXd485e07fb3d3429b997768ae40de8f02/updated_with_extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
},
"extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXd485e07fb3d3429b997768ae40de8f02/extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR92de152ae31e48a692142ea65c1efeb9",
"origin": "https://reactor.adobe.io/extensions/EXd485e07fb3d3429b997768ae40de8f02",
"self": "https://reactor.adobe.io/extensions/EXd485e07fb3d3429b997768ae40de8f02",
"extension_package": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a",
"latest_extension_package": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a"
},
"meta": {
"latest_revision_number": 1
}
}
],
"meta": {
"pagination": {
"current_page": 1,
"next_page": null,
"prev_page": null,
"total_pages": 1,
"total_count": 2
}
}
}
Recherche du package d’extension associé pour une extension extension
Vous pouvez rechercher le package d’extension sur lequel une extension est basée en ajoutant /extension_package
au chemin d’accès d’une requête GET.
Format d’API
GET /extensions/{EXTENSION_ID}/extension_package
{EXTENSION_ID}
id
de l’extension dont vous souhaitez rechercher l’extension.Requête
curl -X GET \
https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/extension \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H "Content-Type: application/vnd.api+json" \
-H 'Accept: application/vnd.api+json;revision=1'
Réponse
Une réponse réussie renvoie les détails du package d’extension sur lequel l’extension spécifiée est basée. La réponse ci-dessous a été réduite pour gagner de l’espace.
{
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages",
"attributes": {
"actions": [
{
"id": "kessel-test::actions::custom-code",
"name": "custom-code",
"schema": {
"type": "object",
"oneOf": [
{
"required": [
"language",
"source"
],
"properties": {
"global": {
"type": "boolean"
},
"source": {
"type": "string",
"minLength": 1
},
"language": {
"enum": [
"javascript"
]
}
},
"additionalProperties": false
},
{
"required": [
"language",
"source"
],
"properties": {
"source": {
"type": "string",
"minLength": 1
},
"language": {
"enum": [
"html"
]
}
},
"additionalProperties": false
}
],
"$schema": "http://json-schema.org/draft-04/schema#"
},
"libPath": "src/lib/actions/customCode.js",
"viewPath": "actions/customCode.html",
"displayName": "Custom Code"
}
],
"author": {
"url": "http://adobe.com",
"name": "Adobe Systems",
"email": "reactor@adobe.com"
},
"availability": "private",
"cdn_path": "https://assets.adobedtm.com/staging/extensions/EP75db2452065b44e2b8a38ca883ce369a",
"conditions": [
{
"id": "kessel-test::conditions::browser",
"name": "browser",
"schema": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"required": [
"browsers"
],
"properties": {
"browsers": {
"type": "array",
"items": {
"enum": [
"Chrome",
"Firefox",
"IE",
"Edge",
"Safari",
"Mobile Safari"
],
"type": "string"
}
}
},
"additionalProperties": false
},
"libPath": "src/lib/conditions/browser.js",
"viewPath": "conditions/browser.html",
"displayName": "Browser",
"categoryName": "Technology"
}
],
"configuration": null,
"created_at": "2020-11-09T17:51:59.433Z",
"data_elements": [
{
"id": "kessel-test::dataElements::cookie",
"name": "cookie",
"schema": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"minLength": 1
}
},
"additionalProperties": false
},
"libPath": "src/lib/dataElements/cookie.js",
"viewPath": "dataElements/cookie.html",
"displayName": "Cookie"
}
],
"description": "Provides default event, condition, and data element types available to all tags users.",
"discontinued": false,
"display_name": "Kessel Test",
"events": [
{
"id": "kessel-test::events::blur",
"name": "blur",
"schema": {
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema#",
"properties": {
"bubbleStop": {
"type": "boolean"
},
"elementSelector": {
"type": "string",
"minLength": 1
},
"elementProperties": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"value"
],
"properties": {
"name": {
"type": "string",
"minLength": 1
},
"value": {
"type": "string"
},
"valueIsRegex": {
"type": "boolean"
}
},
"additionalProperties": false
}
},
"bubbleFireIfParent": {
"type": "boolean"
},
"bubbleFireIfChildFired": {
"type": "boolean"
}
},
"additionalProperties": false
},
"libPath": "src/lib/events/blur.js",
"viewPath": "events/blur.html",
"displayName": "Blur",
"categoryName": "Form"
}
],
"exchange_url": null,
"hosted_lib_files": null,
"icon_path": "resources/icons/core.svg",
"main": null,
"name": "kessel-test",
"owner_org_id": "08364A825824E04F0A494115@AdobeOrg",
"resources": null,
"shared_modules": null,
"status": "succeeded",
"platform": "web",
"updated_at": "2020-11-09T17:54:01.487Z",
"version": "1.2.0",
"view_base_path": "dist/"
},
"links": {
"self": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a"
}
}
}
Recherche de l’origine associée pour une extension origin
Vous pouvez rechercher l’origine d’une extension en ajoutant /origin
au chemin d’accès d’une requête GET. L’origine d’une extension est la révision précédente qui a été mise à jour pour créer la révision actuelle.
Format d’API
GET /extensions/{EXTENSION_ID}/origin
{EXTENSION_ID}
id
de l’extension dont vous souhaitez rechercher l’origine.Requête
curl -X GET \
https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/origin \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H "Content-Type: application/vnd.api+json" \
-H 'Accept: application/vnd.api+json;revision=1'
Réponse
Une réponse réussie renvoie les détails de l’origine de l’extension spécifiée.
{
"data": {
"id": "EX524f2cd22ae4490eaf73cc9214eb217d",
"type": "extensions",
"attributes": {
"created_at": "2020-12-14T17:41:21.397Z",
"deleted_at": null,
"dirty": false,
"enabled": true,
"name": "kessel-test",
"published": false,
"published_at": null,
"revision_number": 0,
"updated_at": "2020-12-14T17:41:21.397Z",
"delegate_descriptor_id": null,
"display_name": "Kessel Test",
"review_status": "unsubmitted",
"version": "1.2.0",
"settings": "{}"
},
"relationships": {
"libraries": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX524f2cd22ae4490eaf73cc9214eb217d/libraries"
}
},
"revisions": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX524f2cd22ae4490eaf73cc9214eb217d/revisions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX524f2cd22ae4490eaf73cc9214eb217d/notes"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX524f2cd22ae4490eaf73cc9214eb217d/property"
},
"data": {
"id": "PR88d6b8ee423b44a49de1dee26391e25b",
"type": "properties"
}
},
"origin": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX524f2cd22ae4490eaf73cc9214eb217d/origin"
},
"data": {
"id": "EX524f2cd22ae4490eaf73cc9214eb217d",
"type": "extensions"
}
},
"updated_with_extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX524f2cd22ae4490eaf73cc9214eb217d/updated_with_extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
},
"extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EX524f2cd22ae4490eaf73cc9214eb217d/extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR88d6b8ee423b44a49de1dee26391e25b",
"origin": "https://reactor.adobe.io/extensions/EX524f2cd22ae4490eaf73cc9214eb217d",
"self": "https://reactor.adobe.io/extensions/EX524f2cd22ae4490eaf73cc9214eb217d",
"extension_package": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a",
"latest_extension_package": "https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a"
},
"meta": {
"latest_revision_number": 1
}
}
}
Recherche de la propriété associée pour une extension property
Vous pouvez rechercher la propriété détentrice d’une extension en ajoutant /property
au chemin d’accès d’une requête GET.
Format d’API
GET /extensions/{EXTENSION_ID}/property
{EXTENSION_ID}
id
de l’extension dont vous souhaitez rechercher la propriété.Requête
curl -X GET \
https://reactor.adobe.io/extensions/EX8ce7ced633f34bd48d33089ff8fad082/property \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H "Content-Type: application/vnd.api+json" \
-H 'Accept: application/vnd.api+json;revision=1'
Réponse
Une réponse réussie renvoie les détails de la propriété détentrice de l’extension spécifiée.
{
"data": {
"id": "PR96fd3675be144ddc8c4540d79430355a",
"type": "properties",
"attributes": {
"created_at": "2020-12-14T17:53:06.993Z",
"enabled": true,
"name": "Kessel Example Property",
"updated_at": "2020-12-14T17:53:06.993Z",
"platform": "web",
"development": false,
"token": "bf75a40b3c34",
"domains": [
"example.com"
],
"undefined_vars_return_empty": false,
"rule_component_sequencing_enabled": false
},
"relationships": {
"company": {
"links": {
"related": "https://reactor.adobe.io/properties/PR96fd3675be144ddc8c4540d79430355a/company"
},
"data": {
"id": "CO2bf094214ffd4785bb4bcf88c952a7c1",
"type": "companies"
}
},
"callbacks": {
"links": {
"related": "https://reactor.adobe.io/properties/PR96fd3675be144ddc8c4540d79430355a/callbacks"
}
},
"hosts": {
"links": {
"related": "https://reactor.adobe.io/properties/PR96fd3675be144ddc8c4540d79430355a/hosts"
}
},
"environments": {
"links": {
"related": "https://reactor.adobe.io/properties/PR96fd3675be144ddc8c4540d79430355a/environments"
}
},
"libraries": {
"links": {
"related": "https://reactor.adobe.io/properties/PR96fd3675be144ddc8c4540d79430355a/libraries"
}
},
"data_elements": {
"links": {
"related": "https://reactor.adobe.io/properties/PR96fd3675be144ddc8c4540d79430355a/data_elements"
}
},
"extensions": {
"links": {
"related": "https://reactor.adobe.io/properties/PR96fd3675be144ddc8c4540d79430355a/extensions"
}
},
"rules": {
"links": {
"related": "https://reactor.adobe.io/properties/PR96fd3675be144ddc8c4540d79430355a/rules"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/properties/PR96fd3675be144ddc8c4540d79430355a/notes"
}
}
},
"links": {
"company": "https://reactor.adobe.io/companies/CO2bf094214ffd4785bb4bcf88c952a7c1",
"data_elements": "https://reactor.adobe.io/properties/PR96fd3675be144ddc8c4540d79430355a/data_elements",
"environments": "https://reactor.adobe.io/properties/PR96fd3675be144ddc8c4540d79430355a/environments",
"extensions": "https://reactor.adobe.io/properties/PR96fd3675be144ddc8c4540d79430355a/extensions",
"rules": "https://reactor.adobe.io/properties/PR96fd3675be144ddc8c4540d79430355a/rules",
"self": "https://reactor.adobe.io/properties/PR96fd3675be144ddc8c4540d79430355a"
},
"meta": {
"rights": [
"approve",
"develop",
"manage_environments",
"manage_extensions",
"publish"
]
}
}
}