Blog

Qu'est-ce qu'une API ?

Qu'est-ce qu'une API ? (Application Programming Interface)

API est l'acronyme de Application Programming Interface, qui est un logiciel intermédiaire permettant à deux applications de se parler. Chaque fois que vous utilisez une application comme Facebook, que vous envoyez un message instantané ou que vous vérifiez la météo sur votre téléphone, vous utilisez une API.

Qu'est-ce qu'un exemple d'API ?

Lorsque vous utilisez une application sur votre téléphone portable, l'application se connecte à Internet et envoie des données à un serveur. Le serveur récupère ensuite ces données, les interprète, effectue les actions nécessaires et les renvoie à votre téléphone.

L'application interprète alors ces données et vous présente les informations que vous vouliez de manière lisible. C'est ce qu'est une API - tout cela se passe via API.

Pour mieux expliquer cela, prenons un exemple familier.

Imaginez que vous êtes assis à une table dans un restaurant avec un menu de choix à commander. La cuisine est la partie du "système" qui préparera votre commande.

Ce qui manque, c'est le lien essentiel qui permet de communiquer votre commande à la cuisine et de livrer votre nourriture à votre table. C'est là qu'intervient le serveur ou l'API.

Le serveur est le messager - ou l'API - qui prend votre demande ou votre commande et indique à la cuisine - le système - ce qu'il faut faire. Ensuite, le serveur vous livre la réponse ; dans ce cas, il s'agit de la nourriture.


Voici un exemple réel d'API. Vous connaissez peut-être le processus de recherche de vols en ligne. Tout comme pour le restaurant, vous avez le choix entre plusieurs options, y compris différentes villes, dates de départ et de retour, etc.

Imaginons que vous réserviez votre vol sur le site d'une compagnie aérienne. Vous choisissez une ville et une date de départ, une ville et une date de retour, la classe de la cabine, ainsi que d'autres variables. Afin de réserver votre vol, vous interagissez avec le site web de la compagnie aérienne pour accéder à sa base de données et voir si des sièges sont disponibles à ces dates et quels pourraient être les coûts.

image api2

Toutefois, que se passe-t-il si vous n'utilisez pas le site web de la compagnie aérienne - un canal qui a un accès direct à l'information ? Que faire si vous utilisez un service de voyage en ligne, comme Kayak ou Expedia, qui regroupe les informations provenant de plusieurs bases de données de compagnies aériennes ?


Le service de voyage, dans ce cas, interagit avec l'API de la compagnie aérienne. L'API est l'interface qui, à l'instar de votre serveur serviable, peut être sollicitée par ce service de voyage en ligne pour obtenir des informations de la base de données de la compagnie aérienne afin de réserver des sièges, des options de bagages, etc. L'API prend ensuite la réponse de la compagnie aérienne à votre demande et la transmet directement au service de voyage en ligne, qui vous montre alors les informations les plus récentes et les plus pertinentes.

Ce qu'une API apporte également, c'est une couche de sécurité

Les données de votre téléphone ne sont jamais totalement exposées au serveur, et de même le serveur n'est jamais totalement exposé à votre téléphone. Au lieu de cela, chacun communique avec de petits paquets de données, ne partageant que ce qui est nécessaire - comme pour commander un plat à emporter. Vous dites au restaurant ce que vous aimeriez manger, ils vous disent ce dont ils ont besoin en retour et, à la fin, vous obtenez votre repas.

Les API sont devenues si précieuses qu'elles représentent une grande partie des revenus de nombreuses entreprises. Les grandes entreprises comme Google, eBay, Salesforce.com, Amazon et Expedia ne sont que quelques-unes des sociétés qui tirent profit de leurs API. Ce que l'on appelle "l'économie des API" est ce marché des API.

L'API moderne

Au fil des ans, ce qu'est une "API" a souvent décrit toute sorte d'interface de connectivité générique à une application. Plus récemment, cependant, les API modernes ont acquis certaines caractéristiques qui les rendent extraordinairement précieuses et utiles :

Les API modernes adhèrent à des normes (généralement HTTP et REST), qui sont conviviales pour les développeurs, facilement accessibles et largement comprises

Ils sont traités plus comme des produits que comme des codes. Ils sont conçus pour être consommés par des publics spécifiques (par exemple, les développeurs de téléphones portables), ils sont documentés et ils sont versionnés de manière à ce que les utilisateurs puissent avoir certaines attentes quant à leur maintenance et leur cycle de vie.

Comme ils sont beaucoup plus standardisés, ils sont soumis à une discipline beaucoup plus stricte en matière de sécurité et de gouvernance, ainsi qu'à un contrôle et à une gestion des performances et de l'échelle

Comme tout autre logiciel produit, l'API moderne possède son propre cycle de développement logiciel (SDLC) qui comprend la conception, le test, la construction, la gestion et le versionnage.  De plus, les API modernes sont bien documentées pour la consommation et le versionnage.