Show Menu
ARGOMENTI×

Creazione di una connessione in streaming autenticata

La raccolta dati autenticata consente servizi di Adobe Experience Platform, come Real-time Customer Profile e Identity, di distinguere tra record provenienti da fonti attendibili e fonti non attendibili. I clienti che desiderano inviare informazioni personali (PII) possono farlo inviando token di accesso come parte della richiesta POST.

Introduzione

La registrazione della connessione di streaming è necessaria per avviare i dati di streaming Adobe Experience Platform. Quando registrate una connessione in streaming, dovete fornire alcuni dettagli chiave come l'origine dei dati in streaming.
Dopo la registrazione di una connessione di streaming, l'utente, in qualità di produttore di dati, avrà un URL univoco che può essere utilizzato per lo streaming dei dati Platform.
Questa esercitazione richiede anche una conoscenza approfondita dei vari servizi Adobe Experience Platform. Prima di iniziare questa esercitazione, consulta la documentazione relativa ai seguenti servizi:
Le sezioni seguenti forniscono informazioni aggiuntive che sarà necessario conoscere per effettuare correttamente chiamate alle API di assimilazione in streaming.

Lettura di chiamate API di esempio

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

Raccogli valori per le intestazioni richieste

Per effettuare chiamate alle Platform API, è prima necessario completare l'esercitazione sull' autenticazione. Completando l'esercitazione sull'autenticazione, vengono forniti i valori per ciascuna delle intestazioni richieste in tutte le chiamate Experience Platform API, come illustrato di seguito:
  • Autorizzazione: Portatore {ACCESS_TOKEN}
  • x-api-key: {API_KEY}
  • x-gw-ims-org-id: {IMS_ORG}
Tutte le risorse in Experience Platform sono isolate in sandbox virtuali specifiche. Tutte le richieste alle Platform API richiedono un'intestazione che specifica il nome della sandbox in cui avrà luogo l'operazione:
  • x-sandbox-name: {SANDBOX_NAME}
Per ulteriori informazioni sulle sandbox in Platform, consultate la documentazione sulla panoramica della sandbox.
Tutte le richieste che contengono un payload (POST, PUT, PATCH) richiedono un'intestazione aggiuntiva:
  • Content-Type: application/json

Creare una connessione

Una connessione specifica l'origine e contiene le informazioni necessarie per rendere il flusso compatibile con le API di assimilazione in streaming.
Formato API
POST /flowservice/connections

Richiesta
I valori per l'elenco providerId e per l'evento connectionSpec devono ​essere utilizzati come mostrato nell'esempio, in quanto sono ciò che specifica all'API che si sta creando una connessione di streaming per l'assimilazione in streaming.
curl -X POST https://platform.adobe.io/data/foundation/flowservice/connections \
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'Content-Type: application/json' \
 -H 'x-gw-ims-org-id: {IMS_ORG}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}' \
 -d '{
     "name": "Sample name",
     "providerId": "521eee4d-8cbe-4906-bb48-fb6bd4450033",
     "description": "Sample description",
     "connectionSpec": {
         "id": "bc7b00d6-623a-4dfc-9fdb-f1240aeadaeb",
         "version": "1.0"
     },
     "auth": {
         "specName": "Streaming Connection",
         "params": {
             "sourceId": "Sample connection",
             "dataType": "xdm",
             "name": "Sample connection",
             "authenticationRequired": true
         }
     }
 }

Risposta
Una risposta corretta restituisce lo stato HTTP 201 con i dettagli della nuova connessione creata.
{
    "id": "77a05521-91d6-451c-a055-2191d6851c34",
    "etag": "\"a500e689-0000-0200-0000-5e31df730000\""
}

Proprietà
Descrizione
id
La id nuova connessione appena creata. In questo caso si farà riferimento a {CONNECTION_ID} .
etag
Identificatore assegnato alla connessione, che specifica la revisione della connessione.

Ottieni URL raccolta dati

Con la connessione creata, ora puoi recuperare l'URL di raccolta dati.
Formato API
GET /flowservice/connections/{CONNECTION_ID}

Parametro
Descrizione
{CONNECTION_ID}
Il id valore della connessione precedentemente creata.
Richiesta
curl -X GET https://platform.adobe.io/data/foundation/flowservice/connections/{CONNECTION_ID} \
 -H 'Authorization: Bearer {ACCESS_TOKEN}' \
 -H 'x-gw-ims-org-id: {IMS_ORG}' \
 -H 'x-api-key: {API_KEY}' \
 -H 'x-sandbox-name: {SANDBOX_NAME}'

Risposta
Una risposta corretta restituisce lo stato HTTP 200 con informazioni dettagliate sulla connessione richiesta. L'URL di raccolta dati viene creato automaticamente con la connessione e può essere recuperato utilizzando il inletUrl valore.
{
    "items": [
        {
            "createdAt": 1583971856947,
            "updatedAt": 1583971856947,
            "createdBy": "{API_KEY}",
            "updatedBy": "{API_KEY}",
            "createdClient": "{USER_ID}",
            "updatedClient": "{USER_ID}",
            "id": "77a05521-91d6-451c-a055-2191d6851c34",
            "name": "Another new sample connection (Experience Event)",
            "description": "Sample description",
            "connectionSpec": {
                "id": "bc7b00d6-623a-4dfc-9fdb-f1240aeadaeb",
                "version": "1.0"
            },
            "state": "enabled",
            "auth": {
                "specName": "Streaming Connection",
                "params": {
                    "sourceId": "Sample connection (ExperienceEvent)",
                    "inletUrl": "https://dcs.adobedc.net/collection/a868e1ce678a911ef1482b083329af3cafa4bafdc781285f25911eaae9e00eb2",
                    "inletId": "a868e1ce678a911ef1482b083329af3cafa4bafdc781285f25911eaae9e00eb2",
                    "dataType": "xdm",
                    "name": "Sample connection (ExperienceEvent)"
                }
            },
            "version": "\"56008aee-0000-0200-0000-5e697e150000\"",
            "etag": "\"56008aee-0000-0200-0000-5e697e150000\""
        }
    ]
}

Passaggi successivi

Dopo aver creato una connessione di streaming autenticata, è possibile trasmettere in streaming le serie temporali o registrare i dati, in modo da acquisire i dati all'interno Platform. Per informazioni su come eseguire lo streaming dei dati delle serie temporali Platform, consulta l’esercitazione sui dati delle serie temporali in streaming. Per informazioni su come eseguire lo streaming dei dati dei record, Platformpassare all'esercitazione sui dati dei record in streaming.

Appendice

Questa sezione fornisce informazioni supplementari sulle connessioni in streaming autenticate.

Invio di messaggi a una connessione in streaming autenticata

Se l’autenticazione di una connessione in streaming è abilitata, il client dovrà aggiungere l’ Authorization intestazione alla propria richiesta.
Se l’ Authorization intestazione non è presente o viene inviato un token di accesso non valido/scaduto, viene restituita una risposta non autorizzata HTTP 401 con una risposta simile come segue:
Risposta
{
    "type": "https://ns.adobe.com/adobecloud/problem/data-collection-service-authorization",
    "status": "401",
    "title": "Authorization",
    "report": {
        "message": "[id] Ims service token is empty"
    }
}