Connettiti alle destinazioni di marketing e-mail e attiva i dati utilizzando l’API del servizio di flusso

Questa esercitazione illustra come utilizzare le chiamate API per connettersi ai dati di Adobe Experience Platform, creare una destinazione di marketing e-mail, creare un flusso di dati per la nuova destinazione creata e attivare i dati per la nuova destinazione creata.

Questa esercitazione utilizza la destinazione Adobe Campaign in tutti gli esempi, ma i passaggi sono identici per tutte le destinazioni di e-mail marketing.

Panoramica : i passaggi per creare una destinazione e attivare i segmenti

Se preferisci utilizzare l’interfaccia utente di Platform per collegare una destinazione e attivare i dati, consulta le esercitazioni Connetti una destinazione e Attiva i dati del pubblico per le destinazioni di esportazione del profilo batch .

Introduzione

Questa guida richiede una buona comprensione dei seguenti componenti di Adobe Experience Platform:

  • Experience Data Model (XDM) System: Il framework standardizzato in base al quale Experience Platform vengono organizzati i dati sulla customer experience.
  • Catalog Service: Catalog è il sistema di registrazione per la posizione dei dati e la derivazione all’interno di Experience Platform.
  • Sandboxes: Experience Platform fornisce sandbox virtuali che suddividono una singola Platform istanza in ambienti virtuali separati per sviluppare e sviluppare applicazioni di esperienza digitale.

Le sezioni seguenti forniscono informazioni aggiuntive che sarà necessario conoscere per attivare i dati nelle destinazioni di e-mail marketing in Platform.

Raccogli credenziali richieste

Per completare i passaggi descritti in questa esercitazione, devi disporre delle seguenti credenziali, a seconda del tipo di destinazioni a cui stai connettendo e attivando i segmenti.

  • Per le connessioni Amazon S3 alle piattaforme di marketing e-mail: accessId, secretKey
  • Per le connessioni SFTP alle piattaforme di marketing e-mail: domain, port, username, password o ssh key (a seconda del metodo di connessione alla posizione FTP)

Lettura di chiamate API di esempio

Questa esercitazione fornisce esempi di chiamate API per dimostrare come formattare le richieste. Questi includono percorsi, intestazioni richieste e payload di richiesta formattati correttamente. Viene inoltre fornito un esempio di codice JSON restituito nelle risposte API. Per informazioni sulle convenzioni utilizzate nella documentazione per le chiamate API di esempio, consulta la sezione su come leggere le chiamate API di esempio nella guida alla risoluzione dei problemi di Experience Platform .

Raccogli i valori delle intestazioni richieste e facoltative

Per effettuare chiamate alle API Platform, devi prima completare l’ esercitazione sull’autenticazione. Il completamento dell’esercitazione di autenticazione fornisce i valori per ciascuna delle intestazioni richieste in tutte le chiamate API Experience Platform, come mostrato di seguito:

  • Autorizzazione: Portatore {ACCESS_TOKEN}
  • x-api-key: {API_KEY}
  • x-gw-ims-org-id: {IMS_ORG}

Le risorse in Experience Platform possono essere isolate in sandbox virtuali specifiche. Nelle richieste alle API Platform , puoi specificare il nome e l’ID della sandbox in cui avrà luogo l’operazione. Si tratta di parametri facoltativi.

  • x-sandbox-name: {SANDBOX_NAME}
NOTA

Per ulteriori informazioni sulle sandbox in Experience Platform, consulta la documentazione di panoramica sandbox.

Tutte le richieste che contengono un payload (POST, PUT, PATCH) richiedono un’intestazione di tipo multimediale aggiuntiva:

  • Content-Type: application/json

Documentazione Swagger

In Swagger puoi trovare la documentazione di riferimento associata per tutte le chiamate API in questa esercitazione. Consulta la documentazione API del servizio di flusso su Adobe I/O. È consigliabile utilizzare questa esercitazione e la pagina della documentazione Swagger in parallelo.

Ottieni l’elenco delle destinazioni disponibili

Passaggio 1: panoramica dei passaggi di destinazione

Come primo passo, devi decidere a quale destinazione di marketing e-mail attivare i dati. Per iniziare, esegui una chiamata per richiedere un elenco di destinazioni disponibili a cui puoi collegare e attivare i segmenti. Esegui la seguente richiesta di GET all’endpoint connectionSpecs per restituire un elenco di destinazioni disponibili:

