GLOSSAIRE

Qu'est-ce qu'une API ?

  Cette page a été traduite automatiquement par DeepL. Switch to English

Une API (interface de programmation d'application) est un ensemble de règles qui permet à un logiciel de communiquer avec un autre. Considérez-la comme un menu : votre application peut « commander » des données ou des actions, et l'API indique à la cuisine (un service) exactement ce qu'il faut préparer et comment le servir.

Les API normalisent la manière dont les requêtes sont effectuées et les réponses renvoyées, afin que différents systèmes puissent fonctionner ensemble de manière fiable, même s'ils ont été développés par différentes équipes, différentes entreprises ou dans différents langages de programmation.

how-a-web-api-works

Que fait réellement une API ?

Concrètement, une API définit les points de terminaison (adresses que vous pouvez appeler), les méthodes que vous pouvez utiliser (comme GET pour récupérer des données ou POST pour envoyer des données), le format de ce que vous envoyez (souvent JSON) et ce à quoi vous devez vous attendre en retour (des données plus un code d'état comme 200 pour « OK » ou 404 pour « Introuvable »). Cette prévisibilité est l'essentiel.

API, SDK et interface utilisateur : quelle est la différence ?

  • API : le contrat, ce que vous pouvez demander et comment vous obtiendrez une réponse.
  • SDK (Software Development Kit) : boîte à outils qui regroupe souvent une API avec du code prêt à l'emploi, des exemples et des utilitaires afin de faciliter l'utilisation de l'API.
  • Interface utilisateur (UI) : ce sur quoi les humains cliquent et tapotent. Les API sont destinées aux logiciels, tandis que les interfaces utilisateur sont destinées aux personnes.

Si vous voulez être précis, vous pouvez utiliser une API sans SDK, mais l'utilisation d'un SDK peut vous faire gagner du temps et réduire les erreurs.

Existe-t-il différents « types » d'API ?

Oui, plusieurs styles, chacun avec ses avantages et ses inconvénients :

  • REST : Le style web le plus courant aujourd'hui. Basé sur les ressources, il utilise les méthodes HTTP (GET/POST/PUT/DELETE), généralement JSON.
  • GraphQL : les clients spécifient les champs exacts dont ils ont besoin dans une seule requête, ce qui est idéal pour réduire les récupérations excessives ou insuffisantes.
  • SOAP : protocole XML plus ancien avec des contrats stricts, toujours utilisé dans certaines entreprises.
  • gRPC : protocole binaire haute performance très utilisé pour les microservices.
  • Webhooks : il ne s'agit pas d'une demande que vous effectuez, mais d'un rappel que le fournisseur vous envoie lorsqu'un événement se produit (comme une notification de livraison).
rest-api

L'utilisation d'une API « en vaut-elle la peine » ?

En général, oui. Au lieu de tout créer vous-même, les API vous permettent d'intégrer des fonctionnalités telles que les paiements, les cartes, les e-mails, la recherche, l'analyse, l'IA, etc. Cela permet de gagner du temps en ingénierie, d'améliorer la fiabilité (le fournisseur met son service à jour) et permet à votre équipe de se concentrer sur ce qui rend votre produit unique.

Les compromis : vous héritez des limites de débit, des tarifs et des dépendances en matière de disponibilité de votre fournisseur. Si votre produit ne peut pas fonctionner sans cette API, prévoyez une redondance.

Ai-je besoin d'une « clé » spéciale pour utiliser une API ?

Souvent. De nombreuses API nécessitent une authentification afin que le fournisseur sache qui vous êtes et puisse appliquer des autorisations et des limites de débit. Les approches courantes comprennent :

  • Clés API : jetons simples que vous envoyez avec chaque requête.
  • OAuth : une méthode déléguée plus sécurisée, idéale lorsque vous devez accéder au compte d'un utilisateur.
  • Demandes signées / JWT : jetons cryptographiquement signés qui expirent et peuvent contenir des revendications (qui vous êtes, ce que vous êtes autorisé à faire).

Dans la mesure du possible, ne conservez pas les clés et les jetons dans des référentiels publics et dans le code côté client.

Ai-je besoin d'outils spéciaux pour appeler une API ?

Pas vraiment. Un navigateur Web, curl ou n'importe quel client HTTP fonctionne pour de nombreuses API. Les développeurs utilisent souvent des outils tels que Postman ou des bibliothèques de langage intégrées pour effectuer des requêtes, inspecter les réponses et enregistrer des exemples. Pour les applications de production, vous utiliserez la bibliothèque HTTP de votre langage ou le SDK du fournisseur.

Quelles sont les utilisations des API dans le monde réel ?

Pratiquement tout ce qui est moderne : les applications mobiles qui extraient les profils, « Se connecter avec Google/Apple », les boutiques en ligne qui traitent les paiements, la synchronisation des appareils domestiques intelligents, les tableaux de bord qui extraient des analyses, et même votre widget météo. Si un logiciel échange des données, il y a probablement une API derrière.

client-server-architecture

Le jargon que vous rencontrerez (et sa signification)

  • Point final : l'URL que vous appelez (par exemple, /users/123).
  • Demande / Réponse : ce que vous envoyez par rapport à ce que vous recevez en retour.
  • Charge utile / Corps : les données contenues dans une requête ou une réponse.
  • Code d'état : résultat numérique (200 OK, 201 Créé, 401 Non autorisé, 429 Trop de requêtes, 500 Erreur serveur).
  • Limite de débit : nombre d'appels que vous pouvez passer dans un intervalle de temps donné.
  • Gestion des versions : séparation des anciens et nouveaux comportements de l'API (par exemple, /v1/ vs. /v2/).
  • Idempotent : effectuer plusieurs fois la même requête donne le même résultat (par exemple, GET).

CONTENU CONNEXE