Plus le temps passe et plus le terme API rentre dans le langage courant du monde de la « tech » et notamment de celui de la DATA. Pourtant il n’est pas évident de savoir exactement en quoi consiste une API et de connaître son utilité. Nous espérons que cet article vous permettra d’y voir plus claire.
Qu’est ce qu’une API ?
Une API (Application Programming Interface) est une solution informatique qui permet d’interroger et d’échanger avec des systèmes informatiques dans un environnement simple et sécurisé.
Concrètement elle se situe en amont d’un système quelqu’il soit, et c’est elle que l’on va interroger lorsque que l’on veut accéder à des informations et non plus le système directement.Le client peut être aussi bien une application (site web, application mobile) que un développeur qui interroge directement l’api.
Le système source peut être une ou plusieurs bases de données comme une application, une base opérationnel (ERP, CRM) ou autre.
L’API reçoit des appels et des données des clients et fait le lien avec le(s) système(s) source(s). Techniquement parlant elles sont composées d’un ensemble de librairies et de fonctions qui permettent ces fameuses interactions.
Pourquoi utiliser des API ?
Passer par une API a plusieurs avantages :
- Elle permet de pouvoir interagir avec un système sans se soucier de sa complexité et de son fonctionnement. Il « suffit » de comprendre le fonctionnement de l’api qui a souvent l’avantage d’être plus récente, ‘user firendly’ et même souvent bien documenté (si si !) . Plus besoin de comprendre les systèmes très complexe qui se cachent derrière GOOGLE map pour utiliser son API et accéder à ses informations. On lui donne les paramètres d’entrée adéquates et elle nous renvoie les informations voulues comme une fonction.
- Une API est souvent spécialisée dans un domaine et sur un use case particulier ce qui simplifie son utilisation, sa compréhension et sa sécurisation
- Une API permet également de facilement mettre à disposition à des tiers, des fonctionnalités sans ouvrir l’accès aux systèmes sources. Il est beaucoup plus simple de sécuriser l’accès à une api qu’à tout son système interne.
Par exemple dans les systèmes de réservation d’hôtel de type « Booking.com » on utilise via le site web souvent au moins deux APIs: une pour la recherche (qui va checker la disponibilité des hôtels) et une pour la réservation et le paiement.
Dans ce cadre l’API de recherche va porter toutes les fonctions permettant d’effectuer une recherche de disponibilité des chambres par rapport à des critères comme le nombre de personnes, nombre de chambres, etc.L’API de réservation prend comme entrée le numéro de la chambre choisie, contrôle la disponibilité et effectue la réservation de la chambre en mettant à jour la base de données concernées.
Quelques exemples d’APIs
Voici quelques petits exemples d’APIs et d’usages
- GOOGlE MAP :
- Lien : https://cloud.google.com/maps-platform/?hl=fr
- Descriptif : Cette API permet d’accéder à toutes les fonctionnalités de google map (calcul de distance, temps de transports etc…). Cela peut être très utile notamment en géo-marketing.
- Twitter :
- Lien : https://developer.twitter.com/
- Descriptif : L’API search de twitter permet de récupérer les tweets par rapport à certaines critères. Très utile dans le cadre de l’analyse de sentiment ou de l’intelligence économique pour mieux cerner l’avis des utilisateurs sur certains sujets.
Les APIs dans la DATA
Comme vous l’avez sans doute compris avec les APIs on peut dissocier facilement les systèmes source de leurs accès. Dans ce cadre cela se prête très bien au model DATA, ou l’a on va mettre en place des APIs qui vont permettre d’accéder à des modèles sans impacter les systèmes opérationnels. Cela facilite grandement la maintenabilité, la mise en place d’A/B test et la sécurisation des models.
Nous espérons que cet article vous aura aider à mieux percevoir l’intérêt et le positionnement des APIs dans les architectures techniques d’aujourd’hui. Nous reviendrons rapidement sur les bonnes pratiques de mise en place des APIs dans la DATA
Article écrit par l’équipe Illustradata