Description API - miguel-antoons/projet_webdev GitHub Wiki

Description de l'API

Sur cette page vous retrouvez la description de notre API (ressources, endpoints, paramètres, réponses, exemples, idéalement réalisée avec un outil adapté ...).

Ressources

Pour un programme conçu dans le domaine de la construction et la rénovation de bâtiments. Les ressources seront :

  • Facturation : création, modification, impression, enregistrement et suppression,
  • Devis : création, modification, impression, enregistrement et suppression,
  • Articles : ajout, modification, enregistrement et suppression,
  • Clients : ajout, modification, enregistrement et suppression,
  • Étiquettes : création, modification, impression, enregistrement et suppression,
  • Suivi de matériel emprunté : ajout, modification, suppression et enregistrement.

Exemple :

Une ressource Client pourrait comporter comme informations supplémentaires :

  • nom
  • prenom
  • titre
  • societe
  • langue

Quand notre utilisateur ajoute un client en utilisant l'application Web, on passe par 2 étapes :

  1. Notre API envoie la requête du navigateur (le client) aux serveurs de l’application pour l'ajout d'un client dans une base de données
  2. la requête met à jour la base de données pour qu'il ait un client en plus.

Endpoints

L’URL de la requête est l’endpoint complet que vous utilisez pour votre requête. Il associe le nom de domaine et le path de votre ressource. À présent, vous savez comment accéder aux données que vous souhaitez !

Facturation

# Route Méthode Type Route complète Code retour Description
1. /facture GET JSON http://localhost:5000/api/facture 200 OK Obtenez toutes les données des factures enregistrées
2. POST JSON 201 CREATED Ajoutez une facture dans la base de données
3. /facture/{id} GET JSON http://localhost:5000/api/facture/{id} 200 OK Obtenez les données d'une facture enregistrée via son ID
4. /facture/modifier/{id} PUT JSON http://localhost:5000/api/Facture/modifier/{id} 200 OK Modifier (mettre à jour) une facture via son ID
5. /facture/supprimer/{id} DELETE JSON http://localhost:5000/api/facture/supprimer/{id} 200 OK Supprimer une facture via son ID

Devis

# Route Méthode Type Route complète Code de Retour Description
1. /devis GET JSON http://localhost:5000/api/devis 200 OK Obtenez toutes les données des Devis enregistrés
2. POST JSON 201 CREATED Ajoute un Devis dans la base de données
3. /devis/{id} GET JSON http://localhost:5000/api/devis/{id} 200 OK Obtenez les données d'un Devis enregistré via son ID
4. /devis/modifier/{id} PUT JSON http://localhost:5000/api/devis/modifier/{id} 200 OK Modifier (mettre à jour) un Devis via son ID
5. /devis/supprimer/{id} DELETE JSON http://localhost:5000/api/devis/supprimer/{id} 200 OK Supprimer un Devis via son ID

Articles

# Route Méthode Type Route complète Code de Retour Description
1. /article GET JSON http://localhost:5000/api/article 200 OK Obtenez toutes les données des Articles enregistrés
2. POST JSON 201 CREATED Ajoute un article dans la base de données
3. /article/{id} GET JSON http://localhost:5000/api/article/{id} 200 OK Obtenez les données d'un article enregistré via son ID
4. /article/modifier/{id} PUT JSON http://localhost:5000/api/article/modifier/{id} 200 OK Modifier (mettre à jour) un article via son ID
5. /article/supprimer/{id} DELETE JSON http://localhost:5000/api/article/supprimer/{id} 200 OK Supprimer un article via son ID

Clients

# Route Méthode Type Route complète Code de Retour Description
1. /client GET JSON http://localhost:5000/api/client 200 OK Obtenez toutes les données des clients enregistrés
2. POST JSON 201 CREATED Ajout d'un client dans la base de données
3. /client/{id} GET JSON http://localhost:5000/api/client/{id} 200 OK Obtenez les données d'un client enregistré via son ID
4. /client/modifier/{id} PUT JSON http://localhost:5000/api/client/modifier/{id} 200 OK Modifier (mettre à jour) un client via son ID
5. /client/supprimer/{id} DELETE JSON http://localhost:5000/api/client/supprimer/{id} 200 OK Supprimer un client via son ID

Étiquettes

# Route Méthode Type Route complète Code de Retour Description
1. /etiquette GET JSON http://localhost:5000/api/etiquette 200 OK Obtenez toutes les données des étiquettes enregistrées
2. POST JSON 201 CREATED Ajoute d'une étiquette dans la base de données
3. /etiquette/{id} GET JSON http://localhost:5000/api/etiquette/{id} Obtenez les données d'une étiquette enregistrée via son ID
4. /etiquette/modifier/{id} PUT JSON http://localhost:5000/api/etiquette/modifier/{id} 200 OK Modifier (mettre à jour) une etiquette via son ID
5. /etiquette/supprimer/{id} DELETE JSON http://localhost:5000/api/etiquette/supprimer/{id} 200 OK Supprimer une étiquette via son ID

Suivi de matériel emprunté

# Route Méthode Type Route complète Code de Retour Description
1. /Suivi GET JSON http://localhost:5000/api/suivi 200 OK Obtenez toutes les données des Suivis enregistrés
2. POST JSON 201 CREATED Ajout d'un Suivi dans la base de données
3. /Suivi/{id} GET JSON http://localhost:5000/api/Suivi/{id} 200 OK Obtenez les données d'un Suivi enregistré via son ID
4. /suivi/modifier/{id} PUT JSON http://localhost:5000/api/suivi/modifier/{id} 200 OK Modifier (mettre à jour) un suivi via son ID
5. /suivi/supprimer/{id} DELETE JSON http://localhost:5000/api/suivi/supprimer/{id} 200 OK Supprimer un suivi via son ID

Réponse

Exemple : La réponse pour l'api /api/client est le renvoie de l'ensemble de mes clients sous forme de listes convertis en JSON.

Exemple

Pour un monsieur Eric Zemour de la société FranceHaineuse avec la langue FR, qui seras enregistré, la requête JSON que recevra mon serveur flask est

{'name': 'Eric', 'firstName': 'Zemour', 'societe': 'FranceHaineuse', 'titre': 'Mr', 'langue': 'FR'}

Et me rétorque cela : 127.0.0.1 - - [23/Mar/2021 19:52:19] "POST /api/Clients HTTP/1.1" 200 , qu'une requête POST à bien été sollicité.

⚠️ **GitHub.com Fallback** ⚠️