L’API (pour Application Programming Interface) ou bien interface de programmation est une notion qui revient souvent dans le monde du web.

Principalement employée par les développeurs web, en cherchant sur le net, on remarque vite qu’il est compliqué de tomber sur une définition simple et accessible à tous sans tomber dans des discours d’experts.

« OK mais concrètement, c’est quoi une API ? Pourquoi consacrer un article complet juste sur un mot alors ? »

En bref, une API est une interface de programmation qui permet de se « brancher » sur une application pour échanger des données. Une API est ouverte et proposée par le propriétaire du programme.

« C’est gentil mais ça m’aide pas beaucoup plus… »

Abordons le sujet du sens inverse : imaginons que les API n’existent pas.

Lorsque vous souhaitez intégrer une carte sur votre site internet pour représenter de manière visuelle la position géographique de votre entreprise, deux solutions s’offrent à vous. La première option consisterait à intégrer une image statique d’une carte, sauf que le résultat serait quand même plus efficace avec une carte interactive permettant de zoomer/dezoomer comme le propose Google Maps par exemple.

Vient ensuite la deuxième option : programmer sa propre carte interactive… Ce qui représente tout de même une bonne dizaine d’heures de travail. Investir autant de temps sur ce point en vaut-il vraiment la chandelle ? C’est un peu moins sûr.

Le mieux serait quand même de trouver un moyen de communiquer avec les services de Google Maps afin de récupérer leurs données géographiques et de les afficher ensuite sur son propre site : ça tombe bien, c’est justement le but d’une API ! C’est même de cette façon que tous les développeurs de plugins pour WordPress, Dupral et autres CMS procèdent pour créer des modules utilisant Google Maps pour afficher des données géographiques.

« Et donc ça marche que pour Google Maps ? »

Justement, une API va permettre à une application d’utiliser les données d’une autre application pour communiquer entre elles. L’application met librement à disposition des développeurs d’une seconde appli, certaines de ses données sans dévoiler l’ensemble de toute sa base de données. Cet échange peut donc s’appliquer avec n’importe quelle application qui voudrait rentrer en relation avec une autre. Par exemple, c’est de cette façon que l’on peut se connecter sur Instagram via son compte Facebook ou qu’un statut Facebook peut être relayé automatiquement sur Twitter. La majorité des grands groupes (pour ne reprendre que le cas de Facebook et Google par exemple) ont mis leurs API à disposition.

« Et du coup, quels intérêts ont-ils à proposer ces API ? »

Du point de vue de l’éditeur, son application touche alors un public beaucoup plus large que ses utilisateurs de base. De plus, cela lui permet de dépenser moins de temps et d’argent dans la conception/amélioration de son application ou de son site internet.

Pour l’utilisateur, ces API sont bien entendu gratuites. En simplifiant l’accès à une application ou en y intégrant des fonctionnalités externes, l’expérience utilisateur se voit améliorée. Par exemple, en tant qu’utilisateur, on ne compte plus le nombre de fois où lorsqu’on doit créer un compte sur un site, plutôt que de devoir remplir toute la fiche d’inscription qui prend parfois un temps interminable, il est bien plus simple et plus rapide de se connecter via son compte Facebook ou Twitter.

« Merci pour ces petits éclaircissements »

C’est vrai que pour un simple utilisateur, peu de monde y fait vraiment attention mais pour un développeur, une API est un élément essentiel lors de la création d’une application. Lorsqu’on lance sa propre appli ou site internet, c’est toujours plus sympa de savoir en quoi cela consiste. 🙂