Skapa ett dataflöde för Mailchimp Campaign 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 överföra Mailchimp Campaign-data till plattformen med hjälp av Flow Service API .

Förhandskrav

Innan du kan ansluta Mailchimp till Adobe Experience Platform med OAuth 2-uppdateringskod måste du först hämta din åtkomsttoken för MailChimp. Se Mailchimp OAuth 2-guiden för detaljerade instruktioner om hur du hittar din åtkomsttoken.

Skapa en basanslutning base-connection

När du har hämtat dina autentiseringsuppgifter för Mailchimp kan du nu starta processen att skapa dataflöde för att överföra Mailchimp Campaign-data till plattformen. Det första steget i att skapa ett dataflöde är att skapa en basanslutning.

En basanslutning bevarar information mellan källan och plattformen, inklusive källans autentiseringsuppgifter, anslutningsstatus och ditt unika basanslutnings-ID. Med det grundläggande anslutnings-ID:t kan du utforska och navigera bland filer inifrån källan och identifiera de specifika objekt som du vill importera, inklusive information om deras datatyper och format.

Mailchimp har stöd för både grundläggande autentisering och OAuth 2-uppdateringskod. I följande exempel finns vägledning om hur du autentiserar med någon av autentiseringstyperna.

Skapa en Mailchimp-basanslutning med grundläggande autentisering

Om du vill skapa en Mailchimp-basanslutning med grundläggande autentisering gör du en POST-förfrågan till /connections-slutpunkten för Flow Service API samtidigt som du anger autentiseringsuppgifter för authorizationTestUrl, username och password.

API-format

POST /connections

Begäran

Följande begäran skapar en basanslutning för Mailchimp:

curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/connections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}'
  -d '{
      "name": "Mailchimp base connection with basic authentication",
      "description": "Mailchimp Campaign base connection with basic authentication",
      "connectionSpec": {
          "id": "c8ce8c8c-37fb-4162-9fbf-c2f181e04a7a",
          "version": "1.0"
      },
      "auth": {
          "specName": "Basic Authentication",
          "params": {
              "authorizationTestUrl": "https://login.mailchimp.com/oauth2/metadata",
              "username": "{USERNAME}",
              "password": "{PASSWORD}"
          }
      }
  }'
Egenskap
Beskrivning
name
Namnet på din basanslutning. Kontrollera att namnet på din basanslutning är beskrivande, eftersom du kan använda detta för att söka efter information om din basanslutning.
description
(Valfritt) En egenskap som du kan inkludera för att få mer information om din basanslutning.
connectionSpec.id
Anslutningsspecifikations-ID för källan. Detta ID kan hämtas när källan har registrerats och godkänts via API:t Flow Service.
auth.specName
Autentiseringstypen som du använder för att ansluta källan till plattformen.
auth.params.authorizationTestUrl
(Valfritt) URL:en för auktoriseringstestet används för att validera autentiseringsuppgifter när en basanslutning skapas. Om inget anges kontrolleras autentiseringsuppgifterna automatiskt när du skapar en källanslutning i stället.
auth.params.username
Användarnamnet som motsvarar ditt Mailchimp-konto. Detta krävs för grundläggande autentisering.
auth.params.password
Lösenordet som motsvarar ditt Mailchimp-konto. Detta krävs för grundläggande autentisering.

Svar

Ett svar returnerar den nyskapade basanslutningen, inklusive dess unika anslutnings-ID (id). Detta ID krävs för att undersöka källans filstruktur och innehåll i nästa steg.

{
    "id": "9601747c-6874-4c02-bb00-5732a8c43086",
    "etag": "\"3702dabc-0000-0200-0000-615b5b5a0000\""
}

Skapa en Mailchimp-basanslutning med OAuth 2-uppdateringskod

Om du vill skapa en Mailchimp-basanslutning med OAuth 2-uppdateringskod gör du en POST-förfrågan till /connections-slutpunkten samtidigt som du anger autentiseringsuppgifter för authorizationTestUrl och accessToken.

API-format

POST /connections

Begäran

Följande begäran skapar en basanslutning för Mailchimp:

curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/connections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}'
  -d '{
      "name": "Mailchimp base connection with OAuth 2 refresh code",
      "description": "Mailchimp Campaign base connection with OAuth 2 refresh code",
      "connectionSpec": {
          "id": "c8ce8c8c-37fb-4162-9fbf-c2f181e04a7a",
          "version": "1.0"
      },
      "auth": {
          "specName": "oAuth2RefreshCode",
          "params": {
              "authorizationTestUrl": "https://login.mailchimp.com/oauth2/metadata",
              "accessToken": "{ACCESS_TOKEN}"
          }
      }
  }'
