COMPRENDRE-INFORMATIQUE.COM

Deviens autonome dans l’utilisation de l’informatique et comprends ce que tu fais !

Qu’est-ce qu’une API ?

Bonjour à toi ! Dans cet article, nous allons démystifier un concept qui peut sembler compliqué à première vue : les API. Qu’est-ce qu’une API ? Tu as peut-être déjà entendu ce terme quelque part dans un film ou une série, en discutant avec des geeks ou en suivant les actualités. Autrefois, ce terme était principalement familier aux professionnels de l’informatique. Cependant, avec l’émergence des nouvelles technologies, il se fait de plus en plus entendre de nos jours. « Mais c’est quoi, à quoi ça sert et est-ce que j’en ai besoin ?? » Ne t’inquiète pas, je vais essayer de rendre cela aussi simple que possible. C’est parti !

Une API, c’est quoi ?

Tout d’abord, « API » se prononce « a-pé-i » et non « api » comme la pomme. Comme il s’agit une abréviation anglophone 🇬🇧, tu peux même la prononcer à l’anglaise, « é-pi-aille« , si tu trouves ça plus stylé.

Ces trois lettres signifient « Application Programming Interface« , ou en français, « Interface de Programmation d’Applications« . Une API est le moyen par lequel les différents logiciels interagissent entre eux. Plus simplement, une API, ça permet de connecter deux programmes ensemble. Mais pourquoi et comment ? Découvrons ça tout de suite !

API : Le serveur de l’information

Imagine que tu es au restaurant. Tu as le menu devant toi avec différentes options. Tu décides ce que tu veux commander, puis tu transmets ta commande au serveur. Le serveur se rend à la cuisine, récupère ta commande et te l’amène. Tu n’as pas besoin de savoir comment la cuisine fonctionne ou comment le serveur a préparé ta commande, tu reçois simplement ce que tu as demandé 🍽️.

Une API fonctionne plus ou moins de la même manière. Lorsqu’un programme a besoin d’informations ou d’actions d’un autre programme, il passe par une API. Cette API est comme le serveur : elle reçoit la demande, l’exécute et renvoie la réponse. Comme le client au restaurant, le programme demandeur n’a pas besoin de savoir comment l’API effectue son travail.

Une API est comme un serveur qui délivre une commande à des clients (les applications)

Une API, pourquoi faire ?

Les API sont utilisées pour différents types de tâches, allant de la récupération de données jusqu’à l’exécution d’actions dans d’autres programmes. Prenons un exemple concret.

Lorsque tu utilises une application de météo pour vérifier les prévisions, tu peux en fait utiliser une API sans même le savoir. Ces applications utilisent souvent des API météorologiques pour récupérer les données météorologiques en temps réel. Lorsque tu consultes la température actuelle, les prévisions à venir ou même des données comme le taux d’humidité, ces informations sont généralement obtenues via une API météo.

Une app météo qui récupère les données météorologiques actuelles via une API fournissant des données météorologiques en temps réel

« Mais pourquoi un programme doit-il passer par une API et ne pourrait pas faire tout le boulot tout seul ? »

Par exemple, si cette application de prévisions météorologiques n’utilisait pas d’API, elle devrait alors enregistrer toutes ces données météorologiques sur ton téléphone, ce qui prendrait de l’espace ; ton téléphone devrait effectuer tous les calculs de prévisions lui-même, ce qui pourrait rapidement épuiser sa batterie, et utiliser ses propres capteurs de température ambiante ou de pression atmosphérique, s’il en possède, pour recueillir les données météorologiques actuelles. Cependant, de nombreuses sociétés disposent déjà de matériel adéquat et de modèles mathématiques sophistiqués pour produire ces prévisions en fonction de la localisation géographique, mettant ces données à disposition via leurs API. Il suffit alors aux différentes applications et logiciels de s’y connecter pour obtenir ces prévisions en fonction d’un emplacement spécifique.

