Ansluta till filbaserade mål för e-postmarknadsföring och aktivera data med API:t för Flow Service

IMPORTANT
Läs åtkomstkontroll - översikt eller kontakta produktadministratören för att få de behörigheter som krävs.

I den här självstudien visas hur du använder API:t för Flow Service för att skapa en filbaserad e-postmarknadsföringsmål, skapa ett dataflöde till det nya målet och exportera data till det nya målet via CSV-filer.

TIP
Läs mer om hur du aktiverar data till molnlagringsmål med API:t för Flow Service i dedikerad API-självstudiekurs.

I den här självstudiekursen används Adobe Campaign mål i alla exempel, men stegen är identiska för filbaserade e-postmarknadsföringsmål.

Översikt - stegen för att skapa ett mål och aktivera målgrupper

Om du föredrar att använda användargränssnittet för plattformen för att ansluta till ett mål och aktivera data finns mer information i Anslut ett mål och Aktivera målgruppsdata för att batchprofilera exportmål självstudier.

Komma igång get-started

Handboken kräver en fungerande förståelse av följande komponenter i Adobe Experience Platform:

  • Experience Data Model (XDM) System: Det standardiserade ramverk som Experience Platform organiserar kundupplevelsedata.
  • Segmentation Service: Adobe Experience Platform Segmentation Service kan ni bygga målgrupper i Adobe Experience Platform från Real-Time Customer Profile data.
  • Sandboxes: Experience Platform innehåller virtuella sandlådor som partitionerar en enda Platform till separata virtuella miljöer för att utveckla och utveckla applikationer för digitala upplevelser.

I följande avsnitt finns ytterligare information som du behöver känna till för att kunna aktivera data till batchdestinationer i Platform.

Samla in nödvändiga inloggningsuppgifter gather-required-credentials

Om du vill slutföra stegen i den här självstudiekursen bör du ha följande autentiseringsuppgifter klara, beroende på vilken typ av mål du ansluter och aktiverar målgrupper till.

  • För Amazon S3 anslutningar: accessId, secretKey
  • För Amazon S3 anslutningar till Adobe Campaign: accessId, secretKey
  • För SFTP-anslutningar: domain, port, username, password eller sshKey (beroende på anslutningsmetoden till FTP-platsen)
  • För Azure Blob anslutningar: connectionString
NOTE
Referenserna accessId, secretKey for Amazon S3 anslutningar och accessId, secretKey for Amazon S3 anslutningar till Adobe Campaign är identiska.

Läser exempel-API-anrop reading-sample-api-calls

I den här självstudiekursen finns exempel-API-anrop som visar hur du formaterar dina begäranden. Det kan vara sökvägar, obligatoriska rubriker och korrekt formaterade begärandenyttolaster. Ett exempel på JSON som returneras i API-svar finns också. Information om konventionerna som används i dokumentationen för exempel-API-anrop finns i avsnittet om läsa exempel-API-anrop i Experience Platform felsökningsguide.

Samla in värden för obligatoriska och valfria rubriker gather-values-headers

För att ringa Platform API:er måste du först slutföra självstudiekurs om autentisering. När du är klar med självstudiekursen för autentisering visas värdena för var och en av de obligatoriska rubrikerna i alla Experience Platform API-anrop enligt nedan:

  • Behörighet: Bearer {ACCESS_TOKEN}
  • x-api-key: {API_KEY}
  • x-gw-ims-org-id: {ORG_ID}

Resurser i Experience Platform kan isoleras till specifika virtuella sandlådor. I förfrågningar till Platform API:er kan du ange namn och ID för sandlådan som åtgärden ska utföras i. Dessa är valfria parametrar.

  • x-sandbox-name: {SANDBOX_NAME}
NOTE
Mer information om sandlådor i Experience Platform, se översiktsdokumentation för sandlåda.

Alla begäranden som innehåller en nyttolast (POST, PUT, PATCH) kräver ytterligare en medietypsrubrik:

  • Innehållstyp: application/json

API-referensdokumentation api-reference-documentation

Du hittar referensdokumentation för alla API-åtgärder i den här självstudiekursen. Se API-dokumentation för Flow Service på Adobe I/O. Vi rekommenderar att du använder den här självstudiekursen och API-referensdokumentationen parallellt.

Hämta listan över tillgängliga mål get-the-list-of-available-destinations

Översiktssteg för målsteg 1

Som ett första steg bör du bestämma vilket mål som data ska aktiveras till. Börja med att ringa ett samtal för att begära en lista över tillgängliga destinationer som du kan ansluta och aktivera målgrupper till. Utför följande GET-förfrågan till connectionSpecs slutpunkt för att returnera en lista över tillgängliga destinationer:

API-format

GET /connectionSpecs

Begäran

curl --location --request GET 'https://platform.adobe.io/data/foundation/flowservice/connectionSpecs' \
--header 'accept: application/json' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}'

Svar

Ett lyckat svar innehåller en lista över tillgängliga destinationer och deras unika identifierare (id). Lagra värdet för destinationen som du tänker använda, vilket krävs i ytterligare steg. Om du till exempel vill ansluta och leverera målgrupper till Adobe Campaignsöker du efter följande utdrag i svaret:

{
    "id": "0b23e41a-cb4a-4321-a78f-3b654f5d7d97",
  "name": "Adobe Campaign",
  ...
  ...
}

Tabellen nedan innehåller anslutningsspecifikations-ID:n för vanliga gruppmål:

Mål
Anslutningsspecifikation-ID
Adobe Campaign
0b23e41a-cb4a-4321-a78f-3b654f5d7d97
Oracle Eloqua
c1e44b6b-e7c8-404b-9031-58f0ef760604
Oracle Responsys
a5e28ddf-e265-426e-83a1-9d03a3a6822b
Salesforce Marketing Cloud
f599a5b3-60a7-4951-950a-cc4115c7ea27

Anslut till Experience Platform data connect-to-your-experience-platform-data

Översiktssteg för målsteg 2

Sedan måste du ansluta till Experience Platform så att du kan exportera profildata och aktivera dem på det önskade målet. Detta består av två ämnen som beskrivs nedan.

  1. Först måste du ringa för att ge behörighet till dina data i Experience Platformgenom att konfigurera en basanslutning.
  2. Använd sedan basanslutnings-ID för att göra ett annat anrop där du skapar en källanslutning, som upprättar anslutningen till Experience Platform data.

Ge åtkomst till dina data i Experience Platform

API-format

POST /connections

Begäran

curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
            "name": "Base connection to Experience Platform",
            "description": "This call establishes the connection to Experience Platform data",
            "connectionSpec": {
                "id": "{CONNECTION_SPEC_ID}",
                "version": "1.0"
            }
}'
Egenskap
Beskrivning
name
Ange ett namn för basanslutningen till Experience Platform Profile store.
description
Du kan också ange en beskrivning för basanslutningen.
connectionSpec.id
Använd anslutningsspec-ID för Experience Platform Profile Store - 8a9c3494-9708-43d7-ae3f-cda01e5030e1.

Svar

Ett godkänt svar innehåller basanslutningens unika identifierare (id). Lagra det här värdet som det behövs i nästa steg för att skapa källanslutningen.

{
    "id": "1ed86558-59b5-42f7-9865-5859b552f7f4"
}

Anslut till Experience Platform data connect-to-platform-data

API-format

POST /sourceConnections

Begäran

curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
            "name": "Connecting to Profile store",
            "description": "Optional",
            "connectionSpec": {
                "id": "{CONNECTION_SPEC_ID}",
                "version": "1.0"
            },
            "baseConnectionId": "{BASE_CONNECTION_ID}",
            "data": {
                "format": "CSV",
                "schema": null
            },
            "params" : {}
}'
Egenskap
Beskrivning
name
Ange ett namn för källanslutningen till Experience Platform Profile store.
description
Du kan också ange en beskrivning för källanslutningen.
connectionSpec.id
Använd anslutningsspec-ID för Experience Platform Profile Store - 8a9c3494-9708-43d7-ae3f-cda01e5030e1.
baseConnectionId
Använd det grundläggande anslutnings-ID som du fick i föregående steg.
data.format
CSV är för närvarande det enda filexportformat som stöds.

Svar

Ett godkänt svar returnerar den unika identifieraren (id) för den nyligen skapade källanslutningen till Profile store. Detta bekräftar att du har anslutit till Experience Platform data. Lagra det här värdet som det behövs i ett senare steg.

{
    "id": "ed48ae9b-c774-4b6e-88ae-9bc7748b6e97"
}

Anslut till batchdestination connect-to-batch-destination

Översikt över destinationssteg 3

I det här steget skapar du en anslutning till det batchmolnlagringsutrymme eller e-postmarknadsföringsmål som du vill använda. Detta består av två ämnen som beskrivs nedan.

  1. Först måste du ringa för att auktorisera åtkomst till målplattformen genom att konfigurera en basanslutning.
  2. Sedan gör du ett nytt anrop där du skapar en målanslutning, som anger platsen på lagringskontot där de exporterade datafilerna ska levereras samt formatet på de data som ska exporteras.

Auktorisera åtkomst till batchmålet authorize-access-to-batch-destination

API-format

POST /connections

Begäran

Begäran nedan upprättar en basanslutning till Adobe Campaign destinationer. Beroende på lagringsplatsen som du vill exportera filer till (Amazon S3, SFTP, Azure Blob), auth och ta bort de andra.

curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "S3 Connection for Adobe Campaign",
    "description": "summer advertising campaign",
    "connectionSpec": {
        "id": "0b23e41a-cb4a-4321-a78f-3b654f5d7d97",
        "version": "1.0"
    },
    "auth": {
        "specName": "S3",
        "params": {
            "accessId": "{ACCESS_ID}",
            "secretKey": "{SECRET_KEY}"
        }
    }
    "auth": {
        "specName": "SFTP with Password",
        "params": {
            "domain": "{DOMAIN}",
            "host": "{HOST}",
            "username": "{USERNAME}",
            "password": "{PASSWORD}"
        }
    }
    "auth": {
        "specName": "SFTP with SSH Key",
        "params": {
            "domain": "{DOMAIN}",
            "host": "{HOST}",
            "username": "{USERNAME}",
            "sshKey": "{SSH_KEY}"
        }
    }
    "auth": {
        "specName": "Azure Blob",
        "params": {
            "connectionString": "{AZURE_BLOB_CONNECTION_STRING}"
        }
    }
}'

Se exempelbegärandena nedan för att ansluta till andra batchmolnlagringsmedier och e-postmarknadsföringsmål som stöds.

Exempelbegäran att ansluta till Amazon S3 mål

Begäran nedan upprättar en basanslutning till Amazon S3 destinationer.