Egenskap
Beskrivning
name
Namnet på din basanslutning. Kontrollera att namnet på din basanslutning är beskrivande, eftersom du kan använda detta för att söka efter information om din basanslutning.
description
(Valfritt) En egenskap som du kan inkludera för att få mer information om din basanslutning.
connectionSpec.id
Anslutningsspecifikations-ID för källan. Detta ID kan hämtas efter att du har registrerat källan med API:t Flow Service.
auth.specName
Autentiseringstypen som du använder för att autentisera källan till plattformen.
auth.params.authorizationTestUrl
(Valfritt) Testnings-URL:en för auktorisering används för att validera autentiseringsuppgifter när en basanslutning skapas. Om inget anges kontrolleras autentiseringsuppgifterna automatiskt när du skapar en källanslutning i stället.
auth.params.accessToken
Motsvarande åtkomsttoken som används för att autentisera källan. Detta krävs för OAuth-baserad autentisering.

Svar

Ett svar returnerar den nyskapade basanslutningen, inklusive dess unika anslutnings-ID (id). Detta ID krävs för att undersöka källans filstruktur och innehåll i nästa steg.

{
    "id": "9601747c-6874-4c02-bb00-5732a8c43086",
    "etag": "\"3702dabc-0000-0200-0000-615b5b5a0000\""
}

Utforska din källa explore

Med det grundläggande anslutnings-ID som du skapade i det föregående steget kan du utforska filer och kataloger genom att utföra GET-begäranden. När du gör en GET-förfrågan om att utforska källans filstruktur och innehåll måste du inkludera frågeparametrarna som listas i tabellen nedan:

Parameter
Beskrivning
{BASE_CONNECTION_ID}
Det grundläggande anslutnings-ID som genererades i föregående steg.
{OBJECT_TYPE}
Vilken typ av objekt du vill utforska. För REST-källor är standardvärdet rest.
{OBJECT}
Objektet som du vill utforska.
{FILE_TYPE}
Den här parametern krävs bara när du visar en viss katalog. Dess värde representerar sökvägen till den katalog du vill utforska.
{PREVIEW}
Ett booleskt värde som definierar om innehållet i anslutningen stöder förhandsvisning.
{SOURCE_PARAMS}
En base64-kodad sträng av campaign_id.
TIP
Om du vill hämta den godkända formattypen för {SOURCE_PARAMS} måste du koda hela campaignId-strängen i base64. Till exempel är {"campaignId": "c66a200cda"} som är kodad i base64 lika med eyJjYW1wYWlnbklkIjoiYzY2YTIwMGNkYSJ9.

API-format

GET /connections/{BASE_CONNECTION_ID}/explore?objectType=rest&objectType={OBJECT_TYPE}&fileType={FILE_TYPE}&preview={PREVIEW}&sourceParams={SOURCE_PARAMS}

Begäran

curl -X GET \
  'https://platform.adobe.io/data/foundation/flowservice/connections/05c595e5-edc3-45c8-90bb-fcf556b57c4b/explore?objectType=rest&object=json&fileType=json&preview=true&sourceParams=eyJjYW1wYWlnbklkIjoiYzY2YTIwMGNkYSJ9' \
  -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 strukturen för den efterfrågade filen.

{
    "data": [
        {
            "emails": [
                {
                    "campaign_id": "c66a200cda",
                    "list_id": "10c097ca71",
                    "list_is_active": true,
                    "email_id": "cff65fb4c5f5828666ad846443720efd",
                    "email_address": "kendall2134@gmail.com",
                    "_links": [
                        {
                            "rel": "parent",
                            "href": "https://us6.api.mailchimp.com/3.0/reports/c66a200cda/email-activity",
                            "method": "GET",
                            "targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Reports/EmailActivity/CollectionResponse.json"
                        },
                        {
                            "rel": "self",
                            "href": "https://us6.api.mailchimp.com/3.0/reports/c66a200cda/email-activity/cff65fb4c5f5828666ad846443720efd",
                            "method": "GET",
                            "targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Reports/EmailActivity/Response.json"
                        },
                        {
                            "rel": "member",
                            "href": "https://us6.api.mailchimp.com/3.0/lists/10c097ca71/members/cff65fb4c5f5828666ad846443720efd",
                            "method": "GET",
                            "targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/Response.json"
                        }
                    ]
                },
                {
                    "campaign_id": "c66a200cda",
                    "list_id": "10c097ca71",
                    "list_is_active": true,
                    "email_id": "a16b82774b211afaf60902d1afd8abc5",
                    "email_address": "logan9935890967@gmail.com",
                    "_links": [
                        {
                            "rel": "parent",
                            "href": "https://us6.api.mailchimp.com/3.0/reports/c66a200cda/email-activity",
                            "method": "GET",
                            "targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Reports/EmailActivity/CollectionResponse.json"
                        },
                        {
                            "rel": "self",
                            "href": "https://us6.api.mailchimp.com/3.0/reports/c66a200cda/email-activity/a16b82774b211afaf60902d1afd8abc5",
                            "method": "GET",
                            "targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Reports/EmailActivity/Response.json"
                        },
                        {
                            "rel": "member",
                            "href": "https://us6.api.mailchimp.com/3.0/lists/10c097ca71/members/a16b82774b211afaf60902d1afd8abc5",
                            "method": "GET",
                            "targetSchema": "https://us6.api.mailchimp.com/schema/3.0/Definitions/Lists/Members/Response.json"
                        }
                    ]
                },
            ]
        }
    ]
}

