Vous vous demandez a quoi servent Postman, les API et les requetes? Ce sont des outils essentiels pour un développeur web de nos jours. Ce guide vous aidera a les comprendre et les mettre en pratique!
Qu’est-ce qu’une API?
Vous avez surement dû entendre ce terme par ci par là. Il signifie Application Programming Interface. Mais à quoi cela correspond-t-il ? A quoi ça sert et comment on les utilisent ? Qu’est-ce que Postman ? Comment construit-on une requete pour avoir une réponse de la part d’une API?
Prenons un exemple concret : la réservation de billet d’avion. Imaginons un site internet dans le style de booking.com, ou l’utilisateur peut réservez des vols provenant de différentes compagnies aériennes, tout en restant sur ce même ce site.
Ou bien un autre site internet qui fait défiler dans sa page d’actualités, les dernier Tweets tendances. L’information qui provient de d’autres organismes, est disponible sans effort apparent.
En réalité, derrière se cache tout le mécanisme des API. Et grâce aux exemples énoncés plus haut, on peut donc définir qu’il s’agit d’un moyen de communication entre deux logiciels, qui agissent comme intermédiaire transmettant des messages sous forme de requêtes et de réponses.
Sur ce schéma, on peut voir que l’API est chargée de récupérer des données via une base de données et de les envoyer au client (le site internet).
Pour continuer avec l’exemple de booking.com, imaginons que le site web veuille afficher des vols afin de les comparer. Comment booking.com peut-il bien avoir accès aux informations des vols d’une compagnie aérienne ? Sachant que ces mêmes informations sont stockées dans la base de données de cette compagnie ?
Pour que ce soit possible, c’est parce que les compagnies aériennes ont leur propre API, qui permets à d’autres organismes (comme booking.com) de requêter des informations de leur base de données.
Il existe 2 types d’API :
Les API publiques :
Grace a elles, vous serez en mesure de récolter les données d’une autre application pour les intégrer à votre projet, sans autorisation spécifique. Exemple :
- Les API de météo pour afficher la météo du jour ou de la semaine,
- L’API de Github pour voir certaines infos sur des membres,
- L’API de Spotify pour écouter de la musique sur votre site,
- etc.
Les API privées :
Elles garantissent que les personnes externes à votre organisme n’ont pas accès aux informations dans votre base de données. Exemple d’utilisation :
La création d’une API interne dans notre entreprise, afin que le CEO et notre RH puissent avoir accès / éditer / ajouter / supprimer aux données de leur employés facilement. Cette API pourrait se trouver sur notre application interne, et ces données ne serait accessibles que par le CEO et la RH.
Qu’est-ce que Postman?
Pour utiliser les API, il faut leur envoyer des requêtes, et inversement, elles nous renvoi des réponses (sous forme de json ou xml). Mais comment construire nos requêtes ?
Vous pouvez par exemple, lire la documentation de l’API qui vous intéresse pour savoir comment requêter une information. Mais pour vous guider ou pour debugger, on peut également utiliser Postman.
Et donc, Postman qu’est-ce que c’est? Postman est utile pour tester des API en leur envoyant des requetes. C’est une interface gratuite assez intuitive qui permet de tester des requêtes et voir la réponse obtenue, le tout sans utiliser de code.
Décryptons l’interface de Postman :
Principalement, les 3 points sur lesquels je voudrais revenir sont :
- Le verbe (GET, POST, PUT, DELETE) : c’est un type d’action que l’on peut faire lors d’une requête. Il en existe beaucoup plus, mais j’ai uniquement cité les principaux, qui correspondent au modèle CRUD. Avec GET, vous obtiendrez des informations, avec POST, vous pourrez créer de nouvelles ressources, avec PUT vous mettrez à jour et avec DELETE vous supprimerez des ressources.
- L’URI : C’est un chemin qui sert à identifier des ressources. Si vous voulez par exemple obtenir des informations spécifiques, il vous faudra lire la documentation de l’API que vous souhaitez requêter, pour connaitre l’URI.
- Le body : Si vous tentez d’obtenir des informations avec GET, c’est ici que contiendra la réponse de votre requête, sous forme de json (ou de xml). Cependant si vous construisez une requête avec POST, ce sera également ici ou il faudra mettre vos paramètres à envoyer.
Les codes de retour :
Lorsque vous envoyer une requête sur Postman, vous aurez un code de retour. Quelques codes de retour assez fréquent sur Postman :
- Code 200 OK : la requête est un succès
- Code 404 not found : la ressource est introuvable
- Code 302 found : la ressource a été temporairement redirigée
- Code 500+ : erreur sur le serveur sur lequel vous requêtez
Ainsi, pour effectuer une requête pour l’API publique de Github et obtenir des informations sur un utilisateur en particulier, vous devrez utiliser l’URI suivante :
GET URL/users/lauragnc
Qu’en est-il pour les API privées ?
Afin de requêter sur des API dites privées, il faut introduire le concept d’authentification. Il s’agit d’un moyen de garantir que le client qui fait la requête, a les accès nécessaires aux données.
Par exemple, pour l’API interne de notre entreprise citée plus haut, ou seul le CEO et la RH sont en mesure de voir, ajouter et supprimer des informations correspondant aux employés de l’entreprise, il faudra que les requêtes incluent une authentification.
L’authentification se fait via un token, qui est passer en paramètre dans le Header de la requête :
Pour obtenir un token pour une authentification simple, il faut en général aller dans les Paramètres de l’API que vous voulez utiliser, et chercher la section Tokens, pour se générer un token avec différent droits et accès dessus.
Cela va différer en fonction de l’API que vous souhaitez utiliser (encore une fois, lisez la documentation). Certaines API ne vous laisserons pas le choix de vos droits, ou certaines API ne seront pas ouvertes au grand public, comme par exemple l’API de Airbnb ou il faut faire une demande spéciale pour l’obtenir.
Ce guide sur Postman, les API et les requetes touche désormais à sa fin. En espérant qu’il vous aura été utile !