Demande de token pour l’utilisation des api
Dans cet article nous allons voir comment faire une demande pour obtenir un token.
Un token est une chaine de caractère qui vous permettra de vous identifier pour l’utilisation de toutes les fonctions des API disponibles. Le retour de cette fonction est au format JSON.
Pour notre présentation nous utilisons l’extension du navigateur Chrome, Postman.
Pré-requis
- Avoir souscrit le package « Advanced » de GCC
- Avoir son clientId (fourni par SFR)
- Avoir son clientSecrets (fourni par SFR)
- Dans l’administration de votre GCC créer un utilisateur de type Administrateur (permet de compléter l’authentification). Bien indiquer que « le mot de passe ne doit pas expirer« .
Demande du token
Sur Postman, effectuer la requête pour obtenir notre token (valable 24h).
- url à appeler : https://auth.sfrglobalcc.com/identity/connect/token
- méthode d’appel : POST
- Dans l’onglet Header, créez les clés ci-dessous avec leur valeur :
Key => Content-Type Value => application/x-www-form-urlencoded
- Dans l’onglet Body, créez les clés ci-dessous avec leur valeur :
Key => client_id Value => Votre client_id qui vous a été fourni.
Key => client_secret Value => Votre client_secret qui vous a été fourni.
Key => scope Value => supervisor_api
Key => grant_type Value => password
Key => username Value => L’utilisateur que vous avez créé via l’admin (voir début article).
Key => password Value => le mot de passe que vous avez défini pour l’utilisateur.
Key => tenant Value => Votre tenant ( ex : gcc000XX-sfrresell).
Une fois ces deux onglets renseignés vous pouvez lancer la requête via le bouton bleu « Send » à droite de l’url.
Le retour de la requête est dans la partie basse de la fenêtre.
Si tout se passe bien
Dans ce JSON vous avez :
- le token stocké dans la clé « access_token »
- Sa période de validité en seconde dans la clé « expires_in » (86400 = 24h)
- Le type de token dans la clé « token_type » (Bearer)
- Dans la clé « score » le type de l’api (supervisor_api)
Si un problème
Dans ce JSON
- La clé « error » qui contient le type d’erreur (invalid_client)
Dans certain cas il peut y avoir la clé « error_description » qui est le descriptif de l’erreur (par exemple ci-dessous il manque un élément en entrée).
Une fois votre token obtenu, vous pouvez l’utiliser dans les fonctions des API GCC en précisant :
« token_type » « access_token » (sur une seule ligne) exemple :
Bearer JhbGciOiJSUzI1NiIsImtpZCI6IjNGRTdEMTg2NDAxQUUyREY2NTI1N0M1RjNBNzUyNzBDMUFCRTM0OUEiLCJ0eXAiOiJKV1QiLCJ4NXQiOiJQLWZSaGtBYTR0OWxKWHhmT25VbkRCcS1OSm8ifQ.eyJuYmYiOjE2OTY5Mzc0MDEsImV4cCI6MTY5NzAyMzgwMSwiaXNzIjoiaHR0cHM6Ly9hdXRoLnNmcmdsb2JhbGNjLmNvbS9pZGVudGl0eSIsImF1ZCI6NEPEUXPASFONCTIONNERNlcyIsInN1cGVydmlzb3JfYXBpIl0sImNsaWVudF9pZCI6InNmcnNmMDEtc2ZycmVzZWxsQ2xpZW50SUQiLCJzdWIiOiI5NzViYTZlOC0wYjMyLTQ4NWMtODhlNC01ZDQwY2NlNThlNzQiLCJhdXRoX3RpbWUiOjE2OTY5Mzc0MDEsImlkcCI6ImxvY2FsIiwidGVuYW50Ijoic2Zyc2YwMS1zZnJyZXNlbGwiLCJuYW1lIjoiZlpmQzNoNmFmUGdZL3VmNVFxWWJGUT09Iiwib25lY29udGFjdF9pZCI6IjUwNjQiLCJzY29wZSI6WyJzdXBlcnZpc29yX2FwaSJdLCJhbXIiOlsiY3VzdG9tIl19.CuvEZKR-lEnm-2Th-CfXepdex1wXRXcjfaYQUMUJkAKO2beyfOgdStHiNENQ7FtdawbTTvOopn7KQiBSyMbpevDCjX2aMPxY1QYXcn6HD78nZSLG6a8TFbHx7HcP2NGfriWzIjiRSGtuwEDGk1OJoogNX0ioLrS3zE4aRX04CzDJTUXDOWIgCECnWWdDDEDRQcg7h2AD3ljk0zOCecinestpasreel6rX4k1xzpcfBR0quaXmqvhavnp32izYZ7iyDLkTEm4HWF7he0xiq84hF1c51iQwEJhFSGmiDjRC2hfoRXM6vJfAEXjSVDGbvmreIeGulTtMySMqo6eACCp26SynP5GCVMQSNawwmhqcqDsdcJ8knVjU0wgHhO2qcfMxtQz307AOXrWP_ozxb5uFSqm4Kx4TGY7xj1vYegcsevbxsK9wmSGH5aa2A4mt2IS-DI75jaLgbuWwO6j3A4NsXTSbSGZ1gXqY6zt2mO13qlhbQub3lPNb-bY8MxxXfIzD97tfoXpjrH4ynieC5vo89-GM2pcXS_T_3YWRr4RJRzS9t7xGByjILQ8ryDVE2w2A0olC3H5Yu6rH4XGjS0lYSr5gwazdZxfnzfQyY9W9KcCoRvmmFvDYHuLsqHhHdrmx4dd5yZc1sliNkqu_6JhRKRvDjnR-99SL
Générer le code source que vous désirez.
Sur le coté droit de la fenêtre Postman vous avez le bouton « </> » qui vous permet de générer la requête en plusieurs langages.
Vous pouvez avec ce token passer sur les Swagger UI qui vous permettrons de tester (voir) toutes les fonctions disponibles.
Seules les 3 APIs ci-dessous sont disponibles :
- ContactManagement REST API
Swagger UI : https://<nom du tenant>.sfrglobalcc.com/contactmanagementapi/swagger/index.html - OneContact Monitoring REST API
Swagger UI : https://<nom du tenant>.sfrglobalcc.com/monitoringapi/swagger/index.html - OneContact Reporting REST API
Swagger UI : https://<nom du tenant>.sfrglobalcc.com/reportingapi/swagger/index.html
Bonne programmation.