Chapitre 02 — Faites vos premiers appels API5 min de lecture

C’est quoi une API ?

Vous utilisez déjà des API tous les jours

On pense souvent que les API sont réservées aux développeurs. C'est faux. Si vous avez déjà utilisé une application qui se connecte à un autre service, vous avez utilisé une API. Vous ne l'avez juste pas vue.

Voici quelques actions du quotidien qui passent par des API :

  • Vous commandez un Uber. L'application appelle l'API de Google Maps pour calculer le trajet, puis l'API de Stripe pour débiter votre carte. Uber n'a pas construit son propre système de cartes ou de paiement. Ils utilisent les API d'autres entreprises.
  • Vous cliquez sur "Se connecter avec Google". L'application sur laquelle vous vous connectez appelle l'API de Google pour vérifier votre identité. Elle ne voit jamais votre mot de passe. Google s'occupe de la vérification et renvoie simplement un "oui" ou un "non".
  • Vous consultez la météo sur votre téléphone. Votre application météo ne possède aucune station météo. Les données proviennent de services météorologiques (comme Météo-France) qui gèrent des capteurs, collectent des mesures et rendent ces données disponibles via une API. Votre application n'est qu'une interface au-dessus des données de quelqu'un d'autre.
  • Vous réservez un logement sur Airbnb et recevez un e-mail de confirmation. Airbnb n'a pas construit sa propre infrastructure d'envoi d'e-mails. Ils appellent l'API de SendGrid, un service spécialisé dans l'envoi d'e-mails à grande échelle, en disant "envoie cette confirmation à cette adresse". SendGrid gère la livraison.
  • Vous pratiquez sur Duolingo et l'application corrige votre phrase. Duolingo appelle l'API d'OpenAI pour analyser votre réponse et générer un retour. Duolingo est une application d'apprentissage des langues. Ils n'ont pas construit leur propre modèle d'intelligence artificielle. Ils utilisent celui d'un autre, via une API.

Toutes ces interactions sont des API qui communiquent entre elles en coulisses. Le logiciel moderne est construit au-dessus d'autres logiciels.


Alors, c'est quoi une API ?

API signifie Application Programming Interface (Interface de Programmation d'Application). Oublions la définition formelle et regardons ce qu'elle fait concrètement.

Une API est une porte d'entrée vers un logiciel. Elle permet à un logiciel de demander à un autre logiciel de faire quelque chose : récupérer des données, créer un enregistrement, envoyer une notification, traiter un paiement.

L'application Uber ouvre une porte vers Google Maps. Airbnb ouvre une porte vers SendGrid. Votre application météo ouvre une porte vers Météo-France. À chaque fois, un produit demande à un autre produit quelque chose de précis, et reçoit une réponse structurée (en JSON, comme vous le savez maintenant).


API internes vs externes

C'est une distinction importante à comprendre dès le début.

Les API internes sont les portes à l'intérieur de votre propre produit. Quand vous ouvrez l'application Airbnb, l'écran qui affiche vos réservations, vos messages, votre profil : tout cela, c'est votre téléphone qui parle aux propres serveurs d'Airbnb via des API internes. Les données vivent dans les bases de données d'Airbnb, et l'API interne est le moyen pour l'application de les récupérer.

Dites-vous bien : chaque fois qu'un écran charge des données dans une application, il y a un appel d'API interne derrière.

Les API externes sont les portes vers le produit de quelqu'un d'autre. Quand Airbnb vous envoie un e-mail via SendGrid, débite votre carte via Stripe ou affiche l'appartement sur une carte Google Maps, ce sont des appels d'API externes. Airbnb demande à une autre entreprise de faire quelque chose pour son compte.

La différence est cruciale car :

  • API internes : votre équipe les conçoit. Vous décidez quelles données elles exposent et comment elles se comportent. C'est votre produit.
  • API externes : quelqu'un d'autre les a conçues. Vous lisez leur documentation, suivez leurs règles et travaillez avec leurs contraintes. C'est leur produit.

Pourquoi c'est important pour vous

Vous vous dites peut-être : "OK, mais je ne vais pas construire d'API moi-même." C'est vrai. Mais voici ce que vous allez faire :

Lire la documentation d'une API. Lorsque vous évaluez un service tiers, la doc de l'API vous dit ce qui est réellement possible. Pas la page marketing.

Parler à vos ingénieurs avec du contexte. Quand votre équipe dit "l'API renvoie le forfait de l'utilisateur mais pas son historique de facturation", vous comprendrez ce que cela signifie et pourquoi c'est important pour la fonctionnalité que vous construisez.

Déboguer des problèmes d'intégration. Quand quelque chose casse entre votre produit et un service tiers, la réponse se trouve généralement dans la réponse de l'API. Vous avez appris à les lire au chapitre 1.

Rédiger de meilleures specs. Savoir ce qu'une API peut ou ne peut pas faire signifie que vous ne concevrez pas de fonctionnalités impossibles ou beaucoup plus complexes qu'elles ne devraient l'être.


L'analogie du tableur

Comme vous êtes à l'aise avec les tableurs, voyez les choses ainsi.

Votre entreprise a un énorme tableur avec toutes les données clients. Quand quelqu'un a besoin d'une info, il l'ouvre, trouve la bonne ligne et la lit. Ça marche, mais c'est manuel.

Imaginez maintenant que vous puissiez envoyer un message : "donne-moi l'e-mail du client #8421", et recevoir instantanément "alice@acme.com". Pas besoin d'ouvrir le fichier, de scroller ou de chercher.

C'est ce que fait une API. C'est un moyen de demander des données spécifiques (ou de déclencher une action précise) sans accéder directement au système sous-jacent. Le tableur reste où il est. Vous obtenez juste exactement ce que vous avez demandé.

API interne : interroger le tableur de votre propre entreprise. API externe : interroger celui de Stripe, de Google ou de SendGrid.


La suite

Maintenant que vous savez ce que sont les API et pourquoi elles sont importantes, voyons comment elles fonctionnent concrètement : le va-et-vient entre une requête et une réponse.