Explorez un système d’enregistrement cloud à l’aide de l’API Flow Service

Ce didacticiel utilise l’Flow Service API pour explorer un système d’enregistrement cloud tiers.

Prise en main

Ce guide nécessite une compréhension professionnelle des composants suivants d’Adobe Experience Platform :

  • Sources : Experience Platform permet l’assimilation de données à partir de diverses sources tout en vous permettant de structurer, d’étiqueter et d’améliorer les données entrantes à l’aide de Platform services.
  • Sandbox : Experience Platform fournit des sandbox virtuels qui partitionnent une Platform instance unique en environnements virtuels distincts pour aider à développer et à développer des applications d'expérience numérique.

Les sections suivantes fournissent des informations supplémentaires dont vous aurez besoin pour vous connecter à un système d'enregistrement cloud à l'aide de l'API Flow Service.

Obtention d’un ID de connexion

Pour explorer un enregistrement cloud tiers à l’aide des API Platform, vous devez posséder un identifiant de connexion valide. Si vous n’avez pas encore de connexion pour l’enregistrement que vous souhaitez utiliser, vous pouvez en créer une à l’aide des didacticiels suivants :

Lecture d’exemples d’appels API

Ce tutoriel fournit des exemples d’appels API pour démontrer comment formater vos requêtes. Il s’agit notamment de chemins d’accès, d’en-têtes requis et de payloads de requêtes correctement formatés. L’exemple JSON renvoyé dans les réponses de l’API est également fourni. Pour plus d’informations sur les conventions utilisées dans la documentation pour les exemples d’appels d’API, voir la section concernant la lecture d’exemples d’appels d’API dans le guide de dépannageExperience Platform.

Collecter des valeurs pour les en-têtes requis

Pour lancer des appels aux API Platform, vous devez d’abord suivre le tutoriel d’authentification. Le tutoriel d’authentification fournit les valeurs de chacun des en-têtes requis dans tous les appels d’API Experience Platform, comme indiqué ci-dessous :

  • Authorization: Bearer {ACCESS_TOKEN}
  • x-api-key: {API_KEY}
  • x-gw-ims-org-id: {IMS_ORG}

Toutes les ressources de Experience Platform, y compris celles appartenant à Flow Service, sont isolées dans des sandbox virtuels spécifiques. Toutes les requêtes d'API Platform nécessitent un en-tête spécifiant le nom du sandbox dans lequel l'opération aura lieu :

  • x-sandbox-name: {SANDBOX_NAME}

Toutes les requêtes qui contiennent un payload (POST, PUT, PATCH) nécessitent un en-tête de type de média supplémentaire :

  • Content-Type: application/json

Explorez votre enregistrement cloud

L’ID de connexion de votre enregistrement cloud vous permet d’explorer des fichiers et des répertoires en exécutant des demandes de GET. Lorsque vous effectuez des demandes de GET pour explorer votre enregistrement cloud, vous devez inclure les paramètres de requête répertoriés dans le tableau ci-dessous :

Paramètre Description
objectType Type d’objet que vous souhaitez explorer. Définissez cette valeur comme suit :
  • folder: Explorer un répertoire spécifique
  • root: Explorez le répertoire racine.
object Ce paramètre n’est requis que lors de l’affichage d’un répertoire spécifique. Sa valeur représente le chemin du répertoire que vous souhaitez explorer.

Utilisez l'appel suivant pour trouver le chemin d'accès du fichier que vous souhaitez importer dans Platform :

Format d’API

GET /connections/{CONNECTION_ID}/explore?objectType=root
GET /connections/{CONNECTION_ID}/explore?objectType=folder&object={PATH}
Paramètre Description
{CONNECTION_ID} ID de connexion de votre connecteur source d’enregistrement cloud.
{PATH} Chemin d’accès d’un répertoire.

Requête

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}'

Réponse

Une réponse réussie renvoie un tableau de fichiers et de dossiers trouvés dans le répertoire interrogé. Prenez note de la propriété path du fichier que vous souhaitez télécharger, car vous devez la fournir à l'étape suivante pour inspecter sa structure.

[
    {
        "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
    }
]

Inspect de la structure d’un fichier

Pour inspecter la structure du fichier de données à partir de votre enregistrement cloud, effectuez une demande de GET tout en indiquant le chemin d’accès du fichier et saisissez-le comme paramètre de requête.

Vous pouvez inspecter la structure d’un fichier de données à partir de votre source d’enregistrement cloud en exécutant une demande de GET tout en indiquant le chemin d’accès et le type du fichier. Vous pouvez également examiner différents types de fichiers tels que CSV, TSV ou JSON compressé et les fichiers délimités en spécifiant leurs types de fichiers dans le cadre des paramètres de requête.

Format d’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;
Paramètre Description
{CONNECTION_ID} ID de connexion de votre connecteur source d’enregistrement cloud.
{FILE_PATH} Chemin d'accès au fichier que vous souhaitez inspecter.
{FILE_TYPE} Type du fichier. Les types de fichiers pris en charge sont les suivants :
  • DELIMITED : Valeur séparée par des délimiteurs. Les fichiers DSV doivent être séparés par des virgules.
  • JSON : Notation d’objet JavaScript. Les fichiers JSON doivent être compatibles XDM
  • PARQUET : Parquet Apache. Les fichiers de parquets doivent être conformes à XDM.
{QUERY_PARAMS} Paramètres de requête facultatifs pouvant être utilisés pour filtrer les résultats. Pour plus d'informations, consultez la section Paramètres de requête.

Requête

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}'

Réponse

Une réponse réussie renvoie la structure du fichier interrogé, y compris les noms de table et les types de données.

[
    {
        "name": "Id",
        "type": "String"
    },
    {
        "name": "FirstName",
        "type": "String"
    },
    {
        "name": "LastName",
        "type": "String"
    },
    {
        "name": "Email",
        "type": "String"
    },
    {
        "name": "Phone",
        "type": "String"
    }
]

Utilisation des paramètres de requête

L'Flow Service API prend en charge l'utilisation de paramètres de requête pour la prévisualisation et l'inspection de différents types de fichiers.

Paramètre Description
columnDelimiter Valeur d’un caractère unique que vous avez spécifiée comme délimiteur de colonne pour inspecter les fichiers CSV ou TSV. Si le paramètre n'est pas fourni, la valeur est par défaut une virgule (,).
compressionType Paramètre de requête requis pour l’aperçu d’un fichier délimité compressé ou d’un fichier JSON. Les fichiers compressés pris en charge sont les suivants :
  • bzip2
  • gzip
  • deflate
  • zipDeflate
  • tarGzip
  • tar

Étapes suivantes

En suivant ce didacticiel, vous avez exploré votre système d'enregistrement cloud, trouvé le chemin d'accès au fichier que vous souhaitez apporter à Platform et consulté sa structure. Vous pouvez utiliser ces informations dans le didacticiel suivant pour collecter des données à partir de votre enregistrement cloud et les importer dans Platform.

Sur cette page