Cette section décrit les endpoints de l'API permettant de lister, créer, modifier et supprimer les arborescences fonctionnelles (data structures).
Récupérer la liste des arborescences disponibles
Description
Cette requête vous permet de lister les arborescences disponibles afin de récupérer leurs identifiants (ID), qui sont nécessaires pour effectuer d'autres requêtes.
Get v2/data-structures
Scope
Pour effectuer cette requête, vous devez posséder le scope metadata:read.
Paramètres
Name (string, optionnel) : permet d'indiquer le nom de l'arborescence pour laquelle on souhaite récupérer l'identifiant.
Remarque : Si vous omettez ce paramètre, la requête retournera la liste de toutes les arborescences disponibles dans l'environnement.
Ce paramètre doit être ajouté à la fin de l'URL pour construire la chaîne de requête. Il est précédé d'un "?" :
.../v2/data-structures?Name=[nom de l'arborescence]
Exemple de requête
# Commande pour lister les structures de données dont le nom contient un "a"
curl -X GET \
'https://xxx.indaba.api.indasuite.io-base.com/v2/data-structures?name=a' \
# ----- En-têtes -----
-H 'accept: application/json' \
-H 'Authorization: Bearer VOTRE_JETON_JWT'
Réponses :
Réponse valide (200 OK) :
{
"data": [
{
"id": "3ee3c063-5393-4e8e-ba6a-fbd46f6dfcc9",
"name": "Arbo_1"
},
{
"id": "106a1c95-00c2-4499-b8f9-fad7de91bf78",
"name": "Arbo_2"
}
],
"resultCode": 2010,
"message": "OK"
}
Erreurs courantes :
Veuillez vous référer à la liste des erreurs courantes.
Créer une arborescence
Description
Cette requête vous permet de créer une nouvelle arborescence.
Post v2/data-structures
Scope
Pour effectuer cette requête, vous devez posséder le scope metadata:admin.
Paramètres
Accept-Language (string, optionnel) : traduit les types par défaut de l'arborescence en anglais ou français.
Le paramètre peut prendre deux valeurs :
en : anglais
fr : français
Ce paramètre doit être ajouté dans un header :
-H 'Accept-Language: en'
Corps de la requête
Le paramètre suivant doit être fourni dans le corps de la requête :
name : nom de l'arborescence fonctionnelle à créer
Exemple de requête
# Commande pour créer une nouvelle arborescence nommée "Test"
curl -X 'POST' \
'https://xxx.indaba.api.indasuite.io-base.com/v2/data-structures' \
# ----- En-têtes -----
-H 'accept: application/json' \
-H 'Accept-Language: en' \
-H 'Authorization: Bearer VOTRE_JETON_JWT' \
-H 'Content-Type: application/json' \
# ----- Corps de la requête -----
-d '
{
"name": "Test"
}
'
Réponses :
Réponse valide (200 OK) :
{
"data": {
"id": "3011c6de-3405-453d-bb56-3a700816b194",
"name": "Test"
},
"resultCode": 2010,
"message": "OK"
}
Erreurs courantes :
Veuillez vous référer à la liste des erreurs courantes.
Mettre à jour une arborescence
Description
Cette requête vous permet de modifier le nom d'une arborescence existante.
Put v2/data-structures/{data_structure_id}
Scope
Pour effectuer cette requête, vous devez posséder le scope "metadata:admin".
Paramètres
data_structure_id (string, obligatoire) : ID attribué à l'arborescence.
Cet ID peut être récupéré via la requête
GET v2/data-structures
ou lors de la création d'une nouvelle arborescence avecPOST v2/data-structures
.
Ce paramètre doit être ajouté à l'URL pour construire la chaîne de requête :
/v2/data-structures/{data_structure_id}
Corps de la requête
Le paramètre suivant doit être fourni dans le corps de la requête :
name : nouveau nom de l'arborescence
Exemple de requête :
# Commande pour mettre à jour le nom d'une arborescence
curl -X 'PUT' \
'https://xxx.indaba.api.indasuite.io-base.com/v2/data-structures/3011c6de-3405-453d-bb56-3a700816b194' \
# ----- En-têtes -----
-H 'accept: application/json' \
-H 'Authorization: Bearer VOTRE_JETON_JWT' \
-H 'Content-Type: application/json' \
# ----- Corps de la requête -----
-d '
{
"name": "Test_modif"
}
'
Réponses
Réponse valide (200 OK) :
Note : Un nouvel id est généré pour l'arborescence
{
"data": {
"id": "3011c6de-3405-453d-bb56-3a700816b194",
"name": "Test_modif"
},
"resultCode": 2010,
"message": "OK"
}
Erreurs courantes :
Veuillez vous référer à la liste des erreurs courantes.
Supprimer une arborescence
Description
Cette requête vous permet de supprimer une arborescence existante.
Delete v2/data-structures/{data_structure_id}
Scope
Pour effectuer cette requête, vous devez posséder le scope metadata:admin.
Paramètres
data_structure_id (string, obligatoire) : ID attribué à l'arborescence.
Cet ID peut être récupéré via la requête
GET v2/data-structures
ou lors de la création d'une nouvelle arborescence avecPOST v2/data-structures
.
Ce paramètre doit être ajouté à l'URL pour construire la chaîne de requête :
/v2/data-structures/{data_structure_id}
Exemple de requête
# Commande pour supprimer une arborescence
curl -X 'DELETE' \
'https://xxx.indaba.api.indasuite.io-base.com/v2/data-structures/b6798624-01f4-4ae0-95dc-983e52211e8b' \
# ----- En-têtes -----
-H 'accept: application/json' \
-H 'Authorization: Bearer VOTRE_JETON_JWT'
Réponses :
Réponse valide (200 OK) :
{
"resultCode": 2010,
"message": "OK"
}
Erreurs courantes :
Veuillez vous référer à la liste des erreurs courantes.
Erreurs courantes
Vous rencontrerez principalement les codes d'erreur HTTP suivants :
400 Bad Request : Votre requête est malformée. Cela peut être dû à un paramètre manquant, un type de donnée incorrect ou un JSON invalide. Le corps de la réponse contiendra un tableau errors détaillant le problème.
{
"errors": [
{
"error": "Type_De_L_Erreur",
"message": "Description détaillée de l'erreur spécifique."
}
],
"statusCode": 1050,
"message": "Invalid request"
}
401 Unauthorized : Votre jeton d'authentification (JWT) est manquant, invalide ou expiré. Vous devez obtenir un nouveau jeton valide.
403 Forbidden : Votre jeton d'authentification est valide, mais vous n'avez pas les droits nécessaires pour cette action.
Votre jeton n'a pas les droits (scope) nécessaires (par exemple, vous tentez de créer une arborescence sans avoir le scope metadata:admin).
404 Not Found : La ressource que vous essayez d'atteindre n'existe pas. Cela se produit typiquement si vous utilisez un ID incorrect ou si vous demandez une métrique qui n'existe pas.