[Beta]{class="badge informative"}
Skapa en källanslutning och ett dataflöde för Chatlio med API:t för Flow Service
I följande självstudiekurs får du hjälp med att skapa en källanslutning och ett dataflöde för att skicka Chatlio händelsedata till Adobe Experience Platform med Flow Service API.
Komma igång getting-started
Handboken kräver en fungerande förståelse av följande komponenter i Experience Platform:
- Källor: Med Experience Platform kan data hämtas från olika källor samtidigt som du kan strukturera, etikettera och förbättra inkommande data med hjälp av Experience Platform-tjänster.
- Sandlådor: Experience Platform tillhandahåller virtuella sandlådor som partitionerar en enda Experience Platform-instans till separata virtuella miljöer för att utveckla och utveckla program för digitala upplevelser.
Anslut Chatlio till Experience Platform med API:t Flow Service connect-platform-to-flow-api
Följande beskriver de steg du måste utföra för att skapa en källanslutning och ett dataflöde för att kunna överföra Chatlio-händelsedata till Experience Platform.
Skapa en källanslutning source-connection
Skapa en källanslutning genom att göra en POST-begäran till API:t Flow Service, och ange källans anslutningsspec-ID, information som namn och beskrivning samt dataformatet.
API-format
POST /sourceConnections
Begäran
Följande begäran skapar en källanslutning för Chatlio:
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": "Streaming Source Connection for Chatlio.",
"providerId": "521eee4d-8cbe-4906-bb48-fb6bd4450033",
"description": "Streaming Source Connection for Chatlio.",
"connectionSpec": {
"id": "073127a3-26e3-496c-9d94-9f48fb93fba8",
"version": "1.0"
},
"data": {
"format": "json"
}
}'
namedescriptionconnectionSpec.iddata.formatjson.Svar
Ett lyckat svar returnerar den unika identifieraren (id) för den nyligen skapade källanslutningen. Detta ID krävs i ett senare steg för att skapa ett dataflöde.
{
"id": "7689a40d-43eb-4f74-a3f1-092a55884f6c",
"etag": "\"01013ed0-0000-0200-0000-63f314d00000\""
}
Skapa ett mål-XDM-schema target-schema
För att källdata ska kunna användas i Experience Platform måste ett målschema skapas för att strukturera källdata efter dina behov. Målschemat används sedan för att skapa en Experience Platform-datauppsättning där källdata finns.
Ett mål-XDM-schema kan skapas genom att en POST-begäran till schemats register-API utförs.
Detaljerade steg om hur du skapar ett mål-XDM-schema finns i självstudiekursen Skapa ett schema med API:t.
Skapa en måldatauppsättning target-dataset
En måldatauppsättning kan skapas genom att en POST-begäran till katalogtjänstens API utförs, med ID:t för målschemat i nyttolasten.
Detaljerade steg om hur du skapar en måldatauppsättning finns i självstudiekursen Skapa en datauppsättning med API:t.
Skapa en målanslutning target-connection
En målanslutning representerar anslutningen till målet där inmatade data ska lagras. Om du vill skapa en målanslutning måste du ange det fasta anslutningsspecifikations-ID som motsvarar datasjön. Detta ID är: c604ff05-7f1a-43c0-8e18-33bf874cb11c.
Nu har du de unika identifierarna ett målschema, en måldatamängd och ett anslutningsspec-ID till datasjön. Med hjälp av dessa identifierare kan du skapa en målanslutning med API:t Flow Service för att ange den datauppsättning som ska innehålla inkommande källdata.
API-format
POST /targetConnections
Begäran
Följande begäran skapar en målanslutning för Chatlio:
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": "Streaming Target Connection for a Chatlio.",
"description": "Streaming Target Connection for a Chatlio.",
"connectionSpec": {
"id": "c604ff05-7f1a-43c0-8e18-33bf874cb11c",
"version": "1.0"
},
"data": {
"format": "json",
"schema": {
"id": "https://ns.adobe.com/extconndev/schemas/49cecec83dd1a8da1aef4a96c67c06654e8c337a0a3b4262",
"version": "application/vnd.adobe.xed-full+json;version=1"
}
},
"params": {
"dataSetId": "63ef7df781f14a1bd02a7e49"
}
}'
namedescriptionconnectionSpec.idc604ff05-7f1a-43c0-8e18-33bf874cb11c.data.formatparams.dataSetIdSvar
Ett svar returnerar den nya målanslutningens unika identifierare (id). Detta ID krävs i senare steg.
{
"id": "f7be8ab6-e5ea-4405-83b9-200cdfb2a9e5",
"etag": "\"7f0072bc-0000-0200-0000-63f314a50000\""
}
Skapa en mappning mapping
För att källdata ska kunna hämtas till en måldatamängd måste den först mappas till målschemat som måldatamängden följer. Detta uppnås genom att utföra en POST-begäran till Data Prep API med datamappningar definierade i nyttolasten för begäran.
API-format
POST /conversion/mappingSets
Begäran
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/945546112b746524bfd9f1264b26c2b7d8e7f5b7fadb953a",
"contentType": "application/vnd.adobe.xed-full+json;version=1"
}
},
"mappings": [
{
"destinationXdmPath": "_extconndev.slackchannel_ID",
"sourceAttribute": "slackChannelId",
"identity": false,
"version": 0
},
{
"destinationXdmPath": "_extconndev.slackchannel_name",
"sourceAttribute": "slackChannelName",
"identity": false,
"version": 0
},
{
"destinationXdmPath": "_extconndev.UUID",
"sourceAttribute": "visitor.UUID",
"identity": false,
"version": 0
},
{
"destinationXdmPath": "_extconndev.chatlio_email",
"sourceAttribute": "visitor.email",
"identity": false,
"version": 0
},
{
"destinationXdmPath": "_extconndev.message",
"sourceAttribute": "message",
"identity": false,
"version": 0
},
{
"destinationXdmPath": "_extconndev.channel_ID",
"sourceAttribute": "channelId",
"identity": false,
"version": 0
}
]
}'
outputSchema.schemaRef.idmappings.sourceTypemappings.sourcemappings.destinationSvar
Ett lyckat svar returnerar information om den nyligen skapade mappningen inklusive dess unika identifierare (id). Detta värde krävs i ett senare steg för att skapa ett dataflöde.
{
"id": "4b7188aad69c44529a5e674ab5d3568b",
"version": 0,
"createdDate": 1676875099546,
"modifiedDate": 1676875099546,
"createdBy": "{CREATED_BY}",
"modifiedBy": "{MODIFIED_BY}"
}
Skapa ett flöde flow
Det sista steget mot att överföra data från Chatlio till Experience Platform är att skapa ett dataflöde. Nu har du förberett följande obligatoriska värden:
Ett dataflöde ansvarar för att schemalägga och samla in data från en källa. Du kan skapa ett dataflöde genom att utföra en POST-begäran samtidigt som du anger de tidigare nämnda värdena i nyttolasten.
API-format
POST /flows
Begäran
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": "Streaming Dataflow for Chatlio",
"description": "Streaming Dataflow for Chatlio",
"flowSpec": {
"id": "e77fde5a-22a8-11ed-861d-0242ac120002",
"version": "1.0"
},
"sourceConnectionIds": [
"7689a40d-43eb-4f74-a3f1-092a55884f6c"
],
"targetConnectionIds": [
"f7be8ab6-e5ea-4405-83b9-200cdfb2a9e5"
],
"transformations": [
{
"name": "Mapping",
"params": {
"mappingId": "4b7188aad69c44529a5e674ab5d3568b",
"mappingVersion": 0
}
}
]
}'
namedescriptionflowSpec.ide77fde5a-22a8-11ed-861d-0242ac120002.flowSpec.version1.0.sourceConnectionIdstargetConnectionIdstransformationstransformations.nametransformations.params.mappingIdtransformations.params.mappingVersion0.Svar
Ett lyckat svar returnerar ID:t (id) för det nyskapade dataflödet. Du kan använda det här ID:t för att övervaka, uppdatera eller ta bort dataflödet.
{
"id": "d947e6a9-ea53-42c4-985c-c9379265491f",
"etag": "\"9b01c840-0000-0200-0000-63f3163e0000\""
}
Hämta din URL för direktuppspelningsslutpunkt get-streaming-endpoint
När dataflödet har skapats kan du nu hämta URL:en för direktuppspelningsslutpunkten. Du kommer att använda den här slutpunkts-URL:en för att prenumerera på en webkrok så att källan kan kommunicera med Experience Platform.
Om du vill hämta URL:en för direktuppspelningsslutpunkten gör du en GET-begäran till slutpunkten /flows och anger ID:t för dataflödet.
API-format
GET /flows/{FLOW_ID}
Begäran
curl -X GET \
'https://platform.adobe.io/data/foundation/flowservice/flows/4982698b-e6b3-48c2-8dcf-040e20121fd2' \
-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}'
Svar
Ett lyckat svar returnerar information om ditt dataflöde, inklusive din slutpunkts-URL, markerad som inletUrl. Gå till sidan Konfigurera webkrok för att hämta det värde som krävs.
{
"items": [
{
"id": "d947e6a9-ea53-42c4-985c-c9379265491f",
"createdAt": 1676875325841,
"updatedAt": 1676875331938,
"createdBy": "acme@AdobeID",
"updatedBy": "acme@AdobeID",
"createdClient": "{CREATED_CLIENT}",
"updatedClient": "{UPDATED_CLIENT}",
"sandboxId": "{SANDBOX_ID}",
"sandboxName": "{SANDBOX_NAME}",
"imsOrgId": "{ORG_ID}",
"name": "Streaming Dataflow for Chatlio",
"description": "Streaming Dataflow for Chatlio",
"flowSpec": {
"id": "e77fde5a-22a8-11ed-861d-0242ac120002",
"version": "1.0"
},
"state": "enabled",
"version": "\"9b012541-0000-0200-0000-63f316430000\"",
"etag": "\"9b012541-0000-0200-0000-63f316430000\"",
"sourceConnectionIds": [
"7689a40d-43eb-4f74-a3f1-092a55884f6c"
],
"targetConnectionIds": [
"f7be8ab6-e5ea-4405-83b9-200cdfb2a9e5"
],
"inheritedAttributes": {
"properties": {
"isSourceFlow": true
},
"sourceConnections": [
{
"id": "7689a40d-43eb-4f74-a3f1-092a55884f6c",
"connectionSpec": {
"id": "073127a3-26e3-496c-9d94-9f48fb93fba8",
"version": "1.0"
}
}
],
"targetConnections": [
{
"id": "f7be8ab6-e5ea-4405-83b9-200cdfb2a9e5",
"connectionSpec": {
"id": "c604ff05-7f1a-43c0-8e18-33bf874cb11c",
"version": "1.0"
}
}
]
},
"options": {
"inletUrl": "https://dcs.adobedc.net/collection/e71b6a6cd7270388674f8ab68ee438da58ba4434dea63cc547ee21547275923c"
},
"transformations": [
{
"name": "Mapping",
"params": {
"mappingId": "4b7188aad69c44529a5e674ab5d3568b",
"mappingVersion": 0
}
}
],
"runs": "/runs?property=flowId==d947e6a9-ea53-42c4-985c-c9379265491f",
"providerRefId": "bfac26f5-9256-438c-b1a0-e07a7dc675f6",
"lastOperation": {
"started": 0,
"updated": 0,
"operation": "enable"
}
}
]
}
Bilaga appendix
Följande avsnitt innehåller information om hur du övervakar, uppdaterar och tar bort dataflödet.
Övervaka dataflödet monitor-dataflow
När dataflödet har skapats kan du övervaka de data som importeras genom det för att se information om flödeskörningar, slutförandestatus och fel. Fullständiga API-exempel finns i handboken om att övervaka källans dataflöden med API:t.
Uppdatera ditt dataflöde update-dataflow
Uppdatera informationen om dataflödet, till exempel namn och beskrivning, samt körningsschema och associerade mappningsuppsättningar genom att göra en PATCH-begäran till /flows-slutpunkten för Flow Service API, samtidigt som du anger ID:t för dataflödet. När du gör en PATCH-begäran måste du ange dataflödets unika etag i rubriken If-Match. Fullständiga API-exempel finns i handboken om att uppdatera källkodsdataflöden med API
Uppdatera ditt konto update-account
Uppdatera namn, beskrivning och autentiseringsuppgifter för källkontot genom att utföra en PATCH-begäran till Flow Service-API:t och ange ditt grundläggande anslutnings-ID som en frågeparameter. När du gör en PATCH-begäran måste du ange källkontots unika etag i rubriken If-Match. Fullständiga API-exempel finns i handboken Uppdatera ditt källkonto med API.
Ta bort ditt dataflöde delete-dataflow
Ta bort dataflödet genom att utföra en DELETE-begäran till Flow Service-API:t och ange ID:t för det dataflöde som du vill ta bort som en del av frågeparametern. Fullständiga API-exempel finns i guiden om att ta bort dataflöden med API:t.
Ta bort ditt konto delete-account
Ta bort ditt konto genom att utföra en DELETE-begäran till Flow Service-API:t och ange det grundläggande anslutnings-ID:t för kontot som du vill ta bort. Fullständiga API-exempel finns i guiden om att ta bort ditt källkonto med API.