Non classé

Executer les APIs d’ApiApp

17/01/2017 Clément Schneider 0 commentaire

Dans un premier temps, il est nécessaire d’avoir un projet de type SSO. Dans celui-ci, il faut s’inscrire dans la liste des clients Oauth. Par email, nous recevons alors un clientID et un secret associé au projet.

Ensuite, accéder à cette page, en remplaçant les « XXXXXXXXXXXXXXXXX » par le clientID reçu par email (ici, exemple avec l’adresse de pré-production):

sitra2-vm-preprod.accelance.net/oauth/authorize?response_type=code&client_id=XXXXXXXXXXXXXXXXX&redirect_uri=http://test-sso/callback/&scope=sso

Le lien dirige normalement vers une page demandant d’accepter le SSO. Après avoir accepter, nous sommes redirigé vers une adresse introuvable. Néanmoins, à la fin de l’URL de redirection se trouve un code généré (par exemple, dans mon cas: KbJ8gH).

A présent, pour récupérer le token, il faut alors:

  • Sous Linux, exécuter cette commande (en remplaçant CLIENTID, SECRET et CODE par les valeurs voulues):

curl -u CLIENTID:SECRET -H « Accept: application/json » « http://sitra2-vm-preprod.accelance.net/oauth/token?grant_type=authorization_code&code=CODE&redirect_uri=http://test-sso/callback/« 

ou

  • Dans un navigateur, se rendre sur ce lien en remplaçant CODE (à tester car méthode non utilisée dans mon cas):

http://sitra2-vm-preprod.accelance.net/oauth/token?grant_type=authorization_code&code=CODE&redirect_uri=http://test-sso/callback/

En retour, nous obtiendrons alors le token.

A présent, nous pouvons modifier le fichier « config.php » afin de remplacer l’ancien token par notre nouveau à la ligne « $config[‘token’] = »

Appeler « exemple-utilisateurs.php » permettra maintenant d’obtenir le JSON d’export des utilisateurs, des membres et des projets.

Format « Membre »:

  • proprietaireID
  • secteurID
  • secteurNom
  • secteurDescription
  • idEntite     

Format « Utilisateur »:

  • id;
  • firstName
  • lastName
  • email
  • phoneNumber
  • gsmNumber
  • faxNumber
  • dateCreation
  • locale
  • type
  • membre
  • parrain
  • facebook
  • twitter
  • profession
  • adresse
  • presentation
  • nomEntite
  • idEntite

Format « Projet »:

  • id
  • nom
  • type
  • state
  • membreProprietaireID
  • description
  • collaborateurs
  • emails