Une interface de programmation d’applications, ou API, est un ensemble de définitions, de règles et de protocoles qui permettent la communication entre deux entités : les utilisateurs (personnes ou logiciels) et les informations (ressources de données mises à disposition par des applications en ligne et sur le web).
Aujourd’hui, les API constituent le cadre de base des applications modernes, améliorent l’expérience utilisateur et renforcent les modèles commerciaux.
Les API sont la « face publique » des applications, elles révèlent les fonctions qu’elles exécutent et les informations qu’elles peuvent fournir, et définissent le format approprié des requêtes. Lorsqu’un développeur crée et expose l’API d’une application, il permet à d’autres applications de communiquer avec elle.
Dans de nombreux cas, les API permettent aux développeurs de gagner un temps précieux, car elles rendent facilement accessibles les fonctions couramment utilisées. Plutôt que de reproduire la fonctionnalité d’une application existante, les développeurs peuvent intégrer cette fonctionnalité dans leurs applications en faisant appel à l’API de l’application existante.
La manière dont chaque API est conçue, déployée et fonctionne dépend de son style architectural ou de son protocole.
L’architecture d’une API, ou style architectural fait référence à la conception de haut niveau d’une API. Elle englobe la manière dont l’API est structurée et organisée, ainsi que son format de requête/réponse. Un protocole API spécifie également le format, tout en décrivant les messages exacts.
Les architectures et protocoles API les plus courants sont les suivants :
Les API sont un élément essentiel des logiciels modernes. Aujourd’hui, les organisations et les entreprises créent ou utilisent de nombreux types d’API en fonction de leurs besoins.
Les quatre types d’API les plus courants dans les entreprises actuelles sont les API publiques, les API privées, les API partenaires et les API tierces.
Les API publiques sont accessibles aux utilisateurs externes à votre entreprise (que ce soit à titre onéreux ou gratuit) et vous permettent d’établir des partenariats avec des développeurs tiers et d’étendre l’ensemble de votre écosystème commercial.
Les API publiques peuvent être utilisées par des développeurs tiers pour créer de nouveaux produits. De cette manière, elles favorisent l’innovation et constituent un outil important pour établir de nouveaux partenariats.
Les API privées ne sont accessibles qu’aux équipes internes de votre entreprise. Elles vous aident à débloquer des données et à favoriser la collaboration en interne, ou bien elles peuvent soutenir de manière invisible les applications publiques de votre organisation (comme votre site web).
Les API privées n’étant accessibles qu’aux utilisateurs internes, les entreprises peuvent les concevoir dans un souci d’optimisation. Les API privées permettent d'améliorer la composabilité des applications modernes, ce qui permet aux entreprises de s’adapter aux besoins actuels. Les développeurs peuvent facilement intégrer les API privées lors de la création de microservices afin de réduire les doubles emplois au sein des équipes.
Les API partenaires sont utilisées pour intégrer directement des partenaires commerciaux (par exemple, lorsqu’une compagnie aérienne s’associe à une chaîne hôtelière et que vous pouvez réserver simultanément votre vol et votre hébergement). Les API partenaires ne sont pas publiques, elles ne sont accessibles qu’aux développeurs sélectionnés qui satisfont aux exigences d’authentification (AuthN) et d’autorisation (AuthZ) des deux entreprises.
L’interopérabilité renforce les relations avec les API partenaires, car ces dernières éliminent les silos et permettent à différentes organisations de communiquer entre elles.
Les API tierces sont utilisées par votre organisation pour accéder à des données ou à des capacités manquantes dans vos applications et services. Ces API fonctionnent sur le serveur tiers et fournissent généralement un service indispensable (par exemple, l’API de traitement des paiements Stripe utilisée par de nombreux sites de commerce électronique). En fonction de l’API, votre organisation peut l’utiliser avec ou sans frais.
Les API tierces étant déjà construites par un autre développeur ou une autre organisation, elles ont l’avantage de permettre des économies. En outre, les API tierces constituent un moyen essentiel pour les organisations de développer des applications plus rapidement, car les développeurs peuvent utiliser immédiatement une fonctionnalité au lieu de la coder eux-mêmes.
Presque tous les langages de programmation modernes peuvent être utilisés pour coder une API. Lors du codage d’une API, de nombreux développeurs peuvent choisir d’utiliser un framework. Les frameworks fournissent des blocs de construction tels que des bibliothèques de code et d’autres utilitaires nécessaires qui accélèrent et facilitent la création d’applications à l’aide du langage.
Chaque langage de programmation dispose généralement d’un ou de plusieurs frameworks populaires auprès des développeurs. Le tableau ci-dessous répertorie plusieurs options de frameworks (dont beaucoup sont open source).
Le choix du langage et du framework dépend généralement des besoins du projet ou des préférences personnelles du développeur.
Les entreprises actuelles ont besoin d’une stratégie API moderne qui s’aligne sur leurs objectifs. Une stratégie API établit un plan sur la façon dont une entreprise va concevoir, développer, gérer, gouverner et sécuriser ses API.
Selon le Gartner’s Top 5 API Lessons for Software Engineering Leaders (Top 5 des enseignements pour les leaders du développement logiciel de Gartner), les cinq meilleures pratiques pour garantir la solidité de votre stratégie en matière d’API sont les suivantes :
Quel que soit le type d’architecture d’API que vous choisissez ou le type d’API que vous codez, il est essentiel de prendre en compte la sécurité de l’API dès le départ, et non après coup. Pour en savoir plus sur la manière de sécuriser vos API dès le départ et de lutter contre les problèmes courants tels que la prolifération des API, consultez Sécurité des API : meilleures pratiques pour la protection des API.
Toutes les mesures ne sont pas sur le même pied d’égalité. Pour en savoir plus, consultez la rubrique Les 12 mesures à surveiller pour une stratégie API réussie.
Alors que les API étaient autrefois uniquement considérées comme un simple outil pour les développeurs, elles sont devenues des actifs commerciaux stratégiques créateurs de revenus et soutenant l’agilité de l'entreprise. La connectivité des API fait référence à l’utilisation d’API modulaires et réutilisables pour relier les données et les applications dans des environnements cloud natifs, dans le but de résoudre les problèmes de visibilité, de sécurité et de gouvernance.
NGINX offre une multitude de ressources gratuites pour vous aider à chaque étape de votre parcours API.