code language-shell
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "Connect to Amazon S3",
    "description": "summer advertising campaign",
    "connectionSpec": {
        "id": "4890fc95-5a1f-4983-94bb-e060c08e3f81",
        "version": "1.0"
    },
    "auth": {
        "specName": "Access Key",
        "params": {
            "s3AccessKey": "{AMAZON_S3_ACCESS_KEY}",
            "s3SecretKey": "{AMAZON_S3_SECRET_KEY}"
        }
    }
}'
Exempelbegäran att ansluta till Azure Blob mål

Begäran nedan upprättar en basanslutning till Azure Blob destinationer.

code language-shell
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "Connect to Azure Blob",
    "description": "Summer advertising campaign",
    "connectionSpec": {
        "id": "e258278b-a4cf-43ac-b158-4fa0ca0d948b",
        "version": "1.0"
    },
    "auth": {
        "specName": "ConnectionString",
        "params": {
            "connectionString": "{AZURE_BLOB_CONNECTION_STRING}"
        }
    }
}'
Exempelbegäran att ansluta till Oracle Eloqua mål

Begäran nedan upprättar en basanslutning till Oracle Eloqua destinationer. Beroende på den lagringsplats dit du vill exportera filer till bör du behålla lämplig auth och ta bort de andra.

code language-shell
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "Connect to Eloqua destination",
    "description": "summer advertising campaign",
    "connectionSpec": {
        "id": "c1e44b6b-e7c8-404b-9031-58f0ef760604",
        "version": "1.0"
    },
    "auth": {
        "specName": "SFTP with Password",
        "params": {
            "domain": "{DOMAIN}",
            "host": "{HOST}",
            "username": "{USERNAME}",
            "password": "{PASSWORD}"
        }
    }
    "auth": {
        "specName": "SFTP with SSH Key",
        "params": {
            "domain": "{DOMAIN}",
            "host": "{HOST}",
            "username": "{USERNAME}",
            "sshKey": "{SSH_KEY}"
        }
    }
}'
Exempelbegäran att ansluta till Oracle Responsys mål

Begäran nedan upprättar en basanslutning till Oracle Responsys destinationer. Beroende på den lagringsplats dit du vill exportera filer till bör du behålla lämplig auth och ta bort de andra.

code language-shell
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "Connect to Responsys destination",
    "description": "summer advertising campaign",
    "connectionSpec": {
        "id": "a5e28ddf-e265-426e-83a1-9d03a3a6822b",
        "version": "1.0"
    },
    "auth": {
        "specName": "SFTP with Password",
        "params": {
            "domain": "{DOMAIN}",
            "host": "{HOST}",
            "username": "{USERNAME}",
            "password": "{PASSWORD}"
        }
    }
    "auth": {
        "specName": "SFTP with SSH Key",
        "params": {
            "domain": "{DOMAIN}",
            "host": "{HOST}",
            "username": "{USERNAME}",
            "sshKey": "{SSH_KEY}"
        }
    }
}'
Exempelbegäran att ansluta till Salesforce Marketing Cloud mål

Begäran nedan upprättar en basanslutning till Salesforce Marketing Cloud destinationer. Beroende på den lagringsplats dit du vill exportera filer till bör du behålla lämplig auth och ta bort de andra.

code language-shell
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "Connect to Salesforce Marketing Cloud",
    "description": "summer advertising campaign",
    "connectionSpec": {
        "id": "f599a5b3-60a7-4951-950a-cc4115c7ea27",
        "version": "1.0"
    },
    "auth": {
        "specName": "SFTP with Password",
        "params": {
            "domain": "{DOMAIN}",
            "host": "{HOST}",
            "username": "{USERNAME}",
            "password": "{PASSWORD}"
        }
    }
    "auth": {
        "specName": "SFTP with SSH Key",
        "params": {
            "domain": "{DOMAIN}",
            "host": "{HOST}",
            "username": "{USERNAME}",
            "sshKey": "{SSH_KEY}"
        }
    }
}'
Exempelbegäran om att ansluta till SFTP med lösenordsmål

I begäran nedan upprättas en basanslutning till SFTP-mål.

code language-shell
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/connections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "Connect to SFTP with password",
    "description": "summer advertising campaign",
    "connectionSpec": {
        "id": "64ef4b8b-a6e0-41b5-9677-3805d1ee5dd0",
        "version": "1.0"
    },
    "auth": {
        "specName": "Basic Authentication for sftp",
        "params": {
            "host": "{HOST}",
            "username": "{USERNAME}",
            "password": "{PASSWORD}"
        }
    }
}'
Egenskap
Beskrivning
name
Ange ett namn för basanslutningen till batchmålet.
description
Du kan också ange en beskrivning för basanslutningen.
connectionSpec.id
Använd anslutningsspec-ID:t för det önskade batchmålet. Du fick detta ID i steget Hämta listan över tillgängliga mål.
auth.specname
Anger målets autentiseringsformat. Om du vill ta reda på ditt måls specName utför du en GET-anrop till slutpunkten för anslutningsspecifikationer, med anslutningsspecifikationen för den önskade destinationen. Leta efter parametern authSpec.name i svaret.
För Adobe Campaign-mål kan du till exempel använda något av S3, SFTP with Password, eller SFTP with SSH Key.
params
Beroende på vilket mål du ansluter till måste du ange olika obligatoriska autentiseringsparametrar. För Amazon S3-anslutningar måste du ange ditt åtkomst-ID och din hemliga nyckel till din Amazon S3-lagringsplats.
Om du vill ta reda på vilka parametrar som krävs för destinationen utför du en GET-anrop till slutpunkten för anslutningsspecifikationer, med anslutningsspecifikationen för den önskade destinationen. Leta efter parametern authSpec.spec.required i svaret.