Skapa en källanslutning source-connection

Du kan skapa en källanslutning genom att göra en POST-förfrågan till API:t Flow Service. En källanslutning består av ett anslutnings-ID, en sökväg till källdatafilen och ett anslutnings-spec-ID.

Om du vill skapa en källanslutning måste du också definiera ett uppräkningsvärde för dataformatattributet.

Använd följande uppräkningsvärden för filbaserade källor:

Dataformat
Uppräkningsvärde
Avgränsad
delimited
JSON
json
Parquet
parquet

Ange värdet tabular för alla tabellbaserade källor.

API-format

POST /sourceConnections

Begäran

Följande begäran skapar en källanslutning för Mailchimp:

curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/sourceConnections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}'
  -d '{
      "name": "MailChimp source connection to ingest campaign ID",
      "description": "MailChimp Campaign source connection to ingest campaign ID",
      "baseConnectionId": "4cea039f-f1cc-4fa5-9136-db8dd4c7fbfa",
      "connectionSpec": {
          "id": "c8ce8c8c-37fb-4162-9fbf-c2f181e04a7a",
          "version": "1.0"
      },
      "data": {
          "format": "json"
      },
      "params": {
          "campaignId": "c66a200cda"
      }
  }'
Egenskap
Beskrivning
name
Namnet på källanslutningen. Kontrollera att namnet på källanslutningen är beskrivande, eftersom du kan använda det här för att söka efter information om källanslutningen.
description
Ett valfritt värde som du kan ta med för att ange mer information om din källanslutning.
baseConnectionId
Basanslutnings-ID för Mailchimp. Detta ID genererades i ett tidigare steg.
connectionSpec.id
Anslutningsspecifikations-ID som motsvarar källan.
data.format
Formatet på de Mailchimp-data som du vill importera.
params.campaignId
Kampanj-ID:t Mailchimp identifierar en specifik Mailchimp-kampanj som sedan gör att du kan skicka e-post till dina listor/målgrupper.

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": "d6557bf1-7347-415f-964c-9316bd4cbf56",
    "etag": "\"e205c206-0000-0200-0000-615b5c070000\""
}

Skapa ett mål-XDM-schema target-schema

För att källdata ska kunna användas i 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 plattformsdatauppsättning där källdata finns.

Ett mål-XDM-schema kan skapas genom att utföra en POST-begäran till schemats register-API.

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åldatamängd kan skapas genom att utföra en POST-begäran till katalogtjänstens API, som anger målschemats ID 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 inkapslade data kommer in. Om du vill skapa en målanslutning måste du ange det fasta ID för anslutningsspecifikationen som motsvarar Data Lake. Detta ID är: c604ff05-7f1a-43c0-8e18-33bf874cb11c.

Du har nu de unika identifierarna för ett målschema, en måldatamängd och ett anslutningsspec-ID för Data Lake. 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 Mailchimp:

curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/targetConnections' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}'
  -d '{
      "name": "MailChimp target connection",
      "description": "MailChimp Campaign target connection",
      "connectionSpec": {
          "id": "c604ff05-7f1a-43c0-8e18-33bf874cb11c",
          "version": "1.0"
      },
      "data": {
          "format": "parquet_xdm",
          "schema": {
              "id": "https://ns.adobe.com/{TENANT_ID}/schemas/570630b91eb9d5cf5db0436756abb110d02912917a67da2d",
              "version": "application/vnd.adobe.xed-full+json;version=1"
          }
      },
      "params": {
          "dataSetId": "6155e3a9bd13651949515f14"
      }
  }'
