Échange d’informations à travers l’API Rest

le 02/12/2019 par Julien LAPERRE

Julien, Manager et Consultant technico-fonctionnel nous explique le fonctionnement de l’API REST et l’illustre à travers un cas concret au sein de notre entreprise.

La gestion des flux inter-applicatifs est l’une des problématiques récurrentes lors de la mise en place d’une application métier.

Dans le cadre de l’implémentation de leur PLM, un de nos clients nous a sollicité afin de récupérer automatiquement les images présentes dans leur outil de gestion des ressources numériques (DAM). Jusqu’ici, cette tâche représentait un travail long et fastidieux pour l’utilisateur.

La complexité du sujet a été de trouver la solution technique pouvant répondre en même temps à nos contraintes de sécurité, à la facilité d’implémentation et à une utilisation réactive. C’est dans ce cadre que nous avons utilisé les API REST proposées par les deux applications (PLM et DAM), afin d’importer les images produits dans le PLM.

Cette intégration fut une réussite et un facteur clé dans l’appropriation de l’outil par nos clients.

 

Qu’est-ce qu’une API REST ?

Une API ou « Application Programming Interface » est une solution informatique permettant à des applications de s’échanger mutuellement des services ou des données.

Utiliser une API REST consiste à interroger un serveur tiers en utilisant les mêmes méthodes que celles utilisées pour l’affichage d’une page web.

 

L’API REST fonctionne suivant le principe client-serveur :

• Le client va envoyer une requête au serveur. Cette requête contiendra le plus d’informations possible concernant la demande
•  Le serveur me renvoie l’information demandée dans le format souhaité

Le client peut par exemple envoyer une requête demandant la liste des produits présents dans le PLM. L’API du PLM va, en retour, envoyer une réponse (le plus couramment au format JSON) contentant la liste et les informations produit.

 

Comment fonctionne l’API REST ?

Pour utiliser une API Rest, nous devons connaître les notions de ressources et de méthodes :

1.      Les ressources

Une ressource est un objet auquel l’utilisateur de l’API va pouvoir accéder. Dans le cas du PLM nous allons retrouver des ressources telles que le product, supplier, material, bom… Nous allons donc utiliser les ressources des API afin de spécifier ce que l’on cherche dans l’application.

Voici quelques exemples de construction d’URL qui nous permettent de mieux comprendre son fonctionnement :

•  Pour rechercher la liste des produits, voici l’URL : https://myplm/api/product

•  Si l’on souhaite rechercher un produit particulier, on peut ajouter l’ID : https://myplm /api/product/3445

 

On peut également imbriquer les données afin de récupérer des ressources associées.

•  Si l’on recherche les images associées à ce produit, on ajoute encore une donnée après l’ID : https://myplm /api/product/3445/Images

 

2.      Les méthodes utilisées

Les méthodes vont nous permettre de spécifier le type d’opération à effectuer. Elle sera différente en fonction des informations que l’on souhaite récupérer, ajouter, modifier ou supprimer.

En API Rest, nous utilisons principalement les quatre méthodes ci-dessous :

•   La méthode GET est la plus utilisée, elle permet de récupérer l’information d’une ressource

•   La méthode POST permet d’envoyer, de mettre à jour ou d’insérer une ressource

•   La méthode PUT permet de mettre à jour une ressource

•   La méthode DELETE permet de supprimer une ressource

 

Comment fonctionne l’interface entre le PLM et le DAM ?

Le cahier des charges de ce projet était de récupérer les images présentes dans le DAM et les intégrer dans le PLM.

L’enjeu était double :

•   Faciliter le travail des utilisateurs en les allégeant d’une opération chronophage et fastidieuse

•   Consolider l’information média en ayant une seule source de données

 

Pour réaliser l’interface, nous avons utilisé les API respectives des deux applications :

•   L’API du DAM qui nous permet de récupérer les URL des images produit

•   L’API du PLM qui nous permet d’insérer les images dans le File Vault et d’affecter ces images au produit.

 

Le schéma ci-dessous illustre le fonctionnement et la connexion entre les différentes interfaces.

le 02/12/2019 par Julien LAPERRE