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é.
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.
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
Paramètre | Description |
---|---|
{PROPERTY_ID} |
id de la propriété dont vous souhaitez répertorier les extensions. |
À l’aide des paramètres de requête, les extensions répertoriées peuvent être filtrées en fonction des attributs suivants :
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
}
}
}
Vous pouvez rechercher une extension en fournissant son identifiant dans le chemin d’accès d’une requête GET.
Lorsque des extensions sont supprimées, elles sont marquées comme supprimées dans le système, mais ne sont pas réellement supprimées. Il est donc possible de récupérer une extension supprimée. Les extensions supprimées peuvent être identifiées par la présence d’une propriété deleted_at
dans la balise meta
des données d’extension renvoyées.
Format d’API
GET /extensions/{EXTENSION_ID}
Paramètre | Description |
---|---|
EXTENSION_ID |
Le 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
}
}
}
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
Paramètre | Description |
---|---|
PROPERTY_ID |
Le 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"
}
}'
Propriété | Description |
---|---|
relationships.extension_package |
(Obligatoire) Objet faisant référence à l’identifiant du package d’extension en cours d’installation. |
attributes.delegate_descriptor_id |
Si votre extension requiert des paramètres personnalisés, elle requiert alors également un ID de descripteur de délégué. Pour plus d’informations, consultez le guide sur les identifiants de descripteur délégué. |
attributes.enabled |
Valeur booléenne indiquant si l’extension est activée. |
attributes.settings |
Un objet JSON de paramétrage représenté sous la forme d’une chaîne. |
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
}
}
}
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}
Paramètre | Description |
---|---|
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"
}
}'
Propriété | Description |
---|---|
attributes |
Attributs que vous souhaitez réviser. Pour les extensions, vous pouvez réviser leurs attributs delegate_descriptor_id , enabled et settings . |
meta.action |
Doit être inclus avec une valeur de 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
}
}
}
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}
Paramètre | Description |
---|---|
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.
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.
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.
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
Paramètre | Description |
---|---|
{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
}
}
}
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
Paramètre | Description |
---|---|
{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
}
}
}
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
Paramètre | Description |
---|---|
{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"
}
}
}
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
Paramètre | Description |
---|---|
{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
}
}
}
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
Paramètre | Description |
---|---|
{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"
]
}
}
}