Point d’entrée des packages
L’outil Sandbox vous permet de sélectionner différents artefacts (également appelés objets) et de les exporter dans un package. Un package peut se composer d’un ou de plusieurs artefacts (tels que des jeux de données ou des schémas). Tous les artefacts inclus dans un package doivent provenir du même sandbox.
Le point d’entrée /packages de l’API d’outils sandbox vous permet de gérer par programmation les packages de votre organisation, y compris la publication d’un package et l’importation d’un package dans un sandbox.
Création d’un package create
Vous pouvez créer un package à plusieurs artefacts en adressant une requête POST au point d’entrée /packages, tout en fournissant des valeurs pour le nom et le type de package de votre package.
Format d’API
POST /packages/
Requête
curl -X POST \
https://platform.adobe.io/data/foundation/exim/packages \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d'{
"name": "acme",
"description": "Acme Business Group",
"packageType": "PARTIAL",
"sourceSandbox": {
"name": "acme-sandbox",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg"
},
"expiry": "2023-05-20T20:05:10Z",
"artifacts": [
{
"id": "27115daa-c92b-4f17-a077-d65ffeb0c525",
"type": "PROFILE_SEGMENT",
"title": "Acme Profile Segment"
}
]
}'
namedescriptionpackageTypesourceSandboxexpiryartifactsartifacts doit être null ou vide, lorsque la packageType est FULL.Réponse
Une réponse réussie renvoie le package que vous venez de créer. La réponse inclut l’identifiant de package correspondant, ainsi que des informations sur son statut, son expiration et la liste des artefacts.
{
"id": "209f886b00444eac9bb5836fe32e7681",
"version": 0,
"createdDate": 1684475012105,
"modifiedDate": 1684475012105,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"tenantId": "c875b077162b40409c1327b16da99c1b",
"requestId": "devxa54a6b56d04f46119d9e3cc006fcc1cb",
"userId": "platform_exim",
"name": "acme",
"description": "Acme Business Group",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg",
"sourceSandbox": {
"name": "cjm-mr",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg"
},
"packageType": "PARTIAL",
"expiry": 1684613110000,
"status": "DRAFT",
"artifactsList": [
{
"id": "d8d8ed6d-696a-40bd-b4fe-ca053ec94e29",
"type": "JOURNEY",
"found": false,
"count": 0
}
]
}
Mise à jour d’un package update
Utilisez le point d’entrée /packages dans l’API d’outils Sandbox pour mettre à jour un package.
Ajout d’artefacts à un package add-artifacts
Pour ajouter des artefacts à un package, vous devez fournir un id et inclure ADD pour le action.
Format d’API
PUT /packages/
Requête
curl -X PUT \
https://platform.adobe.io/data/foundation/exim/packages \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d'{
"id": "6fa50baedd344a278129a87e68cc9dc7",
"action": "ADD",
"expiry": "2023-05-20T20:05:10Z",
"artifacts": [
{
"id": "d8d8ed6d-696a-40bd-b4fe-ca053ec94e29@1647559351683",
"type": "JOURNEY"
}
]
}'
idactionartifactsexpiryLes types d’artefacts suivants sont actuellement pris en charge.
JOURNEYID_NAMESPACEREGISTRY_DATATYPEREGISTRY_CLASSREGISTRY_MIXINREGISTRY_SCHEMACATALOG_DATASETDULE_CONSENT_POLICYPROFILE_SEGMENTFLOWRéponse
Une réponse réussie renvoie le package mis à jour. La réponse inclut l’identifiant de package correspondant, ainsi que des informations sur son statut, son expiration et la liste des artefacts.
{
"id": "6fa50baedd344a278129a87e68cc9dc7",
"version": 4,
"createdDate": 1684235842000,
"modifiedDate": 1684475861366,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"tenantId": "c875b077162b40409c1327b16da99c1b",
"name": "acme",
"description": "Acme Business Group",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg",
"sourceSandbox": {
"name": "acme-sandbox",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg"
},
"packageType": "PARTIAL",
"expiry": 1692251861352,
"status": "DRAFT",
"artifactsList": [
{
"id": "d8d8ed6d-696a-40bd-b4fe-ca053ec94e29@1647559351683",
"type": "JOURNEY",
"found": false,
"count": 0
},
{
"id": "d8d8ed6d-696a-40bd-b4fe-ca053ec94e29",
"type": "JOURNEY",
"found": false,
"count": 0
}
]
}
Suppression d’artefacts d’un package delete-artifacts
Pour supprimer des artefacts d’un package, vous devez fournir un id et inclure DELETE pour le action.
Format d’API
PUT /packages/
Requête
curl -X PUT \
https://platform.adobe.io/data/foundation/exim/packages \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d'{
"id": "6fa50baedd344a278129a87e68cc9dc7",
"action": "DELETE",
"artifacts": [
{
"id": "d8d8ed6d-696a-40bd-b4fe-ca053ec94e29@1647559351683",
"type": "JOURNEY"
}
]
}'
idactionartifactsRéponse
Une réponse réussie renvoie le package mis à jour. La réponse inclut l’identifiant de package correspondant, ainsi que des informations sur son statut, son expiration et la liste des artefacts.
{
"id": "6fa50baedd344a278129a87e68cc9dc7",
"version": 5,
"createdDate": 1684235842000,
"modifiedDate": 1684478830416,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"tenantId": "c875b077162b40409c1327b16da99c1b",
"name": "acme",
"description": "Acme Business Group",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg",
"sourceSandbox": {
"name": "acme-sandbox",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg"
},
"packageType": "PARTIAL",
"expiry": 1692254830403,
"status": "DRAFT",
"artifactsList": [
{
"id": "d8d8ed6d-696a-40bd-b4fe-ca053ec94e29",
"type": "JOURNEY",
"found": false,
"count": 0
}
]
}
Mise à jour des champs de métadonnées dans un package update-metadata
Pour mettre à jour les champs de métadonnées d’un package, vous devez fournir un id et inclure UPDATE pour le action.
Format d’API
PUT /packages/
Requête
curl -X PUT \
https://platform.adobe.io/data/foundation/exim/packages \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d'{
"id": "6fa50baedd344a278129a87e68cc9dc7",
"action": "UPDATE",
"name": "acme",
"description": "Acme Business Group",
"sourceSandbox": {
"name": "acme-sandbox",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg"
}
}'
idactionnamesourceSandboxRéponse
Une réponse réussie renvoie le package mis à jour. La réponse inclut l’identifiant de package correspondant, ainsi que des informations sur sa description, son statut, son expiration et la liste des artefacts.
{
"id": "6fa50baedd344a278129a87e68cc9dc7",
"version": 6,
"createdDate": 1684235842000,
"modifiedDate": 1684479094129,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"tenantId": "c875b077162b40409c1327b16da99c1b",
"name": "acme",
"description": "Acme Business Group",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg",
"sourceSandbox": {
"name": "acme-sandbox",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg"
},
"packageType": "PARTIAL",
"expiry": 1692255094127,
"status": "DRAFT",
"artifactsList": [
{
"id": "d8d8ed6d-696a-40bd-b4fe-ca053ec94e29",
"type": "JOURNEY",
"found": false,
"count": 0
}
]
}
Suppression d’un package delete
Pour supprimer un package, envoyez une requête DELETE au point d’entrée /packages et indiquez l’identifiant du package que vous souhaitez supprimer.
Format d’API
DELETE /packages/{PACKAGE_ID}
{PACKAGE_ID}Requête
La requête suivante supprime le package avec l’ID {PACKAGE_ID}.
curl -X DELETE \
https://platform.adobe.io/data/foundation/exim/packages/{PACKAGE_ID} \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
Réponse
Une réponse réussie renvoie un motif qui indique que l’ID du package a été supprimé.
{
"reason": "Package d30e0424a37b46ada6a5cf37f47a86ff deleted"
}
Publication d’un package publish
Pour activer l’importation d’un package dans un sandbox, vous devez le publier. Envoyez une requête GET au point d’entrée /packages lors de la spécification de l’identifiant du package que vous souhaitez publier.
Format d’API
GET /packages/{PACKAGE_ID}/export
{PACKAGE_ID}Requête
La requête suivante publie le package avec l’ID {PACKAGE_ID}.
curl -X GET \
https://platform.adobe.io/data/foundation/exim/packages/{PACKAGE_ID}\export \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
expiryPeriodSi aucune valeur n’est spécifiée, la valeur par défaut est calculée sur 90 (jours) à compter de la date de publication.
Réponse
Une réponse réussie renvoie le package publié.
{
"name": "acme",
"description": "Acme Business Group",
"visibility": "TENANT",
"sourceSandbox":
{
"name": "acme-sandbox",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg"
},
"type": "PARTIAL",
"correlationId": "48effe5e-1bef-4250-9c71-23b93ef5d285",
"jobId": "18abab44e25f40c284a4bd6e8f52fd29"
}
Recherche d’un package look-up-package
Vous pouvez rechercher un package individuel en effectuant une requête GET au point d’entrée /packages qui inclut l’identifiant correspondant du package dans le chemin d’accès de la requête.
Format d’API
GET /packages/{PACKAGE_ID}
{PACKAGE_ID}Requête
La requête suivante récupère des informations pour {PACKAGE_ID}.
curl -X GET \
https://platform.adobe.io/data/foundation/exim/packages/{PACKAGE_ID} \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
Réponse
Une réponse réussie renvoie des détails pour l’ID de package interrogé. La réponse inclut le nom, la description, la date de publication et la date d’expiration, le sandbox source du package, ainsi qu’une liste d’artefacts.
{
"id": "8f585fad94d042cd82dbcba594108a41",
"version": 2,
"createdDate": 1685597784000,
"modifiedDate": 1685597810000,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"tenantId": "c875b077162b40409c1327b16da99c1b",
"name": "acme",
"description": "Acme Business Group",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg",
"packageType": "PARTIAL",
"expiry": 1693373810000,
"publishDate": 1685597810000,
"status": "PUBLISHED",
"artifactsList": [
{
"id": "f4f57771-2bd2-469a-9c13-8d803eeb6515",
"type": "JOURNEY",
"found": false,
"count": 0
},
{
"id": "7f4caca7-a477-400d-a41e-c4735f8e780d",
"type": "JOURNEY",
"found": false,
"count": 0
}
],
"sourceSandbox": {
"name": "acme-sandbox",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg"
}
}
Liste des packages list-packages
Vous pouvez répertorier tous les packages de votre organisation en effectuant une requête GET au point d’entrée /packages.
Format d’API
GET /packages/?{QUERY_PARAMS}
{QUERY_PARAMS}Requête
La requête suivante récupère les informations des packages en fonction de l’{QUERY_PARAMS} .
curl -X GET \
https://platform.adobe.io/data/foundation/exim/packages/?property=status==DRAFT,PUBLISHED&property=createdDate>=2023-05-11T18:29:59.999Z&property=createdDate<=2023-05-16T18:29:59.999Z&start=0&orderby=-createdDate&limit=20 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
Réponse
Une réponse réussie renvoie une liste des packages appartenant à votre organisation, y compris des détails tels que le nom, le statut, l’expiration et la liste des artefacts.
{
"totalElements": 109,
"currentPage": 0,
"totalPages": 6,
"hasPreviousPage": false,
"hasNextPage": true,
"data": [
{
"id": "8f585fad94d042cd82dbcba594108a41",
"version": 2,
"createdDate": 1685597784000,
"modifiedDate": 1685597810000,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"tenantId": "c875b077162b40409c1327b16da99c1b",
"name": "acme",
"description": "Acme Business Group",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg",
"packageType": "PARTIAL",
"expiry": 1693373810000,
"publishDate": 1685597810000,
"status": "PUBLISHED",
"artifactsList": [
{
"id": "f4f57771-2bd2-469a-9c13-8d803eeb6515",
"type": "JOURNEY",
"found": false,
"count": 0
},
{
"id": "7f4caca7-a477-400d-a41e-c4735f8e780d",
"type": "JOURNEY",
"found": false,
"count": 0
}
],
"sourceSandbox": {
"name": "acme-sandbox",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg"
}
},
{
"id": "0d7e427ce4cb4dc1b78e30ef61b125c1",
"version": 2,
"createdDate": 1685555213000,
"modifiedDate": 1685555275000,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"tenantId": "7d7d8bbe3c7c4a8ea701cc5e42c57aeb",
"name": "acme",
"description": "Acme Business Group",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg",
"packageType": "PARTIAL",
"expiry": 1693331275000,
"publishDate": 1685555275000,
"status": "PUBLISHED",
"artifactsList": [
{
"id": "626a9669a9f5b818db270e95",
"type": "CATALOG_DATASET",
"found": false,
"count": 0
}
],
"sourceSandbox": {
"name": "acme-sandbox",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg"
}
}
]
}
Importer un package import
Ce point d’entrée est utilisé pour récupérer les objets en conflit dans le sandbox cible spécifié. Les objets en conflit représentent des objets similaires déjà présents dans le sandbox cible.
Format d’API
GET /packages/{PACKAGE_ID}/import?targetSandbox=targetSandboxName
{PACKAGE_ID}Requête
La requête suivante importe le {PACKAGE_ID} .
curl -X GET \
https://platform.adobe.io/data/foundation/exim/packages/{PACKAGE_ID}/import?targetSandbox=targetSandboxName \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
Réponse
Les conflits sont renvoyés dans la réponse. La réponse affiche le package d’origine et le fragment de alternatives sous la forme d’un tableau classé par classement.
| code language-json |
|---|
|
Soumettre un import submit-import
Vous pouvez envoyer une importation pour un package une fois que vous avez vérifié les conflits et fourni des substitutions en envoyant une requête POST au point d’entrée /packages. Le résultat est fourni sous la forme d’une payload, qui démarre la tâche d’importation pour le sandbox de destination, comme indiqué dans la payload.
La payload accepte également le nom et la description de tâche spécifiés par l’utilisateur pour la tâche d’importation. Si le nom et la description spécifiés par l’utilisateur ne sont pas disponibles, le nom et la description du package sont utilisés pour le nom et la description de la tâche.
Format d’API
POST /packages/import
Requête
La requête suivante récupère les packages à importer. La payload est une carte de substitutions où, s’il existe une entrée, la clé est la artifactId fournie par le package et l’alternative est la valeur. Si la carte ou la payload est vide, aucune substitution n’est effectuée.
curl -X POST \
https://platform.adobe.io/data/foundation/exim/packages/import/ \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d'{
"id": "09484a599f5f4a5faa43986643964615",
"name": "acme",
"description": "Acme Business Group",
"destinationSandbox": {
"name": "cjm-mr",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg"
},
"alternatives": {
"https://ns.adobe.com/cjmstage/schemas/ac33bbd22eb4ad6656e1c7e12e9f520261fb39fd28a902a9": {
"id": "https://ns.adobe.com/cjmstage/schemas/a3b935344685afad4e52c753161cf673ec23d4fb1b3e9ce",
"type": "REGISTRY_SCHEMA"
}
}
}'
alternativesalternatives représentent le mappage des artefacts de sandbox source aux artefacts de sandbox cible existants. Puisqu’ils sont déjà là, la tâche d’importation évite de créer ces artefacts dans le sandbox cible.Réponse
{
"name": "acme",
"description": "Acme Business Group",
"visibility": "TENANT",
"sourceSandbox":
{
"name": "acme-sandbox",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg"
},
"destinationSandbox":
{
"name": "acme-sandbox",
"imsOrgId": "5C1328435BF324E90A49402A@AdobeOrg"
},
"type": "PARTIAL",
"correlationId": "48effe5e-1bef-4250-9c71-23b93ef5d285",
"jobId": "18abab44e25f40c284a4bd6e8f52fd29"
}
Répertorier tous les objets dépendants dependent-objects
Répertoriez tous les objets dépendants pour les objets exportés dans un package en adressant une requête POST au point d’entrée /packages lors de la spécification de l’identifiant du package.
Format d’API
POST /packages/{PACKAGE_ID}/children
{PACKAGE_ID}Requête
La requête suivante répertorie tous les objets dépendants pour le {PACKAGE_ID}.
curl -X POST \
https://platform.adobe.io/data/foundation/exim/packages/{PACKAGE_ID}/children \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d'[
{
"id": "4d4c874ec3344d64bf8b3160e60ac78b",
"type": "MAPPING_SET"
},
{
"id": "https://ns.adobe.com/cjmstage/schemas/20121c2110bb2c6a585baabe5f82994577da1f7d0628234c",
"type": "REGISTRY_SCHEMA"
},
{
"id": "https://ns.adobe.com/cjmstage/classes/24c1525f4f06fae2d203c6b78e26ae479ec4541c2c0d6b26",
"type": "REGISTRY_CLASS"
}
]'
Réponse
Une réponse réussie renvoie une liste d’enfants pour les objets .
[
{
"id": "4d4c874ec3344d64bf8b3160e60ac78b",
"title": "4d4c874ec3344d64bf8b3160e60ac78b",
"type": "MAPPING_SET",
"children": [
{
"id": "https://ns.adobe.com/cjmstage/schemas/20121c2110bb2c6a585baabe5f82994577da1f7d0628234c",
"title": "Dean Dataset 1 - adhoc schema - 1618950408870",
"type": "REGISTRY_SCHEMA"
}
]
},
{
"id": "https://ns.adobe.com/cjmstage/schemas/20121c2110bb2c6a585baabe5f82994577da1f7d0628234c",
"title": "Dean Dataset 1 - adhoc schema - 1618950408870",
"type": "REGISTRY_SCHEMA",
"children": [
{
"id": "https://ns.adobe.com/cjmstage/classes/24c1525f4f06fae2d203c6b78e26ae479ec4541c2c0d6b26",
"title": "Dean Dataset 1 - Adhoc class - 1618950408870",
"type": "REGISTRY_CLASS"
}
]
},
{
"id": "https://ns.adobe.com/cjmstage/classes/24c1525f4f06fae2d203c6b78e26ae479ec4541c2c0d6b26",
"title": "Dean Dataset 1 - Adhoc class - 1618950408870",
"type": "REGISTRY_CLASS",
"children": []
}
]
Vérifiez les autorisations basées sur les rôles pour importer tous les artefacts de package. role-based-permissions
Vous pouvez vérifier si vous disposez des autorisations pour importer des artefacts de package en effectuant une requête GET au point d’entrée /packages tout en spécifiant l’identifiant du package et le nom du sandbox cible.
Format d’API
GET /packages/preflight/{packageId}?targetSandbox=<sandbox_name
{PACKAGE_ID}Requête
La requête suivante vérifie vos autorisations pour le {PACKAGE_ID} et le sandbox.
curl -X GET \
https://platform.adobe.io/data/foundation/exim/packages/preflight/{PACKAGE_ID}?targetSandbox=<sandbox_name> \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
Réponse
Une réponse réussie renvoie les autorisations de ressources pour le sandbox cible, y compris une liste des autorisations requises, les autorisations manquantes, le type d’artefact et une décision sur l’autorisation de la création.
| code language-json |
|---|
|
Liste des traitements d’export/import list-jobs
Vous pouvez répertorier les tâches d’exportation/importation actuelles en effectuant une requête GET au point d’entrée /packages.
Format d’API
GET /packages/jobs?{QUERY_PARAMS}
{QUERY_PARAMS}Requête
La requête suivante répertorie tous les traitements d’importation réussis.
curl -X GET \
https://platform.adobe.io/data/foundation/exim/packages/jobs?property=requestType==IMPORT&property=jobStatus==SUCCESS&orderby=createdDate&start=0&limit=5 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
Réponse
Une réponse réussie renvoie toutes les tâches d’importation réussies.
{
"totalElements": 42,
"currentPage": 0,
"totalPages": 9,
"hasPreviousPage": false,
"hasNextPage": true,
"data": [
{
"id": "3c1b92cf47a246d7bfbe6fd507c5d543",
"name": "acme",
"updated": 1685973675401,
"created": 1685973675401,
"jobType": "NEW",
"packageType": "PARTIAL",
"description": "Acme Business Group",
"jobStatus": "SUCCESS",
"visibility": "TENANT",
"sourceSandBox": "acme-sandbox",
"targetSandbox": "poc",
"createdBy": "{CREATED_BY}"
},
{
"id": "ead59d21405f4184a94dd786a1bf040d",
"name": "acme1",
"updated": 1685986367198,
"created": 1685986367198,
"jobType": "NEW",
"packageType": "PARTIAL",
"description": "Acme Business Group",
"jobStatus": "SUCCESS",
"visibility": "TENANT",
"sourceSandBox": "acme-sandbox",
"targetSandbox": "poc",
"createdBy": "{CREATED_BY}"
},
{
"id": "85ddaa3c2f6c475088167cde7a9d4326",
"name": "acme2",
"updated": 1686147692568,
"created": 1686147692568,
"jobType": "NEW",
"packageType": "PARTIAL",
"description": "Acme Business Group",
"jobStatus": "SUCCESS",
"visibility": "TENANT",
"sourceSandBox": "acme-sandbox",
"targetSandbox": "poc",
"createdBy": "{CREATED_BY}"
},
{
"id": "c49a4fcb31954cbd828ece1da096c8f5",
"name": "acme3",
"updated": 1686148007586,
"created": 1686148007586,
"jobType": "NEW",
"packageType": "PARTIAL",
"description": "Acme Business Group",
"jobStatus": "SUCCESS",
"visibility": "TENANT",
"sourceSandBox": "acme-sandbox",
"targetSandbox": "poc",
"createdBy": "{CREATED_BY}"
},
{
"id": "a3669315baed4cf2af49bf9ce90b8158",
"name": "acme4",
"updated": 1686148651910,
"created": 1686148651910,
"jobType": "NEW",
"packageType": "PARTIAL",
"description": "Acme Business Group",
"jobStatus": "SUCCESS",
"visibility": "TENANT",
"sourceSandBox": "acme-sandbox",
"targetSandbox": "poc",
"createdBy": "{CREATED_BY}"
}
]
}
Partage de packages entre plusieurs organisations org-linking
Le point d’entrée /handshake de l’API d’outils Sandbox vous permet de vous associer à d’autres organisations pour partager des packages.
Envoyer une demande de partage send-request
Envoyez une requête à une organisation partenaire cible pour l’approbation du partage en effectuant une requête POST au point d’entrée /handshake/bulkCreate. Cela est nécessaire avant de pouvoir partager des packages privés.
Format d’API
POST /handshake/bulkCreate
Requête
La requête suivante lance la validation du partage entre une organisation partenaire cible et l'organisation source.
curl -X POST \
https://platform.adobe.io/data/foundation/exim/handshake/bulkCreate \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Accept: application/json' \
-H 'Authorization: {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-d '{
"targetIMSOrgIds":["acme@AdobeOrg"],
"sourceIMSDetails":{
"id":"acme@AdobeOrg",
"name":"acme_org"
}
}'
targetIMSOrgIdssourceIMSDetailsRéponse
Une réponse réussie renvoie des détails concernant votre demande de partage.
{
"successfulRequests": {
"acme@AdobeOrg": {
"id": "{ID}",
"version": 0,
"createdDate": 1724938816798,
"modifiedDate": 1724938816798,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"sourceIMSOrgId": "{ORG_ID}",
"targetIMSOrgId": "{TARGET_ID}",
"sourceRegion": "va6",
"sourceIMSOrgName": "{SOURCE_NAME}",
"status": "APPROVAL_PENDING",
"createdByName": "{CREATED_BY}",
"modifiedByName": "{MODIFIED_BY}",
"modifiedByIMSOrgId": "{ORG_ID}",
"statusHistory": "[{\"actionTakenBy\":\"acme@98ff67fa661fdf6549420b.e\",\"actionTakenByName\":\"{NAME}\",\"actionTakenByImsOrgID\":\"{ORG_ID}\",\"action\":\"INITIATED\",\"actionTimeStamp\":1724938816885}]",
"linkingId": "{LINKING_ID}"
}
},
"failedRequests": {}
}
Valider les demandes de partage reçues approve-requests
Approuvez les requêtes de partage des organisations partenaires cibles en effectuant une requête POST vers le point d’entrée /handshake/action. Après approbation, les organisations partenaires sources peuvent partager des packages privés.
Format d’API
POST /handshake/action
Demandes
La requête suivante approuve une demande de partage émanant d’une organisation partenaire cible.
curl -X POST \
https://platform.adobe.io/data/foundation/exim/handshake/action \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-d '{
"linkingID":"{LINKING_ID}",
"status":"APPROVED",
"reason":"Done",
"targetIMSOrgDetails":{
"id":"acme@AdobeOrg",
"name":"acme",
"region":"va7"
}
}'
linkingIDstatusAPPROVED ou REJECTED.reasontargetIMSOrgDetailsRéponse
Une réponse réussie renvoie des détails concernant la demande de partage approuvée.
{
"id": "{ID}",
"version": 1,
"createdDate": 1726737474000,
"modifiedDate": 1726737541731,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"sourceIMSOrgId": "{ORG_ID}",
"targetIMSOrgId": "{TARGET_ID}",
"sourceRegion": "va7",
"targetRegion": "va7",
"sourceOrgName": "{SOURCE_ORG}",
"targetOrgName": "{TARGET_ORG}",
"status": "APPROVED",
"createdByName": "{CREATED_BY}",
"modifiedByIMSOrgId": "{MODIFIED_BY}",
"statusHistory": "[{\"actionTakenBy\":\"{ACTION_BY}\",\"actionTakenByName\":\"{NAME}\",\"actionTakenByImsOrgID\":\"acme@AdobeOrg\",\"action\":\"INITIATED\",\"actionTimeStamp\":1726737474450,\"reason\":null},{\"actionTakenBy\":null,\"actionTakenByName\":null,\"actionTakenByImsOrgID\":\"745F37C35E4B776E0A49421B@AdobeOrg\",\"action\":\"APPROVED\",\"actionTimeStamp\":1726737541818,\"reason\":\"Done\"}]",
"linkingId": "{LINKING_ID}"
}
Liste des demandes de partage entrantes/sortantes outgoing-and-incoming-requests
Répertoriez les demandes de partage entrantes et sortantes en effectuant une requête GET au point d’entrée handshake/list?property=status%3D%3DAPPROVED&requestType=INCOMING.
Format d’API
GET handshake/list?property=status%3D%3DAPPROVED&requestType=INCOMING
propertyAPPROVED, REJECTED et IN_PROGRESS.start0.limit20.orderByrequestTypeINCOMING ou OUTGOING.Requête
La requête suivante renvoie une liste de toutes les requêtes de partage sortantes et entrantes.
curl -X GET \
https://platform.adobe.io/data/foundation/exim/handshake/list?property=status%3D%3DAPPROVED&requestType=INCOMING \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id:{ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
Réponse
Une réponse réussie renvoie une liste des requêtes de partage sortantes et entrantes et leurs détails.
{
"totalElements": 1,
"currentPage": 0,
"totalPages": 1,
"hasPreviousPage": false,
"hasNextPage": false,
"data": [
{
"id": "{ID}",
"version": 1,
"createdDate": 1724929446000,
"modifiedDate": 1724929617000,
"modifiedBy": "{MODIFIED_BY}",
"sourceIMSOrgId": "{ORG_ID}",
"targetIMSOrgId": "{TARGET_ID}",
"sourceRegion": "va7",
"targetRegion": "va6",
"sourceOrgName": "{SOURCE_ORG}",
"targetOrgName": "{TARGET_ORG}",
"status": "APPROVED",
"createdByName": "{CREATED_BY}",
"modifiedByName": "{MODIFIED_BY}",
"modifiedByIMSOrgId": "{MODIFIED_BY}",
"statusHistory": "[{\"actionTakenBy\":\"{ACTION_BY}\",\"actionTakenByName\":\"{NAME}\",\"actionTakenByImsOrgID\":\"{ORG_ID}\",\"action\":\"INITIATED\",\"actionTimeStamp\":1724929442467,\"reason\":null},{\"actionTakenBy\":null,\"actionTakenByName\":\"{NAME}\",\"actionTakenByImsOrgID\":\"{ORG_ID}\",\"action\":\"APPROVED\",\"actionTimeStamp\":1724929617531,\"reason\":\"Done\"}]",
"linkingId": "{LINKING_ID}"
}
],
"nextPage": null,
"pageSize": null
}
Transférer les packages
Utilisez le point d’entrée /transfer dans l’API d’outil Sandbox pour récupérer et créer des requêtes de partage de package.
Nouvelle demande de partage share-request
Récupérez le package d’une organisation source publiée et partagez-le avec une organisation cible en adressant une requête POST au point d’entrée /transfer et en fournissant l’identifiant du package et l’identifiant de l’organisation cible.
Format d’API
POST /transfer
Requête
La requête suivante récupère un package d’organisations source et le partage avec une organisation cible.
curl -X POST \
https://platform.adobe.io/data/foundation/exim/transfer/ \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-d '{
"packageId": "{PACKAGE_ID}",
"targets": [
{
"imsOrgId": "{TARGET_IMS_ORG}"
}
]
}'
packageIdtargetsRéponse
Une réponse réussie renvoie les détails du package demandé et son statut de partage.
[
{
"id": "{ID}",
"version": 0,
"createdDate": 1726480559313,
"modifiedDate": 1726480559313,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"sourceIMSOrgId": "{ORG_ID}",
"targetIMSOrgId": "{TARGET_ID}",
"packageId": "{PACKAGE_ID}",
"status": "PENDING",
"initiatedBy": "acme@3ec9197a65a86f34494221.e",
"requestType": "PRIVATE"
}
]
Récupérer une demande de partage par identifiant fetch-transfer-by-id
Récupérez les détails d’une demande de partage en adressant une requête GET au point d’entrée /transfer/{TRANSFER_ID} tout en fournissant l’identifiant de transfert.
Format d’API
GET /transfer/{TRANSFER_ID}
{TRANSFER_ID}Requête
La requête suivante récupère un transfert avec l’ID de {TRANSFER_ID}.
curl -X GET \
https://platform.adobe.io/data/foundation/exim/transfer/0c843180a64c445ca1beece339abc04b \
-H 'x-api-key: {API__KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Authorization: Bearer {ACCESS_TOKEN}'
Réponse
Une réponse de succès renvoie les détails d’une demande de partage.
{
"id": "{ID}",
"sourceIMSOrgId": "{ORG_ID}",
"sourceOrgName": "{SOURCE_ORG}",
"targetIMSOrgId": "{TARGET_ID}",
"targetOrgName": "{TARGET_ORG}",
"packageId": "{PACKAGE_ID}",
"packageName": "{PACKAGE_NAME}",
"status": "COMPLETED",
"initiatedBy": "{INITIATED_BY}",
"createdDate": 1724442856000,
"requestType": "PRIVATE"
}
Récupérer la liste partagée transfers-list
Récupérez une liste de demandes de transfert en effectuant une requête GET au point d’entrée /transfer/list?{QUERY_PARAMETERS}, en modifiant les paramètres de requête si nécessaire.
Format d’API
GET `/transfer/list?{QUERY_PARAMETERS}`
propertyCOMPLETED, PENDING, IN_PROGRESS, FAILED.start0.limit20.orderBycreatedDate.Requête
La requête suivante récupère une liste de demandes de transfert à partir des paramètres de recherche fournis.
curl -X GET \
https://platform.adobe.io/data/foundation/exim/transfer/list?property=status==COMPLETED&start=0&limit=2&orderBy=-createdDate \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Authorization: Bearer {ACCESS_TOKEN}'
Réponse
Une réponse réussie renvoie une liste de toutes les demandes de transfert à partir des paramètres de recherche fournis.
{
"totalElements": 43,
"currentPage": 0,
"totalPages": 22,
"hasPreviousPage": false,
"hasNextPage": true,
"data": [
{
"id": "{ID}",
"sourceIMSOrgId": "{ORG_ID}",
"sourceOrgName": "{SOURCE_ORG}",
"targetIMSOrgId": "{TARGET_ID}",
"targetOrgName": "{TARGET_ORG}",
"packageId": "{PACKAGE_ID}",
"packageName": "{PACKAGE_NAME}",
"status": "COMPLETED",
"initiatedBy": "{INITIATED_BY}",
"completedTime": 1726129077000,
"createdDate": 1726129062000,
"requestType": "PRIVATE"
},
{
"id": "{ID}",
"sourceIMSOrgId": "{ORG_ID}",
"sourceOrgName": "{SOURCE_ORG}",
"targetIMSOrgId": "{TARGET_ID}",
"targetOrgName": "{TARGET_ORG}",
"packageId": "{PACKAGE_ID}",
"packageName": "{PACKAGE_NAME}",
"status": "COMPLETED",
"initiatedBy": "{INITIATED_BY}",
"completedTime": 1726066046000,
"createdDate": 1726065936000,
"requestType": "PRIVATE"
}
],
"nextPage": null,
"pageSize": null
}
Mise à jour de la disponibilité des packages du privé au public update-availability
Remplacez un package privé par un package public en effectuant une requête GET au point d’entrée /packages/update. Par défaut, un package est créé avec une disponibilité privée.
Format d’API
PUT `/packages/update`
Requête
La requête suivante modifie la disponibilité des packages de privée en publique.
curl -X PUT \
https://platform.adobe.io/data/foundation/exim/packages \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-type: application/json' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-d '{
"id":"{ID}",
"action":"UPDATE",
"packageVisibility":"PUBLIC"
}'
idactionpackageVisbilityRéponse
Une réponse réussie renvoie des détails sur un package et sa visibilité.
{
"id": "{ID}",
"version": 7,
"createdDate": 1729624618000,
"modifiedDate": 1729658596340,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"name": "acme",
"imsOrgId": "{ORG_ID}",
"packageType": "PARTIAL",
"expiry": 1737434596325,
"status": "PUBLISH_FAILED",
"packageVisibility": "PUBLIC",
"artifactsList": [
{
"id": "{ID}",
"type": "PROFILE_SEGMENT",
"found": false,
"count": 0,
"title": "Acme Profile Segment"
}
],
"schemaMapping": {},
"sourceSandbox": {
"name": "acme-sandbox",
"imsOrgId": "{ORG_ID}",
"empty": false
}
}
Demande d’import d’un package public pull-public-package
Importez un package d’une organisation source avec disponibilité publique en effectuant une requête POST vers le point d’entrée /transfer/pullRequest.
Format d’API
POST /transfer/pullRequest
Requête
La requête suivante importe un package et définit sa disponibilité sur publique.
curl -X POST \
https://platform.adobe.io/data/foundation/exim/transfer/pullRequest \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-d '{
"imsOrgId": "{ORG_ID}",
"packageId": "{PACKAGE_ID}"
}'
imsOrgIdpackageIdRéponse
Une réponse réussie renvoie des détails sur le package public importé.
{
"id": "{ID}",
"version": 0,
"createdDate": 1729658890425,
"modifiedDate": 1729658890425,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"sourceIMSOrgId": "{ORG_ID}",
"targetIMSOrgId": "{TARGET_ID}",
"packageId": "{PACKAGE_ID}",
"status": "PENDING",
"initiatedBy": "{INITIATED_BY}",
"pipelineMessageId": "{MESSAGE_ID}",
"requestType": "PUBLIC"
}
Liste des packages publics list-public-packages
Récupérez une liste de packages visible par le public en envoyant une requête GET au point d’entrée /transfer/list?{QUERY_PARAMS}.
Format d’API
GET /transfer/list?{QUERY_PARAMS}
propertyCOMPLETED et FAILED.start0.limit20.orderBycreatedDate.requestTypePUBLIC ou PRIVATE.Requête
La requête suivante récupère une liste de packages avec disponibilité publique.
curl -X GET \
https://platform.adobe.io/data/foundation/exim/transfer/list?property=status%3D%3DCOMPLETED%2CFAILED&requestType=PUBLIC&orderby=-createdDate \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Accept: application/json' \
-H 'Authorization: {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
Réponse
Une réponse réussie renvoie une liste des packages publics et leurs détails.
| code language-json |
|---|
|
Copier la payload du package (#package-payload)
Vous pouvez copier la payload d’un package public en effectuant une requête GET au point d’entrée /packages/payload qui inclut l’identifiant correspondant du package dans le chemin de requête.
Format d’API
GET /packages/payload/{PACKAGE_ID}
{PACKAGE_ID}Requête
La requête suivante récupère la payload d’un package avec l’identifiant de {PACKAGE_ID}.
curl -X GET \
https://platform.adobe.io/data/foundation/exim/packages/payload/{PACKAGE_ID} \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
imsOrdIdpackageIdRéponse
Une réponse réussie renvoie la payload du package.
{
"imsOrgId": "{ORG_ID}",
"packageId": "{PACKAGE_ID}"
}
Migrer les mises à jour de configuration d’objet
Utilisez le point d’entrée /packages dans l’API d’outils Sandbox pour migrer les mises à jour de configuration d’objet.
Opérations de mise à jour (#update-operations)
Comparez une version spécifiée ou la dernière version d’un instantané de package à l’état actuel du sandbox source ou d’un sandbox cible utilisé précédemment dans lequel le package a été importé en adressant une requête POST au point d’entrée /packages/{packageId}/version/compare, en fournissant l’identifiant du package.
Format d’API
PATCH /packages/{packageId}/version/compare
packageIdRequête
curl -X POST \
https://platform-stage.adobe.io/data/foundation/exim/packages/{PACKAGE_ID}/version/compare/ \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"triggerNew": true,
"targetSandbox": "{SANDBOX_NAME}"
}'
triggerNewtargetSandboxRéponse
Une réponse réussie pour une tâche précédemment terminée renvoie l’objet de tâche avec les résultats diff précédemment calculés. Une tâche nouvellement terminée renvoie l’ID de tâche.
| code language-json |
|---|
|
| code language-json |
|---|
|
Mettre à jour la version du package (#package-versioning)
Mettez à niveau le package vers une nouvelle version à l’aide du dernier instantané du sandbox source pour chaque objet en envoyant une requête GET au point d’entrée /packages/{packageId}/version/save et en fournissant l’identifiant du package.
Format d’API
PATCH /packages/{packageId}/version/save
packageIdRequête
curl -X POST \
https://platform-stage.adobe.io/data/foundation/exim/packages/{PACKAGE_ID}/version/save/ \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
Réponse
Une réponse réussie renvoie le statut de la tâche pour la mise à niveau de version.
{
"id": "3cec9bae662e43d9b9106fcbf7744a75",
"name": "Version Job Package: {JOB_ID}",
"description": null,
"visibility": "TENANT",
"requestType": "VERSION",
"expiry": 0,
"snapshotId": "{SNAPSHOT_ID}",
"packageVersion": 2,
"createdTimestamp": 0,
"modifiedTimestamp": 0,
"type": "PARTIAL",
"jobStatus": "PENDING",
"jobType": "UPGRADE",
"counter": 0,
"imsOrgId": "{ORG_ID}",
"sourceSandbox": {
"name": "prod",
"imsOrgId": "{ORG_ID}",
"empty": false
},
"destinationSandbox": {
"name": "prod",
"imsOrgId": "{ORG_ID}",
"empty": false
},
"schemaFieldMappings": null
}
Récupérer l’historique des versions de packages (#package-version-history)
Récupérez l’historique du contrôle de version du package, y compris l’horodatage et le modificateur, en envoyant une requête GET au point d’entrée /packages/{packageId}/history et en fournissant l’identifiant du package.
Format d’API
PATCH /packages/{packageId}/history
packageIdRequête
curl -X POST \
https://platform-stage.adobe.io/data/foundation/exim/packages/{PACKAGE_ID}/history/ \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
Réponse
Une réponse réussie renvoie l’historique des versions d’un package.
[
{
"id": "cb68591a1ed941e191e7f52e33637a26",
"version": 0,
"createdDate": 1739516784000,
"modifiedDate": 1739516784000,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"imsOrgId": "{ORG_ID}",
"packageVersion": 3
},
{
"id": "e26189e6e4df476bb66c3fc3e66a1499",
"version": 0,
"createdDate": 1739343268000,
"modifiedDate": 1739343268000,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"imsOrgId": "{ORG_ID}",
"packageVersion": 2
},
{
"id": "11af34c0eee449ac84ef28c66d9383e3",
"version": 0,
"createdDate": 1739343073000,
"modifiedDate": 1739343073000,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"imsOrgId": "{ORG_ID}",
"packageVersion": 1
}
]
Envoyer un traitement de mise à jour (#submit-update)
Envoyez les nouvelles mises à jour aux objets sandbox cibles en adressant une requête PATCH au point d’entrée /packages/{packageId}/import et en fournissant l’identifiant du package.
Format d’API
PATCH /packages/{packageId}/import
packageIdRequête
curl -X POST \
https://platform-stage.adobe.io/data/foundation/exim/packages/{PACKAGE_ID}/import/ \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
-d '{
"id": "50fd94f8072b4f248737a2b57b41058f",
"name": "Test Update",
"destinationSandbox": {
"name": "test-sandbox-sbt",
"imsOrgId": "{ORG_ID}"
},
"overwriteMappings": {
"https://ns.adobe.com/sandboxtoolingstage/schemas/327a48c83a5359f8160420a00d5a07f0ba8631a1fd466f9e" : {
"id" : "https://ns.adobe.com/sandboxtoolingstage/schemas/e346bb2cd7b26576cb51920d214aebbd42940a9bf94a75cd",
"type" : "REGISTRY_SCHEMA"
}
}
}'
Réponse
Une réponse réussie renvoie l’identifiant de tâche pour la mise à jour.
{
"id": "3cec9bae662e43d9b9106fcbf7744a75",
"name": "Update Job Name",
"description": "Update Job Description",
"visibility": "TENANT",
"requestType": "IMPORT",
"expiry": 0,
"snapshotId": "{SNAPSHOT_ID}",
"packageVersion": 2,
"createdTimestamp": 0,
"modifiedTimestamp": 0,
"type": "PARTIAL",
"jobStatus": "PENDING",
"jobType": "UPDATE",
"counter": 0,
"imsOrgId": "{ORG_ID}",
"sourceSandbox": {
"name": "prod",
"imsOrgId": "{ORG_ID}",
"empty": false
},
"destinationSandbox": {
"name": "amanda-1",
"imsOrgId": "{ORG_ID}",
"empty": false
},
"schemaFieldMappings": null
}
Désactiver la mise à jour et le remplacement pour un package (#disable-update)
Désactivez la mise à jour et le remplacement des packages qui ne les prennent pas en charge, en envoyant une requête GET au point d’entrée /packages/{packageId}/?{QUERY_PARAMS} et en fournissant l’identifiant du package.
Format d’API
PATCH /packages/{packageId}?{QUERY_PARAMS}
packageIdtrue ou falseRequête
curl -X POST \
https://platform-stage.adobe.io/data/foundation/exim/packages/{PACKAGE_ID}?getCapabilities=true'/ \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
Réponse
Une réponse réussie renvoie une liste des fonctionnalités du package.
{
"id": "80230dde96574a828191144709bb9b51",
"version": 3,
"createdDate": 1749808582000,
"modifiedDate": 1749808648000,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}",
"name": "Ankit_Primary_Descriptor_Test",
"description": "RestPackage",
"imsOrgId": "{ORG_ID}",
"clientId": "usecasebuilder",
"packageType": "PARTIAL",
"expiry": 1757584598000,
"publishDate": 1749808648000,
"status": "PUBLISHED",
"packageVisibility": "PRIVATE",
"latestPackageVersion": 0,
"packageAccessType": "TENANT",
"artifactsList": [
{
"id": "https://ns.adobe.com/sandboxtoolingstage/schemas/1c767056056de64d8030380d1b9f570d26bc15501a1e0e95",
"altId": null,
"type": "REGISTRY_SCHEMA",
"found": false,
"count": 0
}
],
"schemaMapping": {},
"sourceSandbox": {
"name": "atul-sandbox",
"imsOrgId": "{ORG_ID}",
"empty": false
},
"packageCapabilities": {
"capabilities": [
"VERSIONABLE"
]
}
}