Une interface de programmation d'application, 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 Web).
Aujourd’hui, les API constituent le cadre de base des applications modernes, améliorent l’expérience utilisateur et optimisent les modèles commerciaux. Parfois, une API peut même être le modèle économique lui-même.
Les API sont la « face publique » des applications, révélant les fonctions qu’elles exécutent et les informations qu’elles peuvent fournir, et définissant 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 les fonctions couramment utilisées facilement accessibles. Plutôt que de dupliquer les fonctionnalités d’une application existante, les développeurs peuvent intégrer les fonctionnalités dans leurs applications en appelant 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.
Une architecture API, ou style architectural, fait référence à la conception de haut niveau d'une API. Cela englobe la manière dont l'API est structurée, organisée et son format de requête/réponse. Un protocole API spécifie également le format, tout en décrivant en plus les messages exacts.
Les architectures et protocoles API courants incluent :
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 différents en fonction de leurs besoins.
Les quatre types d’API les plus courants dans les organisations aujourd’hui sont les API publiques, les API privées, les API partenaires et les API tierces.
Les API publiques sont accessibles aux utilisateurs extérieurs à votre entreprise (monétisées ou gratuitement) et vous permettent de créer des partenariats avec des développeurs tiers et d'étendre l'ensemble de votre écosystème commercial.
Étant donné que les API publiques peuvent être utilisées par des développeurs tiers pour créer de nouveaux produits, elles contribuent à stimuler l’innovation et constituent un outil important pour aider à établir de nouveaux partenariats.
Les API privées ne sont accessibles qu'aux équipes internes de votre entreprise. Ils vous aident à déverrouiller les données et à favoriser la collaboration interne, ou ils peuvent soutenir de manière invisible les applications publiques de votre organisation (par exemple, votre site Web).
Étant donné que les API privées ne sont disponibles que pour les utilisateurs internes, les organisations peuvent les créer dans un souci d’optimisation. Les API privées permettent également une plus grande composabilité des applications modernes, permettant aux entreprises de s'adapter aux besoins actuels. Les développeurs peuvent facilement intégrer des API privées lors de la création de microservices, ce qui réduit le travail en double entre les équipes.
Les API partenaires sont utilisées pour s'intégrer directement avec 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 accessibles au public. Elles sont accessibles à certains développeurs 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 elles éliminent les silos et permettent à différentes organisations de communiquer entre elles.
Les API tierces sont utilisées par votre organisation pour accéder aux données ou aux fonctionnalités manquantes dans vos applications et services. Ces API s’exécutent sur le serveur tiers et fournissent généralement un service largement nécessaire (un exemple est l’API de traitement des paiements Stripe utilisée par de nombreux sites de commerce électronique). Selon l'API, ils peuvent être utilisés par votre organisation avec ou sans frais.
Étant donné que les API tierces sont déjà créées par un autre développeur ou une autre organisation, l’un de leurs avantages évidents est la réduction des coûts. De plus, 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é plutôt que 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 codes et d'autres utilitaires nécessaires qui permettent de créer plus rapidement et plus facilement des applications à l'aide du langage.
Chaque langage de programmation dispose généralement d'un ou plusieurs frameworks qui sont populaires parmi les développeurs. Le tableau répertorie plusieurs options de framework (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 organisations d’aujourd’hui ont besoin d’une stratégie API moderne qui s’aligne sur leurs objectifs. Une stratégie API définit un plan sur la manière dont une organisation concevra, développera, gérera, gouvernera et sécurisera ses API.
Selon le rapport Top 5 API Lessons for Software Engineering Leaders de Gartner , il existe cinq bonnes pratiques pour garantir la solidité de votre stratégie API :
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é des API dès le début, et non pas comme une réflexion 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 : Bonnes pratiques pour la protection des API .
Et toutes les métriques ne sont pas égales, apprenez-en plus dans Quelles 12 métriques surveiller pour une stratégie API réussie .
Alors que les API ont commencé comme un outil pour les développeurs, elles sont devenues des actifs commerciaux stratégiques qui augmentent les revenus et soutiennent l'agilité de l'entreprise. La connectivité API fait référence à l'utilisation d'API modulaires et réutilisables pour relier des données et des applications dans des environnements cloud natifs, dans le but de résoudre les problèmes de visibilité, de sécurité et de gouvernance.
NGINX propose une variété de ressources gratuites pour vous accompagner à tout moment de votre parcours API.