High tech

Qu’est-ce qu’une API et pourquoi les utiliser ?

Qu'est-ce qu'une API et pourquoi les utiliser ? 1

Vous a-t-on déjà demandé: “Ne pouvez-vous pas simplement utiliser une API?”. Se pose alors la question “Qu’est-ce qu’une API? ?” Peut-être que vous avez commencé par taper dans Google « API » et vous êtes trouvé rapidement noyé dans des acronymes ou un jargon incompréhensible. Cet article vous aidera à comprendre ce que sont les API sans utiliser de jargon technique. Cet article s’adresse aux analystes commerciaux, aux cadres, aux spécialistes des ressources humaines et à tous ceux qui n’ont aucune expérience en programmation informatique, mais qui ont un besoin croissant d’interagir et de comprendre le monde croissant des API.

Quel problème les API résolvent-elles?

Au fur et à mesure que les programmes informatiques se développent et sont utilisés par tout le monde quotidiennement autant dans la sphère personnelle que professionnelle, nous nous attendons de plus en plus à ce que les personnes qui n’ont jamais suivi de formation en programmation informatique aient une connaissance même basique de ces logiciels. Des commerciaux aux représentants des ressources humaines, tous sont appelés à prendre des décisions « basées sur les données »; par ailleurs, de plus en plus de données d’entreprise sont hébergées « dans le cloud » par des logiciels de gestion de la relation client (CRM) tels que Salesforce, Oracle ou Sage.

Les données commerciales qui auraient pu autrefois être hébergées dans une base de données interne (ou dans un tableur Excel) sont envoyées à ces tiers de confiance et accessibles via des interfaces Web souvent pas évidentes à utiliser. Les API sont conçues pour tenter de libérer les données de ces interfaces Webe et les rendres plus accessibles, mais toujours de manière sécurisée.

De nos jours, les éditeurs de logiciels CRM semblent tous promettre qu’ils disposent d’une « API facile à utiliser » et que leurs clients peuvent utiliser cette API pour récupérer et traiter les données collectées par le CRM. Malheureusement, alors que beaucoup de ces API sont vraiment « faciles à utiliser » pour les ingénieurs en logiciel (il convient de noter que certaines restent très complexes à utiliser même pour des ingénieurs chevronnés), elles sont souvent inutilisables par quiconque en dehors du département informatique ; parfois à cause d’un manque de connaissances en programmation et parfois pour des raisons administratives ou bureaucratiques au sein de l’entreprise. Quelle que soit la raison, c’est un obstacle majeur pour ceux qui ont le plus besoin de ces données, telles que les équipes d’analyse de données.

C’est un si grand problème que de nombreuses organisations passent par un service tiers comme Tableau pour récupérer les données de leur CRM afin de les interpréter efficacement et ainsi répondre à des besoins commerciaux liés notamment aux données de leurs clients. Le fait que les entreprises soient obligées de payer à la fois un CRM pour conserver leurs données et un tiers pour les consulter soulève la question de la «facilité d’utilisation» de ces API. Dans de nombreux cas, le parcours du combattant que doivent suivre les données depuis le CRM jusqu’à la plate-forme d’analyse de données en ligne complique encore davantage l’utilisation de ces données, ce qui, paradoxalement, rend encore plus difficile la prise de décisions relative à ces données. Les personnes qui ont le plus besoin de données précises ne peuvent y accéder en raison de ce réseau complexe de transmission de données.

Qu'est-ce qu'une API et pourquoi les utiliser ? 2

Photo by James Harrison on Unsplash

Qu’est-ce qu’une API?

Une interface de programmation d’application (API), est un terme obscur qui peut faire référence à plusieurs choses différentes selon le contexte. Wikipedia donne une définition large: “En informatique, une interface de programmation d’application ou interface de programmation applicative (souvent désignée par le terme API pour Application Programming Interface) est un ensemble normalisé de classes, de méthodes, de fonctions et de constantes qui sert de façade par laquelle un logiciel offre des services à d’autres logiciels. Elle est offerte par une bibliothèque logicielle ou un service web, le plus souvent accompagnée d’une description qui spécifie comment des programmes consommateurs peuvent se servir des fonctionnalités du programme fournisseur.

En général, les API définissent les règles que les programmeurs doivent suivre pour interagir avec un langage de programmation, une bibliothèque de logiciels ou tout autre outil auquel ils souhaitent se connecter. Dernièrement, cependant, le terme API semble être utilisé le plus souvent pour décrire un type particulier d’interface Web. Ces API Web sont un ensemble de règles d’interaction avec un serveur Web (tel qu’un serveur Salesforce), le cas d’utilisation le plus courant étant la récupération de données.