Svar

Ett godkänt svar innehåller basanslutningens unika identifierare (id). Lagra det här värdet som det behövs i nästa steg för att skapa en målanslutning.

{
    "id": "1ed86558-59b5-42f7-9865-5859b552f7f4"
}

Ange lagringsplats och dataformat specify-storage-location-data-format

Adobe Experience Platform exporterar data för batchmarknadsföring via e-post och molnlagring i form av CSV filer. I det här steget kan du ange sökvägen till lagringsplatsen dit filerna ska exporteras.

IMPORTANT
Adobe Experience Platform delar automatiskt upp exportfilerna i 5 miljoner poster (rader) per fil. Varje rad representerar en profil.
Delade filnamn läggs till med en siffra som anger att filen är en del av en större export: filename.csv, filename_2.csv, filename_3.csv.

API-format

POST /targetConnections

Begäran

Begäran nedan upprättar en målanslutning till Adobe Campaign mål, för att bestämma var de exporterade filerna ska landas på lagringsplatsen. Beroende på den lagringsplats dit du vill exportera filer till bör du behålla lämplig params och ta bort de andra.

curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "TargetConnection for Adobe Campaign",
    "description": "Connection to Adobe Campaign",
    "baseConnectionId": "{BASE_CONNECTION_ID}",
    "connectionSpec": {
        "id": "0b23e41a-cb4a-4321-a78f-3b654f5d7d97",
        "version": "1.0"
    },
    "data": {
        "format": "json",
        "schema": {
            "id": "1.0",
            "version": "1.0"
        }
    },
    "params": {
        "mode": "S3",
        "bucketName": "{BUCKET_NAME}",
        "path": "{FILEPATH}",
        "format": "CSV"
    }
    "params": {
        "mode": "AZURE_BLOB",
        "container": "{CONTAINER}",
        "path": "{FILEPATH}",
        "format": "CSV"
    }
    "params": {
        "mode": "FTP",
        "remotePath": "{REMOTE_PATH}",
        "format": "CSV"
    }
}'

Se exempelbegärandena nedan för att konfigurera en lagringsplats för andra batchmolnlagringsplatser och e-postmarknadsföringsmål som stöds.

Exempelbegäran om att konfigurera en lagringsplats för Amazon S3 mål

Begäran nedan upprättar en målanslutning till Amazon S3 mål, för att bestämma var de exporterade filerna ska landas på lagringsplatsen.

code language-shell
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "TargetConnection for Amazon S3",
    "description": "Connection to Amazon S3",
    "baseConnectionId": "{BASE_CONNECTION_ID}",
    "connectionSpec": {
        "id": "4890fc95-5a1f-4983-94bb-e060c08e3f81",
        "version": "1.0"
    },
    "data": {
        "format": "json",
        "schema": {
            "id": "1.0",
            "version": "1.0"
        }
    },
    "params": {
        "mode": "S3",
        "bucketName": "{BUCKET_NAME}",
        "path": "{FILEPATH}",
        "format": "CSV"
    }
}'
Exempelbegäran om att konfigurera en lagringsplats för Azure Blob mål

Begäran nedan upprättar en målanslutning till Azure Blob mål, för att bestämma var de exporterade filerna ska landas på lagringsplatsen.

code language-shell
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "TargetConnection for Azure Blob",
    "description": "Connection to Azure Blob",
    "baseConnectionId": "{BASE_CONNECTION_ID}",
    "connectionSpec": {
        "id": "e258278b-a4cf-43ac-b158-4fa0ca0d948b",
        "version": "1.0"
    },
    "data": {
        "format": "json",
        "schema": {
            "id": "1.0",
            "version": "1.0"
        }
    },
    "params": {
        "mode": "AZURE_BLOB",
        "container": "{CONTAINER}",
        "path": "{FILEPATH}",
        "format": "CSV"
    }
}'
Exempelbegäran om att konfigurera en lagringsplats för Oracle Eloqua mål

Begäran nedan upprättar en målanslutning till Oracle Eloqua mål, för att bestämma var de exporterade filerna ska landas på lagringsplatsen. Beroende på den lagringsplats dit du vill exportera filer till bör du behålla lämplig params och ta bort de andra.

code language-shell
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "TargetConnection for Oracle Eloqua",
    "description": "Connection to Oracle Eloqua",
    "baseConnectionId": "{BASE_CONNECTION_ID}",
    "connectionSpec": {
        "id": "c1e44b6b-e7c8-404b-9031-58f0ef760604",
        "version": "1.0"
    },
    "data": {
        "format": "json",
        "schema": {
            "id": "1.0",
            "version": "1.0"
        }
    },
    "params": {
        "mode": "S3",
        "bucketName": "{BUCKET_NAME}",
        "path": "{FILEPATH}",
        "format": "CSV"
    }
    "params": {
        "mode": "FTP",
        "remotePath": "{REMOTE_PATH}",
        "format": "CSV"
    }
}'
Exempelbegäran om att konfigurera en lagringsplats för Oracle Responsys mål

Begäran nedan upprättar en målanslutning till Oracle Responsys mål, för att bestämma var de exporterade filerna ska landas på lagringsplatsen. Beroende på den lagringsplats dit du vill exportera filer till bör du behålla lämplig params och ta bort de andra.