Egenskap
Beskrivning
name
Namnet på målanslutningen. Kontrollera att namnet på målanslutningen är beskrivande, eftersom du kan använda det här för att söka efter information om målanslutningen.
description
Ett valfritt värde som du kan inkludera för att ange mer information om målanslutningen.
connectionSpec.id
Anslutningsspecifikations-ID som motsvarar Data Lake. Detta fasta ID är: c604ff05-7f1a-43c0-8e18-33bf874cb11c.
data.format
Formatet för de Mailchimp-data som du vill hämta till plattformen.
params.dataSetId
Måldatauppsättnings-ID som hämtades i ett tidigare steg.

Svar

Ett svar returnerar den nya målanslutningens unika identifierare (id). Detta ID krävs i senare steg.

{
    "id": "9463fe9c-027d-4347-a423-894fcd105647",
    "etag": "\"b902e822-0000-0200-0000-615b5c370000\""
}
IMPORTANT
Dataförberedelsefunktioner stöds för närvarande inte för Mailchimp Campaign.

Skapa ett flöde flow

Det sista steget mot att överföra Mailchimp data till plattformen ä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 begäran om POST samtidigt som du anger de tidigare angivna värdena i nyttolasten.

Om du vill schemalägga ett intag måste du först ange starttidsvärdet till epok time i sekunder. Sedan måste du ange frekvensvärdet till ett av de fem alternativen: once, minute, hour, day eller week. Intervallvärdet anger perioden mellan två på varandra följande inmatningar och att skapa en engångsinmatning (once) kräver inget intervall. Intervallvärdet måste vara lika med eller större än 15 för alla andra frekvenser.

API-format

POST /flows

Begäran

curl -X POST \
  'https://platform.adobe.io/data/foundation/flowservice/flows' \
  -H 'Authorization: Bearer {ACCESS_TOKEN}' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: {API_KEY}' \
  -H 'x-gw-ims-org-id: {ORG_ID}' \
  -H 'x-sandbox-name: {SANDBOX_NAME}'
  -d '{
      "name": "MailChimp Campaign dataflow",
      "description": "MailChimp Campaign dataflow",
      "flowSpec": {
          "id": "6499120c-0b15-42dc-936e-847ea3c24d72",
          "version": "1.0"
      },
      "sourceConnectionIds": [
          "d6557bf1-7347-415f-964c-9316bd4cbf56"
      ],
      "targetConnectionIds": [
          "9463fe9c-027d-4347-a423-894fcd105647"
      ],
      "scheduleParams": {
          "startTime": "1632809759",
          "frequency": "minute",
          "interval": 15
      }
  }'
Egenskap
Beskrivning
name
Namnet på dataflödet. Kontrollera att namnet på dataflödet är beskrivande, eftersom du kan använda det för att söka efter information om dataflödet.
description
(Valfritt) En egenskap som du kan inkludera för att få mer information om dataflödet.
flowSpec.id
Det ID för flödesspecifikation som krävs för att skapa ett dataflöde. Detta fasta ID är: 6499120c-0b15-42dc-936e-847ea3c24d72.
flowSpec.version
Motsvarande version av flödesspecifikations-ID. Standardvärdet är 1.0.
sourceConnectionIds
källanslutnings-ID genererades i ett tidigare steg.
targetConnectionIds
målanslutnings-ID genererades i ett tidigare steg.
scheduleParams.startTime
Den angivna starttiden för när det första intaget av data börjar.
scheduleParams.frequency
Frekvensen med vilken dataflödet samlar in data. Godtagbara värden är: once, minute, hour, day eller week.
scheduleParams.interval
Intervallet anger perioden mellan två på varandra följande flödeskörningar. Intervallets värde ska vara ett heltal som inte är noll. Intervall krävs inte när frekvens har angetts som once och ska vara större än eller lika med 15 för andra frekvensvärden.

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": "be2d5249-eeaf-4a74-bdbd-b7bf62f7b2da",
    "etag": "\"7e010621-0000-0200-0000-615b5c9b0000\""
}

Bilaga

Följande avsnitt innehåller information om hur du övervakar, uppdaterar och tar bort dataflödet.

Övervaka dataflödet

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

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 i Flow Service-API:t, 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 guiden om att uppdatera källkodsdataflöden med API:t.

Uppdatera ditt konto

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

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

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.

recommendation-more-help
337b99bb-92fb-42ae-b6b7-c7042161d089