-
Notifications
You must be signed in to change notification settings - Fork 0
Documentation API
D34DPlayer edited this page May 22, 2021
·
2 revisions
Dans cette section, on regroupera les différentes fonctionnalités nécessaires sur l'API, avec l'US concernée, une description des input/output et avec déjà peut-être une route. Pour les input/output cf. Diagramme UML
Note: Les endpoints avec un 🔒 requièrent une authentification.
| Method | Path | Issue | Description | Auth | Input | Output |
|---|---|---|---|---|---|---|
| GET | /products | #7 | Retourne un liste de produits, avec les filtres reçus en input | Filter[Product] | List[Product] | |
| GET | /products/{id}/images | - | Liste les images d'un produit | - | chemin vers les images | |
| POST | /products/{id}/images | - | Upload des nouvelles images pour un produit | 🔒 | list[Files] | chemin vers les images ou erreur |
| DELETE | /products/{id}/images | - | Supprime une image d'un produit | 🔒 | chemin vers l'image ou nom du fichier | chemin de l'image effacée ou erreur |
| POST | /products | #1 | Permet d'ajouter un produit à la liste | 🔒 | Product | Product créé ou erreur |
| GET | /products/{id} | #16 | Retourne toutes les informations pour le produit avec l'id fourni | id | Product ou erreur | |
| DELETE | /products/{id} | #3 | Efface de le produit avec l'id fourni | 🔒 | id | Product effacé ou erreur |
| PUT | /products/{id} | #2 | Modifie les informations d'un produit existant | 🔒 | id + Product | Product modifié ou erreur |
| PUT | /products/{id}/visibility | #4 | Rends (in)visible le produit avec l'id fourni | 🔒 | id + { visibility: boolean }
|
Product mis à jour ou erreur |
| PUT | /products/{id}/stock | #103 | Défini la disponibilité du produit avec l'id fourni | 🔒 | { stock: boolean } |
Product mis à jour ou erreur |
| GET | /users | #56 | Obtenir une liste des utilisateurs | 🔒 | - | Liste[User] |
| POST | /users | #56 | Créer un nouvel utilisateur | 🔒 | User | User si créé, 400 si déjà existant |
| GET | /users/{username} | #56 | Obtenir un utilisateur existant | 🔒 | - | User si existant, 404 si pas trouvé |
| GET | /users/me | #56 | Obtenir l'utilisateur connecté | 🔒 | - | User si connecté |
| PUT | /users/{username} | #56 | Mettre à jour un utilisateur | 🔒 | User | User modifié ou 404 si pas trouvé |
| DELETE | /users/{username} | #56 | Effacer un utilisateur | 🔒 | - | User effacé ou 404 si pas trouvé |
| GET | /horaire | #72 | Obtenir l'horaire | - | Horaire | |
| PUT | /horaire | #72 | Modifier l'horaire | 🔒 | Horaire | Horaire modifié |
| GET | /contact | #107 | Obtenir les informations de contact | - | Contact |
|
| PUT | /contact | #107 | Modifier les informations de contact | 🔒 | Contact |
Contact modifié |
| GET | /comments | #107 | Obtenir les commentaires reçus | 🔒 | - | List[CommentBrief] |
| POST | /comments | #107 | Envoyer un commentaire au boucher | Comment |
Comment |
|
| GET | /comments/{id} | #107 | Obtenir un commentaire en particulier | 🔒 | - | Comment |
| DELETE | /comments/{id} | #107 | Effacer un commentaire | 🔒 | - |
Comment effacé |
| DELETE | /comments | #107 | Effacer une liste de commentaires | 🔒 | List[id] |
List[Comment] modifiés |
| PUT | /comments/{id}/seen | #107 | Marquer un commentaire comme lu/non-lu | 🔒 | {seen: bool} |
Comment modifié |
| PUT | /comments/seen | #107 | Marquer une liste de commentaires comme lus/non-lus | 🔒 | {comments: List[id], seen: bool} |
List[Comment] modifiés |
- R0 + R11. Liens utiles
- R1. Description projet
- R1 + R17. Description client et intéractions
- R2. User Stories
- R3. Justification Backend
- R4. Justification Frontend
- R5. Architecture, fonctionnement et déploiement
- R6. Diagramme UML
- R7. Justification DB
- R8. Diagramme DB
- R9. Documentation API
- R10. Comment installer
- R12. Utilisation GitHub
- R13. Testing
- R14. Sécurité
- R15. Aspects intéressants
- R16. Références utilisées
- R18. Travail en équipe
- R19. Cadre légal
- R20. Conclusions personnelles