code language-shell
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "TargetConnection for Oracle Responsys",
    "description": "Connection to Oracle Responsys",
    "baseConnectionId": "{BASE_CONNECTION_ID}",
    "connectionSpec": {
        "id": "a5e28ddf-e265-426e-83a1-9d03a3a6822b",
        "version": "1.0"
    },
    "data": {
        "format": "json",
        "schema": {
            "id": "1.0",
            "version": "1.0"
        }
    },
    "params": {
        "mode": "S3",
        "bucketName": "{BUCKET_NAME}",
        "path": "{FILEPATH}",
        "format": "CSV"
    }
    "params": {
        "mode": "FTP",
        "remotePath": "{REMOTE_PATH}",
        "format": "CSV"
    }
}'
Exempelbegäran om att konfigurera en lagringsplats för Salesforce Marketing Cloud mål

Begäran nedan upprättar en målanslutning till Salesforce Marketing Cloud mål, för att bestämma var de exporterade filerna ska landas på lagringsplatsen. Beroende på den lagringsplats dit du vill exportera filer till bör du behålla lämplig params och ta bort de andra.

code language-shell
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "TargetConnection for Salesforce Marketing Cloud",
    "description": "Connection to Salesforce Marketing Cloud",
    "baseConnectionId": "{BASE_CONNECTION_ID}",
    "connectionSpec": {
        "id": "f599a5b3-60a7-4951-950a-cc4115c7ea27",
        "version": "1.0"
    },
    "data": {
        "format": "json",
        "schema": {
            "id": "1.0",
            "version": "1.0"
        }
    },
    "params": {
        "mode": "S3",
        "bucketName": "{BUCKET_NAME}",
        "path": "{FILEPATH}",
        "format": "CSV"
    }
    "params": {
        "mode": "FTP",
        "remotePath": "{REMOTE_PATH}",
        "format": "CSV"
    }
}'
Exempelbegäran om att konfigurera en lagringsplats för SFTP-mål

I begäran nedan upprättas en målanslutning till SFTP-mål som avgör var de exporterade filerna kommer att landas på din lagringsplats.

code language-shell
curl --location --request POST 'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "TargetConnection for SFTP",
    "description": "Connection to SFTP",
    "baseConnectionId": "{BASE_CONNECTION_ID}",
    "connectionSpec": {
        "id": "64ef4b8b-a6e0-41b5-9677-3805d1ee5dd0",
        "version": "1.0"
    },
    "data": {
        "format": "json",
        "schema": {
            "id": "1.0",
            "version": "1.0"
        }
    },
    "params": {
        "mode": "FTP",
        "remotePath": "{REMOTE_PATH}",
    }
}'
Egenskap
Beskrivning
name
Ange ett namn för målanslutningen till batchmålet.
description
Du kan också ange en beskrivning för målanslutningen.
baseConnectionId
Använd ID:t för basanslutningen som du skapade i steget ovan.
connectionSpec.id
Använd anslutningsspec-ID:t för det önskade batchmålet. Du fick detta ID i steget Hämta listan över tillgängliga mål.
params
Beroende på vilket mål du ansluter till måste du ange olika obligatoriska parametrar till lagringsplatsen. För Amazon S3-anslutningar måste du ange ditt åtkomst-ID och din hemliga nyckel till din Amazon S3-lagringsplats.
Om du vill ta reda på vilka parametrar som krävs för destinationen utför du en GET-anrop till slutpunkten för anslutningsspecifikationer, med anslutningsspecifikationen för den önskade destinationen. Leta efter parametern targetSpec.spec.required i svaret.
params.mode
Beroende på vilket läge som stöds för målet måste du ange ett annat värde här. Om du vill ta reda på vilka parametrar som krävs för destinationen utför du en GET-anrop till slutpunkten för anslutningsspecifikationer, med anslutningsspecifikationen för den önskade destinationen. Leta efter parametern targetSpec.spec.properties.mode.enum och välj önskat läge.
params.bucketName
För S3-anslutningar anger du namnet på den bucket där filerna ska exporteras.
params.path
För S3-anslutningar anger du den filsökväg på lagringsplatsen dit filerna ska exporteras.
params.format
CSV är för närvarande den enda filexporttyp som stöds.

Svar

Ett godkänt svar returnerar den unika identifieraren (id) för den nya målanslutningen till batchmålet. Lagra det här värdet som det behövs i senare steg.

{
    "id": "12ab90c7-519c-4291-bd20-d64186b62da8"
}

Skapa ett dataflöde create-dataflow

Översikt över destinationssteg 4

Med hjälp av flödesspecifikationen, källanslutningen och ID:n för målanslutningen som du fick i föregående steg kan du nu skapa ett dataflöde mellan Experience Platform data och det mål där du vill exportera datafiler. Föreställ dig det här steget som att skapa en pipeline genom vilken data senare flödar mellan Experience Platform och det mål du vill ha.

Om du vill skapa ett dataflöde ska du utföra en begäran om POST enligt nedan och samtidigt ange de värden som anges nedan i nyttolasten.

API-format

POST /flows

Begäran

curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/flows' \
-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": "activate audiences to Adobe Campaign",
        "description": "This operation creates a dataflow which we will later use to activate audiences to Adobe Campaign",
        "flowSpec": {
            "id": "{FLOW_SPEC_ID}",
            "version": "1.0"
        },
        "sourceConnectionIds": [
            "{SOURCE_CONNECTION_ID}"
        ],
        "targetConnectionIds": [
            "{TARGET_CONNECTION_ID}"
        ],
        "transformations": [
            {
                "name": "GeneralTransform",
                "params": {
                    "segmentSelectors": {
                        "selectors": []
                    },
                    "profileSelectors": {
                        "selectors": []
                    }
                }
            }
        ]
    }
