Endpoint dos pacotes de extensão
/extension_packages
ocorre em fluxo, à medida que os recursos são adicionados, removidos e retrabalhados.Um pacote de extensão representa uma extensão criada por um desenvolvedor de extensões. Um pacote de extensão define recursos adicionais que podem ser disponibilizados para usuários de tags. Normalmente, esses recursos vêm na forma de componentes de regra (eventos, condições e ações) e elementos de dados, mas também podem incluir módulos principais e compartilhados.
Os pacotes de extensão são exibidos no catálogo de extensões na interface da Coleção de dados e na interface do Adobe Experience Platform para que os usuários os instalem. A adição de um pacote de extensão a uma propriedade é realizada por meio da criação de uma extensão com um link para o pacote de extensão.
Um pacote de extensão pertence à empresa do desenvolvedor que o criou.
Introdução
O endpoint usado neste manual faz parte da API do Reactor. Antes de continuar, consulte o Guia de introdução para obter informações importantes sobre como realizar a autenticação na API.
Além de entender como fazer chamadas para a API do Reator, também é importante entender como os atributos status
e availability
de um pacote de extensão afetam quais ações você pode executar nele. Eles são explicados nas seções abaixo.
Status
Os pacotes de extensão têm três status possíveis: pending
, succeeded
e failed
.
pending
status
é definido como pending
. Isso indica que o sistema recebeu as informações do pacote de extensão e iniciará o processamento. Pacotes de extensão com status pending
não estão disponíveis para uso.succeeded
succeeded
se ele concluir com êxito o processamento.failed
failed
se ele não concluir o processamento com êxito. Um pacote de extensão com status failed
pode ser atualizado até o processamento ser bem-sucedido. Pacotes de extensão com status failed
não estão disponíveis para uso.Disponibilidade
Há níveis de disponibilidade para um pacote de extensão: development
, private
e public
.
development
development
só está visível e disponível na empresa que o possui. Além disso, ele só pode ser usado em propriedades configuradas para desenvolvimento de extensão.private
private
só é visível para a empresa que o possui e só pode ser instalado em propriedades que a empresa possua.public
public
está visível e disponível para todas as empresas e propriedades.availability
é definido como development
. Após a conclusão do teste, você pode fazer a transição do pacote de extensão para private
ou public
.Recuperar uma lista de pacotes de extensão list
É possível recuperar uma lista de pacotes de extensão fazendo uma solicitação GET para /extension_packages
.
Formato da API
GET /extension_packages
archive
created_at
name
stage
token
updated_at
Solicitação
curl -X GET \
https://reactor.adobe.io/extension_packages \
-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'
Resposta
Uma resposta bem-sucedida retorna uma lista de pacotes de extensão.
{
"data": [
{
"id": "EP6860e2485de2413ea9b295d6f5321ad3",
"type": "extension_packages",
"attributes": {
"actions": [
],
"author": {
"url": "http://adobe.com",
"name": "Adobe Systems",
"email": "reactor@adobe.com"
},
"availability": "development",
"cdn_path": "https://assets.adobedtm.com/staging/extensions/EP6860e2485de2413ea9b295d6f5321ad3",
"conditions": [
],
"configuration": null,
"created_at": "2020-11-09T17:58:32.694Z",
"data_elements": [
],
"description": "Provides nothing.",
"discontinued": false,
"display_name": "Kessel Template Test",
"events": [
],
"exchange_url": null,
"hosted_lib_files": null,
"icon_path": "resources/icons/core.svg",
"main": null,
"name": "test-1604944710",
"owner_org_id": "08364A825824E04F0A494115@AdobeOrg",
"resources": null,
"shared_modules": null,
"status": "succeeded",
"platform": "web",
"updated_at": "2020-11-09T17:58:35.754Z",
"version": "1.0.0",
"view_base_path": "dist/"
},
"links": {
"self": "https://reactor.adobe.io/extension_packages/EP6860e2485de2413ea9b295d6f5321ad3"
}
},
{
"id": "EP1b173c8316954e0986e5a405b4e715e3",
"type": "extension_packages",
"attributes": {
"actions": [
],
"author": {
"url": "http://adobe.com",
"name": "Adobe Systems",
"email": "reactor@adobe.com"
},
"availability": "development",
"cdn_path": "https://assets.adobedtm.com/staging/extensions/EP1b173c8316954e0986e5a405b4e715e3",
"conditions": [
],
"configuration": null,
"created_at": "2020-11-09T17:58:34.632Z",
"data_elements": [
],
"description": "Provides nothing.",
"discontinued": false,
"display_name": "Kessel Template Test",
"events": [
],
"exchange_url": null,
"hosted_lib_files": null,
"icon_path": "resources/icons/core.svg",
"main": null,
"name": "test-1604944712",
"owner_org_id": "08364A825824E04F0A494115@AdobeOrg",
"resources": null,
"shared_modules": null,
"status": "succeeded",
"platform": "web",
"updated_at": "2020-11-09T17:58:36.655Z",
"version": "1.0.0",
"view_base_path": "dist/"
},
"links": {
"self": "https://reactor.adobe.io/extension_packages/EP1b173c8316954e0986e5a405b4e715e3"
}
},
{
"id": "EPb8eca81769a64af3892af5202a57ce15",
"type": "extension_packages",
"attributes": {
"actions": [
],
"author": {
"url": "http://adobe.com",
"name": "Adobe Systems",
"email": "reactor@adobe.com"
},
"availability": "development",
"cdn_path": "https://assets.adobedtm.com/staging/extensions/EPb8eca81769a64af3892af5202a57ce15",
"conditions": [
],
"configuration": null,
"created_at": "2020-11-09T18:32:29.271Z",
"data_elements": [
],
"description": "Provides nothing.",
"discontinued": false,
"display_name": "Kessel Template Test",
"events": [
],
"exchange_url": null,
"hosted_lib_files": null,
"icon_path": "resources/icons/core.svg",
"main": null,
"name": "test-1604946740",
"owner_org_id": "08364A825824E04F0A494115@AdobeOrg",
"resources": null,
"shared_modules": null,
"status": "succeeded",
"platform": "web",
"updated_at": "2020-11-09T18:32:43.710Z",
"version": "1.0.0",
"view_base_path": "dist/"
},
"links": {
"self": "https://reactor.adobe.io/extension_packages/EPb8eca81769a64af3892af5202a57ce15"
}
}
],
"meta": {
"pagination": {
"current_page": 1,
"next_page": null,
"prev_page": null,
"total_pages": 1,
"total_count": 3
}
}
}
Pesquisar um pacote de extensão lookup
É possível pesquisar um pacote de extensão informando a respectiva ID no caminho de uma solicitação GET.
Formato da API
GET /extension_packages/{EXTENSION_PACKAGE_ID}
EXTENSION_PACKAGE_ID
id
do pacote de extensão que você deseja consultar.Solicitação
curl -X GET \
https://reactor.adobe.io/extension_packages/EP75db2452065b44e2b8a38ca883ce369a \
-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'
Resposta
Uma resposta bem-sucedida retorna os detalhes do pacote de extensão, incluindo seus recursos delegados, como actions
, conditions
, data_elements
, entre outros. O exemplo de resposta a seguir foi truncado por questões de espaço.
{
"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"
}
}
}
Criar um pacote de extensão create
Os pacotes de extensão são criados usando uma ferramenta de andaime Node.js e salvos em seu computador local antes de serem enviados à API do Reactor. Para obter mais informações sobre como configurar um pacote de extensão, consulte o manual sobre introdução ao desenvolvimento de extensões.
Depois de criar o arquivo de pacote de extensão, você pode enviá-lo para a API do Reator por meio de uma solicitação POST.
Formato da API
POST /extension_packages
Solicitação
A solicitação a seguir cria um novo pacote de extensão. O caminho local para o arquivo de pacote que está sendo carregado é referenciado como dados de formulário (package
). Portanto, esse endpoint requer um cabeçalho Content-Type
de multipart/form-data
.
curl -X POST \
https://reactor.adobe.io/extension_packages \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Content-Type: multipart/form-data' \
-F 'package=@"/Users/temp/extension-package.zip"'
Resposta
Uma resposta bem-sucedida retorna os detalhes do pacote de extensão recém-criado.
{
"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"
}
}
}
Atualizar um pacote de extensão update
Você pode atualizar um pacote de extensão incluindo a respectiva ID no caminho de uma solicitação PATCH.
Formato da API
PATCH /extension_packages/{EXTENSION_PACKAGE_ID}
EXTENSION_PACKAGE_ID
id
do pacote de extensão que você deseja atualizar.Solicitação
Assim como na criação de um pacote de extensão, uma versão local do pacote atualizado deve ser carregada por meio de dados de formulário.
curl -X PATCH \
https://reactor.adobe.io/extension_packages/EP10bb503178694d73bc0cd84387b82172 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Content-Type: multipart/form-data' \
-F 'package=@"/Users/temp/extension-package.zip"'
Resposta
Uma resposta bem-sucedida retorna os detalhes do pacote de extensão atualizado.
{
"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"
}
}
}
Liberar um pacote de extensão de forma privada private-release
Depois de concluir o teste do pacote de extensão, você pode liberá-lo de forma privada. Isso o torna disponível para qualquer propriedade na empresa.
Depois de liberá-lo de forma privada, é possível iniciar o processo de liberação pública preenchendo o formulário de solicitação de liberação pública.
Formato da API
PATCH /extension_packages/{EXTENSION_PACKAGE_ID}
EXTENSION_PACKAGE_ID
id
do pacote de extensão que você deseja liberar de forma privada.Solicitação
Uma liberação privada é realizada mediante o fornecimento de um action
com um valor release_private
no meta
dos dados da solicitação.
curl -X PATCH \
https://reactor.adobe.io/extension_packages/EP10bb503178694d73bc0cd84387b82172 \
-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": {
"meta": {
"action": "release_private"
},
"id": "EP27e9323eb585411fae6086fc78a3b70b",
"type": "extension_packages"
}
}'
Resposta
Uma resposta bem-sucedida retorna os detalhes do pacote de extensão.
{
"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"
}
}
}
Descontinuar um pacote de extensão discontinue
É possível descontinuar um pacote de extensão definindo seu atributo discontinued
como true
por meio de uma solicitação PATCH.
Formato da API
PATCH /extension_packages/{EXTENSION_PACKAGE_ID}
EXTENSION_PACKAGE_ID
id
do pacote de extensão que você deseja descontinuar.Solicitação
Uma liberação privada é realizada mediante o fornecimento de um action
com um valor release_private
no meta
dos dados da solicitação.
curl -X PATCH \
https://reactor.adobe.io/extension_packages/EP10bb503178694d73bc0cd84387b82172 \
-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": {
"discontinued": true
},
"id": "EP5705a5d99aba406692e0ac666fcab160",
"type": "extension_packages"
}
}'
Resposta
Uma resposta bem-sucedida retorna os detalhes do pacote de extensão.
{
"data": {
"id": "EP5705a5d99aba406692e0ac666fcab160",
"type": "extension_packages",
"attributes": {
"actions": [
],
"author": {
"url": "http://adobe.com",
"name": "Adobe Systems",
"email": "reactor@adobe.com"
},
"availability": "private",
"cdn_path": "https://assets.adobedtm.com/staging/extensions/EP5705a5d99aba406692e0ac666fcab160",
"conditions": [
],
"configuration": null,
"created_at": "2020-12-14T17:39:36.932Z",
"data_elements": [
],
"description": "Provides nothing.",
"discontinued": true,
"display_name": "Kessel Template Test",
"events": [
],
"exchange_url": null,
"hosted_lib_files": null,
"icon_path": "resources/icons/core.svg",
"main": null,
"name": "test-1607967575",
"owner_org_id": "08364A825824E04F0A494115@AdobeOrg",
"resources": null,
"shared_modules": null,
"status": "succeeded",
"platform": "web",
"updated_at": "2020-12-14T17:39:43.883Z",
"version": "1.0.0",
"view_base_path": "dist/"
},
"links": {
"self": "https://reactor.adobe.io/extension_packages/EP5705a5d99aba406692e0ac666fcab160"
}
}
}
Listar as versões de um pacote de extensão
Você pode listar as versões de um pacote de extensão acrescentando /versions
ao caminho de uma solicitação de pesquisa.
Formato da API
GET /extension_packages/{EXTENSION_PACKAGE_ID}/versions
EXTENSION_PACKAGE_ID
id
do pacote de extensão cujas versões você deseja listar.Solicitação
curl -X GET \
https://reactor.adobe.io/extension_packages/EP10bb503178694d73bc0cd84387b82172/versions \
-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'
Resposta
Uma resposta bem-sucedida retorna uma matriz de versões anteriores do pacote de extensão. Um exemplo de resposta foi omitido por razões de espaço.