Formato API

GET /connectionSpecs

Richiesta

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

Risposta

Una risposta corretta contiene un elenco delle destinazioni disponibili e dei relativi identificatori univoci (id). Memorizza il valore della destinazione che intendi utilizzare, come sarà necessario in ulteriori passaggi. Ad esempio, se desideri collegare e consegnare segmenti ad Adobe Campaign, cerca il seguente frammento nella risposta:

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

Connettiti ai tuoi dati Experience Platform

Passaggio 2: panoramica dei passaggi di destinazione

Successivamente, devi connetterti ai dati Experience Platform in modo da poter esportare i dati del profilo e attivarli nella destinazione desiderata. Si tratta di due sottoregimi descritti di seguito.

  1. Innanzitutto, devi eseguire una chiamata per autorizzare l’accesso ai tuoi dati in Experience Platform, configurando una connessione di base.
  2. Quindi, utilizzando l'ID di connessione di base, effettuerai un'altra chiamata in cui crei una connessione di origine, che stabilisce la connessione ai dati Experience Platform.

Autorizza l'accesso ai tuoi dati in Experience Platform

Formato API

POST /connections

Richiesta

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: {IMS_ORG}' \
--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"
            }
}'
  • {CONNECTION_SPEC_ID}: Utilizza l’ID delle specifiche di connessione per il servizio profili - 8a9c3494-9708-43d7-ae3f-cda01e5030e1.

Risposta

Una risposta corretta contiene l'identificatore univoco della connessione di base (id). Memorizza questo valore come necessario nel passaggio successivo per creare la connessione sorgente.

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

Connettiti ai tuoi dati Experience Platform

Formato API

POST /sourceConnections

Richiesta

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: {IMS_ORG}' \
--header 'x-sandbox-name: {SANDBOX_NAME}' \
--header 'Content-Type: application/json' \
--data-raw '{
            "name": "Connecting to Profile Service",
            "description": "Optional",
            "connectionSpec": {
                "id": "{CONNECTION_SPEC_ID}",
                "version": "1.0"
            },
            "baseConnectionId": "{BASE_CONNECTION_ID}",
            "data": {
                "format": "CSV",
                "schema": null
            },
            "params" : {}
}'
  • {BASE_CONNECTION_ID}: Utilizza l'ID ottenuto nel passaggio precedente.
  • {CONNECTION_SPEC_ID}: Utilizza l'ID delle specifiche di connessione per Profile Service - 8a9c3494-9708-43d7-ae3f-cda01e5030e1.

Risposta

Una risposta corretta restituisce l'identificatore univoco (id) per la nuova connessione di origine a Profile Service. Questo conferma che la connessione ai dati Experience Platform è stata completata. Memorizza questo valore come richiesto in un passaggio successivo.

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

Connessione a una destinazione di e-mail marketing

Passaggi di destinazione: passaggio 3

In questo passaggio, stai configurando una connessione alla destinazione di marketing e-mail desiderata. Si tratta di due sottoregimi descritti di seguito.

  1. Innanzitutto, devi eseguire una chiamata per autorizzare l’accesso al provider di servizi e-mail, impostando una connessione di base.
  2. Quindi, utilizzando l'ID di connessione di base, effettuerai un'altra chiamata in cui crei una connessione di destinazione, che specifica la posizione nell'account di archiviazione in cui verranno inviati i dati esportati, nonché il formato dei dati che verranno esportati.

Autorizzare l’accesso alla destinazione di marketing e-mail

Formato API

POST /connections

Richiesta

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: {IMS_ORG}' \
--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": "{_CONNECTION_SPEC_ID}",
        "version": "1.0"
    },
    "auth": {
        "specName": "{S3 or SFTP}",
        "params": {
            "accessId": "{ACCESS_ID}",
            "secretKey": "{SECRET_KEY}"
        }
    }
}'
  • {CONNECTION_SPEC_ID}: Utilizza l’ID delle specifiche di connessione ottenuto nel passaggio Ottieni l’elenco delle destinazioni disponibili.
  • {S3 or SFTP}: compila il tipo di connessione desiderato per questa destinazione. Nel catalogo di destinazione, scorri fino alla destinazione desiderata per verificare se i tipi di connessione S3 e/o SFTP sono supportati.
  • {ACCESS_ID}: ID di accesso per la posizione di archiviazione Amazon S3.
  • {SECRET_KEY}: Chiave segreta per il percorso di archiviazione Amazon S3.

