Ce document fournit un guide complet sur l’utilisation de points de terminaison de l’API d’ingestion par lots dans Adobe Experience Platform. Pour obtenir un aperçu des API d’ingestion par lots, y compris les conditions préalables et les bonnes pratiques, veuillez commencer par lire la section Présentation de l’API d’ingestion par lots.
L’annexe de ce document fournit des informations sur le formatage des données à utiliser pour l’ingestion, y compris des exemples de fichiers de données CSV et JSON.
Les points de terminaison d’API utilisés dans ce guide font partie de la variable API Batch Ingestion. L’ingestion par lots est fournie par le biais d’une API RESTful qui vous permet d’effectuer des opérations CRUD de base sur les types d’objets pris en charge.
Avant de poursuivre, veuillez consulter la section Présentation de l’API d’ingestion par lots et le guide de prise en main.
Les étapes suivantes s’appliquent aux petits fichiers (256 Mo ou moins). Si vous atteignez un délai d’expiration de passerelle ou que vous obtenez des erreurs de requêtes de taille du corps, vous devez passer au chargement de fichiers volumineux.
Vous devrez tout d’abord créer un lot au format JSON en tant que format d’entrée. Lors de la création du lot, vous devrez fournir un identifiant de jeu de données. Vous devrez également vous assurer que tous les fichiers chargés en tant que partie intégrante du lot sont conformes au schéma XDM lié au jeu de données fourni.
Les exemples ci-dessous concernent le format JSON à une seule ligne. Pour ingérer un format JSON à plusieurs lignes, l’indicateur isMultiLineJson
doit être défini. Pour plus d’informations, reportez-vous au guide de dépannage de l’ingestion par lots.
Format d’API
POST /batches
Requête
curl -X POST https://platform.adobe.io/data/foundation/import/batches \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-d '{
"datasetId": "{DATASET_ID}",
"inputFormat": {
"format": "json"
}
}'
Paramètre | Description |
---|---|
{DATASET_ID} |
L’identifiant du jeu de données de référence. |
Réponse
{
"id": "{BATCH_ID}",
"imsOrg": "{ORG_ID}",
"updated": 0,
"status": "loading",
"created": 0,
"relatedObjects": [
{
"type": "dataSet",
"id": "{DATASET_ID}"
}
],
"version": "1.0.0",
"tags": {},
"createdUser": "{USER_ID}",
"updatedUser": "{USER_ID}"
}
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot récemment créé. |
{DATASET_ID} |
L’identifiant du jeu de données référencé. |
Maintenant que vous avez créé un lot, vous pouvez utiliser l’identifiant de lot de la réponse de création de lot pour charger les fichiers dans le lot. Vous pouvez charger plusieurs fichiers dans le lot.
Reportez-vous à l’annexe pour y trouver un exemple de fichier de données JSON correctement formaté.
Format d’API
PUT /batches/{BATCH_ID}/datasets/{DATASET_ID}/files/{FILE_NAME}
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot dans lequel vous souhaitez effectuer le chargement. |
{DATASET_ID} |
L’identifiant du jeu de données de référence du lot. |
{FILE_NAME} |
Le nom du fichier que vous souhaitez charger. Veillez à utiliser un nom de fichier unique afin de ne pas créer de conflit avec un autre fichier pour le lot de fichiers en cours d’envoi. |
Requête
L’API prend en charge le chargement en une seule partie. Assurez-vous que le type de contenu est bien application/octet-stream.
curl -X PUT https://platform.adobe.io/data/foundation/import/batches/{BATCH_ID}/datasets/{DATASET_ID}/files/{FILE_NAME}.json \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'content-type: application/octet-stream' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
--data-binary "@{FILE_PATH_AND_NAME}.json"
Paramètre | Description |
---|---|
{FILE_PATH_AND_NAME} |
Le chemin d’accès et le nom complets du fichier que vous tentez de charger. Ce chemin d’accès au fichier est le chemin d’accès au fichier local, tel que acme/customers/campaigns/summer.json . |
Réponse
200 OK
Une fois que vous avez terminé de charger toutes les différentes parties du fichier, vous devrez signaler que les données ont été entièrement chargées et que le lot est prêt pour la promotion.
Format d’API
POST /batches/{BATCH_ID}?action=COMPLETE
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot dans lequel vous souhaitez effectuer le chargement. |
Requête
curl -X POST "https://platform.adobe.io/data/foundation/import/batches/{BATCH_ID}?action=COMPLETE" \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Réponse
200 OK
Les étapes suivantes s’appliquent aux petits fichiers (256 Mo ou moins). Si vous atteignez un délai d’expiration de passerelle ou que vous obtenez des erreurs de requêtes de taille du corps, vous devrez passer au chargement de fichiers volumineux.
Vous devrez tout d’abord créer un lot, avec Parquet en tant que format d’entrée. Lors de la création du lot, vous devrez fournir un identifiant de jeu de données. Vous devrez également vous assurer que tous les fichiers chargés en tant que partie intégrante du lot sont conformes au schéma XDM lié au jeu de données fourni.
Requête
curl -X POST "https://platform.adobe.io/data/foundation/import/batches" \
-H "Authorization: Bearer {ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-H "x-gw-ims-org-id: {ORG_ID}" \
-H "x-api-key: {API_KEY}" \
-H "x-sandbox-name: {SANDBOX_NAME}"
-d '{
"datasetId": "{DATASET_ID}",
"inputFormat": {
"format": "parquet"
}
}'
Paramètre | Description |
---|---|
{DATASET_ID} |
L’identifiant du jeu de données de référence. |
Réponse
201 Created
{
"id": "{BATCH_ID}",
"imsOrg": "{ORG_ID}",
"updated": 0,
"status": "loading",
"created": 0,
"relatedObjects": [
{
"type": "dataSet",
"id": "{DATASET_ID}"
}
],
"version": "1.0.0",
"tags": {},
"createdUser": "{USER_ID}",
"updatedUser": "{USER_ID}"
}
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot récemment créé. |
{DATASET_ID} |
L’identifiant du jeu de données référencé. |
{USER_ID} |
L’identifiant de l’utilisateur qui a créé le lot. |
Maintenant que vous avez créé un lot, vous pouvez utiliser le batchId
précisé plus haut pour charger des fichiers dans le lot. Vous pouvez charger plusieurs fichiers dans le lot.
Format d’API
PUT /batches/{BATCH_ID}/datasets/{DATASET_ID}/files/{FILE_NAME}
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot dans lequel vous souhaitez effectuer le chargement. |
{DATASET_ID} |
L’identifiant du jeu de données de référence du lot. |
{FILE_NAME} |
Le nom du fichier que vous souhaitez charger. Veillez à utiliser un nom de fichier unique afin de ne pas créer de conflit avec un autre fichier pour le lot de fichiers en cours d’envoi. |
Requête
Cette API prend en charge le chargement en une seule partie. Assurez-vous que le type de contenu est bien application/octet-stream.
curl -X PUT https://platform.adobe.io/data/foundation/import/batches/{BATCH_ID}/datasets/{DATASET_ID}/files/{FILE_NAME}.parquet \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/octet-stream' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
--data-binary "@{FILE_PATH_AND_NAME}.parquet"
Paramètre | Description |
---|---|
{FILE_PATH_AND_NAME} |
Le chemin d’accès et le nom complets du fichier que vous tentez de charger. Ce chemin d’accès au fichier est le chemin d’accès au fichier local, tel que acme/customers/campaigns/summer.parquet . |
Réponse
200 OK
Une fois que vous avez terminé de charger toutes les différentes parties du fichier, vous devrez signaler que les données ont été entièrement chargées et que le lot est prêt pour la promotion.
Format d’API
POST /batches/{BATCH_ID}?action=complete
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot que vous souhaitez signaler comme prêt pour être terminé. |
Requête
curl -X POST https://platform.adobe.io/data/foundation/import/batches/{BATCH_ID}?action=COMPLETE \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Réponse
200 OK
Cette section explique comment charger des fichiers d’une taille supérieure à 256 Mo. Les fichiers volumineux sont chargés en blocs, puis assemblés au moyen d’un signal API.
Vous devrez tout d’abord créer un lot, avec Parquet en tant que format d’entrée. Lors de la création du lot, vous devrez fournir un identifiant de jeu de données. Vous devrez également vous assurer que tous les fichiers chargés en tant que partie intégrante du lot sont conformes au schéma XDM lié au jeu de données fourni.
Format d’API
POST /batches
Requête
curl -X POST https://platform.adobe.io/data/foundation/import/batches \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
-d '{
"datasetId": "{DATASET_ID}",
"inputFormat": {
"format": "parquet"
}
}'
Paramètre | Description |
---|---|
{DATASET_ID} |
L’identifiant du jeu de données de référence. |
Réponse
201 Created
{
"id": "{BATCH_ID}",
"imsOrg": "{ORG_ID}",
"updated": 0,
"status": "loading",
"created": 0,
"relatedObjects": [
{
"type": "dataSet",
"id": "{DATASET_ID}"
}
],
"version": "1.0.0",
"tags": {},
"createdUser": "{USER_ID}",
"updatedUser": "{USER_ID}"
}
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot récemment créé. |
{DATASET_ID} |
L’identifiant du jeu de données référencé. |
{USER_ID} |
L’identifiant de l’utilisateur qui a créé le lot. |
Après la création du lot, vous devrez initialiser le fichier volumineux avant de charger les blocs dans le lot.
Format d’API
POST /batches/{BATCH_ID}/datasets/{DATASET_ID}/files/{FILE_NAME}
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot récemment créé. |
{DATASET_ID} |
L’identifiant du jeu de données référencé. |
{FILE_NAME} |
Le nom du fichier sur le point d’être initialisé. |
Requête
curl -X POST https://platform.adobe.io/data/foundation/import/batches/{BATCH_ID}/datasets/{DATASET_ID}/files/{FILE_NAME}.parquet?action=INITIALIZE \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Réponse
201 Created
Une fois le fichier créé, tous les blocs suivants peuvent être chargés en exécutant des requêtes PATCH répétées, une pour chaque section du fichier.
Format d’API
PATCH /batches/{BATCH_ID}/datasets/{DATASET_ID}/files/{FILE_NAME}
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot dans lequel vous souhaitez effectuer le chargement. |
{DATASET_ID} |
L’identifiant du jeu de données de référence du lot. |
{FILE_NAME} |
Le nom du fichier que vous souhaitez charger. Veillez à utiliser un nom de fichier unique afin de ne pas créer de conflit avec un autre fichier pour le lot de fichiers en cours d’envoi. |
Requête
Cette API prend en charge le chargement en une seule partie. Assurez-vous que le type de contenu est bien application/octet-stream.
curl -X PATCH https://platform.adobe.io/data/foundation/import/batches/{BATCH_ID}/datasets/{DATASET_ID}/files/{FILE_NAME}.parquet \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/octet-stream' \
-H 'Content-Range: bytes {CONTENT_RANGE}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
--data-binary "@{FILE_PATH_AND_NAME}.parquet"
Paramètre | Description |
---|---|
{CONTENT_RANGE} |
En entiers, le début et la fin de la plage demandée. |
{FILE_PATH_AND_NAME} |
Le chemin d’accès et le nom complets du fichier que vous tentez de charger. Ce chemin d’accès au fichier est le chemin d’accès au fichier local, tel que acme/customers/campaigns/summer.json . |
Réponse
200 OK
Maintenant que vous avez créé un lot, vous pouvez utiliser le batchId
précisé plus haut pour charger des fichiers dans le lot. Vous pouvez charger plusieurs fichiers dans le lot.
Format d’API
POST /batches/{BATCH_ID}/datasets/{DATASET_ID}/files/{FILE_NAME}
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot que vous souhaitez signaler comme étant terminé. |
{DATASET_ID} |
L’identifiant du jeu de données de référence du lot. |
{FILE_NAME} |
Le nom du fichier que vous souhaitez signaler comme étant terminé. |
Requête
curl -X POST https://platform.adobe.io/data/foundation/import/batches/{BATCH_ID}/datasets/{DATASET_ID}/files/{FILE_NAME}.parquet?action=COMPLETE \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Réponse
201 Created
Une fois que vous avez terminé de charger toutes les différentes parties du fichier, vous devrez signaler que les données ont été entièrement chargées et que le lot est prêt pour la promotion.
Format d’API
POST /batches/{BATCH_ID}?action=COMPLETE
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot que vous souhaitez signaler comme étant terminé. |
Requête
curl -X POST https://platform.adobe.io/data/foundation/import/batches/{BATCH_ID}?action=COMPLETE \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Réponse
200 OK
Pour ingérer des fichiers CSV, vous devrez créer une classe, un schéma et un jeu de données qui prend en charge le format CSV. Pour obtenir des informations détaillées sur la création de la classe et du schéma nécessaires, suivez les instructions fournies dans le tutoriel de création de schémas ad hoc.
Les étapes suivantes s’appliquent aux petits fichiers (256 Mo ou moins). Si vous atteignez un délai d’expiration de passerelle ou que vous obtenez des erreurs de requêtes de taille du corps, vous devrez passer au chargement de fichiers volumineux.
Après avoir suivi les instructions ci-dessus pour créer la classe et le schéma nécessaires, vous devrez créer un jeu de données capable de prendre en charge le format CSV.
Format d’API
POST /catalog/dataSets
Requête
curl -X POST https://platform.adobe.io/data/foundation/catalog/dataSets \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
-d '{
"name": "{DATASET_NAME}",
"schemaRef": {
"id": "https://ns.adobe.com/{TENANT_ID}/schemas/{SCHEMA_ID}",
"contentType": "application/vnd.adobe.xed+json;version=1"
}
}'
Paramètre | Description |
---|---|
{TENANT_ID} |
Cet identifiant permet de s’assurer que les espaces de noms des ressources que vous créez sont corrects et contenus dans votre organisation. |
{SCHEMA_ID} |
L’identifiant du schéma que vous avez créé. |
Vous devrez ensuite créer un lot au format d’entrée CSV. Lors de la création du lot, vous devrez fournir un identifiant de jeu de données. Vous devrez également vous assurer que tous les fichiers chargés en tant que partie intégrante du lot sont conformes au schéma lié au jeu de données fourni.
Format d’API
POST /batches
Requête
curl -X POST https://platform.adobe.io/data/foundation/import/batches \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
-d '{
"datasetId": "{DATASET_ID}",
"inputFormat": {
"format": "csv"
}
}'
Paramètre | Description |
---|---|
{DATASET_ID} |
L’identifiant du jeu de données de référence. |
Réponse
201 Created
{
"id": "{BATCH_ID}",
"imsOrg": "{ORG_ID}",
"updated": 0,
"status": "loading",
"created": 0,
"relatedObjects": [
{
"type": "dataSet",
"id": "{DATASET_ID}"
}
],
"version": "1.0.0",
"tags": {},
"createdUser": "{USER_ID}",
"updatedUser": "{USER_ID}"
}
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot récemment créé. |
{DATASET_ID} |
L’identifiant du jeu de données référencé. |
{USER_ID} |
L’identifiant de l’utilisateur qui a créé le lot. |
Maintenant que vous avez créé un lot, vous pouvez utiliser le batchId
précisé plus haut pour charger des fichiers dans le lot. Vous pouvez charger plusieurs fichiers dans le lot.
Reportez-vous à l’annexe pour y trouver un exemple de fichier de données CSV correctement formaté.
Format d’API
PUT /batches/{BATCH_ID}/datasets/{DATASET_ID}/files/{FILE_NAME}
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot dans lequel vous souhaitez effectuer le chargement. |
{DATASET_ID} |
L’identifiant du jeu de données de référence du lot. |
{FILE_NAME} |
Le nom du fichier que vous souhaitez charger. Veillez à utiliser un nom de fichier unique afin de ne pas créer de conflit avec un autre fichier pour le lot de fichiers en cours d’envoi. |
Requête
Cette API prend en charge le chargement en une seule partie. Assurez-vous que le type de contenu est bien application/octet-stream.
curl -X PUT https://platform.adobe.io/data/foundation/import/batches/{BATCH_ID}/datasets/{DATASET_ID}/files/{FILE_NAME}.csv \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/octet-stream' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
--data-binary "@{FILE_PATH_AND_NAME}.csv"
Paramètre | Description |
---|---|
{FILE_PATH_AND_NAME} |
Le chemin d’accès et le nom complets du fichier que vous tentez de charger. Ce chemin d’accès au fichier est le chemin d’accès au fichier local, tel que acme/customers/campaigns/summer.csv . |
Réponse
200 OK
Une fois que vous avez terminé de charger toutes les parties du fichier, vous devrez signaler que les données ont été entièrement chargées et que le lot est prêt pour la promotion.
Format d’API
POST /batches/{BATCH_ID}?action=COMPLETE
Requête
curl -X POST https://platform.adobe.io/data/foundation/import/batches/{BATCH_ID}?action=COMPLETE \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Réponse
200 OK
Il est toujours possible d’annuler un lot pendant son traitement. Une fois qu’un lot est finalisé (et que son état passe par exemple à « réussi » ou « échec »), il est impossible de l’annuler.
Format d’API
POST /batches/{BATCH_ID}?action=ABORT
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot que vous souhaitez annuler. |
Requête
curl -X POST https://platform.adobe.io/data/foundation/import/batches/{BATCH_ID}?action=ABORT \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Réponse
200 OK
Vous pouvez supprimer un lot en exécutant la requête POST suivante avec le paramètre de requête action=REVERT
vers l’identifiant du lot que vous souhaitez supprimer. Le lot est marqué comme « inactif », ce qui le rend éligible pour le nettoyage de la mémoire. Le lot sera collecté de manière asynchrone : il sera alors marqué comme « supprimé ».
Format d’API
POST /batches/{BATCH_ID}?action=REVERT
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot que vous souhaitez supprimer. |
Requête
curl -X POST https://platform.adobe.io/data/foundation/import/batches/{BATCH_ID}?action=REVERT \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Réponse
200 OK
Il peut parfois être nécessaire de mettre à jour les données du magasin de profils de votre organisation. Vous pouvez par exemple avoir besoin de corriger des enregistrements ou de modifier une valeur d’attribut. Adobe Experience Platform prend en charge la mise à jour ou le correctif des données de la banque de profils par le biais d’une action d’insertion ou de "correction d’un lot".
Ces mises à jour ne sont autorisées que sur les enregistrements de profil, et non sur les événements d’expérience.
Les éléments suivants sont requis pour corriger un lot :
isUpsert:true
à ajouter à la balise unifiedProfile
tableau. Pour plus d’informations sur les étapes qui montrent comment créer un jeu de données ou configurer un jeu de données existant à des fins de publication, suivez le tutoriel relatif à activation d’un jeu de données pour les mises à jour de Profile.Une fois qu’un jeu de données est activé pour Profile et upsert, ainsi qu’un fichier Parquet contenant les champs que vous souhaitez répliquer, ainsi que les champs d’identité nécessaires, vous pouvez suivre les étapes pour ingestion de fichiers Parquet pour terminer le correctif par ingestion par lots.
Si vous souhaitez remplacer un lot déjà ingéré, vous pouvez le faire grâce à la fonctionnalité « relecture de lot ». Cette action équivaut à supprimer l’ancien lot et à en ingérer un nouveau pour le remplacer.
Vous devrez tout d’abord créer un lot au format JSON en tant que format d’entrée. Lors de la création du lot, vous devrez fournir un identifiant de jeu de données. Vous devrez également vous assurer que tous les fichiers chargés en tant que partie intégrante du lot sont conformes au schéma XDM lié au jeu de données fourni. Vous devrez également fournir le ou les anciens lots comme référence dans la section de relecture. Dans l’exemple ci-dessous, vous effectuez la relecture de lots aux identifiants batchIdA
et batchIdB
.
Format d’API
POST /batches
Requête
curl -X POST https://platform.adobe.io/data/foundation/import/batches \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/json' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
-d '{
"datasetId": "{DATASET_ID}",
"inputFormat": {
"format": "json"
},
"replay": {
"predecessors": ["${batchIdA}","${batchIdB}"],
"reason": "replace"
}
}'
Paramètre | Description |
---|---|
{DATASET_ID} |
L’identifiant du jeu de données de référence. |
Réponse
201 Created
{
"id": "{BATCH_ID}",
"imsOrg": "{ORG_ID}",
"updated": 0,
"status": "loading",
"created": 0,
"relatedObjects": [
{
"type": "dataSet",
"id": "{DATASET_ID}"
}
],
"replay": {
"predecessors": [
"batchIdA", "batchIdB"
],
"reason": "replace"
},
"version": "1.0.0",
"tags": {},
"createdUser": "{USER_ID}",
"updatedUser": "{USER_ID}"
}
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot récemment créé. |
{DATASET_ID} |
L’identifiant du jeu de données référencé. |
{USER_ID} |
L’identifiant de l’utilisateur qui a créé le lot. |
Maintenant que vous avez créé un lot, vous pouvez utiliser le batchId
précisé plus haut pour charger des fichiers dans le lot. Vous pouvez charger plusieurs fichiers dans le lot.
Format d’API
PUT /batches/{BATCH_ID}/datasets/{DATASET_ID}/files/{FILE_NAME}
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot dans lequel vous souhaitez effectuer le chargement. |
{DATASET_ID} |
L’identifiant du jeu de données de référence du lot. |
{FILE_NAME} |
Le nom du fichier que vous souhaitez charger. Veillez à utiliser un nom de fichier unique afin de ne pas créer de conflit avec un autre fichier pour le lot de fichiers en cours d’envoi. |
Requête
Cette API prend en charge le chargement en une seule partie. Assurez-vous que le type de contenu est bien application/octet-stream. Évitez d’employer l’option curl -F, car elle utilise par défaut une requête à parties multiples incompatible avec l’API.
curl -X PUT https://platform.adobe.io/data/foundation/import/batches/{BATCH_ID}/datasets/{DATASET_ID}/files/{FILE_NAME}.json \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'Content-Type: application/octet-stream' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
--data-binary "@{FILE_PATH_AND_NAME}.json"
Paramètre | Description |
---|---|
{FILE_PATH_AND_NAME} |
Le chemin d’accès et le nom complets du fichier que vous tentez de charger. Ce chemin d’accès au fichier est le chemin d’accès au fichier local, tel que acme/customers/campaigns/summer.json . |
Réponse
200 OK
Une fois que vous avez terminé de charger toutes les différentes parties du fichier, vous devrez signaler que les données ont été entièrement chargées et que le lot est prêt pour la promotion.
Format d’API
POST /batches/{BATCH_ID}?action=COMPLETE
Paramètre | Description |
---|---|
{BATCH_ID} |
L’identifiant du lot que vous souhaitez terminer. |
Requête
curl -X POST https://platform.adobe.io/data/foundation/import/batches/{BATCH_ID}?action=COMPLETE \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Réponse
200 OK
La section suivante contient des informations supplémentaires sur l’ingestion de données dans Experience Platform à l’aide de l’ingestion par lots.
Pour ingérer un fichier de données dans Experience Platform, la structure hiérarchique du fichier doit être conforme au Modèle de données d’expérience (XDM) schéma associé au jeu de données dans lequel il est chargé.
Vous trouverez des informations sur le mappage d’un fichier CSV pour être conforme à un schéma XDM dans le document traitant des exemples de transformations, ainsi qu’un exemple de fichier de données JSON correctement formaté. Les exemples de fichiers fournis dans ce document se trouvent ici :