Egenskap
Beskrivning
name
Ange ett namn för dataflödet som du skapar.
description
Du kan också ange en beskrivning för dataflödet.
flowSpec.Id
Använd flödets spec-ID för det batchmål som du vill ansluta till. Utför en GET-åtgärd på flowspecs slutpunkt, vilket visas i API-referensdokumentation för flödesspecifikationer. I svaret kan du leta efter upsTo och kopiera motsvarande ID för batchmålet som du vill ansluta till. För Adobe Campaign kan du till exempel söka efter upsToCampaign och kopiera id parameter.
sourceConnectionIds
Använd det källanslutnings-ID som du fick i steget Ansluta till dina Experience Platform-data.
targetConnectionIds
Använd det ID för målanslutning som du fick i steget Anslut till batchdestination.
transformations
I nästa steg ska du fylla i det här avsnittet med målgrupper och profilattribut som ska aktiveras.

Som referens innehåller tabellen nedan ID:n för de vanligaste gruppmålen:

Mål
Flödesspekt-ID
Alla molnlagringsmål (Amazon S3, SFTP, Azure Blob) och Oracle Eloqua
71471eba-b620-49e4-90fd-23f1fa0174d8
Oracle Responsys
51d675ce-e270-408d-91fc-22717bdf2148
Salesforce Marketing Cloud
493b2bd6-26e4-4167-ab3b-5e910bba44f0

Svar

Ett godkänt svar returnerar ID:t (id) av det nya dataflödet och etag. Anteckna båda värdena som du behöver dem i nästa steg för att aktivera målgrupper och exportera datafiler.

{
    "id": "8256cfb4-17e6-432c-a469-6aedafb16cd5",
    "etag": "8256cfb4-17e6-432c-a469-6aedafb16cd5"
}

Aktivera data till ditt nya mål activate-data

Översikt över destinationssteg steg 5

När du har skapat alla anslutningar och dataflöden kan du nu aktivera dina profildata till målplattformen. I det här steget väljer du vilka målgrupper och vilka profilattribut som ska exporteras till målet.

Du kan också ange namnformatet för de exporterade filerna och vilka attribut som ska användas som dedupliceringsnycklar eller obligatoriska attribut. I det här steget kan du även bestämma vilket schema som ska användas för att skicka data till målet.

Om du vill aktivera målgrupper till ditt nya mål måste du utföra en JSON PATCH-åtgärd, som i exemplet nedan. Du kan aktivera flera målgrupper och profilattribut i ett samtal. Mer information om JSON PATCH finns i RFC-specifikation.

API-format

PATCH /flows

Begäran

curl --location --request PATCH 'https://platform.adobe.io/data/foundation/flowservice/flows/{DATAFLOW_ID}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'Content-Type: application/json' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'If-Match: "{ETAG}"' \
--data-raw '[
    {
        "op": "add",
        "path": "/transformations/0/params/segmentSelectors/selectors/-",
        "value": {
            "type": "PLATFORM_SEGMENT",
            "value": {
                "name": "Name of the audience that you are activating",
                "description": "Description of the audience that you are activating",
                "id": "{SEGMENT_ID}",
                "filenameTemplate": "%DESTINATION_NAME%_%SEGMENT_ID%_%DATETIME(YYYYMMdd_HHmmss)%",
                "exportMode": "DAILY_FULL_EXPORT",
                "schedule": {
                    "frequency": "ONCE",
                    "startDate": "2021-12-20",
                    "startTime": "17:00"
                }
            }
        }
    },
{
        "op": "add",
        "path": "/transformations/0/params/segmentSelectors/selectors/-",
        "value": {
            "type": "PLATFORM_SEGMENT",
            "value": {
                "name": "Name of the audience that you are activating",
                "description": "Description of the audience that you are activating",
                "id": "{SEGMENT_ID}",
                "filenameTemplate": "%DESTINATION_NAME%_%SEGMENT_ID%_%DATETIME(YYYYMMdd_HHmmss)%",
                "exportMode": "DAILY_FULL_EXPORT",
                "schedule": {
                    "frequency": "ONCE",
                    "triggerType": "SCHEDULED",
                    "startDate": "2021-12-20",
                    "startTime": "17:00"
                },
            }
        }
    },
{
        "op": "add",
        "path": "/transformations/0/params/profileSelectors/selectors/-",
        "value": {
            "type": "JSON_PATH",
            "value": {
                "path": "{PROFILE_ATTRIBUTE}"
            }
        }
    }
]
Egenskap
Beskrivning
{DATAFLOW_ID}
Använd ID:t för dataflödet som du skapade i föregående steg i URL-adressen.
{ETAG}

Skaffa {ETAG} från svaret i föregående steg, Skapa ett dataflöde. Svarsformatet i föregående steg har escape-citattecken. Du måste använda värdena för unescape-konvertering i huvudet i begäran. Se exemplet nedan:

  • Exempel på svar: "etag":""7400453a-0000-1a00-0000-62b1c7a90000""
  • Värde att använda i din begäran: "etag": "7400453a-0000-1a00-0000-62b1c7a90000"

Värdet för etag uppdateras med varje lyckad uppdatering av ett dataflöde.

