Point d’entrée de gestion des environnements de test
Les environnements de test de Adobe Experience Platform fournissent des environnements de développement isolés qui vous permettent de tester des fonctionnalités, d’exécuter des expériences et de créer des configurations personnalisées sans affecter votre environnement de production. Le point d’entrée /sandboxes
de l’API Sandbox vous permet de gérer par programmation les environnements de test dans Platform.
Prise en main
Le point d’entrée dʼAPI utilisé dans ce guide fait partie de lʼ Sandbox API. Avant de continuer, consultez le guide de prise en main pour obtenir des liens vers la documentation associée, un guide de lecture des exemples d’appels API dans ce document et des informations importantes sur les en-têtes requis pour réussir des appels vers n’importe quelle API d’Experience Platform.
Récupération d’une liste d’environnements de test list
Vous pouvez répertorier tous les environnements de test appartenant à votre organisation (actifs ou non) en effectuant une requête GET sur le point de terminaison /sandboxes
.
Format d’API
GET /sandboxes?{QUERY_PARAMS}
{QUERY_PARAMS}
Requête
curl -X GET \
https://platform.adobe.io/data/foundation/sandbox-management/sandboxes?&limit=4&offset=1 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
Réponse
Une réponse réussie renvoie une liste de sandbox appartenant à votre organisation, y compris des détails tels que name
, title
, state
et type
.
{
"sandboxes": [
{
"name": "prod",
"title": "Production",
"state": "active",
"type": "production",
"region": "VA7",
"isDefault": true,
"eTag": 2,
"createdDate": "2019-09-04 04:57:24",
"lastModifiedDate": "2019-09-04 04:57:24",
"createdBy": "{USER_ID}",
"modifiedBy": "{USER_ID}"
},
{
"name": "dev",
"title": "Development",
"state": "active",
"type": "development",
"region": "VA7",
"isDefault": false,
"eTag": 1,
"createdDate": "2019-09-03 22:27:48",
"lastModifiedDate": "2019-09-03 22:27:48",
"createdBy": "{USER_ID}",
"modifiedBy": "{USER_ID}"
},
{
"name": "stage",
"title": "Staging",
"state": "active",
"type": "development",
"region": "VA7",
"isDefault": false,
"eTag": 1,
"createdDate": "2019-09-03 22:27:48",
"lastModifiedDate": "2019-09-03 22:27:48",
"createdBy": "{USER_ID}",
"modifiedBy": "{USER_ID}"
},
{
"name": "dev-2",
"title": "Development 2",
"state": "creating",
"type": "development",
"region": "VA7",
"isDefault": false,
"eTag": 1,
"createdDate": "2019-09-07 10:16:02",
"lastModifiedDate": "2019-09-07 10:16:02",
"createdBy": "{USER_ID}",
"modifiedBy": "{USER_ID}"
}
],
"_page": {
"limit": 4,
"count": 4
},
"_links": {
"next": {
"href": "https://platform.adobe.io:443/data/foundation/sandbox-management/sandboxes/?limit={limit}&offset={offset}",
"templated": true
},
"prev": {
"href": "https://platform.adobe.io:443/data/foundation/sandbox-management/sandboxes?offset=0&limit=1",
"templated": null
},
"page": {
"href": "https://platform.adobe.io:443/data/foundation/sandbox-management/sandboxes?offset=1&limit=1",
"templated": null
}
}
}
name
title
state
L’état de traitement actuel du sandbox. Un sandbox peut avoir l’un des états suivants :
creating
: l’environnement de test a été créé, mais le système continue de le configurer.active
: l’environnement de test est créé et actif.failed
: en raison d’une erreur, le système n’a pas pu configurer l’environnement de test et est désactivé.deleted
: l’environnement de test a été désactivé manuellement.
type
development
et production
.isDefault
eTag
Recherche d’un sandbox lookup
Vous pouvez rechercher un sandbox individuel en effectuant une requête GET comprenant la propriété name
du sandbox dans le chemin de requête.
Format d’API
GET /sandboxes/{SANDBOX_NAME}
{SANDBOX_NAME}
name
du sandbox que vous souhaitez rechercher.Requête
La requête suivante récupère un sandbox nommé « dev-2 ».
curl -X GET \
https://platform.adobe.io/data/foundation/sandbox-management/sandboxes/dev-2 \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
Réponse
Une réponse réussie renvoie les détails du sandbox, y compris son name
, title
, state
et type
.
{
"name": "dev-2",
"title": "Development 2",
"state": "creating",
"type": "development",
"region": "VA7",
"isDefault": false,
"eTag": 1,
"createdDate": "2019-09-07 10:16:02",
"lastModifiedDate": "2019-09-07 10:16:02",
"createdBy": "{USER_ID}",
"modifiedBy": "{USER_ID}"
}
name
title
state
L’état de traitement actuel du sandbox. Un sandbox peut avoir l’un des états suivants :
- création : le sandbox a été créé, mais le système continue de le configurer.
- actif : le sandbox est créé et actif.
- échec : en raison d’une erreur, le système n’a pas pu configurer le sandbox et ce dernier a été désactivé.
- supprimé : le sandbox a été désactivé manuellement.
type
development
et production
.isDefault
eTag
Créer un sandbox create
Vous pouvez créer un environnement de test de développement ou de production en envoyant une requête de POST au point de terminaison /sandboxes
.
Créer une sandbox de développement
Pour créer un environnement de test de développement, vous devez fournir un attribut type
avec une valeur development
dans le payload de la requête.
Format d’API
POST /sandboxes
Requête
La requête suivante crée un nouvel environnement de test de développement nommé "acme-dev".
curl -X POST \
https://platform.adobe.io/data/foundation/sandbox-management/sandboxes \
-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 '{
"name": "acme-dev",
"title": "Acme Business Group dev",
"type": "development"
}'
name
title
type
development
.Réponse
Une réponse réussie renvoie les détails du nouveau sandbox, indiquant que son state
est « création ».
{
"name": "acme-dev",
"title": "Acme Business Group dev",
"state": "creating",
"type": "development",
"region": "VA7"
}
state
deviendra "actif" ou "en échec".Création d’un environnement de test de production
Pour créer un environnement de test de production, vous devez fournir un attribut type
avec une valeur production
dans le payload de la requête.
Format d’API
POST /sandboxes
Requête
La requête suivante crée un nouvel environnement de test de production nommé "acme".
curl -X POST \
https://platform.adobe.io/data/foundation/sandbox-management/sandboxes \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H `Accept: application/json` \
-H 'Content-Type: application/json' \
-d '{
"name": "acme",
"title": "Acme Business Group",
"type": "production"
}'
name
title
type
production
.Réponse
Une réponse réussie renvoie les détails du nouveau sandbox, indiquant que son state
est « création ».
{
"name": "acme",
"title": "Acme Business Group",
"state": "creating",
"type": "production",
"region": "VA7"
}
state
deviendra "actif" ou "en échec".Mise à jour d’un sandbox put
Vous pouvez mettre à jour un ou plusieurs champs d’un sandbox en effectuant une requête PATCH incluant le name
du sandbox dans le chemin de requête et la propriété à mettre à jour dans le payload de la requête.
title
d’un environnement de test peut être mise à jour.Format d’API
PATCH /sandboxes/{SANDBOX_NAME}
{SANDBOX_NAME}
name
du sandbox que vous souhaitez mettre à jour.Requête
La requête suivante met à jour la propriété title
de l’environnement de test nommé "acme".
curl -X PATCH \
https://platform.adobe.io/data/foundation/sandbox-management/sandboxes/acme \
-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 '{
"title": "Acme Business Group prod"
}'
Réponse
Une réponse réussie renvoie un état HTTP 200 (OK) avec les détails du sandbox mis à jour.
{
"name": "acme",
"title": "Acme Business Group prod",
"state": "active",
"type": "production",
"region": "VA7"
}
Réinitialisation d’un sandbox reset
Les environnements de test disposent d’une fonctionnalité de "réinitialisation d’usine" qui supprime toutes les ressources autres que les ressources par défaut d’un environnement de test. Vous pouvez réinitialiser un sandbox en effectuant une requête PUT comprenant le name
du sandbox dans le chemin d’accès de la requête.
Format d’API
PUT /sandboxes/{SANDBOX_NAME}
{SANDBOX_NAME}
name
du sandbox que vous souhaitez réinitialiser.validationOnly
validationOnly=true
pour vérifier si l’environnement de test que vous êtes sur le point de réinitialiser contient des données Adobe Analytics, Adobe Audience Manager ou de partage de segment.Requête
La requête suivante réinitialise un environnement de test nommé "acme-dev".
curl -X PUT \
https://platform.adobe.io/data/foundation/sandbox-management/sandboxes/acme-dev?validationOnly=true \
-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 '{
"action": "reset"
}'
action
Réponse
Une réponse réussie renvoie les détails du sandbox mis à jour, indiquant que son state
est « resetting ».
{
"id": "d8184350-dbf5-11e9-875f-6bf1873fec16",
"name": "acme-dev",
"title": "Acme Business Group dev",
"state": "resetting",
"type": "development",
"region": "VA7"
}
L’environnement de test de production par défaut et les environnements de test de production créés par l’utilisateur ne peuvent pas être réinitialisés si le graphique d’identités hébergé à l’intérieur de celui-ci est également utilisé par Adobe Analytics pour la fonction Analyse entre appareils (CDA) ou si le graphique d’identités hébergé à l’intérieur de celui-ci est également utilisé par Adobe Audience Manager pour la fonction Destinations basées sur les personnes (PBD).
Voici une liste d’exceptions possibles qui peuvent empêcher la réinitialisation d’un environnement de test :
{
"status": 400,
"title": "Sandbox `{SANDBOX_NAME}` cannot be reset. The identity graph hosted in this sandbox is also being used by Adobe Analytics for the Cross Device Analytics (CDA) feature.",
"type": "http://ns.adobe.com/aep/errors/SMS-2074-400"
},
{
"status": 400,
"title": "Sandbox `{SANDBOX_NAME}` cannot be reset. The identity graph hosted in this sandbox is also being used by Adobe Audience Manager for the People Based Destinations (PBD) feature.",
"type": "http://ns.adobe.com/aep/errors/SMS-2075-400"
},
{
"status": 400,
"title": "Sandbox `{SANDBOX_NAME}` cannot be reset. The identity graph hosted in this sandbox is also being used by Adobe Audience Manager for the People Based Destinations (PBD) feature, as well by Adobe Analytics for the Cross Device Analytics (CDA) feature.",
"type": "http://ns.adobe.com/aep/errors/SMS-2076-400"
},
{
"status": 400,
"title": "Warning: Sandbox `{SANDBOX_NAME}` is used for bi-directional segment sharing with Adobe Audience Manager or Audience Core Service.",
"type": "http://ns.adobe.com/aep/errors/SMS-2077-400"
}
Vous pouvez procéder à la réinitialisation d’un environnement de test de production utilisé pour le partage bidirectionnel de segments avec Audience Manager ou Audience Core Service en ajoutant le paramètre ignoreWarnings
à votre requête.
Format d’API
PUT /sandboxes/{SANDBOX_NAME}?ignoreWarnings=true
{SANDBOX_NAME}
name
du sandbox que vous souhaitez réinitialiser.ignoreWarnings
Requête
La requête suivante réinitialise un environnement de test de production nommé "acme".
curl -X PUT \
https://platform.adobe.io/data/foundation/sandbox-management/sandboxes/acme?ignoreWarnings=true \
-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 '{
"action": "reset"
}'
Réponse
Une réponse réussie renvoie les détails du sandbox mis à jour, indiquant que son state
est « resetting ».
{
"id": "d8184350-dbf5-11e9-875f-6bf1873fec16",
"name": "acme",
"title": "Acme Business Group prod",
"state": "resetting",
"type": "production",
"region": "VA7"
}
Suppression d’un sandbox delete
Vous pouvez supprimer un sandbox en effectuant une requête DELETE qui inclut le name
du sandbox dans le chemin de la requête.
status
de l’environnement de test sur "supprimé" et la désactive. Les requêtes GET peuvent toujours récupérer les détails du sandbox après sa suppression.Format d’API
DELETE /sandboxes/{SANDBOX_NAME}
{SANDBOX_NAME}
name
du sandbox que vous souhaitez supprimer.validationOnly
validationOnly=true
pour vérifier si l’environnement de test que vous êtes sur le point de réinitialiser contient des données Adobe Analytics, Adobe Audience Manager ou de partage de segment.ignoreWarnings
Requête
La requête suivante supprime un environnement de test de production nommé "acme".
curl -X DELETE \
https://platform.adobe.io/data/foundation/sandbox-management/sandboxes/acme?ignoreWarnings=true \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}'
Réponse
Une réponse réussie renvoie les détails mis à jour du sandbox, indiquant que son state
est « supprimé ».
{
"name": "acme",
"title": "Acme Business Group prod",
"state": "deleted",
"type": "development",
"region": "VA7"
}