Questo tutorial illustra i passaggi necessari per la connessione Google PubSub (in seguito denominati "PubSub") per l'Experience Platform, utilizzando Flow Service API.
Questa guida richiede una buona conoscenza dei seguenti componenti di Adobe Experience Platform:
Le sezioni seguenti forniscono informazioni aggiuntive che è necessario conoscere per connettersi correttamente PubSub alla piattaforma utilizzando Flow Service API.
Per ottenere Flow Service per connettersi a PubSub, è necessario fornire valori per le seguenti proprietà di connessione:
Credenziali | Descrizione |
---|---|
projectId |
ID progetto richiesto per l’autenticazione PubSub. |
credentials |
Credenziali o chiave necessarie per l'autenticazione PubSub. |
topicId |
ID per PubSub risorsa che rappresenta un feed di messaggi. È necessario specificare un ID argomento se si desidera fornire l'accesso a un flusso di dati specifico nel Google PubSub sorgente. |
subscriptionId |
L’ID del tuo PubSub abbonamento. In entrata PubSub, gli abbonamenti ti consentono di ricevere messaggi, abbonandoti all’argomento in cui i messaggi sono stati pubblicati in. |
connectionSpec.id |
La specifica di connessione restituisce le proprietà del connettore di origine, incluse le specifiche di autenticazione relative alla creazione delle connessioni di base e di destinazione di origine. Il PubSub ID specifica di connessione: 70116022-a743-464a-bbfe-e226a7f8210c . |
Per ulteriori informazioni su questi valori, vedere PubSub autenticazione documento. Per utilizzare l'autenticazione basata sull'account del servizio, vedere PubSub guida alla creazione di account di servizio per i passaggi su come generare le credenziali.
Se utilizzi l’autenticazione basata sull’account del servizio, assicurati di aver concesso un accesso utente sufficiente all’account del servizio e di non inserire spazi vuoti aggiuntivi nel JSON quando copi e incolla le credenziali.
Per informazioni su come effettuare correttamente chiamate alle API di Platform, consulta la guida su introduzione alle API di Platform.
Il primo passaggio nella creazione di una connessione sorgente consiste nell’autenticare PubSub e generare un ID di connessione di base. Un ID di connessione di base consente di esplorare e navigare tra i file dall’interno dell’origine e identificare elementi specifici da acquisire, incluse informazioni relative ai tipi di dati e ai formati.
Per creare un ID di connessione di base, effettua una richiesta POST al /connections
endpoint durante la fornitura del PubSub credenziali di autenticazione come parte dei parametri della richiesta.
Durante questo passaggio, puoi definire i dati a cui il tuo account ha accesso fornendo un ID argomento. Solo gli abbonamenti associati a tale ID argomento saranno accessibili.
Le entità (ruoli) assegnate a un progetto pubsub vengono ereditate in tutti gli argomenti e le sottoscrizioni creati all'interno di un PubSub progetto. Se si desidera aggiungere un'entità principale (ruolo) per poter accedere a un argomento specifico, è necessario aggiungere anche tale entità principale (ruolo) alla sottoscrizione corrispondente dell'argomento. Per ulteriori informazioni, leggere PubSub documentazione sul controllo degli accessi.
Formato API
POST /connections
Richiesta
curl -X POST \
'https://platform.adobe.io/data/foundation/flowservice/connections' \
-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": "Google PubSub connection",
"description": "Google PubSub connection",
"auth": {
"specName": "Google PubSub authentication credentials",
"params": {
"projectId": "acme-project",
"credentials": "{CREDENTIALS}",
"topicId": "acmeProjectAPI",
"subscriptionId": "acme-project-api-new"
}
},
"connectionSpec": {
"id": "70116022-a743-464a-bbfe-e226a7f8210c",
"version": "1.0"
}
}'
Proprietà | Descrizione |
---|---|
auth.params.projectId |
ID progetto richiesto per l’autenticazione PubSub. |
auth.params.credentials |
Credenziali o chiave necessarie per l'autenticazione PubSub. |
auth.params.topicId |
L’ID dell’argomento PubSub origine a cui desideri fornire accesso. |
auth.params.subscriptionId |
L’ID dell’abbonamento rispetto al tuo PubSub argomento. |
connectionSpec.id |
Il PubSub ID specifica di connessione: 70116022-a743-464a-bbfe-e226a7f8210c . |
Risposta
In caso di esito positivo, la risposta restituisce i dettagli della connessione appena creata, incluso il relativo identificatore univoco (id
). Questo ID connessione di base è richiesto nel passaggio successivo per creare una connessione sorgente.
{
"id": "4cb0c374-d3bb-4557-b139-5712880adc55",
"etag": "\"6507cfd8-0000-0200-0000-5e18fc600000\""
}
Una connessione di origine crea e gestisce la connessione all’origine esterna da cui vengono acquisiti i dati. Una connessione di origine è costituita da informazioni quali origine dati, formato dati e un ID di connessione di origine necessari per creare un flusso di dati. Un'istanza della connessione di origine è specifica di un tenant e di un'organizzazione.
Per creare una connessione sorgente, effettua una richiesta POST al /sourceConnections
endpoint del Flow Service API.
Formato API
POST /sourceConnections
Richiesta
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": "Google PubSub source connection",
"description": "A source connection for Google PubSub",
"baseConnectionId": "4cb0c374-d3bb-4557-b139-5712880adc55",
"connectionSpec": {
"id": "70116022-a743-464a-bbfe-e226a7f8210c",
"version": "1.0"
},
"data": {
"format": "json"
},
"params": {
"topicId": "acme-project",
"subscriptionId": "{SUBSCRIPTION_ID}",
"dataType": "raw"
}
}'
Proprietà | Descrizione |
---|---|
name |
Nome della connessione di origine. Assicurati che il nome della connessione sorgente sia descrittivo, in quanto può essere utilizzato per cercare informazioni sulla connessione sorgente. |
description |
Valore facoltativo che è possibile fornire per includere ulteriori informazioni sulla connessione di origine. |
baseConnectionId |
L’ID della connessione di base PubSub origine generata nel passaggio precedente. |
connectionSpec.id |
ID della specifica di connessione fissa per PubSub. Questo ID è: 70116022-a743-464a-bbfe-e226a7f8210c |
data.format |
Il formato del PubSub i dati che desideri acquisire. Attualmente, l’unico formato di dati supportato è json . |
params.topicId |
Il nome o l’ID del PubSub argomento. In entrata PubSub, un argomento è una risorsa denominata che rappresenta un feed di messaggi. |
params.subscriptionId |
L’ID abbonamento che corrisponde a un dato argomento. In entrata PubSub, gli abbonamenti ti consentono di leggere i messaggi da un argomento. È possibile assegnare una o più sottoscrizioni a un singolo argomento. |
params.dataType |
Questo parametro definisce il tipo di dati che viene acquisito. I tipi di dati supportati includono: raw e xdm . |
Risposta
In caso di esito positivo, la risposta restituisce l’identificatore univoco (id
) della connessione sorgente appena creata. Questo ID è richiesto nell’esercitazione successiva per creare un flusso di dati.
{
"id": "e96d6135-4b50-446e-922c-6dd66672b6b2",
"etag": "\"66013508-0000-0200-0000-5f6e2ae70000\""
}
Seguendo questa esercitazione, hai creato una PubSub connessione sorgente tramite Flow Service API. Puoi utilizzare questo ID connessione sorgente nell’esercitazione successiva per creare un flusso di dati in streaming utilizzando Flow Service API.