Skip to content

API du Projet

Louis Carlier edited this page Mar 30, 2021 · 14 revisions

1) Présentation de l'API

Notre API sera grandement tournée vers l'utilisation de la base de données, elle sera le point central entre notre site et l'utilisation de celle-ci. Elle sera composée par les différents points listés ci-dessous.


2) Règles de nommage pour notre API.

snake_case

Pour notre API, nous avons décidé d'utiliser la méthode de nommage "snake_case" car il existe très peu de contextes dans lesquels elle est incompatible.
cette méthode se caractérise par le fait que les mots soent séparé par un underscore « _ ».



3) Listing des implémentation dans l'API.

3.1) user_inscription : Permet l'inscription des différents utilisateurs dans la Base de données.

Les paramètres sont les différents éléments remplis lors du formulaire par l'utilisateur lors de son inscription. Ces données seront envoyées sous format JSON.

3.2) user_connexion : Permet la connexion des différents utilisateurs au site.

Les paramètres sont l'identifiant et le mot de passe entrés par l'utilisateur dans le formulaire de connexion. Si ceux-ci sont déjà enregistrés et que le mot de passe proposé est identique à celui-ci enregistré, la connexion sera autorisée. Ces données seront envoyées sous format JSON.

3.3) modif_user : Permet aux élèves inscrits de modifier leurs "fiches" visibles par le professeur.

Les paramètres sont les nouvelles données modifiées par l'élève dans le formulaire de modification. Ces nouvelles données seront envoyés sous format JSON.

3.4) lister_user : Permet au professeur d'avoir accès à une liste de ses différents élèves.

Pas de paramètres utilisés. Les réponses envoyées par la base de données seront au format JSON.

3.5) afficher_dispo : Permet aux utilisateurs d'avoir accès aux différents disponibilités du professeur.

Pas de paramètres utilisés. Les réponses envoyées par la base de données seront au format JSON.

3.6) proposer_dispo : Permet au professeur de donner ces possibilités pour les prises de rendez-vous.

Le/les paramètre(s) sera/seront les dates proposées par le professeur dans un formulaire. Lors de l'enregistrement de ces disponibilités dans la base de données, celles-ci seront complétés par une colonne "disponible" qui sera fixée à True par défaut et qui passera à False lorsqu'un élève prendra cette plage horaire (voir prochain point). Ces différentes données seront envoyées au format JSON.

3.7) prendre_dispo : Permet aux élèves de prendre une plage horaire proposée par le professeur.

Le/les paramètres utilisé(s) est/sont la/les date(s) choisie(s) par l'élève dans un formulaire de prise de rendez-vous. Lorsqu'un élève sélectionnera une date proposée par le professeur, la disponibilité de celle-ci dans la base de données passera à False.

3.8) afficher_messages : Permet aux utilisateurs d'afficher l'ensemble de leur messages.

Le paramètre utilisé est l'identifiant de l'utilisateur. La base de données enverra l'ensemble des messages correspondant à l'identifiant de l'utilisateur. Les données seront envoyées par la base de données au format JSON.

3.9) envoyer_messages : Permet aux utilisateurs d'envoyer des messages à d'autres utilisateurs.

Les paramètres utilisés sont l'identifiant cible ainsi que le message entrés par la source. Le message ira s'ajouter à ceux de la cible dans la base de données. Les données envoyées seront au format JSON.

3.10) supprimer_messages : Permet aux utilisateurs de supprimer des messages.

Les paramètres utilisés seront l'identifiant de l'utilisateur ainsi que les messages qu'ils désire supprimer. Ceux-ci seront directement supprimés de la base de données. Les données envoyées seront au format JSON.

3.11) ajout_faq : Permet au professeur d'ajouter une question - réponse à la zone FAQ de sa page vitrine.

Les paramètres utilisés seront la question entrée par le professeur dans un formulaire et sa réponse également entrée par le professeur dans ce même formulaire. Les données envoyées seront au format JSON.

3.12) ajout_avis : Permet aux utilisateurs de laisser un avis sur la page vitrine du professeur.

Les paramètres utilisés sont l'identifiant de l'utilisateur ainsi que son message qui seront directement enregistrés dans la base de données. Les données seront envoyées au format JSON.


4) Documentation et testing de l'API

Postman

Postman est la plateforme de collaboration pour le développement d'API.
Pour la documentation ainsi que pour le testing nous avons choisi d'utiliser cet outil très pratique combinant à la fois des fonctionnalités permettant de documenter notre API et d'effectuer les tests de celle-ci.

Clone this wiki locally