{SEGMENT_ID}
Ange det målgrupps-ID som du vill exportera till det här målet. Information om hur du hämtar målgrupps-ID:n för de målgrupper du vill aktivera finns i hämta en publikdefinition i API-referensen för Experience Platform.
{PROFILE_ATTRIBUTE}
Till exempel: "person.lastName"
op
Åtgärdsanropet som används för att definiera den åtgärd som krävs för att uppdatera dataflödet. Åtgärderna omfattar: add, replaceoch remove. Använd kommandot add operation.
path
Definierar den del av flödet som ska uppdateras. När du lägger till en målgrupp i ett dataflöde använder du den sökväg som anges i exemplet.
value
Det nya värdet som du vill uppdatera parametern med.
id
Ange ID:t för målgruppen som du lägger till i måldataflödet.
name
Valfritt. Ange namnet på målgruppen som du lägger till i måldataflödet. Observera att det här fältet inte är obligatoriskt och att du kan lägga till en målgrupp i måldataflödet utan att ange dess namn.
filenameTemplate

Det här fältet avgör filnamnsformatet för de filer som exporteras till ditt mål.
Följande alternativ är tillgängliga:

  • %DESTINATION_NAME%: Obligatoriskt. De exporterade filerna innehåller målnamnet.
  • %SEGMENT_ID%: Obligatoriskt. De exporterade filerna innehåller ID:t för den exporterade publiken.
  • %SEGMENT_NAME%: Valfritt. De exporterade filerna innehåller namnet på den exporterade publiken.
  • DATETIME(YYYYMMdd_HHmmss) eller %TIMESTAMP%: Valfritt. Välj något av dessa två alternativ för filerna så att de innehåller den tid då de genereras av Experience Platform.
  • custom-text: Valfritt. Ersätt den här platshållaren med eventuell egen text som du vill lägga till i slutet av filnamnen.

Mer information om hur du konfigurerar filnamn finns i konfigurera filnamn i satskörningsguiden.

exportMode
Obligatoriskt. Välj "DAILY_FULL_EXPORT" eller "FIRST_FULL_THEN_INCREMENTAL". Mer information om de två alternativen finns i exportera fullständiga filer och exportera inkrementella filer i satskörningssjälvstudiekursen.
startDate
Välj det datum då målgruppen ska börja exportera profiler till ditt mål.
frequency

Obligatoriskt.

  • För "DAILY_FULL_EXPORT" exportläge, du kan välja ONCE eller DAILY.
  • För "FIRST_FULL_THEN_INCREMENTAL" exportläge, du kan välja "DAILY", "EVERY_3_HOURS", "EVERY_6_HOURS", "EVERY_8_HOURS", "EVERY_12_HOURS".
triggerType

För batchdestinationer endast. Det här fältet är endast obligatoriskt när du väljer "DAILY_FULL_EXPORT" i frequency väljare.
Obligatoriskt.

  • Välj "AFTER_SEGMENT_EVAL" så att aktiveringsjobbet körs omedelbart när det dagliga gruppsegmenteringsjobbet för plattformen har slutförts. Detta garanterar att de senaste profilerna exporteras till ditt mål när aktiveringsjobbet körs.
  • Välj "SCHEDULED" för att få aktiveringsjobbet att köras på en fast tid. Detta säkerställer att profildata exporteras vid samma tidpunkt varje dag, men de profiler du exporterar kanske inte är de mest aktuella, beroende på om gruppsegmenteringsjobbet har slutförts innan aktiveringsjobbet startar. När du väljer det här alternativet måste du även lägga till en startTime ange vid vilken tidpunkt i UTC den dagliga exporten ska ske.
endDate
För batchdestinationer endast. Det här fältet är endast obligatoriskt när du lägger till en målgrupp i ett dataflöde i exportmål för batchfiler som Amazon S3, SFTP eller Azure Blob.
Ej tillämpligt vid val "exportMode":"DAILY_FULL_EXPORT" och "frequency":"ONCE".
Anger det datum då målgruppsmedlemmar slutar att exporteras till målet.
startTime
För batchdestinationer endast. Det här fältet är endast obligatoriskt när du lägger till en målgrupp i ett dataflöde i exportmål för batchfiler som Amazon S3, SFTP eller Azure Blob.
Obligatoriskt. Välj den tidpunkt då filer som innehåller medlemmar av målgruppen ska skapas och exporteras till ditt mål.
TIP
Se Uppdatera komponenter för en målgrupp i ett dataflöde om du vill lära dig hur du uppdaterar olika komponenter (filnamnsmall, exporttid och så vidare) för exporterade målgrupper.

Svar

Leta efter ett svar från 2012. Ingen svarstext returneras. Om du vill verifiera att begäran var korrekt går du till nästa steg, Validera dataflödet.

Validera dataflödet validate-dataflow

Översiktssteg för målsteg 6

Som ett sista steg i självstudiekursen bör du validera att målgrupper och profilattribut verkligen har mappats korrekt till dataflödet.

Gör följande GET-förfrågan för att validera detta:

API-format

GET /flows

Begäran

curl --location --request PATCH 'https://platform.adobe.io/data/foundation/flowservice/flows/{DATAFLOW_ID}' \
--header 'Authorization: Bearer {ACCESS_TOKEN}' \
--header 'x-api-key: {API_KEY}' \
--header 'x-gw-ims-org-id: {ORG_ID}' \
--header 'Content-Type: application/json' \
--header 'x-sandbox-name: prod' \
--header 'If-Match: "{ETAG}"'
  • {DATAFLOW_ID}: Använd dataflödet från föregående steg.
  • {ETAG}: Använd taggen från föregående steg.

Svar

Det returnerade svaret ska innehålla transformations anger målgrupper och profilattribut som du skickade i föregående steg. Ett exempel transformations parametern i svaret kan se ut så här:

