Skip to content

4.3 Documentation API

MatthFlash edited this page Dec 11, 2020 · 11 revisions

Documentation de l'API

Requêtes

GET - /user/

Utilisation :

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

Paramètre(s) :

  • 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

Utilisation :

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

Paramètre(s) :

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/

Utilisation :

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

Paramètre(s) :

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

Réponse type en cas de succès :

[{status : true, msg : 1}]

POST - /newUsers/

Utilisation :

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

Paramètre(s) :

  • 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/

Utilisation :

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

Paramètre(s) :

  • Adresse mail (varchar)

Réponse type en cas de succès :

[{true}]

PATCH - /access/update/

Utilisation :

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

Paramètre(s) :

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

Réponse type en cas de succès :

[{true}]

POST - /access/delete

Utilisation :

Permet de supprimer un access

Paramètre(s) :

  • Identifiant de la porte
  • Identifiant de l'utilisateur

Réponse type en cas de succès :

[{true}]

GET - /listTag

Utilisation :

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

Paramètre(s) :

Pas de paramètres.

Réponse type en cas de succès :

[{"tag":"example1"},{"tag":"example2"},{"tag":"example3"}]

GET - /doors

Utilisation :

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

Paramètre(s) :

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/

Utilisation :

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

Paramètre(s) :

  • 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/

Utilisation :

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ètre(s) :

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

Réponse type en cas de succès :

[{true}]

PUT - /doorStatus/

Utilisation :

Permet de mettre à jour le statut d'une porte

Paramètre(s) :

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

Réponse type en cas de succès :

[{"password":"h4sh3xampl3"}]

GET - /doorTag/

Utilisation :

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

Paramètre(s) :

  • Nom du tag (varchar)

Réponse type en cas de succès :

GET - /doorTagUser/

Utilisation :

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

Paramètre(s) :

  • Nom du tag
  • Identifiant de l'utilisateur

Réponse type en cas de succès :

GET - /userTag/

Utilisation :

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

Paramètre(s) :

  • Identifiant de l'utilisateur

Réponse type en cas de succès :

GET - /doorHistory/

Utilisation :

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

Paramètre(s) :

  • Identifiant de la porte

Réponse type en cas de succès :

GET - /doorHistory/user/

Utilisation :

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

Paramètre(s) :

  • Identifiant de l'utilisateur

Réponse type en cas de succès :

POST - /newaccess/

Utilisation :

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

Paramètre(s) :

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

Réponse type en cas de succès :

POST - /newdoor/

Utilisation :

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

Paramètre(s) :

  • Mot de passe
  • Statut

Réponse type en cas de succès :

POST - /newhistory/

Utilisation :

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

Paramètre(s) :

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

PUT - /resetPassword/

Utilisation :

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

Paramètre(s) :

  • Adresse mail de l'utlisateur

Clone this wiki locally