Cette section détaille les endpoints permettant de générer des formules génériques au sein de l'arborescence.
Pour rappel, cette génération s'appuie sur des modèles de formules qui doivent avoir été préalablement définis sur les types de votre arborescence.
Si vous n'êtes pas familiers avec cette fonctionnalité, consultez la documentation sur les modèles de formules.
Récupérer la liste des métriques à générer
Description
Cette requête permet de lister l'ensemble des métriques à générer à partir d'un modèle.
Remarque : Il ne s'agit pas ici de générer des métriques, mais de visualiser les métriques qui peuvent être générées par un modèle.
Get /v2/data-structures/{data_structure_id}/templates/generate/formulas/{formulas_template_id}
Scope
Pour effectuer cette requête, vous devez posséder le scope suivant : metadata:read.
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
.
formula_template_id (string, obligatoire) : ID attribué au modèle de formules que vous souhaitez éditer.
Cet ID peut être récupéré via la requête
Get v2/data-structures/{data_structure_id}/types/{type_id}/formulas
ou lors de la création du template de formules.Remarque : Ce paramètre peut être laissé vide pour récupérer toutes les formules issues de modèles de l'arborescence.
Ces paramètres doivent être ajoutés à l'URL pour construire la chaîne de requête tel que :
/v2/data-structures/{data_structure_id}/templates/generate/formulas/{formulas_template_id}
Exemple de requête
# Commande pour générer les formules d'un modèle
curl -X 'GET' \
'https://xxx.indaba.api.indasuite.io-base.com/v2/data-structures/67337415-6bcb-4c21-b0f5-8253d68b6e80/templates/generate/formulas/9b034dcf-0e5b-4b45-908a-1c07ff7880c1' \
# ----- En-têtes -----
-H 'accept: application/json' \
-H 'Authorization: Bearer VOTRE_JETON_JWT'
Réponses
exemple de réponse valide (200 OK) :
{
"data": [
{
"id": "5d2b5890-a3e4-482c-9ade-bff1662f5fc8",
"dataStructureId": "67337415-6bcb-4c21-b0f5-8253d68b6e80",
"typeId": "0b3f2349-9b17-45d9-b7c4-0b47d0f39960",
"parentId": "_siteb",
"label": "main@dopen_106",
"metric": {
"id": "main@dopen_106",
"name": "dopen_106",
"datasource": "main",
"description": "formule vérifiant si la diode du site 106 est ouverte ou non.",
"type": "Calculated"
},
"properties": {},
"parents": {
"e9910c2b-83e9-4954-a1dd-abca2d833999": [
{
"code_site": 106,
"id": "_siteb",
"label": "Site b",
"parentid": null
}
]
},
"options": {
"indabaId": "main@dopen_106",
"indabaLabel": "Name"
},
"isTypeMetric": true,
"hasError": false,
"formula": "if(main@cip_int_106>0 or main@cip_int_106>0, 1, 0)",
"formulaTemplateId": "9b034dcf-0e5b-4b45-908a-1c07ff7880c1",
"formulaTemplateVersion": 3,
"hasTemplateCreated": false,
"isLockedToTemplate": true
}
],
"resultCode": 2010,
"message": "OK"
}
Erreurs courantes
Veuillez vous référer à la liste des erreurs courantes.
Générer des formules génériques
Description
Cette requête permet de générer des formules à partir d'un modèle.
Post /v2/data-structures/{data_structure_id}/templates/generate/formulas/{formula_template_id}
Scope
Pour effectuer cette requête, vous devez posséder le scope suivant : 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
.
formula_template_id (string, obligatoire) : ID attribué au modèle de formules que vous souhaitez éditer.
Cet ID peut être récupéré via la requête
Get v2/data-structures/{data_structure_id}/types/{type_id}/formulas
ou lors de la création du template de formules.override_manuals (string, optionnel) : permet d'indiquer si vous souhaitez écraser les métriques manuelles portant le même nom que les nouvelles formules génériques. Peut prendre deux valeurs :
true : les métriques manuelles seront écrasées par les formules
false : les métriques manuelles seront conservées
Remarque : Par défaut, le paramètre est à "false".
Ces paramètres doivent être ajoutés à l'URL pour construire la chaîne de requête tel que :
/v2/data-structures/{data_structure_id}/templates/generate/formulas/{formula_template_id}?metric_template_id="string"
Exemple de requête
# Commande pour générer des formules à partir d'un modèle
curl -X 'POST' \
'https://xxx.indaba.api.indasuite.io-base.com/v2/data-structures/67337415-6bcb-4c21-b0f5-8253d68b6e80/templates/generate/formulas/9b034dcf-0e5b-4b45-908a-1c07ff7880c1?override_manuals=true' \
# ----- En-têtes -----
-H 'accept: application/json' \
-H 'Authorization: Bearer VOTRE_JETON_JWT' \
# ----- Corps de la requête (vide pour cette action) -----
-d ''
Réponses
exemple de 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.