Ainsi, les API sont très pratiques car elles permettent aux applications d’utiliser des fonctionnalités ou des services externes sans avoir à recréer ces fonctionnalités elles-mêmes. Par exemple, un service de paiement en ligne peut utiliser une API de traitement des paiements pour effectuer des transactions sécurisées sans avoir à développer son propre système de paiement.

Quelles applications utilisent une API ?

« Toutes les applications utilisent-elles une API ? »

Non, les applications n’ont pas toutes besoin d’utiliser une API. Par exemple, la calculatrice de Windows permet d’effectuer n’importe quelle opération arithmétique, telle qu’une addition, une soustraction ou encore une racine carrée sans avoir besoin de passer par une API. Ces opérations peuvent être facilement prises en charge par un ordinateur ou un smartphone et ne requièrent pas de ressources matérielles ou immatérielles externes.

Les applications utilisent des API pour accéder aux fonctionnalités ou aux données d’autres logiciels, services ou systèmes. La nécessité d’utiliser une API dépend des fonctionnalités que l’application souhaite intégrer et si ces fonctionnalités ne sont pas nativement disponibles dans l’application elle-même.

Si une application a besoin d’accéder à des données ou à des fonctionnalités qui ne font pas partie de son code interne, elle peut utiliser des API pour obtenir ces fonctionnalités externes, comme dans notre exemple d’application de météo qui utilise une API météorologique pour récupérer les données météorologiques en temps réel.

En somme, c’est un peu comme assembler des briques Legos ensemble et on utilise des API pour les connecter.

Les programmes et fonctionnalités sont un peu comme des briques Legos que l’on peut connecter via des API

La décision d’utiliser une API dépend donc des besoins de l’application. Si une fonctionnalité ou des données spécifiques ne sont pas directement intégrées dans l’application mais sont disponibles via une source externe (un autre service, logiciel, plateforme, etc.), l’utilisation d’une API est souvent nécessaire pour accéder à ces ressources externes.

« Les API sont-elles exclusivement réservées aux apps de smartphone ? »

Non. Bien que l’exemple météorologique que j’ai donné plus haut soit pour une app de smartphone, n’importe quel autre type de programme (= application = logiciel) peut utiliser une API, que ça soit une application web, Windows, Mac, iOS, Android, Linux, etc.

Pourquoi sont-elles nécessaires ?

Mais il n’y a pas que la manière de construire un programme qui rend les API incontournables. Elles offrent de nombreux avantages :

  1. Accès à des fonctionnalités externes 🧩 : Comme mentionné plus haut, les API permettent aux applications d’utiliser des fonctionnalités ou des services externes sans avoir à recréer ces fonctionnalités elles-mêmes. Par exemple, un service de paiement en ligne peut utiliser une API de traitement des paiements pour effectuer des transactions sécurisées sans développer son propre système de paiement.
  2. Données à jour 📆 et spécialisées 🎯 : Les API fournissent un accès à des données en temps réel ou à des informations spécialisées provenant de sources fiables. Par exemple, les applications de cartographie utilisent des API de services de cartes pour accéder à des cartes mises à jour et des informations de géolocalisation.
  3. Économie de ressources 🔋 : Les applications n’ont pas besoin de stocker toutes les données ou de développer toutes les fonctionnalités en interne, car elles peuvent simplement faire des requêtes aux serveurs de l’API pour obtenir ce dont elles ont besoin à la demande.
  4. Expertise 📚 et fiabilité ✅ : Les API sont souvent créées et gérées par des experts dans leur domaine, offrant ainsi des solutions fiables et éprouvées aux applications qui les utilisent.

Un autre exemple concret

