La source SAP Commerce est en version Beta. Voir présentation des sources pour plus d’informations sur l’utilisation de sources étiquetées bêta.
Le tutoriel suivant décrit les étapes à suivre pour créer un SAP Commerce connexion source et flux de données à importer SAP Facturation d’abonnement les contacts et les données client vers Adobe Experience Platform à l’aide de la variable Flow Service API.
Ce guide nécessite une compréhension professionnelle des composants suivants d’Experience Platform :
Les sections suivantes apportent des informations supplémentaires dont vous aurez besoin pour vous connecter. SAP Commerce en utilisant la variable Flow Service API.
Pour vous connecter SAP Commerce pour Experience Platform, vous devez fournir des valeurs pour les propriétés de connexion suivantes :
Informations d’identification | Description |
---|---|
clientId |
La valeur de clientId à partir de la clé de service. |
clientSecret |
La valeur de clientSecret à partir de la clé de service. |
tokenEndpoint |
La valeur de url à partir de la clé de service, la variable https://subscriptionbilling.authentication.eu10.hana.ondemand.com . |
region |
Emplacement de votre centre de données. La région est présente dans la variable url et a une valeur similaire à eu10 ou us10 . Par exemple, si la variable url is https://subscriptionbilling.authentication.eu10.hana.ondemand.com , vous aurez alors besoin de eu10 . |
Pour plus d’informations sur ces informations d’identification, reportez-vous au SAP Commerce documentation.
Les étapes suivantes décrivent les étapes à suivre pour authentifier votre SAP Commerce source, créer une connexion source et créer un flux de données pour importer vos comptes et vos données de contacts dans Experience Platform.
Une connexion de base conserve les informations échangées entre votre source et Platform, y compris les informations d’authentification de votre source, l’état actuel de la connexion et votre identifiant de connexion de base unique. L’identifiant de connexion de base vous permet d’explorer et de parcourir des fichiers à partir de votre source et d’identifier les éléments spécifiques que vous souhaitez ingérer, y compris des informations concernant leurs types et formats de données.
Pour créer un identifiant de connexion de base, envoyez une requête de POST au /connections
point de terminaison lors de la fourniture de SAP Commerce informations d’identification d’authentification dans le corps de la requête.
Format d’API
POST /connections
Requête
La requête suivante permet de créer une connexion de base pour SAP Commerce :
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/connections' \
-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}' \
-H 'Content-Type: application/json' \
-d '{
"name": "SAP Commerce base connection",
"description": "Authenticated base connection for SAP Commerce",
"connectionSpec": {
"id": "d8ee38de-7ae9-4058-9610-c79ce75f8e92",
"version": "1.0"
},
"auth": {
"specName": "OAuth2 Client Credential",
"params": {
"region": "{REGION}",
"clientId": "{CLIENT_ID}",
"clientSecret": "{CLIENT_SECRET}"
"tokenEndpoint": "{TOKEN_ENDPOINT}"
}
}
}'
Propriété | Description |
---|---|
name |
Nom de la connexion de base. Assurez-vous que le nom de votre connexion de base est explicite, car vous pouvez lʼutiliser pour rechercher des informations sur votre connexion de base. |
description |
Une valeur facultative que vous pouvez inclure pour fournir plus d’informations sur votre connexion de base. |
connectionSpec.id |
Identifiant de spécification de connexion de votre source. Cet identifiant peut être récupéré une fois que votre source est enregistrée et approuvée par le biais de l’API Flow Service. |
auth.specName |
Type d’authentification que vous utilisez pour authentifier votre source sur Platform. |
auth.params.region |
Emplacement de votre centre de données. La région est présente dans la variable url et a une valeur similaire à eu10 ou us10 . Par exemple, si la variable url is https://subscriptionbilling.authentication.eu10.hana.ondemand.com vous aurez besoin de eu10 . |
auth.params.clientId |
La valeur de clientId à partir de la clé de service. |
auth.params.clientSecret |
La valeur de clientSecret à partir de la clé de service. |
auth.params.tokenEndpoint |
La valeur de url à partir de la clé de service, la variable https://subscriptionbilling.authentication.eu10.hana.ondemand.com . |
Réponse
Une réponse réussie renvoie la nouvelle connexion de base, y compris son identifiant de connexion unique (id
). Cet identifiant est nécessaire pour explorer la structure de fichiers et le contenu de votre source à l’étape suivante.
{
"id": "5f6d6022-3f64-400c-ba01-d4010de2d8ff",
"etag": "\"f8018de1-0000-0200-0000-6482d7210000\""
}
Une fois que vous disposez de votre identifiant de connexion de base, vous pouvez désormais explorer le contenu et la structure de vos données source en adressant une requête de GET à la variable /connections
point de terminaison tout en fournissant votre identifiant de connexion de base en tant que paramètre de requête.
Format d’API
GET /connections/{BASE_CONNECTION_ID}/explore?objectType=rest&object={OBJECT}&fileType={FILE_TYPE}&preview={PREVIEW}&sourceParams={SOURCE_PARAMS}
Lors de l’exécution de requêtes GET pour explorer la structure et le contenu des fichiers de votre source, vous devez inclure les paramètres de requête répertoriés dans le tableau ci-dessous :
Paramètre | Description |
---|---|
{BASE_CONNECTION_ID} |
Identifiant de connexion de base généré à l’étape précédente. |
objectType=rest |
Type d’objet que vous souhaitez explorer. Actuellement, cette valeur est toujours définie sur rest . |
{OBJECT} |
Ce paramètre est requis uniquement lors de l’affichage d’un répertoire spécifique. Sa valeur représente le chemin dʼaccès au répertoire que vous souhaitez explorer. Pour cette source, la valeur serait json . |
fileType=json |
Type de fichier du fichier que vous souhaitez importer dans Platform. Actuellement, json est le seul type de fichier pris en charge. |
{PREVIEW} |
Valeur booléenne qui définit si le contenu de la connexion prend en charge la prévisualisation. |
{SOURCE_PARAMS} |
Définit les paramètres du fichier source que vous souhaitez importer dans Platform. Pour récupérer le type de format accepté pour {SOURCE_PARAMS} , vous devez coder l’intégralité de la chaîne en base64. SAP Commerce prend en charge plusieurs API. Selon le type d’objet que vous utilisez, transmettez l’un des types suivants :
|
La variable SAP Commerce source prend en charge plusieurs API. Selon le type d’objet utilisé pour l’envoi de la requête, procédez comme suit :
Certains enregistrements de réponse ont été tronqués pour permettre une meilleure présentation.
Pour SAP Commerce API des clients Valeur de {SOURCE_PARAMS}
est transmis comme {"object_type":"customers"}
. Lorsqu’il est codé en base64, il équivaut à eyJvYmplY3RfdHlwZSI6ImN1c3RvbWVycyJ9
comme illustré ci-dessous.
curl -X GET \
'https://platform.adobe.io/data/foundation/flowservice/connections/f5421911-6f6c-41c7-aafa-5d9d2ce51535/explore?objectType=rest&object=json&fileType=json&preview=true&sourceParams=eyJvYmplY3RfdHlwZSI6ImN1c3RvbWVycyJ9' \
-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}'
Une réponse réussie renvoie une structure JSON comme suit :
{
"format": "hierarchical",
"schema": {
"type": "object",
"properties": {
"personalInfo": {
"type": "object",
"properties": {
"firstName": {
"type": "string"
},
"lastName": {
"type": "string"
}
}
},
"addresses": {
"type": "array",
"items": {
"type": "object",
"properties": {
"country": {
"type": "string"
},
"isDefault": {
"type": "boolean"
},
"phone": {
"type": "string"
},
"city": {
"type": "string"
},
"street": {
"type": "string"
},
"postalCode": {
"type": "string"
},
"addressUUID": {
"type": "string"
},
"houseNumber": {
"type": "string"
},
"additionalAddressInfo": {
"type": "string"
},
"state": {
"type": "string"
},
"email": {
"type": "string"
}
}
}
},
"customerNumber": {
"type": "string"
},
"corporateInfo": {
"type": "object",
"properties": {}
},
"customReferences": {
"type": "array",
"items": {
"type": "object",
"properties": {}
}
},
"externalObjectReferences": {
"type": "array",
"items": {
"type": "object",
"properties": {
"externalSystemId": {
"type": "string"
},
"externalId": {
"type": "string"
},
"externalIdTypeCode": {
"type": "string"
}
}
}
},
"createdAt": {
"type": "string"
},
"customerType": {
"type": "string"
},
"markets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"country": {
"type": "string"
},
"salesArea": {
"type": "object",
"properties": {
"division": {
"type": "string"
},
"distributionChannel": {
"type": "string"
},
"salesOrganization": {
"type": "string"
}
}
},
"priceType": {
"type": "string"
},
"active": {
"type": "boolean"
},
"currency": {
"type": "string"
},
"marketId": {
"type": "string"
}
}
}
},
"createdBy": {
"type": "string"
},
"changedBy": {
"type": "string"
},
"changedAt": {
"type": "string"
},
"defaultAddress": {
"type": "object",
"properties": {
"country": {
"type": "string"
},
"isDefault": {
"type": "boolean"
},
"phone": {
"type": "string"
},
"city": {
"type": "string"
},
"street": {
"type": "string"
},
"postalCode": {
"type": "string"
},
"addressUUID": {
"type": "string"
},
"houseNumber": {
"type": "string"
},
"additionalAddressInfo": {
"type": "string"
},
"state": {
"type": "string"
},
"email": {
"type": "string"
}
}
}
}
},
"data": [
{
"personalInfo": {
"firstName": "Test 1",
"lastName": "User 1"
},
"addresses": [
{
"email": "user1@test.com",
"phone": "123456890",
"houseNumber": "123",
"city": "New Orleans",
"state": "LA",
"postalCode": "700089",
"country": "US",
"addressUUID": "ff871221-ab48-435c-b1f5-903db1c3cea2",
"isDefault": true
}
],
"customerNumber": "2863620303",
"externalObjectReferences": [
{
"externalSystemId": "t090000",
"externalId": "1324566",
"externalIdTypeCode": "201"
}
],
"createdAt": "2023-05-31T06:39:28.499Z",
"customerType": "INDIVIDUAL",
"markets": [
{
"marketId": "US",
"active": true,
"currency": "USD",
"country": "US",
"salesArea": {
"salesOrganization": "SE10",
"distributionChannel": "00",
"division": "00"
},
"priceType": "Net"
}
],
"createdBy": "sb-subscription-billing!b123456|revenue-cloud!b1234",
"changedBy": "sb-subscription-billing!b123456|revenue-cloud!b1234",
"changedAt": "2023-05-31T06:39:28.499Z",
"defaultAddress": {
"email": "user1@test.com",
"phone": "123456890",
"houseNumber": "123",
"city": "New Orleans",
"state": "LA",
"postalCode": "700089",
"country": "US",
"addressUUID": "ff871221-ab48-435c-b1f5-903db1c3cea2",
"isDefault": true
}
},
{
"personalInfo": {
"firstName": "Test 2",
"lastName": "User 2"
},
"addresses": [
{
"email": "user2@test.com",
"phone": "1234567899",
"houseNumber": "876",
"city": "New Orleans",
"state": "LA",
"postalCode": "700089",
"country": "US",
"addressUUID": "1cd039aa-5b86-4e46-8e37-9ef263332c6b",
"isDefault": true
}
],
"customerNumber": "6776445404",
"externalObjectReferences": [
{
"externalSystemId": "t089999",
"externalId": "1324565",
"externalIdTypeCode": "201"
}
],
"createdAt": "2023-05-31T06:39:28.142Z",
"customerType": "INDIVIDUAL",
"markets": [
{
"marketId": "US",
"active": true,
"currency": "USD",
"country": "US",
"salesArea": {
"salesOrganization": "SE10",
"distributionChannel": "00",
"division": "00"
},
"priceType": "Net"
}
],
"createdBy": "sb-subscription-billing!b123456|revenue-cloud!b12345",
"changedBy": "sb-subscription-billing!b123456|revenue-cloud!b12345",
"changedAt": "2023-05-31T06:39:28.142Z",
"defaultAddress": {
"email": "user2@test.com",
"phone": "1234567899",
"houseNumber": "876",
"city": "New Orleans",
"state": "LA",
"postalCode": "700089",
"country": "US",
"addressUUID": "1cd039aa-5b86-4e46-8e37-9ef263332c6b",
"isDefault": true
}
}
]
}
Pour SAP Commerce L’API Contacts présente la valeur de {SOURCE_PARAMS}
est transmis comme {"object_type":"contacts"}
. Lorsqu’il est codé en base64, il équivaut à eyJvYmplY3RfdHlwZSI6ImNvbnRhY3RzIn0=
comme illustré ci-dessous.
curl -X GET \
'https://platform.adobe.io/data/foundation/flowservice/connections/f5421911-6f6c-41c7-aafa-5d9d2ce51535/explore?objectType=rest&object=json&fileType=json&preview=true&sourceParams=eyJvYmplY3RfdHlwZSI6ImNvbnRhY3RzIn0=' \
-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}'
Une réponse réussie renvoie une structure JSON comme suit :
{
"format": "hierarchical",
"schema": {
"type": "object",
"properties": {
"externalObjectReferences": {
"type": "array",
"items": {
"type": "object",
"properties": {}
}
},
"personalInfo": {
"type": "object",
"properties": {
"firstName": {
"type": "string"
},
"lastName": {
"type": "string"
}
}
},
"createdAt": {
"type": "string"
},
"createdBy": {
"type": "string"
},
"changedBy": {
"type": "string"
},
"contactNumber": {
"type": "string"
},
"changedAt": {
"type": "string"
}
}
},
"data": [
{
"personalInfo": {
"firstName": "Test 1",
"lastName": "User 1"
},
"createdAt": "2023-05-31T13:33:52.689Z",
"createdBy": "sb-subscription-billing!b123456|revenue-cloud!b1234",
"changedBy": "sb-subscription-billing!b123456|revenue-cloud!b1234",
"contactNumber": "4365374130",
"changedAt": "2023-05-31T13:33:52.689Z"
},
{
"personalInfo": {
"firstName": "Test 2",
"lastName": "User 2"
},
"createdAt": "2023-05-31T13:33:52.37Z",
"createdBy": "sb-subscription-billing!b123456|revenue-cloud!b1234",
"changedBy": "sb-subscription-billing!b123456|revenue-cloud!b1234",
"contactNumber": "4075431868",
"changedAt": "2023-05-31T13:33:52.37Z"
}
]
}
Vous pouvez créer une connexion source en envoyant une requête de POST au /sourceConnections
point d’entrée du Flow Service API. Une connexion source se compose d’un identifiant de connexion, d’un chemin d’accès au fichier de données source et d’un identifiant de spécification de connexion.
Format d’API
POST /sourceConnections
Selon le type d’objet que vous utilisez, sélectionnez dans les onglets ci-dessous :
La requête suivante crée une connexion source pour SAP Commerce données clients :
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
-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}' \
-H 'Content-Type: application/json' \
-d '{
"name": "SAP Commerce Source Connection",
"description": "SAP Commerce Source Connection",
"baseConnectionId": "f5421911-6f6c-41c7-aafa-5d9d2ce51535",
"connectionSpec": {
"id": "63d2b27b-69a5-45c9-a7fe-78148a25de3c",
"version": "1.0"
},
"data": {
"format": "json"
},
"params": {
"object_type": "customers"
}
}'
Propriété | Description |
---|---|
name |
Nom de votre connexion source. Assurez-vous que le nom de votre connexion source est descriptif, car vous pouvez l’utiliser pour rechercher des informations sur votre connexion source. |
description |
Valeur facultative que vous pouvez inclure pour fournir plus d’informations sur votre connexion source. |
baseConnectionId |
Identifiant de connexion de base de SAP Commerce. Cet identifiant a été généré lors d’une étape précédente. |
connectionSpec.id |
Identifiant de spécification de connexion correspondant à votre source. |
data.format |
Format des données SAP Commerce que vous souhaitez ingérer. Actuellement, le format de données json est le seul à être pris en charge. |
object_type |
SAP Commerce prend en charge plusieurs API. Pour l’API des clients, la variable object_type doit être défini sur customers . |
path |
Cette valeur sera la même que celle que vous sélectionnez pour object_type . |
Une réponse réussie renvoie l’identifiant unique (id
) de la nouvelle connexion source. Cet identifiant est requis lors d’une étape ultérieure pour créer un flux de données.
{
"id": "8f1fc72a-f562-4a1d-8597-85b5ca1b1cd3",
"etag": "\"ed05f1e1-0000-0200-0000-6368b8710000\""
}
La requête suivante crée une connexion source pour SAP Commerce données des contacts :
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
-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}' \
-H 'Content-Type: application/json' \
-d '{
"name": "SAP Commerce Source Connection",
"description": "SAP Commerce Source Connection",
"baseConnectionId": "f5421911-6f6c-41c7-aafa-5d9d2ce51535",
"connectionSpec": {
"id": "63d2b27b-69a5-45c9-a7fe-78148a25de3c",
"version": "1.0"
},
"data": {
"format": "json"
},
"params": {
"object_type": "contacts"
}
}'
Propriété | Description |
---|---|
name |
Nom de votre connexion source. Assurez-vous que le nom de votre connexion source est descriptif, car vous pouvez l’utiliser pour rechercher des informations sur votre connexion source. |
description |
Valeur facultative que vous pouvez inclure pour fournir plus d’informations sur votre connexion source. |
baseConnectionId |
Identifiant de connexion de base de SAP Commerce. Cet identifiant a été généré lors d’une étape précédente. |
connectionSpec.id |
Identifiant de spécification de connexion correspondant à votre source. |
data.format |
Format des données SAP Commerce que vous souhaitez ingérer. Actuellement, le format de données json est le seul à être pris en charge. |
object_type |
SAP Commerce prend en charge plusieurs API. Pour l’API de contacts, la variable object_type doit être défini sur contacts . |
path |
Cette valeur sera la même que celle que vous sélectionnez pour object_type . |
Une réponse réussie renvoie l’identifiant unique (id
) de la nouvelle connexion source. Cet identifiant est requis lors d’une étape ultérieure pour créer un flux de données.
{
"id": "8f1fc72a-f562-4a1d-8597-85b5ca1b1cd3",
"etag": "\"ed05f1e1-0000-0200-0000-6368b8710000\""
}
Pour que les données sources soient utilisées dans Platform, un schéma cible doit être créé pour structurer les données sources en fonction de vos besoins. Le schéma cible est ensuite utilisé pour créer un jeu de données Platform contenant les données sources.
Un schéma XDM cible peut être créé en adressant une requête POST à l’API Schema Registry.
Pour obtenir des instructions détaillées sur la création d’un schéma XDM cible, suivez le tutoriel sur la création d’un schéma à l’aide de l’API.
Un jeu de données cible peut être créé en adressant une requête POST à l’API Catalog Service et en fournissant l’identifiant du schéma cible dans la payload.
Pour obtenir des instructions détaillées sur la création d’un jeu de données cible, suivez le tutoriel sur la création d’un jeu de données à l’aide de l’API.
Une connexion cible représente la connexion à la destination vers laquelle les données ingérées doivent être stockées. Pour créer une connexion cible, vous devez indiquer l’identifiant de spécification de connexion fixe qui correspond au lac de données. Cet identifiant est c604ff05-7f1a-43c0-8e18-33bf874cb11c
.
Vous disposez désormais des identifiants uniques d’un schéma cible d’un jeu de données cible et de l’identifiant de spécification de connexion au lac de données. À lʼaide de ces identifiants, vous pouvez créer une connexion cible à l’aide de l’API Flow Service pour spécifier le jeu de données qui contiendra les données source entrantes.
Format d’API
POST /targetConnections
Requête
La requête suivante crée une connexion cible pour SAP Commerce :
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
-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}' \
-H 'Content-Type: application/json' \
-d '{
"name": "SAP Commerce Target Connection Generic Rest",
"description": "SAP Commerce Target Connection Generic Rest",
"connectionSpec": {
"id": "c604ff05-7f1a-43c0-8e18-33bf874cb11c",
"version": "1.0"
},
"data": {
"format": "parquet_xdm",
"schema": {
"id": "https://ns.adobe.com/{TENANT_ID}/schemas/325fd5394ba421246b05c0a3c2cd5efeec2131058a63d473",
"version": "1.2"
}
},
"params": {
"dataSetId": "645923cd7aeeea1c06c5e92e"
}
}'
Propriété | Description |
---|---|
name |
Nom de la connexion cible. Assurez-vous que le nom de votre connexion cible est explicite, car vous pouvez l’utiliser pour rechercher des informations sur votre connexion cible. |
description |
Valeur facultative que vous pouvez inclure pour fournir plus d’informations sur votre connexion cible. |
connectionSpec.id |
L’identifiant de spécification de connexion qui correspond au lac de données. Cet ID fixe est 6b137bf6-d2a0-48c8-914b-d50f4942eb85 . |
data.format |
Format des données SAP Commerce à ingérer. |
params.dataSetId |
Identifiant du jeu de données cible récupéré lors d’une étape précédente. |
Réponse
Une réponse réussie renvoie l’identifiant unique de la nouvelle connexion cible (id
). Cet identifiant est requis aux étapes suivantes.
{
"id": "5b72a4b6-2fb8-4ca7-8ad8-4114a3063c5c",
"etag": "\"db00c6dc-0000-0200-0000-6482d8280000\""
}
Pour que les données sources soient ingérées dans un jeu de données cible, elles doivent d’abord être mappées au schéma cible auquel le jeu de données cible se rattache. Pour ce faire, il vous suffit d’adresser une requête de POST à Data Prep API avec des mappages de données définis dans le payload de la requête.
Format d’API
POST /conversion/mappingSets
La requête suivante crée un mappage pour SAP Commerce Données de l’API des clients
curl -X POST \
'https://platform.adobe.io/data/foundation/conversion/mappingSets' \
-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}' \
-H 'Content-Type: application/json' \
-d '{
"outputSchema": {
"schemaRef": {
"id": "https://ns.adobe.com/{TENANT_ID}/schemas/b156e6f818f923e048199173c45e55e20fd2487f5eb03d22",
"contentType": "application/vnd.adobe.xed-full+json;version=1"
}
},
"mappings": [
{
"sourceType": "ATTRIBUTE",
"source": "customerNumber",
"destination": "_extconndev.customerNumber"
},
{
"sourceType": "ATTRIBUTE",
"source": "customerType",
"destination": "_extconndev.customerType"
},
{
"sourceType": "ATTRIBUTE",
"source": "changedAt",
"destination": "_extconndev.changedAt"
},
{
"sourceType": "ATTRIBUTE",
"source": "addresses[*].email",
"destination": "_extconndev.addresses[*].email"
},
{
"sourceType": "ATTRIBUTE",
"source": "addresses[*].city",
"destination": "_extconndev.addresses[*].city"
},
{
"sourceType": "ATTRIBUTE",
"source": "addresses[*].addressUUID",
"destination": "_extconndev.addresses[*].addressUUID"
},
{
"sourceType": "ATTRIBUTE",
"source": "externalObjectReferences[*].externalSystemId",
"destination": "_extconndev.externalObjectReferences[*].externalSystemId"
},
{
"sourceType": "ATTRIBUTE",
"source": "externalObjectReferences[*].externalId",
"destination": "_extconndev.externalObjectReferences[*].externalId"
},
{
"sourceType": "ATTRIBUTE",
"source": "externalObjectReferences[*].externalIdTypeCode",
"destination": "_extconndev.externalObjectReferences[*].externalIdTypeCode"
},
{
"sourceType": "ATTRIBUTE",
"source": "customReferences[*].id",
"destination": "_extconndev.customReferences[*].id"
},
{
"sourceType": "ATTRIBUTE",
"source": "customReferences[*].typeCode",
"destination": "_extconndev.customReferences[*].typeCode"
}
],
"outputSchema": {
"schemaRef": {
"id": "https://ns.adobe.com/{TENANT_ID}/schemas/325fd5394ba421246b05c0a3c2cd5efeec2131058a63d473",
"contentType": "application/vnd.adobe.xed-full+json;version=1"
}
}
}'
Propriété | Description |
---|---|
outputSchema.schemaRef.id |
Identifiant du schéma XDM cible généré lors d’une étape précédente. |
mappings.sourceType |
Type d’attribut source en cours de mappage. |
mappings.source |
Attribut source qui doit être mappé à un chemin XDM de destination. |
mappings.destination |
Chemin XDM de destination vers lequel l’attribut source est mappé. |
Une réponse réussie renvoie les détails du mappage nouvellement créé, y compris son identifiant unique (id
). Cette valeur est requise lors d’une étape ultérieure pour créer un flux de données.
{
"id": "ddf0592bcc9d4ac391803f15f2429f87",
"version": 0,
"createdDate": 1597784069368,
"modifiedDate": 1597784069368,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}"
}
La requête suivante crée un mappage pour SAP Commerce Données de l’API Contacts
curl -X POST \
'https://platform.adobe.io/data/foundation/conversion/mappingSets' \
-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}' \
-H 'Content-Type: application/json' \
-d '{
"outputSchema": {
"schemaRef": {
"id": "https://ns.adobe.com/{TENANT_ID}/schemas/b156e6f818f923e048199173c45e55e20fd2487f5eb03d22",
"contentType": "application/vnd.adobe.xed-full+json;version=1"
}
},
"mappings": [
{
"sourceType": "ATTRIBUTE",
"source": "contactNumber",
"destination": "_extconndev.contactNumber"
},
{
"sourceType": "ATTRIBUTE",
"source": "createdAt",
"destination": "_extconndev.createdAt"
},
{
"sourceType": "ATTRIBUTE",
"source": "changedAt",
"destination": "_extconndev.changedAt"
},
{
"sourceType": "ATTRIBUTE",
"source": "personalInfo.lastName",
"destination": "_extconndev.personalInfo.lastName"
},
{
"sourceType": "ATTRIBUTE",
"source": "personalInfo.firstName",
"destination": "_extconndev.personalInfo.firstName"
},
{
"sourceType": "ATTRIBUTE",
"source": "externalObjectRefereneces[*].externalSystemId",
"destination": "_extconndev.externalObjectReferences[*].externalSystemId"
},
{
"sourceType": "ATTRIBUTE",
"source": "externalObjectReferences[*].externalId",
"destination": "_extconndev.externalObjectReferences[*].externalId"
},
{
"sourceType": "ATTRIBUTE",
"source": "externalObjectReferences[*].externalIdTypeCode",
"destination": "_extconndev.externalObjectReferences[*].externalIdTypeCode"
}
],
"outputSchema": {
"schemaRef": {
"id": "https://ns.adobe.com/extconndev/schemas/325fd5394ba421246b05c0a3c2cd5efeec2131058a63d473",
"contentType": "application/vnd.adobe.xed-full+json;version=1"
}
}
}'
Propriété | Description |
---|---|
outputSchema.schemaRef.id |
Identifiant du schéma XDM cible généré lors d’une étape précédente. |
mappings.sourceType |
Type d’attribut source en cours de mappage. |
mappings.source |
Attribut source qui doit être mappé à un chemin XDM de destination. |
mappings.destination |
Chemin XDM de destination vers lequel l’attribut source est mappé. |
Une réponse réussie renvoie les détails du mappage nouvellement créé, y compris son identifiant unique (id
). Cette valeur est requise lors d’une étape ultérieure pour créer un flux de données.
{
"id": "ddf0592bcc9d4ac391803f15f2429f87",
"version": 0,
"createdDate": 1597784069368,
"modifiedDate": 1597784069368,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}"
}
La dernière étape pour obtenir des données de SAP Commerce vers Platform consiste à créer un flux de données. Vous disposez à présent des valeurs requises suivantes :
Un flux de données est chargé de planifier et de collecter les données provenant d’une source. Vous pouvez créer un flux de données en exécutant une requête POST et en fournissant les valeurs mentionnées précédemment dans la payload.
Format d’API
POST /flows
Requête
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/flows' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d '{
"name": "SAP Commerce Connector Description Flow Generic Rest",
"description": "SAP Commerce Connector Description Flow Generic Rest",
"flowSpec": {
"id": "6499120c-0b15-42dc-936e-847ea3c24d72",
"version": "1.0"
},
"sourceConnectionIds": [
"2ef2e831-f4f1-4363-a0f7-08b4ea347164"
],
"targetConnectionIds": [
"5b72a4b6-2fb8-4ca7-8ad8-4114a3063c5c"
],
"transformations": [
{
"name": "Mapping",
"params": {
"mappingId": "ddf0592bcc9d4ac391803f15f2429f87",
"mappingVersion": "0"
}
}
],
"scheduleParams": {
"startTime": "1625040887",
"frequency": "once",
}
}'
Propriété | Description |
---|---|
name |
Nom du flux de données. Assurez-vous que le nom de votre flux de données est explicite, car vous pouvez l’utiliser pour rechercher des informations sur votre flux de données. |
description |
Une valeur facultative que vous pouvez inclure pour fournir plus d’informations sur votre flux de données. |
flowSpec.id |
Identifiant de spécification de flux requis pour créer un flux de données. Cet ID fixe est 6499120c-0b15-42dc-936e-847ea3c24d72 . |
flowSpec.version |
Version correspondante de l’identifiant de spécification de flux. Cette valeur est définie par défaut sur 1.0 . |
sourceConnectionIds |
L’identifiant de connexion source généré lors d’une étape précédente. |
targetConnectionIds |
Identifiant de connexion cible généré lors d’une étape précédente. |
transformations |
Cette propriété contient les différentes transformations qui doivent être appliquées à vos données. Cette propriété est requise lors de l’importation de données non conformes à XDM dans Platform. |
transformations.name |
Nom attribué à la transformation. |
transformations.params.mappingId |
Identifiant de mappage généré lors d’une étape précédente. |
transformations.params.mappingVersion |
Version correspondante de l’identifiant de mappage. Ce paramètre est défini par défaut sur 0 . |
scheduleParams.startTime |
Cette propriété contient des informations sur la planification de l’ingestion du flux de données. |
scheduleParams.frequency |
Fréquence de collecte des données par le flux de données. |
scheduleParams.interval |
L’intervalle désigne la période entre deux exécutions consécutives de flux. La valeur de l’intervalle doit être un nombre entier non nul. |
Réponse
Une réponse réussie renvoie l’identifiant (id
) du flux de données nouvellement créé. Vous pouvez utiliser cet identifiant pour surveiller, mettre à jour ou supprimer votre flux de données.
{
"id": "fcd16140-81b4-422a-8f9a-eaa92796c4f4",
"etag": "\"9200a171-0000-0200-0000-6368c1da0000\""
}
La section suivante fournit des informations sur les étapes de surveillance, de mise à jour et de suppression de votre flux de données.
Une fois votre flux de données créé, vous pouvez surveiller les données ingérées pour afficher des informations sur les exécutions du flux, le statut d’achèvement et les erreurs. Pour consulter des exemples complets d’API, reportez-vous au guide sur surveillance de vos flux de données sources à l’aide de l’API.
Mettez à jour les détails de votre flux de données, tels que son nom et sa description, ainsi que son planning d’exécution et les jeux de mappages associés, en envoyant une requête PATCH à la variable /flows
point d’entrée de Flow Service API, tout en fournissant l’identifiant de votre flux de données. Lors de l’exécution d’une requête de PATCH, vous devez fournir l’unique de votre flux de données etag
dans le If-Match
en-tête . Pour consulter des exemples complets d’API, reportez-vous au guide sur mise à jour des flux de données de sources à l’aide de l’API.
Mettez à jour le nom, la description et les informations d’identification de votre compte source en adressant une requête de PATCH au Flow Service API tout en fournissant votre identifiant de connexion de base en tant que paramètre de requête. Lors de l’exécution d’une requête de PATCH, vous devez fournir l’unique de votre compte source etag
dans le If-Match
en-tête . Pour consulter des exemples complets d’API, reportez-vous au guide sur mise à jour de votre compte source à l’aide de l’API.
Supprimez votre flux de données en adressant une requête de DELETE à la fonction Flow Service API tout en fournissant l’identifiant du flux de données que vous souhaitez supprimer dans le cadre du paramètre de requête . Pour consulter des exemples complets d’API, reportez-vous au guide sur suppression de vos flux de données à l’aide de l’API.
Supprimez votre compte en adressant une requête de DELETE à la fonction Flow Service API tout en fournissant l’identifiant de connexion de base du compte que vous souhaitez supprimer. Pour consulter des exemples complets d’API, reportez-vous au guide sur suppression de votre compte source à l’aide de l’API.