Questa esercitazione utilizza l’ Flow Service API per esplorare un sistema di archiviazione cloud di terze parti.
Questa guida richiede una buona comprensione dei seguenti componenti di Adobe Experience Platform:
Le sezioni seguenti forniscono informazioni aggiuntive che sarà necessario conoscere per connettersi correttamente a un sistema di archiviazione cloud utilizzando l’ Flow Service API .
Per esplorare un archivio cloud di terze parti utilizzando le API Platform, è necessario disporre di un ID di connessione valido. Se non si dispone già di una connessione per lo storage con cui si desidera lavorare, è possibile crearne una tramite le seguenti esercitazioni:
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 .
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:
Authorization: Bearer {ACCESS_TOKEN}
x-api-key: {API_KEY}
x-gw-ims-org-id: {IMS_ORG}
Tutte le risorse in Experience Platform, comprese quelle appartenenti a Flow Service, sono isolate in sandbox virtuali specifiche. Tutte le richieste alle API Platform richiedono un’intestazione che specifichi il nome della sandbox in cui avrà luogo l’operazione:
x-sandbox-name: {SANDBOX_NAME}
Tutte le richieste che contengono un payload (POST, PUT, PATCH) richiedono un’intestazione di tipo multimediale aggiuntiva:
Content-Type: application/json
Utilizzando l’ID di connessione per l’archiviazione cloud, puoi esplorare file e directory eseguendo richieste GET. Quando esegui richieste di GET per esplorare l’archiviazione cloud, devi includere i parametri di query elencati nella tabella seguente:
Parametro | Descrizione |
---|---|
objectType |
Tipo di oggetto da esplorare. Imposta questo valore come:
|
object |
Questo parametro è necessario solo quando si visualizza una directory specifica. Il suo valore rappresenta il percorso della directory che desideri esplorare. |
Utilizza la seguente chiamata per trovare il percorso del file da inserire in Platform:
Formato API
GET /connections/{CONNECTION_ID}/explore?objectType=root
GET /connections/{CONNECTION_ID}/explore?objectType=folder&object={PATH}
Parametro | Descrizione |
---|---|
{CONNECTION_ID} |
ID di connessione per il connettore di origine dell'archiviazione cloud. |
{PATH} |
Percorso di una directory. |
Richiesta
curl -X GET \
'http://platform.adobe.io/data/foundation/flowservice/connections/{CONNECTION_ID}/explore?objectType=folder&object=/some/path/' \
-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}'
Risposta
Una risposta corretta restituisce un array di file e cartelle presenti nella directory interrogata. Prendi nota della proprietà path
del file che desideri caricare, in quanto devi fornirlo nel passaggio successivo per controllarne la struttura.
[
{
"type": "file",
"name": "account.csv",
"path": "/test-connectors/testFolder-fileIngestion/account.csv",
"canPreview": true,
"canFetchSchema": true
},
{
"type": "file",
"name": "profileData.json",
"path": "/test-connectors/testFolder-fileIngestion/profileData.json",
"canPreview": true,
"canFetchSchema": true
},
{
"type": "file",
"name": "sampleprofile--3.parquet",
"path": "/test-connectors/testFolder-fileIngestion/sampleprofile--3.parquet",
"canPreview": true,
"canFetchSchema": true
}
]
Per esaminare la struttura del file di dati dall’archiviazione cloud, esegui una richiesta di GET fornendo il percorso del file e digita come parametro di query.
È possibile esaminare la struttura di un file di dati dall'origine di archiviazione cloud eseguendo una richiesta di GET fornendo il percorso e il tipo del file. Puoi anche controllare diversi tipi di file come CSV, TSV o JSON compresso e delimitare i file specificando i relativi tipi di file come parte dei parametri di query.
Formato API
GET /connections/{CONNECTION_ID}/explore?objectType=file&object={FILE_PATH}&fileType={FILE_TYPE}&{QUERY_PARAMS}&preview=true
GET /connections/{CONNECTION_ID}/explore?objectType=file&object={FILE_PATH}&preview=true&fileType=delimited&columnDelimiter=\t
GET /connections/{CONNECTION_ID}/explore?objectType=file&object={FILE_PATH}&preview=true&fileType=delimited&compressionType=gzip;
Parametro | Descrizione |
---|---|
{CONNECTION_ID} |
ID di connessione del connettore di origine dell'archiviazione cloud. |
{FILE_PATH} |
Percorso del file da esaminare. |
{FILE_TYPE} |
Il tipo di file. I tipi di file supportati sono:
|
{QUERY_PARAMS} |
Parametri di query facoltativi che possono essere utilizzati per filtrare i risultati. Per ulteriori informazioni, consulta la sezione sui parametri di query . |
Richiesta
curl -X GET \
'http://platform.adobe.io/data/foundation/flowservice/connections/{CONNECTION_ID}/explore?objectType=file&object=/aep-bootcamp/Adobe%20Pets%20Customer%2020190801%20EXP.json&fileType=json&preview=true' \
-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}'
Risposta
Una risposta corretta restituisce la struttura del file interrogato, inclusi i nomi di tabella e i tipi di dati.
[
{
"name": "Id",
"type": "String"
},
{
"name": "FirstName",
"type": "String"
},
{
"name": "LastName",
"type": "String"
},
{
"name": "Email",
"type": "String"
},
{
"name": "Phone",
"type": "String"
}
]
L' Flow Service API supporta l'utilizzo di parametri di query per visualizzare in anteprima ed esaminare diversi tipi di file.
Parametro | Descrizione |
---|---|
columnDelimiter |
Il valore a carattere singolo specificato come delimitatore di colonna per esaminare i file CSV o TSV. Se il parametro non viene fornito, il valore predefinito è una virgola (,) . |
compressionType |
Un parametro di query obbligatorio per l’anteprima di un file JSON o delimitato compresso. I file compressi supportati sono:
|
Seguendo questa esercitazione, hai esplorato il tuo sistema di archiviazione cloud, trovato il percorso del file che desideri portare in Platform e ne hai visualizzato la struttura. Puoi utilizzare queste informazioni nell'esercitazione successiva per raccogliere dati dall'archiviazione cloud e inserirli in Platform.