Les API fournissent des mécanismes permettant aux clients de ces logiciels d’accéder et de manipuler les données stockées par le fournisseur d’API (Salesforce dans cet exemple). L’utilisateur fait une «demande» à un serveur Web Salesforce, ce serveur Web accède à une base de données Salesforce (avec les données clients) et la renvoie au demandeur dans une « réponse ». Ce même cycle de demande / réponse est utilisé lorsque vous accédez à des pages Web dans votre navigateur. La principale différence entre une demande faite via une API et une demande de page Web réside dans le type de données fournies dans la réponse. Un site Web renvoie du contenu HTML, du CSS et du JavaScript qui sont interprétées par votre navigateur (Chrome, Firefox, Internet Explorer…) pour afficher une page Web.

Les API répondent avec des données au format brut, qui ne sont pas destinées à être interprétées par un navigateur pour afficher un contenu visuel. JSON et XML sont les formats les plus couramment utilisés pour ces données brutes, et ce sont tous deux des formats de texte flexibles pour stocker des données. Presque tous les langages de programmation ont des bibliothèques qui peuvent comprendre ces langages que sont le JSON et l’XML, ce qui en fait des choix classiques pour les développeurs, même si la plupart des API modernes préfèrent JSON au XML.

Étant donné qu’une API Web utilise une requête HTTP, vous pouvez interroger une API directement dans votre navigateur. Melo dispose par exemple d’une API immobilier qui fournit les « données immobilières », comme les annonces immobilières de plus de 900 sources différentes, mais aussi des données relatives à la rentabilité locative ou au rendement locatif par ville. Ce type d’API ou de moteur immobilier peut vous permettre de trouver par exemple un immeuble de rapport à la vente et qui soit intéressant en tant qu’investissement immobilier. Essayez d’ouvrir ce lien dans un nouvel onglet: https://www.melo.io/api/. Vous verrez un exemple de texte formaté : il s’agit de la façon dont un objet JSON est écrit, qui correspond à la version brute des informations que vous pouvez voir sur leur moteur immobilier.

Qu'est-ce qu'une API et pourquoi les utiliser ? 3

Photo by Danial Igdery on Unsplash

Pourquoi utiliser des API?

Pour Melo, la disponibilité des données immobilières a permis à des développeurs tiers de créer des applications autour de ces données qui les affichent mais avec une présentation qu’ils personnalisent à leur goût. De nombreuses autres API sont conçues avec l’intention de permettre aux développeurs tiers de créer des applications nouvelles en utilisant les données de l’entreprise. Spotify présente même certaines de ces applications sur son site. Autre exemple, un chef de produit peut demander à un ingénieur informatique de « créer un outil qui consomme l’API de Salesforce et enregistre les données dans sa propre base de données ». Certaines API sont conçues pour étendre la portée de l’entreprise en mettant leurs données à la disposition de développeurs et en leur permettant de créer des produits et ainsi inciter de nouveaux clients à utiliser leur application initiale.

Par exemple, Spotify a présenté « l’ explorateur d’artistes » dans l’espoir que les utilisateurs trouveront de nouveaux artistes, créeront de nouvelles playlists, et donc continueront (ou commenceront) à utiliser Spotify. D’autres API, comme l’API de Salesforce, font partie d’un plan vendu aux entreprises. Celles-ci paient les services Salesforce et voient l’existence d’une API comme une valeur ajoutée, car elles peuvent demander à leur propre équipe technique de créer des intégrations qui font deux choses: envoyer directement les données de leurs logiciels internes à Salesforce, en mettant à jour les données « dans le cloud » et d’autre part extraire les données « du cloud » vers leurs logiciels internes (comme un système de reporting ou une base de données interne).

Étant donné que les API fournissent simplement des données, il n’y a aucune limite sur la façon dont une entreprise peut ensuite continuer à les utiliser. En outre, ces programmes peuvent être automatisés pour s’exécuter selon un calendrier, ce qui réduit la nécessité pour quelqu’un d’accomplir des tâches répétitives et peu intéressantes comme l’exportation manuelle des données. Au fur et à mesure que les entreprises se développent, beaucoup constatent que le coût initial de la création d’une telle intégration peut faire gagner du temps aux employés et leur éviter d’avoir à interagir régulièrement avec une interface Web complexe et parfois frustrante. Un autre avantage des API Web est que, comme elles sont construites autour du protocole HTTP, presque tous les langages de programmation peuvent être utilisés pour y accéder. Python, R, Java, JavaScript, Ruby et tous les autres langages de programmation ont au moins une bibliothèque HTTP pour faciliter ce processus en général. D’autres langages plus spécialisés comme SQL n’ont pas de bibliothèques HTTP.

Alors que les logiciels et plateformes web continuent de devenir omniprésents, les éditeurs de logiciels s’attendent à voir le nombre d’intégrations d’API augmenter considérablement. D’autant plus que les connaissances de base en programmation continuent d’augmenter elles aussi, les employés de nombreuses entreprises hors équipe technique peuvent trouver une certaine valeur à programmer eux-mêmes ces intégrations. Souvent, le code nécessaire à ces intégrations est relativement simple à apprendre. Avec un peu de persévérance, vous pourrez vous aussi écrire des programmes pour interroger et interagir avec les API utilisées par votre entreprise.

Tendances

Copyright © 2020 Aveyron Expension