Risposta

Una risposta corretta contiene l'identificatore univoco della connessione di base (id). Memorizza questo valore come necessario nel passaggio successivo per creare una connessione di destinazione.

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

Specificare il percorso di archiviazione e il formato dei dati

Adobe Experience Platform esporta dati per destinazioni di marketing e archiviazione cloud e-mail sotto forma di CSV file.

IMPORTANTE

Adobe Experience Platform divide automaticamente i file di esportazione a 5 milioni di record (righe) per file. Ogni riga rappresenta un profilo.

I nomi dei file divisi vengono aggiunti con un numero che indica che il file fa parte di un’esportazione più grande, in quanto tale: filename.csv, filename_2.csv, filename_3.csv.

Formato API

POST /targetConnections

Richiesta

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: {IMS_ORG}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "TargetConnection for Adobe Campaign",
    "description": "Connection to Adobe Campaign",
    "baseConnectionId": "{BASE_CONNECTION_ID}",
    "connectionSpec": {
        "id": "{CONNECTION_SPEC_ID}",
        "version": "1.0"
    },
    "data": {
        "format": "json",
        "schema": {
            "id": "1.0",
            "version": "1.0"
        }
    },
    "params": {
        "mode": "S3",
        "bucketName": "{BUCKETNAME}",
        "path": "{FILEPATH}",
        "format": "CSV"
    }
}'
  • {BASE_CONNECTION_ID}: Utilizza l'ID di connessione di base ottenuto nel passaggio precedente.
  • {CONNECTION_SPEC_ID}: Utilizza le specifiche di connessione ottenute nel passaggio Ottieni l’elenco delle destinazioni disponibili.
  • {BUCKETNAME}: Il bucket Amazon S3, in cui Platform depositerà l’esportazione dei dati.
  • {FILEPATH}: Il percorso nella directory del bucket Amazon S3 in cui Platform depositerà l’esportazione dei dati.

Risposta

Una risposta corretta restituisce l’identificatore univoco (id) per la nuova connessione di destinazione alla destinazione di marketing dell’e-mail. Memorizza questo valore come richiesto nei passaggi successivi.

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

Creare un flusso di dati

Passaggi di destinazione: passaggio 4

Utilizzando gli ID ottenuti nei passaggi precedenti, ora puoi creare un flusso di dati tra i dati Experience Platform e la destinazione in cui attiverai i dati. Considera questo passaggio come la costruzione della pipeline, attraverso la quale i dati scorreranno successivamente, tra Experience Platform e la destinazione desiderata.

Per creare un flusso di dati, esegui una richiesta POST, come mostrato di seguito, fornendo al tempo stesso i valori indicati di seguito all’interno del payload.

Esegui la seguente richiesta POST per creare un flusso di dati.

Formato API

POST /flows

Richiesta

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: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}' \
-H 'Content-Type: application/json' \
-d  '{
   
        "name": "Activate segments to Adobe Campaign",
        "description": "This operation creates a dataflow which we will later use to activate segments 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": []
                    }
                }
            }
        ]
    }
  • {FLOW_SPEC_ID}: Utilizza il flusso per la destinazione di marketing e-mail a cui desideri connetterti. Per ottenere le specifiche di flusso, esegui un’operazione di GET sull’endpoint flowspecs. Vedi la documentazione Swagger qui: https://platform.adobe.io/data/foundation/flowservice/swagger#/Flow%20Specs%20API/getFlowSpecs. Nella risposta , cerca upsTo e copia l’ID corrispondente della destinazione di marketing e-mail a cui desideri connetterti. Ad esempio, per Adobe Campaign, cerca upsToCampaign e copia il parametro id .
  • {SOURCE_CONNECTION_ID}: Utilizza l'ID di connessione sorgente ottenuto nel passaggio Connetti all'Experience Platform.
  • {TARGET_CONNECTION_ID}: Utilizza l’ID di connessione di destinazione ottenuto nel passaggio Connetti alla destinazione di e-mail marketing.

Risposta

