Chaque jour dans notre environnement professionnel ou personnel, nous utilisons des dizaines voire des centaines d’API sans le savoir. Que tu souhaites intégrer une carte de navigation sur ton site ou voir des informations personnalisées en fonction de ton historique de navigation, tu auras affaire à une voire plusieurs API. Alors si tu te poses des questions sur les API, tu es au bon endroit !
Le terme API est l’acronyme anglais de Application Programming Interface.
C'est une interface de programmation, permettant d’accéder à une application (ex : Google Maps) ou un service (ex : données clients). Cette définition peut en perdre plus d’un c’est pourquoi nos experts QA nous ont donné une belle analogie que tout le monde comprendra. Imagine être client dans un restaurant (dans une entreprise c’est le testeur, le Product Owner, le développeur). La première chose que tu fais après avoir pris place à table est de regarder le menu des plats disponibles (le catalogue des API disponibles dans SI). Pour commander ou être servis, les actions sont réalisées par un serveur (API). Il va être l’intermédiaire entre toi et la cuisine comme une API peut le faire lorsqu'elle est sollicitée.
L’API va avoir plusieurs fonctions dont les grandes sont :
Par exemple, 2 services ferroviaires utilisent des réseaux partagés. Néanmoins ces 2 services n’ont pas les mêmes règles de gestion. Une API va s’interposer entre les 2 pour servir de traducteur.
C’est un peu comme si lors d'un voyage, tu essaies de converser avec une personne locale qui ne parle ni le français ni une autre langue que tu connais. Il sera possible de comprendre ce qu’elle veut dire à condition que tu utilises un traducteur qui fera la passerelle entre vous 2.
Attention, 70% des API sont créées en API REST. Les API SOAP sont utilisées pour des secteurs à risques comme le système bancaire.
Interne : API qui s’utilise au sein même d’une entreprise dans un environnement sécurisé (dev, recette...). Elle n’a pas pour but d’être partagée. Elle va être assez évocatrice. Les noms des micro-services seront à l’intérieur car il n’y a pas de raison de sécuriser l’API car elle se trouve déjà dans un environnement sécurisé.
Partenaire : API qui est exposée au service BtoB comme Uber et Google Maps. Ce dernier va mettre à disposition une carte pour l’utilisation contrôlée de Uber avec une documentation pour que chaque partenaire puisse l’utiliser. Elle va avoir un degré de sécurité plus élevé. Elle va fonctionner avec un “Token” qui s’apparente à un jeton unique qui te donne le droit ou t’autorisera à réaliser diverses actions.
Public : API accessible à tout le monde. Il suffit de prendre un lien sur internet et il va fonctionner sans être sécurisé par un mot de passe ou une accréditation. Exemple, API de RandomDog.
De quoi est constituée une API ?
Une API est constituée de micro-services : ces micro-services vont faire de petits appels en fonction du contexte et de ce que tu veux récupérer.
Exemple La Fnac, sur la page d’accueil, tu n'as pas loin d’une vingtaine d’appels afin de présenter les produits. Si La Fnac propose des produits personnalisés en fonction de la navigation antérieur de l’utilisateur c’est qu’elle fait appel à un micro service qui pourrait s’appeler “recommandation” et qui est lié aux cookies sur le site.
Il en existe plus que 4 mais 90% des actions sont réalisées par ces 4 appels d’API :
Attention, un cinquième appel peut s’ajouter ; PATCH. A l’inverse de PUT qui update toute une ressource en réécrivant par-dessus pour modifier une ou plusieurs informations, PATCH va permettre de modifier qu’un ou des champs spécifiques sans updater l’ensemble de la ressource.
Exemple d’appels lors de l’utilisation d’API :
Lorsque tu souhaites utiliser l’application UBER, tu dois t’inscrire. Ton inscription va être une nouvelle ligne dans la/les bases de données via un appel POST. Suite à cette inscription, tu atterris sur une MAP, et celle-ci n’est pas codée par Uber. L’application l’affiche en faisant un appel GET avec les données de localisation. Si tu souhaites réserver un Uber, tu vas créer une nouvelle course dans la base de données “Ride” qui va créer une ligne avec l’appel POST tout en allant chercher les informations dans diverses bases de données (client/chauffeur/véhicule) via des appels GET. Enfin lorsque ta course est réalisée, le paiement va se déclencher en faisant appel au service STRIPE via son API. Lors du paiement, tu te rends compte que la carte enregistrée n’est plus la bonne. Par conséquent, tu souhaites la modifier. Cette action va être réalisée via un appel PUT.
Avant de lancer une API ou d’utiliser une API partenaire, il est important de la tester afin de :
Exemple chez Datanumia, il est primordial pour la satisfaction client de vérifier que la donnée affichée dans la partie “mes consommations” soit bonne et cohérente avec la consommation du client. Si cela n’est pas le cas, le client va exprimer son mécontentement au niveau du service client et par conséquent va augmenter le taux d’insatisfaction.
Il est impératif de faire régulièrement des tests que ce soit au cours de l’intégration / développement de l’API pour vérifier la qualité des données exposées ou lors d’évolutions pour s'assurer qu’il n’y a pas de régression et que les connectivités avec tous les systèmes sont toujours en place.
Les tests vont dépendre des API et de la complexité mais en général voici une liste non exhaustive des bases à tester :
Ces batteries de tests sur les API sont souvent réalisés par les développeurs ou les personnes en charge de la qualité connu sous le nom de QA 😉. Il n’y a pas besoin d’avoir des compétences spécifiques pour tester une API. En revanche, la moindre erreur dans la requête ou le paramétrage peut faire échouer les tests, il faut donc faire preuve de rigueur et d'attention au détail.
Au premier abord, utiliser un logiciel pour tester une API comme POSTMAN peut être impressionnant car l'interface contient des lignes de code. Mais quand l’API a une structure cohérente avec des intitulés cohérents la lecture devient accessible à tous.
Quels sont les avantages et inconvénients de faire appel à des API.
Avantages de faire appel à des API :
Les inconvénients des API : il existe peu d’inconvénients à utiliser une API ce qui explique qu'aujourd’hui, presque l’ensemble, des entreprises digitales en utilisent.
Pour conclure, les APIs sont aujourd’hui utilisées par de nombreuses entreprises pour limiter les coups de développement et permettre l’échange de données en temps réel. Alors que les APIs se généralisent il est important de connaître leurs forces et leurs faiblesses pour profiter de toutes les fonctionnalités. Tu souhaites développer tes connaissances en quality management, découvre tous nos articles sur le sujet !
Que doit-on retire de l'utilisation des API :
WeFiiT vous accompagne pour construire ensemble des produits à impact, au cœur d’une équipe engagée et passionnée.
Prendre RDV maintenant