25 avril 2024 - Rencontre administration centrale et services déconcentrés : comment mieux intégrer les données au service des politiques publiques ?

S'inscrire
Produit

Tout, tout, tout, vous saurez tout sur les APIs

API - 1

Les APIs. Un acronyme que l'on aime à jeter négligemment dans la conversation : "... et bien sûr, ils proposent une API..." Mais lorsqu'arrive le moment des explications, peu sont ceux qui s'en sortent avec pédagogie, justesse technique et brio.

Technical Project Manager, Opendatasoft
Voir tous ses articles
Copy to clipboard

Commençons par le commencement. Demandons à Wikipedia :

“En informatique, une interface de programmation applicative (souvent désignée par le terme API pour Application Programming Interface) est un ensemble normalisé de classes, de méthodes ou de fonctions qui sert de façade par laquelle un logiciel offre des services à d’autres logiciels.”

Avouons-le, si un lecteur sans bagage technique lit cela, force est de constater qu’il ne doit pas y comprendre grand chose.

Copy to clipboard

Une API, c’est une Application Programming Interface. Expliquons chacun de ces termes et leurs relations.

  • Application : une application, c’est un service accessible par un humain ou un programme informatique via internet. Quelques exemples d’applications : un portail open data, un réseau social où l’on gazouille, votre brosse à dent connectée.
  • Programming : un programme est un ensemble de fonctions informatiques écrites par un développeur (ou une intelligence artificielle, mais c’est un autre sujet) qui exécute des tâches à sa place. Par exemple, si je dois transformer des adresses postales en coordonnées géographiques, je peux le faire à la main. Où je peux écrire un programme pour le faire à ma place.
  • Interface : Une interface est la porte d’entrée à travers laquelle le programme pourra interagir avec l’application. L’utiliser requiert souvent un comportement codifié et attendu. Pensez Gandalf devant la porte de la Moria.

C’est à travers cette interface, qu’un programme pourra interagir avec une application.

En français, une API se traduit par Interface de Programmation Applicative (IPA donc, mais rien à voir avec la bière artisanale).

Copy to clipboard

Ah la bonne question ! Et la réponse est : une foule de choses ! Mais nous y reviendrons après, pour le moment, parlons de comment cela fonctionne.

Une API, c’est une abstraction qui permet d’utiliser un service sous-jacent.

Une quoi ? Une abstraction. Un exemple de tous les jours devrait nous aider.

Portrait de l'API en machine à laver

Prenons un fournisseur d’eau :

  • le fournisseur produit et distribue un service : l’eau
  • le fournisseur utilise une infrastructure pour assurer la distribution : aqueducs, tuyaux, robinets d’arrivée d’eau…

À ce fournisseur correspond un consommateur :

  • le consommateur a besoin du service (l’eau) pour faire fonctionner son lave-linge
  • le lave-linge est vendu avec un flexible d’alimentation dont l’embout est standardisé
  • le consommateur relie son lave-linge au fournisseur en vissant le flexible au robinet d’arrivée d’eau.

Sans ce robinet, le consommateur aurait dû sortir son fer à souder pour relier “en dur” sa machine au tuyau (et gâcher une bonne partie de son week-end). Ce robinet est une abstraction. Il fait office d’interface entre le tuyau et la machine à laver.

Le robinet (l’API) est une abstraction du service nécessaire. Il permet à une machine à laver (le programme) de consommer de l’eau (une application) dans des conditions pré-définies et standardisées (embout standardisé).

TL;DR

De la même façon qu’un particulier délègue la production et l’acheminement d’eau à une entreprise, “les APIs permettent aux développeurs de déléguer le service qu’ils consomment” (source).

Copy to clipboard

Je le disais plus tôt, les APIs sont partout et servent à une foule de choses. Des prévisions météorologiques sur votre smartphone à Netflix, tout repose sur des APIs.