Una risposta corretta restituisce l'ID (id) del flusso di dati appena creato e un valore etag. Annotare entrambi i valori. come li eseguirai nel passaggio successivo, per attivare i segmenti.

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

Attiva i dati nella nuova destinazione

Passaggi di destinazione: passaggio 5

Dopo aver creato tutte le connessioni e il flusso di dati, ora puoi attivare i dati del profilo sulla piattaforma di e-mail marketing. In questo passaggio, seleziona i segmenti e gli attributi di profilo che stai inviando alla destinazione e puoi pianificare e inviare i dati alla destinazione.

Per attivare i segmenti nella nuova destinazione, è necessario eseguire un’operazione JSON PATCH, simile all’esempio seguente. Puoi attivare più segmenti e attributi di profilo in una sola chiamata. Per ulteriori informazioni su JSON PATCH, consulta la specifica RFC.

Formato API

PATCH /flows

Richiesta

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: {IMS_ORG}' \
--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 segment that you are activating",
                "description": "Description of the segment that you are activating",
                "id": "{SEGMENT_ID}"
            }
        }
    },
        {
        "op": "add",
        "path": "/transformations/0/params/segmentSelectors/selectors/-",
        "value": {
            "type": "PLATFORM_SEGMENT",
            "value": {
                "name": "Name of the segment that you are activating",
                "description": "Description of the segment that you are activating",
                "id": "{SEGMENT_ID}"
            }
        }
    },
        {
        "op": "add",
        "path": "/transformations/0/params/profileSelectors/selectors/-",
        "value": {
            "type": "JSON_PATH",
            "value": {
                "operator": "EXISTS",
                "path": "{PROFILE_ATTRIBUTE}"
            }
        }
    }
]
  • {DATAFLOW_ID}: Utilizza il flusso di dati ottenuto nel passaggio precedente.
  • {ETAG}: Utilizza il tag ottenuto nel passaggio precedente.
  • {SEGMENT_ID}: Fornisci l’ID del segmento da esportare a questa destinazione. Per recuperare gli ID dei segmenti per i segmenti che si desidera attivare, vai su https://www.adobe.io/apis/experienceplatform/home/api-reference.html#/, seleziona API Servizio di segmentazione nel menu di navigazione a sinistra e cerca l'operazione GET /segment/definitions in Definizioni dei segmenti.
  • {PROFILE_ATTRIBUTE}: Esempio, "person.lastName"

Risposta

Cerca una risposta 202 OK. Non viene restituito alcun corpo di risposta. Per verificare che la richiesta fosse corretta, vedi il passaggio successivo, Convalida il flusso di dati.

Convalidare il flusso di dati

Passaggi di destinazione: passaggio 6

Come passaggio finale nell’esercitazione, dovresti verificare che i segmenti e gli attributi di profilo siano stati mappati correttamente al flusso di dati.

Per convalidarlo, esegui la seguente richiesta di GET:

Formato API

GET /flows

Richiesta

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: {IMS_ORG}' \
--header 'Content-Type: application/json' \
--header 'x-sandbox-name: prod' \
--header 'If-Match: "{ETAG}"' 
  • {DATAFLOW_ID}: Utilizza il flusso di dati del passaggio precedente.
  • {ETAG}: Utilizza il tag del passaggio precedente.

Risposta

La risposta restituita deve includere nel parametro transformations i segmenti e gli attributi di profilo inviati nel passaggio precedente. Di seguito è riportato un parametro di esempio transformations nella risposta:

"transformations": [
    {
        "name": "GeneralTransform",
        "params": {
            "profileSelectors": {
                "selectors": []
            },
            "segmentSelectors": {
                "selectors": [
                    {
                        "type": "PLATFORM_SEGMENT",
                        "value": {
                            "name": "Men over 50",
                            "description": "",
                            "id": "72ddd79b-6b0a-4e97-a8d2-112ccd81bd02"
                        }
                    }
                ]
            }
        }
    }
],

Passaggi successivi

Seguendo questa esercitazione, hai collegato Platform a una delle tue destinazioni di e-mail marketing preferite e hai impostato un flusso di dati per la rispettiva destinazione. I dati in uscita possono ora essere utilizzati nella destinazione per campagne e-mail, pubblicità mirata e molti altri casi d’uso. Per ulteriori informazioni, consulta le pagine seguenti:

In questa pagina