Questions fréquentes
Comment consommer une Exposition API dans un dépôt ?
Pour consommer les données d’une Exposition V2 dans un dépôt, il faut créer le Connecteur DataChain qui permettra au futur dépôt consommateur d’accéder aux données.
Consommation de l’API avec REST
La création du Connecteur de type HTTP nécessite
-
Le domaine et le port de l’URL d’accès REST à l’Exposition (exemple : http://marketplace.dc-cicd.adobis.lan:40969 si l’URL d’accès complète est http://marketplace.dc-cicd.adobis.lan:40969/dmp-api/data/PROJET_EXPOSITI_1172/exposition). Cet URL est disponible dans la page de détail de l’Exposition, dans la Marketplace.
-
L’URL de génération d’un jeton d’authentification à la marketplace (exemple : http://kc.dc-cicd.adobis.lan:40969/auth/realms/dc-realm/protocol/openid-connect/token)
-
Les informations de connexion d’un utilisateur DataChain ayant accès aux données de l’exposition (nom d’utilisateur et mot de passe)
-
La saisie de l’Identifiant du Client :
dc_marketplace -
La saisie du Client secret. Pour les instances DataChain qui sont équipées de Keycloak, il est disponible depuis son interface à l’emplacement suivant : Clients > dc_marketplace > Credentials > Client secret (format du Client secret : 7192f374-xxxx-xxxx-xxxx-xxxxxxxxxxx)
Le paramètre d’authentification de ce Connecteur doit être OAuth2 (Mot de passe) et la méthode d’authentification, Basique (Entête de la requête).
L’accès aux données s’effectue au niveau d’un Dépôt DataChain consommant le connecteur précédemment créé.
Paramétrage du dépôt
-
Lecteur :
Fichier JSON V2 -
URI : la seconde partie de l’URL d’accès REST à l’Exposition (exemple :
dmp-api/data/PROJET_EXPOSITI_1172/expositionsi l’URL d’accès complète est http://marketplace.dc-cicd.adobis.lan:40969/dmp-api/data/PROJET_EXPOSITI_1172/exposition) -
Méthode :
GET
Il suffit ensuite de sélectionner les entêtes parmi les colonnes disponibles de l’exposition et d’enregistrer le Dépôt pour exploiter les données récupérées.
Consommation de l’API avec OData
La création du connecteur se fait de la même manière que pour la consommation de l’API avec REST.
La création du dépôt peut se faire avec un lecteur Fichier JSON V2 ou Fichier XML V2.
Avec un lecteur Fichier XML V2 l’URI doit comporter l’option de requête "$format=XML" (exemple : dmp-api/odata/PROJET_EXPOSITI_1172/exposition?$format=XML si l’URL d’accès complète est http://marketplace.dc-cicd.adobis.lan:41010/dmp-api/odata/PROJET_EXPOSITI_1172/exposition).
Le dépôt peut également utiliser le lecteur Fichier JSON V2 avec le même URI sans option de requête (exemple : dmp-api/odata/PROJET_EXPOSITI_1172/exposition).
Après avoir choisi la méthode GET dans les deux cas, il suffit de sélectionner les entêtes et enregistrer le dépôt pour exploiter les données de l’API.
Comment utiliser la pagination dans un dépôt consommant une API DataChain REST ?
La pagination permet de charger progressivement les données pour optimiser la performance et la fiabilité de la lecture des volumes importants de données fournies par une API.
La configuration de la pagination avec une requête à une API DataChain REST dans un dépôt HTTP nécessite l’ajout de l’option hitsPerPage dans le champ URI du dépôt. Elle permet de préciser combien d’éléments sont souhaités par page dans la réponse.
dmp-api/data/PROJET_EXPOSITI_1172/exposition?hitsPerPage=5
Ensuite, dans l’encadré à droite du champ URI, il faut spécifier une itération Par Page avec la variable page l’attente souhaitée entre deux itérations en millisecondes et le nombre d’itérations souhaitées en renseignant les champs Début et Fin (exemple : 0 et 50 000 respectivement pour effectuer 50 001 itérations).
Enfin, il est possible de mettre fin aux itérations avant qu’elles n’atteignent le nombre défini avec les champs Début et Fin en paramétrant une condition de fin d’itération.
Dans le cas de la consommation d’une API DataChain REST classique, le booléen dc_has_next présent dans l’entête de la réponse API à chaque itération peut être utilisé.
Pour ce faire, depuis l’encadré Fin d’itération des paramètres de lecture du dépôt HTTP consommant l’API DataChain, cliquer sur Contenu Entête puis sur le bouton "+" afin de renseigner les champs du nouveau couple Clé-Valeur comme suit : dc_has_next (Clé), false (Valeur).
Ainsi, les itérations prendront fin automatiquement quand la page en cours de lecture indiquera l’absence de page suivante via la Clé dc_has_next.
Comment utiliser la pagination dans un dépôt consommant une API DataChain OData ?
La pagination permet de charger progressivement les données pour optimiser la performance et la fiabilité de la lecture des volumes importants de données fournies par une API.
La configuration de la pagination avec une requête à une API DataChain OData dans un dépôt HTTP s’effectue avec l’ajout de l’option top dans le champ URI du dépôt. Elle permet de préciser combien d’éléments sont souhaités par page dans la réponse.
dmp-api/odata/PROJET_EXPOSITI_1172/exposition?$top=1000
Dans l’encadré à droite du champ URI, il faut spécifier une itération Par Offset avec la variable $skip l’attente souhaitée entre deux itérations en millisecondes, le nombre d’itérations souhaitées (champ Nb Itération) ainsi que le point de départ de la variable $skip (champ Départ) et la taille du lot de données pris en compte à chaque itération (champ Limite).
Par exemple, avec l’URL ci-dessus, un nombre d’itérations de 5000, un départ de la variable $skip à l’index 0 et une limite de 1000, le dépôt recevra 1000 enregistrements par page en partant de l’enregistrement 0 et en avançant de 1000 à chaque itération enregistrements 5000 fois au maximum.
Pour des raisons de performance, il est possible mettre fin aux itérations avant qu’elles n’atteignent le nombre d’itérations configuré en paramétrant une condition de fin d’itération.
Dans le cas de la consommation d’une API DataChain OData, une expression régulière pour détecter l’absence de l’expression nextLink dans le corps de la réponse API peut être utilisée.
Pour ce faire, depuis l’encadré Fin d’itération des paramètres de lecture du dépôt HTTP consommant l’API DataChain, cliquer sur Contenu Corps puis sélectionner Avec REGEX afin de renseigner l’expression régulière qui détectera l’absence de l’expression nextLink : ^(?!.*nextLink).*.
Ainsi, les itérations prendront fin automatiquement quand la page en cours de lecture indiquera l’absence de page suivante par l’absence de nextLink dans le corps de la réponse API.
Dernière mise à jour le 16 avril 2026 à 16:28