Extremo de bibliotecas
Una biblioteca es una colección de recursos de etiquetas (extensiones, reglas y elementos de datos) que representan el comportamiento deseado de una propiedad. El extremo /libraries
de la API de Reactor le permite administrar de forma programada las bibliotecas dentro de las propiedades de etiquetas.
Una biblioteca pertenece exactamente a una propiedad. Una propiedad puede tener muchas bibliotecas.
Primeros pasos
El extremo utilizado en esta guía forma parte de la API de Reactor. Antes de continuar, consulte la guía de introducción para obtener información importante sobre cómo autenticarse en la API.
Antes de trabajar con bibliotecas en la API de Reactor, es importante comprender las funciones que desempeñan el estado y los entornos de la biblioteca al determinar qué acciones se pueden realizar en una biblioteca en particular. Consulte la guía del flujo de publicación de la biblioteca para obtener más información.
Recuperar una lista de bibliotecas list
Puede recuperar una lista de bibliotecas para una propiedad incluyendo el ID de la propiedad en la ruta de una petición GET.
Formato de API
GET /properties/{PROPERTY_ID}/libraries
PROPERTY_ID
id
de la propiedad que posee las bibliotecas.created_at
name
published_at
stale
state
updated_at
Solicitud
curl -X GET \
https://reactor.adobe.io/properties/PR4bc17fb09ed845b1acfb0f6600a1f3c0/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'
Respuesta
Una respuesta correcta devuelve una lista de bibliotecas para la propiedad especificada.
{
"data": [
{
"id": "LBb174d60bdbd34f87a2e9466fadaacae0",
"type": "libraries",
"attributes": {
"created_at": "2020-12-14T17:44:10.776Z",
"name": "My Library",
"published_at": null,
"state": "development",
"updated_at": "2020-12-14T17:44:10.776Z",
"build_required": true
},
"relationships": {
"builds": {
"links": {
"related": "https://reactor.adobe.io/libraries/LBb174d60bdbd34f87a2e9466fadaacae0/builds"
}
},
"environment": {
"links": {
"self": "https://reactor.adobe.io/libraries/LBb174d60bdbd34f87a2e9466fadaacae0/relationships/environment"
},
"data": null
},
"data_elements": {
"links": {
"related": "https://reactor.adobe.io/libraries/LBb174d60bdbd34f87a2e9466fadaacae0/data_elements",
"self": "https://reactor.adobe.io/libraries/LBb174d60bdbd34f87a2e9466fadaacae0/relationships/data_elements"
}
},
"extensions": {
"links": {
"related": "https://reactor.adobe.io/libraries/LBb174d60bdbd34f87a2e9466fadaacae0/extensions",
"self": "https://reactor.adobe.io/libraries/LBb174d60bdbd34f87a2e9466fadaacae0/relationships/extensions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/libraries/LBb174d60bdbd34f87a2e9466fadaacae0/notes"
}
},
"rules": {
"links": {
"related": "https://reactor.adobe.io/libraries/LBb174d60bdbd34f87a2e9466fadaacae0/rules",
"self": "https://reactor.adobe.io/libraries/LBb174d60bdbd34f87a2e9466fadaacae0/relationships/rules"
}
},
"upstream_library": {
"data": null
},
"property": {
"links": {
"related": "https://reactor.adobe.io/libraries/LBb174d60bdbd34f87a2e9466fadaacae0/property"
},
"data": {
"id": "PR4bc17fb09ed845b1acfb0f6600a1f3c0",
"type": "properties"
}
},
"last_build": {
"links": {
"related": "https://reactor.adobe.io/libraries/LBb174d60bdbd34f87a2e9466fadaacae0/last_build"
},
"data": null
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR4bc17fb09ed845b1acfb0f6600a1f3c0",
"self": "https://reactor.adobe.io/libraries/LBb174d60bdbd34f87a2e9466fadaacae0"
},
"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
}
}
}
Buscar una biblioteca lookup
Puede buscar una biblioteca proporcionando su ID en la ruta de una petición GET.
Formato de API
GET /libraries/{LIBRARY_ID}
LIBRARY_ID
id
de la biblioteca que desea buscar.Solicitud
curl -X GET \
https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84 \
-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'
Respuesta
Una respuesta correcta devuelve los detalles de la biblioteca.
{
"data": {
"id": "LB5862ee2dc21b4646a5536c8d6edb0c84",
"type": "libraries",
"attributes": {
"created_at": "2020-12-14T17:44:00.476Z",
"name": "My Library",
"published_at": null,
"state": "development",
"updated_at": "2020-12-14T17:44:00.476Z",
"build_required": true
},
"relationships": {
"builds": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/builds"
}
},
"environment": {
"links": {
"self": "https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/relationships/environment"
},
"data": null
},
"data_elements": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/data_elements",
"self": "https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/relationships/data_elements"
}
},
"extensions": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/extensions",
"self": "https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/relationships/extensions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/notes"
}
},
"rules": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/rules",
"self": "https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/relationships/rules"
}
},
"upstream_library": {
"data": null
},
"property": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/property"
},
"data": {
"id": "PRc90084c615844db58201d4e70d47b8bf",
"type": "properties"
}
},
"last_build": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/last_build"
},
"data": null
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PRc90084c615844db58201d4e70d47b8bf",
"self": "https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84"
},
"meta": {
"build_status": null,
"build_required_detail": "No build found since last state change"
}
}
}
Crear una biblioteca. create
Puede crear una nueva biblioteca realizando una petición POST.
Formato de API
POST /properties/{PROPERTY_ID}/libraries
PROPERTY_ID
id
de la propiedad en la que está definiendo la biblioteca.Solicitud
La siguiente solicitud crea una nueva biblioteca para la propiedad especificada. Al crear por primera vez una biblioteca, solo se puede configurar su atributo name
. Para agregar elementos de datos, extensiones y reglas a la biblioteca, debe crear relaciones. Consulte la sección sobre administración de recursos de biblioteca para obtener más información.
curl -X POST \
https://reactor.adobe.io/properties/PR97d92a379a5f48758947cdf44f607a0d/libraries \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Content-Type: application/json' \
-d '{
"data": {
"attributes": {
"name": "My Library"
},
"type": "libraries"
}
}'
attributes.name
type
libraries
.Respuesta
Una respuesta correcta devolverá los detalles de la biblioteca recién creada.
{
"data": {
"id": "DE8667bc64ceba4b599e8458ea4ab58b8f",
"type": "libraries",
"attributes": {
"created_at": "2020-12-14T17:33:21.774Z",
"deleted_at": null,
"dirty": true,
"enabled": true,
"name": "My library 2020-12-14 17:33:21 +0000",
"published": false,
"published_at": null,
"revision_number": 0,
"updated_at": "2020-12-14T17:33:21.774Z",
"clean_text": false,
"default_value": null,
"delegate_descriptor_id": "kessel-test::dataElements::dom-attribute",
"force_lower_case": false,
"review_status": "unsubmitted",
"storage_duration": null,
"settings": "{\"elementSelector\":\".target-element\",\"elementProperty\":\"html\"}"
},
"relationships": {
"libraries": {
"links": {
"related": "https://reactor.adobe.io/libraries/DE8667bc64ceba4b599e8458ea4ab58b8f/libraries"
}
},
"revisions": {
"links": {
"related": "https://reactor.adobe.io/libraries/DE8667bc64ceba4b599e8458ea4ab58b8f/revisions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/libraries/DE8667bc64ceba4b599e8458ea4ab58b8f/notes"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/libraries/DE8667bc64ceba4b599e8458ea4ab58b8f/property"
},
"data": {
"id": "PR05ad70a8078f44c1a229ecf0da2802f2",
"type": "properties"
}
},
"origin": {
"links": {
"related": "https://reactor.adobe.io/libraries/DE8667bc64ceba4b599e8458ea4ab58b8f/origin"
},
"data": {
"id": "DE8667bc64ceba4b599e8458ea4ab58b8f",
"type": "libraries"
}
},
"extension": {
"links": {
"related": "https://reactor.adobe.io/libraries/DE8667bc64ceba4b599e8458ea4ab58b8f/extension"
},
"data": {
"id": "EX28788723a8e24a2f927fce1b55eb7ffc",
"type": "extensions"
}
},
"updated_with_extension_package": {
"links": {
"related": "https://reactor.adobe.io/libraries/DE8667bc64ceba4b599e8458ea4ab58b8f/updated_with_extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
},
"updated_with_extension": {
"links": {
"related": "https://reactor.adobe.io/libraries/DE8667bc64ceba4b599e8458ea4ab58b8f/updated_with_extension"
},
"data": {
"id": "EXd6bf04b143e64fe0ae7efe55a6655fa9",
"type": "extensions"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR05ad70a8078f44c1a229ecf0da2802f2",
"origin": "https://reactor.adobe.io/libraries/DE8667bc64ceba4b599e8458ea4ab58b8f",
"self": "https://reactor.adobe.io/libraries/DE8667bc64ceba4b599e8458ea4ab58b8f",
"extension": "https://reactor.adobe.io/extensions/EX28788723a8e24a2f927fce1b55eb7ffc"
},
"meta": {
"latest_revision_number": 0
}
}
}
Administrar recursos de una biblioteca resources
Los elementos de datos, las extensiones, las reglas y el entorno asociados a una biblioteca se establecen mediante relaciones. Las secciones siguientes tratan sobre cómo administrar estas relaciones a través de llamadas API.
Añadir recursos a una biblioteca add-resources
Puede añadir recursos a una biblioteca anexando /relationships
a la ruta de una petición POST, seguido del tipo de recurso.
Formato de API
POST /libraries/{LIBRARY_ID}/relationships/{RESOURCE_TYPE}
{LIBRARY_ID}
{RESOURCE_TYPE}
Tipo de recurso que está agregando a la biblioteca. Se aceptan los siguientes valores:
data_elements
extensions
rules
Solicitud
La siguiente solicitud agrega dos elementos de datos a una biblioteca.
curl -X POST \
https://reactor.adobe.io/libraries/LBdd2f55e9c3bb4ce0a582a0b0c586a6f5/relationships/data_elements \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/json' \
-d '{
"data": [
{
"id": "DEce7fdee2afe44efeb4d974247d1e8dbe",
"type": "data_elements"
},
{
"id": "DE8097636264104451ac3a18c95d5ff833",
"type": "data_elements"
}
]
}'
id
type
Respuesta
Una respuesta correcta devuelve los detalles de las relaciones agregadas. Al realizar una solicitud de búsqueda para la biblioteca, se muestran las relaciones añadidas en la propiedad relationships
.
{
"data": [
{
"type": "data_elements",
"id": "DEce7fdee2afe44efeb4d974247d1e8dbe"
},
{
"id": "DE8097636264104451ac3a18c95d5ff833",
"type": "data_elements"
}
],
"links": {
"related": "https://reactor.adobe.io/libraries/LB09eca17e012842b49466506f419283a7/data_elements",
"self": "https://reactor.adobe.io/libraries/LB09eca17e012842b49466506f419283a7/relationships/data_elements"
}
}
Reemplazo de recursos de una biblioteca replace-resources
Puede reemplazar todos los recursos existentes de un tipo determinado para una biblioteca anexando /relationships
a la ruta de una petición PATCH, seguido del tipo de recurso que está reemplazando.
Formato de API
PATCH /libraries/{LIBRARY_ID}/relationships/{RESOURCE_TYPE}
{LIBRARY_ID}
{RESOURCE_TYPE}
Tipo de recurso que va a reemplazar. Se aceptan los siguientes valores:
data_elements
extensions
rules
Solicitud
La siguiente solicitud reemplaza las extensiones de una biblioteca con las proporcionadas en la matriz data
.
curl -X PATCH \
https://reactor.adobe.io/libraries/LBdd2f55e9c3bb4ce0a582a0b0c586a6f5/relationships/environment \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/json' \
-d '{
"data": [
{
"id": "EX58312732fd0f43f98037d765ef96c4cd",
"type": "extensions"
}
]
}'
id
type
Respuesta
Una respuesta correcta devuelve los detalles de las relaciones actualizadas. Al realizar una solicitud de búsqueda para la biblioteca, se muestran las relaciones en la propiedad relationships
.
{
"data": [
{
"type": "extensions",
"id": "EX58312732fd0f43f98037d765ef96c4cd"
}
],
"links": {
"related": "https://reactor.adobe.io/libraries/LBdbc7c49ac8f040bc9576db26b127444d/extensions",
"self": "https://reactor.adobe.io/libraries/LBdbc7c49ac8f040bc9576db26b127444d/relationships/extensions"
}
}
Eliminación de recursos de una biblioteca remove-resources
Puede eliminar los recursos existentes de una biblioteca anexando /relationships
a la ruta de una petición DELETE, seguido del tipo de recurso que está eliminando.
Formato de API
DELETE /libraries/{LIBRARY_ID}/relationships/{RESOURCE_TYPE}
{LIBRARY_ID}
{RESOURCE_TYPE}
Tipo de recurso que está eliminando. Se aceptan los siguientes valores:
data_elements
extensions
rules
Solicitud
La siguiente solicitud elimina una regla de una biblioteca. No se eliminará ninguna regla existente que no esté incluida en la matriz data
.
curl -X DELETE \
https://reactor.adobe.io/libraries/LBdd2f55e9c3bb4ce0a582a0b0c586a6f5/relationships/environment \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/json' \
-d '{
"data": [
{
"id": "RLa16f7859c7404239940c2cf2ec02b03c",
"type": "rules"
}
]
}'
id
type
Respuesta
Una respuesta correcta devuelve los detalles de las relaciones actualizadas para el tipo de recurso. Si no existen relaciones para este tipo de recurso, la propiedad data
se devuelve como una matriz vacía. Al realizar una solicitud de búsqueda para la biblioteca, se muestran las relaciones en la propiedad relationships
.
{
"data": [
],
"links": {
"related": "https://reactor.adobe.io/libraries/LBbde5759742844fe59458ca0c988ecd61/rules",
"self": "https://reactor.adobe.io/libraries/LBbde5759742844fe59458ca0c988ecd61/relationships/rules"
}
}
Asignar una biblioteca a un entorno environment
Puede asignar una biblioteca a un entorno /relationships/environment
a la ruta de una petición POST.
Formato de API
POST /libraries/{LIBRARY_ID}/relationships/environment
{LIBRARY_ID}
Solicitud
curl -X POST \
https://reactor.adobe.io/libraries/LBdd2f55e9c3bb4ce0a582a0b0c586a6f5/relationships/environment \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Accept: application/vnd.api+json;revision=1' \
-H 'Content-Type: application/json' \
-d '{
"data": {
"id": "EN867c480dc5ea4158be3ea68e5543bd85",
"type": "environments"
}
}'
id
type
environments
.Respuesta
Una respuesta correcta devuelve los detalles de la relación. Al realizar una solicitud de búsqueda para la biblioteca, se muestra la relación añadida en la propiedad relationships
.
{
"data": {
"id": "EN867c480dc5ea4158be3ea68e5543bd85",
"type": "environments"
},
"links": {
"related": "https://reactor.adobe.io/libraries/LBdd2f55e9c3bb4ce0a582a0b0c586a6f5/environment",
"self": "https://reactor.adobe.io/libraries/LBdd2f55e9c3bb4ce0a582a0b0c586a6f5/relationships/environment"
}
}
Transición de una biblioteca transition
Puede realizar la transición de una biblioteca a un estado de publicación diferente incluyendo su ID en la ruta de una petición PATCH y proporcionando un valor meta.action
apropiado en la carga útil.
Formato de API
PATCH /libraries/{LIBRARY_ID}
LIBRARY_ID
id
de la biblioteca de la que desea realizar la transición.Solicitud
La siguiente solicitud cambia el estado de una biblioteca existente, según el valor de meta.action
proporcionado en la carga útil. Las acciones disponibles para una biblioteca dependen de su estado de publicación actual, como se describe en el flujo de publicación.
curl -X PATCH \
https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Content-Type: application/json' \
-d '{
"data": {
"id": "LB80c337c956804738b2db2ea2f69fcdf0",
"type": "libraries",
"meta": {
"action": "submit"
}
}
}'
meta.action
La acción de transición específica que desea realizar en la biblioteca. Las siguientes acciones están disponibles, según el estado de publicación actual de la biblioteca:
develop
submit
approve
reject
id
id
de la biblioteca que desea actualizar. Debe coincidir con el valor {LIBRARY_ID}
proporcionado en la ruta de solicitud.type
libraries
.Respuesta
Una respuesta correcta devuelve los detalles de la biblioteca actualizada.
{
"data": {
"id": "LB80c337c956804738b2db2ea2f69fcdf0",
"type": "libraries",
"attributes": {
"created_at": "2020-12-14T17:47:57.783Z",
"name": "My Library",
"published_at": null,
"state": "submitted",
"updated_at": "2020-12-14T17:48:06.431Z",
"build_required": true
},
"relationships": {
"builds": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB80c337c956804738b2db2ea2f69fcdf0/builds"
}
},
"environment": {
"links": {
"self": "https://reactor.adobe.io/libraries/LB80c337c956804738b2db2ea2f69fcdf0/relationships/environment"
},
"data": null
},
"data_elements": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB80c337c956804738b2db2ea2f69fcdf0/data_elements",
"self": "https://reactor.adobe.io/libraries/LB80c337c956804738b2db2ea2f69fcdf0/relationships/data_elements"
}
},
"extensions": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB80c337c956804738b2db2ea2f69fcdf0/extensions",
"self": "https://reactor.adobe.io/libraries/LB80c337c956804738b2db2ea2f69fcdf0/relationships/extensions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB80c337c956804738b2db2ea2f69fcdf0/notes"
}
},
"rules": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB80c337c956804738b2db2ea2f69fcdf0/rules",
"self": "https://reactor.adobe.io/libraries/LB80c337c956804738b2db2ea2f69fcdf0/relationships/rules"
}
},
"upstream_library": {
"data": null
},
"property": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB80c337c956804738b2db2ea2f69fcdf0/property"
},
"data": {
"id": "PRbc84c93c1c9f48c9836ade5ea4199006",
"type": "properties"
}
},
"last_build": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB80c337c956804738b2db2ea2f69fcdf0/last_build"
},
"data": {
"id": "BL8d6e931f2f6d48ea96d6730122f13bcc",
"type": "builds"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PRbc84c93c1c9f48c9836ade5ea4199006",
"self": "https://reactor.adobe.io/libraries/LB80c337c956804738b2db2ea2f69fcdf0"
},
"meta": {
"build_status": null,
"build_required_detail": "No build found since last state change"
}
}
}
Publicar una biblioteca publish
Para publicar una biblioteca en producción, asegúrese de que se ha agregado un entorno de producción a la biblioteca y, a continuación, cree una compilación.
Formato de API
POST /libraries/{LIBRARY_ID}/builds
LIBRARY_ID
id
de la biblioteca que desea publicar.Solicitud
Esta solicitud no requiere una carga útil.
curl -X POST \
https://reactor.adobe.io/libraries/LB80c337c956804738b2db2ea2f69fcdf0/builds \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'Content-Type: application/json'
Respuesta
{
"data": {
"id": "BL162b63703eb74c6bb3c12471e0062c05",
"type": "builds",
"attributes": {
"created_at": "2020-12-14T17:48:18.731Z",
"status": "pending",
"updated_at": "2020-12-14T17:48:18.731Z",
"token": "b223fc55df1c"
},
"relationships": {
"data_elements": {
"links": {
"related": "https://reactor.adobe.io/builds/BL162b63703eb74c6bb3c12471e0062c05/data_elements"
}
},
"extensions": {
"links": {
"related": "https://reactor.adobe.io/builds/BL162b63703eb74c6bb3c12471e0062c05/extensions"
}
},
"rules": {
"links": {
"related": "https://reactor.adobe.io/builds/BL162b63703eb74c6bb3c12471e0062c05/rules"
}
},
"environment": {
"links": {
"related": "https://reactor.adobe.io/builds/BL162b63703eb74c6bb3c12471e0062c05/environment"
},
"data": {
"id": "EN5428335fff304c749f06a241db137a60",
"type": "environments"
}
},
"library": {
"links": {
"related": "https://reactor.adobe.io/builds/BL162b63703eb74c6bb3c12471e0062c05/library"
},
"data": {
"id": "LBa937e62887e94d85b77cbe703f5dfc56",
"type": "libraries"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/builds/BL162b63703eb74c6bb3c12471e0062c05/property"
},
"data": {
"id": "PR7e2b7aaaffcb499398010ba964603415",
"type": "properties"
}
}
},
"links": {
"environment": "https://reactor.adobe.io/environments/EN5428335fff304c749f06a241db137a60",
"library": "https://reactor.adobe.io/libraries/LBa937e62887e94d85b77cbe703f5dfc56",
"self": "https://reactor.adobe.io/builds/BL162b63703eb74c6bb3c12471e0062c05"
},
"meta": {
"artifact_url": "https://assets.adobedtm.com/staging/f9fd106ab399/8b659dd115cf/launch-5986a1b644a4-development.min.js",
"direct_artifact_url": "https://assets.adobedtm.com/staging/f9fd106ab399/8b659dd115cf/b223fc55df1c/launch-5986a1b644a4-development.min.js",
"archive": false,
"host_type_of": "akamai"
}
}
}
Administrar notas de una biblioteca notes
Las bibliotecas son recursos con notas, lo que significa que puede crear y recuperar notas basadas en texto en cada recurso individual. Consulte la guía de extremo de notas para obtener más información sobre cómo administrar notas para bibliotecas y otros recursos compatibles.
Recuperar recursos relacionados de una biblioteca related
Las siguientes llamadas muestran cómo recuperar los recursos relacionados de una biblioteca. Cuando busca una biblioteca, estas relaciones se enumeran en la propiedad relationships
.
Consulte la guía de relaciones para obtener más información sobre las relaciones en la API de reactor.
Lista de los elementos de datos relacionados de una biblioteca data-elements
Puede enumerar los elementos de datos que utiliza una biblioteca anexando /data_elements
a la ruta de una solicitud de búsqueda.
Formato de API
GET /libraries/{LIBRARY_ID}/data_elements
{LIBRARY_ID}
id
de la biblioteca cuyos elementos de datos desea enumerar.Solicitud
curl -X GET \
https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/data_elements \
-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'
Respuesta
Una respuesta correcta devuelve una lista de elementos de datos que utilizan la biblioteca especificada.
{
"data": [
{
"id": "DE4956628e8baa4b358cc592337049b37b",
"type": "data_elements",
"attributes": {
"created_at": "2020-12-14T17:45:11.694Z",
"deleted_at": null,
"dirty": false,
"enabled": true,
"name": "My Data Element 2020-12-14 17:45:10 +0000",
"published": false,
"published_at": null,
"revision_number": 1,
"updated_at": "2020-12-14T17:45:11.694Z",
"clean_text": false,
"default_value": null,
"delegate_descriptor_id": "kessel-test::dataElements::dom-attribute",
"force_lower_case": false,
"review_status": "unsubmitted",
"storage_duration": null,
"settings": "{\"elementProperty\":\"html\",\"elementSelector\":\".target-element\"}"
},
"relationships": {
"libraries": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE4956628e8baa4b358cc592337049b37b/libraries"
}
},
"revisions": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE4956628e8baa4b358cc592337049b37b/revisions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE4956628e8baa4b358cc592337049b37b/notes"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE4956628e8baa4b358cc592337049b37b/property"
},
"data": {
"id": "PR245ca5e560784249b2a88ef82f2851b6",
"type": "properties"
}
},
"origin": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE4956628e8baa4b358cc592337049b37b/origin"
},
"data": {
"id": "DE4c027939f2004fdcb15e3b4099e70974",
"type": "data_elements"
}
},
"extension": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE4956628e8baa4b358cc592337049b37b/extension"
},
"data": {
"id": "EX5942ffd7fac94428875bd664e397bd47",
"type": "extensions"
}
},
"updated_with_extension_package": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE4956628e8baa4b358cc592337049b37b/updated_with_extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
},
"updated_with_extension": {
"links": {
"related": "https://reactor.adobe.io/data_elements/DE4956628e8baa4b358cc592337049b37b/updated_with_extension"
},
"data": {
"id": "EXbf411638b90843c486254b5ca0fe47d6",
"type": "extensions"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR245ca5e560784249b2a88ef82f2851b6",
"origin": "https://reactor.adobe.io/data_elements/DE4c027939f2004fdcb15e3b4099e70974",
"self": "https://reactor.adobe.io/data_elements/DE4956628e8baa4b358cc592337049b37b",
"extension": "https://reactor.adobe.io/extensions/EX5942ffd7fac94428875bd664e397bd47"
},
"meta": {
"latest_revision_number": 1
}
}
],
"meta": {
"pagination": {
"current_page": 1,
"next_page": null,
"prev_page": null,
"total_pages": 1,
"total_count": 1
}
}
}
Lista de las extensiones relacionadas de una biblioteca extensions
Puede enumerar las extensiones que utiliza una biblioteca anexando /extensions
a la ruta de una solicitud de búsqueda.
Formato de API
GET /libraries/{LIBRARY_ID}/extensions
{LIBRARY_ID}
id
de la biblioteca cuyas extensiones desea enumerar.Solicitud
curl -X GET \
https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/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'
Respuesta
Una respuesta correcta devuelve una lista de extensiones que utilizan la biblioteca especificada.
{
"data": [
{
"id": "EXac1e55883e5b47eb9a3589b311960677",
"type": "extensions",
"attributes": {
"created_at": "2020-12-14T17:45:23.759Z",
"deleted_at": null,
"dirty": false,
"enabled": true,
"name": "kessel-test",
"published": false,
"published_at": null,
"revision_number": 1,
"updated_at": "2020-12-14T17:45:23.759Z",
"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/EXac1e55883e5b47eb9a3589b311960677/libraries"
}
},
"revisions": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXac1e55883e5b47eb9a3589b311960677/revisions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXac1e55883e5b47eb9a3589b311960677/notes"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXac1e55883e5b47eb9a3589b311960677/property"
},
"data": {
"id": "PR2d1f3ba867204dc7a4c17614d23bbab0",
"type": "properties"
}
},
"origin": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXac1e55883e5b47eb9a3589b311960677/origin"
},
"data": {
"id": "EX63cf3b91ec8146889759bbacb15627c3",
"type": "extensions"
}
},
"updated_with_extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXac1e55883e5b47eb9a3589b311960677/updated_with_extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
},
"extension_package": {
"links": {
"related": "https://reactor.adobe.io/extensions/EXac1e55883e5b47eb9a3589b311960677/extension_package"
},
"data": {
"id": "EP75db2452065b44e2b8a38ca883ce369a",
"type": "extension_packages"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR2d1f3ba867204dc7a4c17614d23bbab0",
"origin": "https://reactor.adobe.io/extensions/EX63cf3b91ec8146889759bbacb15627c3",
"self": "https://reactor.adobe.io/extensions/EXac1e55883e5b47eb9a3589b311960677",
"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
}
}
}
Enumerar las reglas relacionadas de una biblioteca rules
Puede enumerar las reglas que utiliza una biblioteca anexando /rules
a la ruta de una solicitud de búsqueda.
Formato de API
GET /libraries/{LIBRARY_ID}/rules
{LIBRARY_ID}
id
de la biblioteca cuyas reglas desea enumerar.Solicitud
curl -X GET \
https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/rules \
-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'
Respuesta
Una respuesta correcta devuelve una lista de reglas que utilizan la biblioteca especificada.
{
"data": [
{
"id": "RL460e550125054fffb824cce56c8cb1ac",
"type": "rules",
"attributes": {
"created_at": "2020-12-14T17:45:36.405Z",
"deleted_at": null,
"dirty": false,
"enabled": true,
"name": "Example Rule",
"published": false,
"published_at": null,
"revision_number": 1,
"updated_at": "2020-12-14T17:45:36.405Z",
"review_status": "unsubmitted"
},
"relationships": {
"libraries": {
"links": {
"related": "https://reactor.adobe.io/rules/RL460e550125054fffb824cce56c8cb1ac/libraries"
}
},
"revisions": {
"links": {
"related": "https://reactor.adobe.io/rules/RL460e550125054fffb824cce56c8cb1ac/revisions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/rules/RL460e550125054fffb824cce56c8cb1ac/notes"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/rules/RL460e550125054fffb824cce56c8cb1ac/property"
},
"data": {
"id": "PRa68d0d2c6e0a4ae380fb30f17f7c435d",
"type": "properties"
}
},
"origin": {
"links": {
"related": "https://reactor.adobe.io/rules/RL460e550125054fffb824cce56c8cb1ac/origin"
},
"data": {
"id": "RL04911614524d463a9c115bea442bce72",
"type": "rules"
}
},
"rule_components": {
"links": {
"related": "https://reactor.adobe.io/rules/RL460e550125054fffb824cce56c8cb1ac/rule_components"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PRa68d0d2c6e0a4ae380fb30f17f7c435d",
"origin": "https://reactor.adobe.io/rules/RL04911614524d463a9c115bea442bce72",
"self": "https://reactor.adobe.io/rules/RL460e550125054fffb824cce56c8cb1ac",
"rule_components": "https://reactor.adobe.io/rules/RL460e550125054fffb824cce56c8cb1ac/rule_components"
},
"meta": {
"latest_revision_number": 1
}
}
],
"meta": {
"pagination": {
"current_page": 1,
"next_page": null,
"prev_page": null,
"total_pages": 1,
"total_count": 1
}
}
}
Buscar el entorno relacionado de una biblioteca related-environment
Puede buscar el entorno al que se asigna una biblioteca anexando /environment
a la ruta de una petición GET.
Formato de API
GET /libraries/{LIBRARY_ID}/environment
{LIBRARY_ID}
id
de la biblioteca cuyo entorno desea buscar.Solicitud
curl -X GET \
https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/environment \
-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'
Respuesta
Una respuesta correcta devuelve los detalles del entorno al que está asignada la biblioteca especificada.
{
"data": {
"id": "ENe66122e6793641d8a8453f63c42e4270",
"type": "environments",
"attributes": {
"archive": false,
"created_at": "2020-12-14T17:39:12.484Z",
"library_path": "f9fd106ab399/2df53b69e8a2",
"library_name": "launch-1d2ffee7eef5-development.min.js",
"library_entry_points": [
{
"library_name": "launch-1d2ffee7eef5-development.min.js",
"minified": true,
"references": [
"f9fd106ab399/2df53b69e8a2/launch-1d2ffee7eef5-development.min.js"
],
"license_path": "f9fd106ab399/2df53b69e8a2/launch-1d2ffee7eef5-development.js"
},
{
"library_name": "launch-1d2ffee7eef5-development.js",
"minified": false,
"references": [
"f9fd106ab399/2df53b69e8a2/launch-1d2ffee7eef5-development.js"
]
}
],
"name": "Development Environment A",
"path": "https://assets.adobedtm.com/staging",
"stage": "development",
"updated_at": "2020-12-14T17:39:13.988Z",
"status": "succeeded",
"token": "1d2ffee7eef5"
},
"relationships": {
"library": {
"links": {
"related": "https://reactor.adobe.io/environments/ENe66122e6793641d8a8453f63c42e4270/library"
},
"data": {
"id": "LB52ccd7f1e99146999f90cb3bca4940a2",
"type": "libraries"
}
},
"builds": {
"links": {
"related": "https://reactor.adobe.io/environments/ENe66122e6793641d8a8453f63c42e4270/builds"
}
},
"host": {
"links": {
"related": "https://reactor.adobe.io/environments/ENe66122e6793641d8a8453f63c42e4270/host",
"self": "https://reactor.adobe.io/environments/ENe66122e6793641d8a8453f63c42e4270/relationships/host"
},
"data": {
"id": "HT53a4ebcb177d431e8fd26929930de0af",
"type": "hosts"
}
},
"property": {
"links": {
"related": "https://reactor.adobe.io/environments/ENe66122e6793641d8a8453f63c42e4270/property"
},
"data": {
"id": "PR79de7e0885a9451786f1bf4b9136a72c",
"type": "properties"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR79de7e0885a9451786f1bf4b9136a72c",
"self": "https://reactor.adobe.io/environments/ENe66122e6793641d8a8453f63c42e4270"
},
"meta": {
"archive_encrypted": false
}
}
}
Buscar la propiedad relacionada de una biblioteca property
Puede buscar la propiedad que posee una biblioteca anexando /property
a la ruta de una petición GET.
Formato de API
GET /libraries/{LIBRARY_ID}/property
{LIBRARY_ID}
id
de la biblioteca cuya propiedad desea buscar.Solicitud
curl -X GET \
https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/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'
Respuesta
Una respuesta correcta devuelve los detalles de la propiedad que posee la biblioteca especificada.
{
"data": {
"id": "PRb18ac8f8b69d4f99af43870e91c17543",
"type": "properties",
"attributes": {
"created_at": "2020-12-14T17:51:56.180Z",
"enabled": true,
"name": "Kessel Example Property",
"updated_at": "2020-12-14T17:51:56.180Z",
"platform": "web",
"development": false,
"token": "9d97006b0f9b",
"domains": [
"example.com"
],
"undefined_vars_return_empty": false,
"rule_component_sequencing_enabled": false
},
"relationships": {
"company": {
"links": {
"related": "https://reactor.adobe.io/properties/PRb18ac8f8b69d4f99af43870e91c17543/company"
},
"data": {
"id": "CO2bf094214ffd4785bb4bcf88c952a7c1",
"type": "companies"
}
},
"callbacks": {
"links": {
"related": "https://reactor.adobe.io/properties/PRb18ac8f8b69d4f99af43870e91c17543/callbacks"
}
},
"hosts": {
"links": {
"related": "https://reactor.adobe.io/properties/PRb18ac8f8b69d4f99af43870e91c17543/hosts"
}
},
"environments": {
"links": {
"related": "https://reactor.adobe.io/properties/PRb18ac8f8b69d4f99af43870e91c17543/environments"
}
},
"libraries": {
"links": {
"related": "https://reactor.adobe.io/properties/PRb18ac8f8b69d4f99af43870e91c17543/libraries"
}
},
"data_elements": {
"links": {
"related": "https://reactor.adobe.io/properties/PRb18ac8f8b69d4f99af43870e91c17543/data_elements"
}
},
"extensions": {
"links": {
"related": "https://reactor.adobe.io/properties/PRb18ac8f8b69d4f99af43870e91c17543/extensions"
}
},
"rules": {
"links": {
"related": "https://reactor.adobe.io/properties/PRb18ac8f8b69d4f99af43870e91c17543/rules"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/properties/PRb18ac8f8b69d4f99af43870e91c17543/notes"
}
}
},
"links": {
"company": "https://reactor.adobe.io/companies/CO2bf094214ffd4785bb4bcf88c952a7c1",
"data_elements": "https://reactor.adobe.io/properties/PRb18ac8f8b69d4f99af43870e91c17543/data_elements",
"environments": "https://reactor.adobe.io/properties/PRb18ac8f8b69d4f99af43870e91c17543/environments",
"extensions": "https://reactor.adobe.io/properties/PRb18ac8f8b69d4f99af43870e91c17543/extensions",
"rules": "https://reactor.adobe.io/properties/PRb18ac8f8b69d4f99af43870e91c17543/rules",
"self": "https://reactor.adobe.io/properties/PRb18ac8f8b69d4f99af43870e91c17543"
},
"meta": {
"rights": [
"approve",
"develop",
"manage_environments",
"manage_extensions",
"publish"
]
}
}
}
Buscar el orden ascendente de una biblioteca upstream
Puede buscar la siguiente biblioteca ascendente desde una biblioteca anexando /upstream_library
a la ruta de una petición GET.
Formato de API
GET /libraries/{LIBRARY_ID}/upstream_library
{LIBRARY_ID}
id
de la biblioteca cuya biblioteca ascendente desee buscar.Solicitud
curl -X GET \
https://reactor.adobe.io/libraries/LB5862ee2dc21b4646a5536c8d6edb0c84/upstream_library \
-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'
Respuesta
Una respuesta correcta devuelve los detalles de la biblioteca ascendente.
{
"data": {
"id": "LB29cc2f86b3684e00a10d196a60f4b0c0",
"type": "libraries",
"attributes": {
"created_at": "2020-12-14T17:49:32.459Z",
"name": "My Library",
"published_at": null,
"state": "submitted",
"updated_at": "2020-12-14T17:49:41.070Z",
"build_required": true
},
"relationships": {
"builds": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB29cc2f86b3684e00a10d196a60f4b0c0/builds"
}
},
"environment": {
"links": {
"self": "https://reactor.adobe.io/libraries/LB29cc2f86b3684e00a10d196a60f4b0c0/relationships/environment"
},
"data": null
},
"data_elements": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB29cc2f86b3684e00a10d196a60f4b0c0/data_elements",
"self": "https://reactor.adobe.io/libraries/LB29cc2f86b3684e00a10d196a60f4b0c0/relationships/data_elements"
}
},
"extensions": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB29cc2f86b3684e00a10d196a60f4b0c0/extensions",
"self": "https://reactor.adobe.io/libraries/LB29cc2f86b3684e00a10d196a60f4b0c0/relationships/extensions"
}
},
"notes": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB29cc2f86b3684e00a10d196a60f4b0c0/notes"
}
},
"rules": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB29cc2f86b3684e00a10d196a60f4b0c0/rules",
"self": "https://reactor.adobe.io/libraries/LB29cc2f86b3684e00a10d196a60f4b0c0/relationships/rules"
}
},
"upstream_library": {
"data": null
},
"property": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB29cc2f86b3684e00a10d196a60f4b0c0/property"
},
"data": {
"id": "PR7c206ed399644222aef329488cee7fa7",
"type": "properties"
}
},
"last_build": {
"links": {
"related": "https://reactor.adobe.io/libraries/LB29cc2f86b3684e00a10d196a60f4b0c0/last_build"
},
"data": {
"id": "BL87cde018ecd44ac7a20b0271ab06d04b",
"type": "builds"
}
}
},
"links": {
"property": "https://reactor.adobe.io/properties/PR7c206ed399644222aef329488cee7fa7",
"self": "https://reactor.adobe.io/libraries/LB29cc2f86b3684e00a10d196a60f4b0c0"
},
"meta": {
"build_status": null,
"build_required_detail": "No build found since last state change"
}
}
}