Ce qui vous permet, ainsi qu’à vos voisins, de regarder votre application météo le matin, ce sont les APIs. Un fournisseur de données météo fait des prédictions et partage ses données en temps réel à des développeurs en un flux continu. Pour briller en soirée, je vous donne le terme technique : on parle d’exposer les données. Les développeurs peuvent ainsi construire une application autour de ce flux de données.

Vous sortez de soirée et souhaitez prendre un vélo en libre service ? Idem ! L’opérateur relève chaque seconde la disponibilité de tous ses vélos et expose ses données via une API. Ces données temps-réel sont partagées simultanément à toutes les applications construites autour de cette API. Pratique !

Lorsque vous regardez Netflix, le service de vidéos mesure la qualité de votre connexion internet et adapte automatiquement la qualité de ses vidéos en conséquence. Vous vous tenez à côté du boîtier de votre fournisseur ? La définition de l’image est parfaite. Vous marchez jusqu’à la cuisine en tenant votre ordinateur d’une main pour mettre une pizza au four (ne faites pas ça, c’est dangereux)? Netflix vous propose une image moins nette (et donc un flux de données moins important) pour ne pas interrompre le visionnage de votre série.

Copy to clipboard

J’espère que cette combinaison de machine à laver, pizza et Netflix vous aura aidé à mieux comprendre le fonctionnement des APIs et leur potentiel.

Vous êtes curieux d’en savoir plus et d’explorer plus en avant les différentes possibilités des APIs ? Bonne idée ! Le site Programmable Web en recense plus de 18 000. Voilà qui devrait vous occuper pendant que votre série Netflix charge depuis la cuisine.

Articles sur le même thème : API

Plus d'articles
Guide API Guide
Guide API

9 bonnes pratiques pour favoriser la réutilisation de vos données grâce aux APIs Dans ce guide vous trouverez : Les 9 bonnes pratiques pour tirer profit des APIs dans une stratégie de valorisation de données ; Les différents services offerts par les APIs ; Les meilleures pratiques de description d’une API ; Des recommandations avancées pour assurer la viralité de vos APIs.

Déployer des projets data à grande échelle avec l’API Automation Produit
Déployer des projets data à grande échelle avec l’API Automation

Nous avons interrogé Coralie Lohéac, Lead Product Manager, et Hugo Bost, Software Engineer, qui font partie de l’équipe ayant supervisé le développement du projet. Ils nous dévoilent les aspects techniques de cette API et les bénéfices qu’elle offre déjà, aux administrateurs de portails data et au reste de l’organisation.

Pourquoi les APIs sont indispensables au fonctionnement des territoires intelligents Tendances
Pourquoi les APIs sont indispensables au fonctionnement des territoires intelligents

Les APIs sont partout, et elles sont extrêmement puissantes. Elles permettent aux données et aux produits de travailler ensemble de manière transparente. Mais... à quoi les APIs ressemblent-elles vraiment en pratique ?

Guide API Guide
Guide API

9 bonnes pratiques pour favoriser la réutilisation de vos données grâce aux APIs Dans ce guide vous trouverez : Les 9 bonnes pratiques pour tirer profit des APIs dans une stratégie de valorisation de données ; Les différents services offerts par les APIs ; Les meilleures pratiques de description d’une API ; Des recommandations avancées pour assurer la viralité de vos APIs.

Déployer des projets data à grande échelle avec l’API Automation Produit
Déployer des projets data à grande échelle avec l’API Automation

Nous avons interrogé Coralie Lohéac, Lead Product Manager, et Hugo Bost, Software Engineer, qui font partie de l’équipe ayant supervisé le développement du projet. Ils nous dévoilent les aspects techniques de cette API et les bénéfices qu’elle offre déjà, aux administrateurs de portails data et au reste de l’organisation.

Pourquoi les APIs sont indispensables au fonctionnement des territoires intelligents Tendances
Pourquoi les APIs sont indispensables au fonctionnement des territoires intelligents

Les APIs sont partout, et elles sont extrêmement puissantes. Elles permettent aux données et aux produits de travailler ensemble de manière transparente. Mais... à quoi les APIs ressemblent-elles vraiment en pratique ?