Utilisation des API TRINOV
Pour utiliser les API Trinov, il est nécessaire de s’authentifier à l’aide de vos informations d’identification associées à votre compte prestataires-déchets. L’authentification permet de récupérer un token d’accès.
Lors de l’appel d’un endpoint de l’API, il faudra fournir ce token d’accès en header de la requête.
Les informations dont vous disposez :
Information | Valeur |
---|---|
URL de demande de token | url de demande d’un jeton d’accès pour l’application |
client_id | identifiant de l’application (ou client) |
client_secret | secret associé au client-id (il vous a été fourni dans le document “informations de connexion”) |
URL des API TRINOV | Par exemple, pour l’environnement de test, l’url à appeler est “staging-api-waste-collections.trinov.com/api” |
Etape 1 : Demande du jeton d’accès (acces token)
A l’aide d’un outil tel que curl, la requête à former est la suivante : il faudra remplacer {client_secret} par le secret du compte de service qui vous a été communiqué.
curl --location '<https://accounts-staging.trinov.com/realms/demo/protocol/openid-connect/token>' \\
--header 'Content-Type: application/x-www-form-urlencoded' \\
--data-urlencode 'client_id=demo' \\
--data-urlencode 'client_secret={client_secret}' \\
--data-urlencode 'grant_type=client_credentials' \\
--data-urlencode 'scope=openid profile'
Vous obtiendrez en retour une réponse du type :
Response: 200
{
"access_token": "eyJhbGciOiJSUzI1....",
"expires_in": 300,
"refresh_expires_in": 1800,
"refresh_token": "eyJhbGciOiJIU.....",
"token_type": "Bearer",
"id_token": "eyJhbGciOiJ.....",
"not-before-policy": 0,
"session_state": "88fde752-bd36-4405-9a87-8f9de848cc86",
"scope": "openid email profile"
}
Ce qui va vous intéresser dans la réponse est le contenu du champ "access_token”.
Etape 2 : Appel d’un endpoint
Il faudra renseigner ce token dans un header pour toute requête adressée à nos APIs.
Exemple : Pour récupérer la liste des collectes de déchets (commandes) vous pourrez lancer la commande suivante (en modifiant au préalable {access_token} par la valeur récupérée précédemment :
curl '<https://staging-api-waste-collections.trinov.com/api/v1/waste-collections?limit=50&page=0>' \\
--header 'Authorization: Bearer {access_token}'
En résultat, vous obtiendrez un objet comme dans l’exemple ci-dessous :
{
"content": [..liste des collectes de déchet....],
"number": 0,
"size": 50,
"totalElements": 72,
"totalPages": 2,
"last": false,
"sort": {
"empty": true,
"sorted": false,
"unsorted": true
}
Updated about 1 month ago