Skip to content

4.3 Documentation API

MatthFlash edited this page Dec 10, 2020 · 11 revisions

Documentation de l'API

Requêtes

GET - /user/

Permet de récupérer toutes les informations liées à un utilisateur.

Paramètre :

  • Identifiant de l'utilisateur (integer)

Réponse type en cas de succès : [{"id":1,"firstname":"Example","lastname":"Example","phone":"0422002200","sexe":"M","mail":"example.example@example.com","password":"/.../","isadmin":false}]

GET - /users/name

Permet de récupérer tous les noms et prénoms des utilisateurs.

Pas de paramètres.

Réponse type en cas de succès :
[{"id":1,"firstname":"example1","lastname":"example1"},{"id":2,"firstname":"example2","lastname":"example2"}]

GET - /userConnection/

Permet de vérifier l'existence de l'utilisateur qui souhaite se connecter.

Paramètres :

  • Adresse mail (varchar)
  • Mot de passe (varchar)

Réponse type en cas de succès : [{status : true, msg : 1}]

POST - /newUsers/

Permet d'ajouter un utilisateur à la base de données.

Paramètres :

  • Prénom (varchar)
  • Nom (varchar)
  • Téléphone (varchar)
  • Sexe (char)
  • Mail (varchar)
  • Mot de passe (varchar)

Réponse type en cas de succès : [{true}]

POST - /userMail/

Permet de connaitre l'existence ou non de l'adresse mail

Paramètre :

  • Adresse mail (varchar)

Réponse type en cas de succès : [{true}]

PATCH - /access/update/

Permet de modifier les données d'un access.

Paramètres :

  • Identifiant de la porte (integer)
  • Tag (varchar)
  • Nickname (varchar)

Réponse type en cas de succès : [{true}]

POST - /access/delete

Permet de supprimer un access

Paramètres :

  • Identifiant de la porte
  • Identifiant de l'utilisateur

Réponse type en cas de succès : [{true}]

GET - /listTag

Permet de récupérer l'ensemble des tags uniques (distincts)

Pas de paramètres.

Réponse type en cas de succès : [{"tag":"example1"},{"tag":"example2"},{"tag":"example3"}]

GET - /doors

Permet de récupérer l'ensemble des portes

Pas de paramètres.

Réponse type en cas de succès : [{"password":"h4sh3xampl3","status":1,"adresseip":"x.x.x.x","id":1}, {"password":"h4sh3xampl3","status":1,"adresseip":"x.x.x.x","id":2}]

GET - /door/

Permet de récupérer les informations liées à une certaine porte.

Paramètre :

  • Identifiant de la porte (integer)

Réponse type en cas de succès : [{"password":"h4sh3xampl3","status":1,"adresseip":"x.x.x.x","id":1}]

POST - /door/check/

Permet de savoir si :

  • Une certaine porte existe bien avec le mot de passe fourni OU
  • Le mot de passe est mauvais OU
  • Il n'existe pas de porte avec cet id

Paramètres :

  • Identifiant de la porte (integer)
  • Mot de passe (varchar)

Réponse type en cas de succès : [{true}]

PUT - /doorStatus/

Permet de mettre à jour le statut d'une porte

Paramètres :

  • Identifiant de la porte (integer)
  • Nouveau statut (integer)

Réponse type en cas de succès : [{"password":"h4sh3xampl3"}]

GET - /doorTag/

Permet de récupérer l'ensemble des access liés à un certain tag.

Paramètre :

  • Nom du tag (varchar)

GET - /doorTagUser/

Permet de récupérer l'ensemble des portes faisant partie d'un certain tag, et dont le tag appartient à un certain utilisateur.

Paramètres :

  • Nom du tag
  • Identifiant de l'utilisateur

GET - /userTag/

Permet de récupérer l'ensemble des tag dont un certain utilisateur est propriétaire.

Paramètre :

  • Identifiant de l'utilisateur

GET - /doorHistory/

Permet de récupérer l'historique d'une certaine porte.

Paramètres :

  • Identifiant de la porte

GET - /doorHistory/user/

Permet de récupérer les 3 portes les plus utilisées par un certain utilisateur.

Paramètre :

  • Identifiant de l'utilisateur

POST - /newaccess/

Permet d'ajouter un nouvel accès d'un certain utilisateur à une certaine porte.

Paramètres :

  • Identifiant de la porte
  • Identifiant de l'utilisateur
  • Tag
  • Nickname

POST - /newdoor/

Permet d'ajouter une porte à la base de données

Paramètres :

  • Mot de passe
  • Statut

POST - /newhistory/

Permet d'enregistrer tout changement d'état de la porte ainsi que toutes les informations liées.

Paramètres :

  • Identifiant de la porte
  • Identifiant de l'utilisateur
  • Date
  • Action effectuée

PUT - /resetPassword/

Permet de réinitialiser le mot de passe d'un utilisateur avec un nouveau mot de passe généré aléatoirement.

Paramètre :

  • Adresse mail de l'utlisateur

Clone this wiki locally