Comprendre les interfaces de programmation applicative (API) : 4 clés concrètes

Vous souhaitez voir deux systèmes communiquer ? Pour partager des données avec la communauté que vous soutenez ? Pour construire une application mobile avec des bénévoles ? Les interfaces de programmation applicative (API) sont faites pour vous.

Que font les API ?

Une interface de programmation applicative (API de son acronyme anglais), laisse les systèmes parler entre eux. Certaines interfaces de programmation sont appelées Web Services car elles communiquent via Internet.

Les API sont comme des ambassadeurs de données. Parfois un programme ou une personne veut quelque chose d’un autre programme, lequel a toujours ses particularités. Cela peut être de poser une question ou exécuter une sorte de tâche. L’un envoie une demande, ou un appel, utilisant l’API. L’autre programme écoute, et dirige l’interface de programmation vers une réponse. Il n’y a pas de lien direct entre deux programmes. Mais à la place, l’interface de programmation applicative porte le message et exécute la navette.

Pour aller plus loin : APIs: How the Internet Works Behind the Scenes, et pour approfondir encore plus, voir la série d’articles : What are APIs and How Do They Work?

Pourquoi se soucier des interfaces de programmation applicative (API) ?

Les API vous aident à connecter des données à vos propres projets. Les utilisateurs  peuvent mélanger et associer des données de plusieurs sources pour concevoir des applications, créer des expériences en ligne interactive, et identifier des tendances de données inexplorées.

Avec les interfaces de programmation, nous gagnons en flexibilité. Les gens veulent travailler avec des données sans avoir à consulter leur vendeur original ou à connaître l’intégralité du programme codé. A la place, ils utilisent les API pour accéder directement à ce qu’ils veulent.

Besoin d’inspiration ? Voici une liste de sites ayant fait des choses intéressantes avec les interfaces de programmation (API) : Cool Stuff Made with Cultural Heritage APIs

Les interfaces de programmation peuvent également sécuriser les données d’un programme. Bien qu’il y ait un échange entre les deux côtés (programmes), l’interface est au milieu. Elle contrôle ce que nous voyons et faisons, ce qui limite l’exposition du système. Chaque interface de programmation détermine la quantité de données partagées et quelles sont les actions autorisées. Certaines API offrent un accès en lecture seule. D’autres permettent un accès plus poussé au système avec des privilèges d’insertion, de mise à jour et de suppression.

Comment les API communiquent ?

Les API communiquent en utilisant différentes règles et conventions. Certaines sont plus formelles que d’autres. SOAP (Simple Object Access Protocol) est par exemple extrêmement structuré. XML-RPC (Remote Procedure Call) est moins complexe. REST (Representational State Transfer) est également plus léger. Dépendant de la méthode utilisée, la plupart des demandes et des réponses se font par XML ou JSON. Si vous souhaitez mieux comprendre la différence entre les API, regardez les slides 11 à 33 de cette présentation : Webservices Overview: XML RPC, SOAP and REST. Pour un cours résumé, cette infographie comporte une comparaison : REST vs SOAP.

Où obtenir une interface de programmation applicative ?

Les API peuvent être publiques ou privées. Les interfaces de programmation publiques sont disponibles pour tout type d’utilisation. Si vous cherchez à en expérimenter, ProgrammableWeb détient un répertoire de plus de 18 000 interfaces de programmation (API) pour tout type de service. Intégrateurs système, analystes de données aventureux et utilisateurs curieux peuvent se connecter aux données de n’importe laquelle d’entre elles. Certaines API publiques peuvent avoir des conditions d’utilisation. Mais au-delà de définir la portée des actions et des données disponibles, il y a peu, voir aucune restriction additionnelle. La documentation pour les API Axiell publiques est disponible ici : Adlib, IMu. Des informations sur l’interface Calm sont disponibles via alm.uk.sales@axiell.com. Les interfaces de programmation pour Mimsy XG et Micromusée sont attendues en 2018.

Une interface de programmation privée restreint la communication à des utilisateurs et systèmes spécifiques. Elle est généralement utilisée en interne par les développeurs propres à l’organisme. Les API privées ni ouvertes au public, ni partagées.

Pour plus d’informations sur les différences entre les interfaces de programmation publiques et privées, consulter cet article : https://www.upwork.com/hiring/development/public-apis-vs-private-apis-whats-the- différence/

Cet article est le premier d’une série sur la technologie utilisée par Axiell. Guettez notre prochain article sur la manière dont les bases de données stockent les informations ! Vous aimeriez aborder un sujet ? Envoyez-nous vos suggestions par email à sales-alm@axiell.com

Recevez les dernières nouvelles dans votre boîte mail avec notre newsletter

Sélectionnez vos centres d’intérêt :