"transformations":[
   {
      "name":"GeneralTransform",
      "params":{
         "profileSelectors":{
            "selectors":[
               {
                  "type":"JSON_PATH",
                  "value":{
                     "path":"homeAddress.countryCode",
                     "operator":"EXISTS",
                     "mapping":{
                        "sourceType":"text/x.schema-path",
                        "source":"homeAddress.countryCode",
                        "destination":"homeAddress.countryCode",
                        "identity":false,
                        "primaryIdentity":false,
                        "functionVersion":0,
                        "copyModeMapping":false,
                        "sourceAttribute":"homeAddress.countryCode",
                        "destinationXdmPath":"homeAddress.countryCode"
                     }
                  }
               },
               {
                  "type":"JSON_PATH",
                  "value":{
                     "path":"person.name.firstName",
                     "operator":"EXISTS",
                     "mapping":{
                        "sourceType":"text/x.schema-path",
                        "source":"person.name.firstName",
                        "destination":"person.name.firstName",
                        "identity":false,
                        "primaryIdentity":false,
                        "functionVersion":0,
                        "copyModeMapping":false,
                        "sourceAttribute":"person.name.firstName",
                        "destinationXdmPath":"person.name.firstName"
                     }
                  }
               },
               {
                  "type":"JSON_PATH",
                  "value":{
                     "path":"person.name.lastName",
                     "operator":"EXISTS",
                     "mapping":{
                        "sourceType":"text/x.schema-path",
                        "source":"person.name.lastName",
                        "destination":"person.name.lastName",
                        "identity":false,
                        "primaryIdentity":false,
                        "functionVersion":0,
                        "copyModeMapping":false,
                        "sourceAttribute":"person.name.lastName",
                        "destinationXdmPath":"person.name.lastName"
                     }
                  }
               },
               {
                  "type":"JSON_PATH",
                  "value":{
                     "path":"personalEmail.address",
                     "operator":"EXISTS",
                     "mapping":{
                        "sourceType":"text/x.schema-path",
                        "source":"personalEmail.address",
                        "destination":"personalEmail.address",
                        "identity":false,
                        "primaryIdentity":false,
                        "functionVersion":0,
                        "copyModeMapping":false,
                        "sourceAttribute":"personalEmail.address",
                        "destinationXdmPath":"personalEmail.address"
                     }
                  }
               },
               {
                  "type":"JSON_PATH",
                  "value":{
                     "path":"segmentMembership.status",
                     "operator":"EXISTS",
                     "mapping":{
                        "sourceType":"text/x.schema-path",
                        "source":"segmentMembership.status",
                        "destination":"segmentMembership.status",
                        "identity":false,
                        "primaryIdentity":false,
                        "functionVersion":0,
                        "copyModeMapping":false,
                        "sourceAttribute":"segmentMembership.status",
                        "destinationXdmPath":"segmentMembership.status"
                     }
                  }
               }
            ],
            "mandatoryFields":[
               "person.name.firstName",
               "person.name.lastName"
            ],
            "primaryFields":[
               {
                  "fieldType":"ATTRIBUTE",
                  "attributePath":"personalEmail.address"
               }
            ]
         },
         "segmentSelectors":{
            "selectors":[
               {
                  "type":"PLATFORM_SEGMENT",
                  "value":{
                     "id":"9f7d37fd-7039-4454-94ef-2b0cd6c3206a",
                     "name":"Interested in Mountain Biking",
                     "filenameTemplate":"%DESTINATION_NAME%_%SEGMENT_ID%_%DATETIME(YYYYMMdd_HHmmss)%",
                     "exportMode":"DAILY_FULL_EXPORT",
                     "schedule":{
                        "frequency":"ONCE",
                        "startDate":"2021-12-20",
                        "startTime":"17:00"
                     },
                     "createTime":"1640016962",
                     "updateTime":"1642534355"
                  }
               },
               {
                  "type":"PLATFORM_SEGMENT",
                  "value":{
                     "id":"25768be6-ebd5-45cc-8913-12fb3f348613",
                     "name":"Loyalty Segment",
                     "filenameTemplate":"%DESTINATION_NAME%_%SEGMENT_ID%_%DATETIME(YYYYMMdd_HHmmss)%",
                     "exportMode":"FIRST_FULL_THEN_INCREMENTAL",
                     "schedule":{
                        "frequency":"EVERY_6_HOURS",
                        "startDate":"2021-12-22",
                        "endDate":"2021-12-31",
                        "startTime":"17:00"
                     },
                     "createTime":"1640016962",
                     "updateTime":"1642534355"
                  }
               }
            ]
         }
      }
   }
]

API-felhantering api-error-handling

API-slutpunkterna i den här självstudiekursen följer de allmänna felmeddelandeprinciperna för Experience Platform API. Se API-statuskoder och fel i begäranhuvudet i felsökningsguiden för plattformen för mer information om hur du tolkar felsvar.

Nästa steg next-steps

Genom att följa den här självstudiekursen har du anslutit Platform till ett av dina favoritfilbaserade mål för e-postmarknadsföring och konfigurerat ett dataflöde till respektive mål för att exportera datafiler. Utgående data kan nu användas i målet för e-postkampanjer, riktad reklam och många andra användningsfall. På följande sidor finns mer information, till exempel om hur du redigerar befintliga dataflöden med API:t för Flow Service:

recommendation-more-help
7f4d1967-bf93-4dba-9789-bb6b505339d6