Authentification de l'API
Les appels à l'API portent un jeton d'accès émis par la plateforme elle-même. Il n'existe ni flux « client credentials », ni clé d'API, ni compte de service : un programme se connecte avec un compte utilisateur de l'organisation, et agit avec les droits de son rôle. Créez-lui un compte dédié, au rôle strictement nécessaire (Habilitations).
1. Se connecter
curl -X POST "https://<adresse-de-la-plateforme>/api/v1/auth/login" \
-H "Content-Type: application/json" \
-d '{"email": "<adresse du compte>", "password": "<mot de passe>"}'
Sans second facteur, la réponse porte les jetons :
{
"access_token": "<jeton d'accès>",
"refresh_token": "<jeton de renouvellement>",
"token_type": "bearer",
"expires_in": 900
}
expires_in est la durée de vie du jeton d'accès, en secondes (quinze minutes par défaut).
2. Le second facteur
Si le compte a une double authentification, ou si l'organisation l'impose, la connexion répond par un défi
(mfa_required, mfa_token, valable quelques minutes). Envoyez alors le code à six chiffres de
l'application d'authentification :
curl -X POST "https://<adresse-de-la-plateforme>/api/v1/auth/mfa/verify" \
-H "Content-Type: application/json" \
-d '{"mfa_token": "<jeton du défi>", "code": "123456"}'
La réponse porte les mêmes jetons qu'une connexion sans second facteur. Un compte que la politique oblige à
enrôler un second facteur (mfa_setup_required) doit d'abord l'activer depuis l'écran de connexion.
3. Appeler l'API
curl "https://<adresse-de-la-plateforme>/api/v1/orgs/<organisation>/services/restitutions/catalogue" \
-H "Authorization: Bearer <jeton d'accès>"
L'organisation se désigne dans le chemin ; le compte doit en être membre. L'en-tête X-Consolidated
demande la vue consolidée, si le compte y est habilité.
4. Renouveler le jeton
curl -X POST "https://<adresse-de-la-plateforme>/api/v1/auth/refresh" \
-H "Content-Type: application/json" \
-d '{"refresh_token": "<jeton de renouvellement>"}'
Les erreurs
- 401 : jeton absent, expiré ou invalide — reconnectez-vous ou renouvelez le jeton.
- 403 : jeton valide, mais le rôle du compte n'a pas le droit demandé, ou le module est fermé à l'organisation.
Le verrouillage du compte après des échecs répétés vaut aussi pour les appels de l'API. Voir Authentification et sécurité.