Tu connais sans doute Airbnb, la plateforme en ligne qui permet aux particuliers de louer des logements pour de courtes ou longues durées. Eh bien, pour qu’Airbnb puisse t’offrir ses différentes fonctionnalités, sa plateforme, que ça soit son site web ou son application mobile, utilise plusieurs API. Plutôt que de développer toutes ces fonctionnalités elle-même, l’entreprise Airbnb utilise les API suivantes :

  1. 🗺️ Services de cartographie et de localisation : Airbnb s’appuie sur l’API de Google Maps pour afficher l’emplacement des annonces et fournir des itinéraires.
  2. 💳 Services de paiement en ligne : Des services tels que Braintree ou Stripe sont intégrés pour un traitement sécurisé des paiements.
  3. 💬 Communication : Les API Twilio ou SendGrid sont utilisées pour faciliter la communication entre les hôtes et les invités par SMS ou par courriel.
  4. ️👥 Intégration des médias sociaux : Les API de plateformes de médias sociaux comme Facebook sont utilisés pour permettre aux utilisateurs de se connecter ou de partager leurs expériences.
  5. Critiques et évaluations : Airbnb utilise aussi une API qui aident à gérer les avis et les notations, en garantissant la transparence et la fiabilité.

Qui utilise les API ?

Les API sont donc principalement utilisées par les développeurs d’applications 👨‍💻. À moins que tu en sois un ou une, tu n’auras vraisemblablement jamais besoin d’en utiliser une (ou alors peut-être dans le futur, on ne sait jamais ! 🤖😉)

Un développeur d’applications

Dans le monde complexe de la programmation, les API aident à simplifier les choses en établissant une série de règles pour la manière dont les programmes doivent interagir entre eux. Sans les API, chaque développeur devrait comprendre les rouages internes de chaque programme avec lequel il souhaite interagir. En d’autres termes, il devrait aller dans la cuisine et préparer sa commande lui-même au lieu de compter sur le serveur. Grâce aux API, les développeurs peuvent se concentrer sur leur propre code, en sachant que l’API fera le travail difficile pour eux.

Mais il n’y a pas que les développeurs qui utilisent des API ! Voici leurs principaux utilsateurs :

  1. 👨‍💻 Développeurs : Principaux utilisateurs des API. Ils utilisent les API pour accéder à des fonctionnalités, des données ou des services fournis par d’autres logiciels, ce qui leur permet de créer de nouvelles applications, d’intégrer des services ou d’améliorer des logiciels existants.
  2. 💼 Sociétés et entreprises : Les organisations exploitent les API à diverses fins, notamment pour créer de nouveaux produits, intégrer des services tiers, automatiser des processus et améliorer les capacités de leurs logiciels.
  3. 👤 Consommateurs : Les personnes interagissent avec les API indirectement par le biais des applications et des services qu’elles utilisent. Par exemple, les utilisateurs de médias sociaux, lorsqu’ils se connectent à d’autres applications en utilisant leurs identifiants Facebook ou Google, interagissent avec les API.
  4. 🤝 Fournisseurs de services : Les entreprises qui fournissent des services logiciels proposent des API pour permettre à d’autres développeurs ou entreprises d’accéder à leurs fonctionnalités ou à leurs données. Cela peut aller des plateformes de médias sociaux (comme Facebook, Twitter) aux fournisseurs de services en nuage (comme Amazon Web Services, Google Cloud).
  5. 🤖 Appareils IoT (Internet des objets) : Les appareils IoT (appareils connectés comme les montres connectées, les thermostats intelligents, les appareils de santé connectés, etc.) utilisent souvent des API pour communiquer entre eux ou avec divers services sur internet.
  6. 🔬 Scientifiques et analystes de données : Ils peuvent utiliser des API pour rassembler des données provenant de différentes sources à des fins d’analyse ou de recherche.
  7. 🏛️ Gouvernements et services publics : Les services publics pourraient proposer des API pour accéder aux données gouvernementales, aux informations météorologiques, aux détails des transports, etc.

Où trouve-t-on des API ?

