Nous sommes ravis de vous présenter notre tout premier billet d’invité, rédigé par Saidimu Apale, Directeur de l’Ingénierie chez Jozu. Saidimu a débuté en tant que Responsable de l’Ingénierie chez ACN, avant d’évoluer dans un rôle à temps plein chez Jozu. Chez ACN, nous nous engageons à soutenir et développer la croissance de chaque projet que nous accompagnons, les propulsant vers de nouveaux sommets. C’est avec un immense plaisir que nous avons suivi la transition de Saidimu vers un poste de Directeur via notre programme d’accompagnement des incubations. Dans ce billet de blog, Saidimu explique les concepts clés autour entourant un outil central pour Jozu : les API.
Qu’est-ce qui rend les API mystérieuses ou difficiles à comprendre? Pour les débutants, cet acronyme qui signifie Application Programming Interface (Interface de programmation d’applications), suggère beaucoup de connaissances en informatique et en programmation. Que nous apprend-il? Beaucoup de choses a priori! Mais nous pouvons faire mieux. Faisons en sorte de rendre les API « faciles à comprendre ».
Imaginez une habitude rendue aujourd’hui populaire pendant la période faste de la pandémie : faire des courses en ligne. Voici ce à quoi une session de courses en ligne peut ressembler :
- Se connecter à https://fresh-as-a-cucumber.grocer 🥒
- Se voir présenter la liste de nos commandes passées et avoir l’option de commander à nouveau
- Parcourir les produits existants et les ajouter à notre panier
- Valider et payer
- Spécifier les délais de livraison
- Recevoir ses concombres frais et commencer plutôt à cuisiner des cookies 🍪
Mystères à profusion 🧙
Que penseriez-vous si je vous disais que les API ont joué un rôle majeur pour que vous receviez vos commandes en ligne devant votre porte? Et que le moindre retard de livraison, le moindre article remplacé par des alternatives, sont aussi dus à de mystérieuses API?
Avant de continuer, établissons quelques faits :
- La liste des produits des magasins en ligne, leurs prix, et leurs disponibilités ne sont pas stockés sur votre téléphone mais plutôt sur les serveurs des magasins en ligne « sur le cloud » (services infonuagiques fournis à ces magasins)
- La liste des gens qui ont commandé sur ces magasins en ligne et la liste de leurs précédentes commandes sont aussi stockées « dans le nuage numérique »
- L’application sur votre téléphone affiche simplement ce qui est stocké sur le cloud du magasin en ligne.
Comment l’application mobile sait ce qu’il faut afficher ?
Pour que l’application mobile sache quoi demander (une liste de courses) et comment le demander, il faut s’accorder sur comment communiquer et échanger de l’information avec les ordinateurs du cloud (appelés serveurs) utilisés par le magasin. Cet accord est exactement ce qu’est une API : une Interface (une façon structurée d’échanger de l’information) pour la Programmation d’Application (API). Dans cet exemple, la spécification permettant d’afficher les produits du magasin pourrait s’appeler ListeDeProduits et proposer des options permettant de filtrer la liste en fonction des produits disponibles ou des produits que l’utilisateur a commandés précédemment.
Pour offrir une expérience complète et transparente des courses en ligne, l’application sur votre téléphone devra généralement échanger des informations avec les serveurs cloud de l’épicerie via de nombreuses API. Par exemple :
Nom de l’API | Fonctionnalités de l’API |
---|---|
ListeDeProduits | Obtenir une liste de tous les produits disponibles à la vente |
ObtenirInfoProduit | Obtenir plus de détails concernant un produit spécifique |
ObtenirCommandePrécédente | Obtenir une liste des commandes précédentes d’un client. Ceci est pratique afin de commander à nouveau cette liste, car les commandes en ligne ne varient pas trop habituellement. |
AjouterAuPanier | Ajouter un produit au panier. Cette étape vérifie aussi la disponibilité du produit. |
Valider | Valider une commande en réglant via un prestataire de paiement et spécifier une adresse pour un prestataire de livraison. |
VérifierStatutCommande | Obtenir des détails sur le statut d’une commande (en transit, livrée, etc) |
Les API en tant que conteneurs d’expédition
En fournissant une façon structurée d’échanger l’information entre différents services sans avoir besoin de connaître tous les détails de comment fonctionnent ces services, les APIs finissent par avoir un effet similaire sur les systèmes et services informatiques que les conteneurs d’expédition ont eu sur le transport mondial de marchandises. Avant que les conteneurs d’expédition soient inventés et popularisés, les marchandises expédiées se présentaient dans toutes sortes d’emballages : boîtes, sacs, barils et bien d’autres. Transporter les marchandises des bateaux vers les trains puis vers les camions était plus compliqué et coûteux à cause du manque de méthodes normalisées pour manipuler les marchandises en toute sécurité. L’invention des containers standardisés de 20 pieds (~6m) et 40 pieds (~12m) a révolutionné le transport mondial car les entreprises n’avaient plus qu’à savoir comment gérer de façon convenue : une forme, une taille et un poids de container.Les interfaces structurées (manières d’échanger l’information) au cœur des API permettent, à un grand nombre de systèmes informatiques et de services de communiquer entre eux afin de fournir de meilleurs, et souvent moins chers, services aux clients. Les fournisseurs de services n’ont plus besoin de comprendre toute la complexité, par exemple, des systèmes de paiement et de livraison, et peuvent se concentrer sur fournir la meilleure expérience possible à leurs clients.
Les API en tant que réseau d’interconnexions
En connectant de nombreux fournisseurs de services : prestataires de paiement comme VISA et MasterCard, prestataires de livraison comme UPS et Fedex, et prestataires de produits comme les inventaires de magasins en ligne, les APIs publiques sont des réseaux d’interconnexions qui permettent des interactions complexes entre de multiples services délivrés de manière simple et transparente.
Les API en tant que pièces de Lego
Structurer et créer des services, par exemple, ListeDeProduits, en tant que petites pièces de Lego permet à ces mêmes pièces d’être mélangées, assemblées et réutilisées pour créer de nouveaux services sans avoir besoin de réinventer la roue à chaque étape du processus. Les prestataires de paiement, comme Stripe, fournissent des façons standardisées de réaliser des paiements qui peuvent être regroupés dans de nombreux produits différents sans avoir à réinventer le paiement pour chacun de ces services.
Les API en tant que réservoir caché de valeur ajoutée
Tout comme l’observation du volume et des modèles de trafic maritime mondial peut fournir des informations incroyables sur l’économie mondiale, l’observation des volumes et des modèles des échanges d’information entre des services variés peut fournir des informations précieuses sur la santé d’une entreprise. Une analyse approfondie de ces canaux d’échange d’information peut aider à diagnostiquer des points d’attention pour les entreprises, entre autre : une baisse de demande pour un produit, d’éventuels obstacles pour l’accès client à un service.

Jozu : fournir des informations cachées sur les entreprises
De plus en plus, la valeur des applications provient des interactions entre les machines (l’internet des objets (IOT), organisation moderne de la fabrication, et les IA comme ChatGPT) les interactions d’API deviennent de plus en plus cruciales. Il y a vingt ans, les fournisseurs de solutions d’automatisation du marketing ont révolutionné les applications B2C en permettant aux vendeurs de voir les détails de la façon dont nous, en tant que client, nous comportions avec les boutiques en ligne – ce que nous cherchions, ce que nous achetions, et ce dont nous nous débarrassions. Aujourd’hui, ces mêmes informations se produisent au niveau de la couche d’API dans la manière dont les systèmes interagissent autant, voire plus, que l’interaction en directe avec le client. Il est essentiel pour les entreprises d’avoir un accès détaillé aux données d’observation commerciale issues des APIs si elles veulent répondre aux demandes de plus en plus complexes des clients et des partenaires d’aujourd’hui. Jozu va répondre à ce besoin en fournissant une plateforme d’enrichissement et de croissance des données destinée aux chefs de produit et aux responsables d’entreprise dont les applications reposent sur des interactions API cruciales pour l’entreprise.