De nos jours, la plupart des plateformes et applications connues telles que Facebook, Instagram, Linkedin, Skype, WhatsApp, Uber, etc. mettent une API à disposition des développeurs d’application qui aimeraient intégrer leur application à ces plateformes pour diverses raisons. Par exemple, imagine qu’une entreprise internationale aimerait ajouter, sur son site Internet, une carte du monde interactive montrant l’emplacement de ses différentes succursales à l’aide de repères. Elle pourrait utiliser l’API de Google Maps qui permet de bénéficier du service de cartes géographiques Google.

Il existe plusieurs approches pour savoir où trouver une API :

  • En partant de la plateforme : Par exemple, si on veut créer une application qui doit récupérer des commentaires sur des vidéos YouTube, on sait qu’on va devoir utiliser l’API de YouTube. Parmi les menus de ces plateformes, il faut alors chercher un lien « Développeurs », ou « Developers » en anglais, ou encore simplement « API » ou « Intégration ». Exemple : l’API de YouTube.
  • Via un répertoire d’API : Il existe des sites qui recensent les différentes API qui existent. Ces listes ne sont jamais totalement exhaustives et, bien souvent, elles listeront les API les plus populaires. En effet, Internet est tellement vaste et toutes les API ne sont pas forcément visibles. Un exemple de répertoire d’API est RapidAPI.
  • Via les moteurs de recherche : On peut facilement trouver des API gratuites ou payantes à l’aide des moteurs de recherches en entrant une requête du style « api + utilisation » (exemple : « api prévisions météorologiques »)
  • Via les outils d’intelligence artificielle : de nombreux outils d’IA ont émergé et savent interpréter les vraies questions et y répondre de manière pertinente comme ChatGPT, Perplexity, Claude ou encore Google Bard. Voici un exemple avec Google Bard :
Je demande à Google Bard de me lister quelques API de traduction de texte

Attention toutefois, il faut tenir compte que ces outils d’IA ne sont pas toujours à jour. Dans le cas de ChatGPT, par exemple, à l’heure où j’écris ces lignes, il n’est au courant que des informations jusqu’à janvier 2022 :

Je demande à ChatGPT s’il est à jour

Résumé

Une API est comme un serveur dans un restaurant. Elle prend les commandes, va en cuisine pour les préparer, puis les ramène au client. Ceci permet aux différents programmes de travailler ensemble de manière plus facile et plus structurée.

Les programmes utilisent souvent une ou plusieurs API en fonction des fonctionnalités qu’ils souhaitent intégrer. Si ces fonctionnalités ne sont pas nativement disponibles dans l’application elle-même, il sera alors plus pratique de recourir à une API.

Les programmes deviennent de plus en plus spécialisés, un peu comme la majorité d’entre nous, les humains, qui avons chacun nos talents spécifiques. De la même manière qu’on fait appel à des professionnels et des spécialistes si on veut faire quelque chose qui dépasse nos compétences, les programmes font appel à des API spécialisées pour effectuer des actions ou obtenir des données spécifiques qui dépassent ses compétences.

En comprenant comment fonctionnent les API, tu as franchi une étape importante dans la compréhension du monde mystérieux de l’informatique !

J’espère que cela a rendu le concept des API un peu plus clair pour toi. N’hésite pas à poser des questions dans les commentaires si quelque chose n’est pas clair. À la prochaine ! 😉

Cet article t'a plu ? Partage-le !

3 réponses à “Qu’est-ce qu’une API ?”

  1. Super article, comme d’habitude ! Plein d’explications qui permettent vraiment de mieux comprendre qu’est-ce que API et son fonctionnellement !
    J’ai trouvé cet exemple avec le serveur juste excellent !
    Merci beaucoup également d’avoir indiqué où nous pouvons trouver facilement API pour les différentes plateformes !

  2. Bonjour David, merci pour cet article très clair sur un sujet qui me paraissait très flou ! J’aime beaucoup ton image du serveur : la compréhension est immédiate. Je saisis mieux maintenant pourquoi un site Internet (waltio.com) me demandait de mettre en place un ou plusieurs API pour donner son résultat.

Laisser un commentaire