Créer son premier service REST

Ce petit tutoriel vous permet de comprendre comment fonctionne un service REST. Nous allons voir comment définir un service REST simple, permettant de récupérer un fichier disponible sur internet et de l’envoyer en pièce jointe d’un email.

Tutoriel : Récupérer un fichier sur le web

Étape 1 : Créer l’opération de récupération de fichier

1. Création du service

Supposons que vous vouliez récupérer un fichier situé ici : https://www.lerobert.com/sites/default/files/common/CGU.pdf

  1. Rendez-vous sur votre espace Design et cliquez sur l’onglet « Services »
  2. Il faut tout d’abord créer un service de type REST, sans authentification, avec comme « path » le chemin vers votre fichier : « https://www.lerobert.com/sites/default/files/common/ »
  3. Pour ce faire, cliquez sur Créer un nouveau service en haut à droite dans la page de configuration des services, puis sélectionnez le type de service : REST.
  4. Nommez votre service « Récupérer un fichier pdf« , ajouter une description puis remplissez le champs base de l’URL avec le chemin vers votre fichier : https://www.lerobert.com/sites/default/files/common/
  5. Type d’authentification : aucun
  6. Cliquez sur ok, vous serez redirigé vers la fenêtre de configuration des opérations de services.

2. Création des opérations associées

Une fois votre service crée, vous allez lui affecter un ensemble d’opération.

Sur la fenêtre de Création opération, complétez les champs comme suit :

  1. Nommez votre opération « Télécharger les CGU »
  2. Une fois votre opération nommée,, cliquez sur l’onglet en dessous Configuration du path et remplissez le champs :
  3. path HTTP (1) avec la fin de votre URL. Dans notre exemple ce serait « CGU.pdf ».
  4. Le champ Adresse se met à jour et doit afficher le chemin complet jusqu’à votre fichier : https://www.lerobert.com/sites/default/files/common/CGU.pdf.
À quoi sert le type (MINE) réponse ?

Pour être correct, il vous faudrait modifier aussi la valeur du champs Type (MIME) de la réponse.

Par défaut, le type application/json est sélectionné, ce qui représente une donnée textuelle. Vu que votre réponse sera un fichier, il faut sélectionner le type application/octet-stream, qui représente les fichiers sur internet. Cependant, votre opération va tout de même fonctionner si vous laissez la valeur par défaut.

Si vous avez rempli le champs base de l’URL du service avec le chemin complet vers votre fichier, il vous faut laisser le champs path HTTP vide dans votre opération. Ce qui est important, c’est que le label Adresse comporte bien le chemin exact vers votre fichier, en mettant bout à bout les chemin définis dans le service et dans l’opération.

4. Cliquez sur Tester l’opération. Une fenêtre intermédiaire vous informe du format dans lequel sera affiché le formulaire. N’en tenez pas compte pour le moment. Validez cette fenêtre, vous verrez alors apparaître dans l’encart de résultat en dessous, un bouton vous permettant de voir et télécharger votre fichier.

5. Votre opération est maintenant fonctionnelle.

6. Il ne vous reste plus qu’as préciser à Iterop que vous voulez mettre votre fichier dans une variable lors de l’exécution d’un processus faisant appel à votre nouvelle opération.

Dans le volet Configuration des données de sortie en bas à droite de la fenêtre, sélectionnez Type de transformation : Fichier et cliquez sur Configurer une nouvelle variable.

Vous pouvez augmenter la taille du volet droit de votre fenêtre en cliquant sur le bouton (1)

7. Nommer votre variable mes CGU) et cliquez sur ok.

Étape 2 : Utiliser cette opération dans un processus


Vous avez désormais créer un service REST. Il faut maintenant l’appeler dans l’un de vos processus.

1.Intégrer le service dans le dessin du processus

Supposons que vous vouliez envoyer ce fichier par mail. Il vous faudra alors faire un appel à l’opération que vous venez de créer dans votre processus avant votre envoi de mail. Dans le design de votre processus, voici l’enchaînement des deux tâches de services que vous devez concevoir.

2.Configurer le processus

  1. Choisissez un processus et dans la configuration de votre première tâche « Récupération des CGU », choisissez l’opération que vous venez de créer. Vu que votre opération n’a pas de paramètres, vous n’avez rien de plus à configurer pour cette tâche.
  2. Sélectionnez la deuxième tâche de service, et choisissez l’opération d’envoi de mail. Ouvrez alors la fenêtre de configuration des Données d’entrées du service.
  3. Vous n’avez alors qu’à glisser déposer la variable « CGU » 6️⃣ dans la partie pièce jointe de votre mail 7️⃣.
  4. Configurez le reste de votre mail (destinataire, objet, corps de mail…), puis validez.

Cette sous partie de processus va alors, à l’exécution, envoyer automatiquement votre fichier.

Pour aller plus loin


Récupérer un autre fichier au même endroit que le premier

La configuration d’un service est commune à l’ensemble des opérations qui sont définies pour celui-ci. Ainsi, si vous aviez un autre fichier situé au même endroit que le premier, par exemple https://www.lerobert.com/sites/default/files/common/monLogo.jpg, vous n’auriez qu’à dupliquer votre opération, et juste à modifier le chemin Path HTTP en « monLogo.jpg » pour avoir une opération récupérant cet autre fichier.

Récupérer un fichier de façon dynamique

Supposons maintenant que vous ayez une collection de fichier tous présents à cette même localisation. Vous n’allez pas créer une opération pour chaque fichier, mais plutôt dans la configuration de votre opération laisser le champs Path HTTP éditable lors du design en activant le switch à la droite du champs 1️⃣. Cela va alors ajouter une variable d’entrée à votre opération.

Vous pourrez, dans votre processus, créer une variable Nom du fichier que vous déposerez dans la configuration de cette opération dans le champs Path HTTP. L’image récupérer par l’opération sera alors différente en fonction de la valeur de cette variable à l’exécution du processus.

Updated on 18 avril 2019

Was this article helpful?

Related Articles

Need Support?
Can't find the answer you're looking for?
Contact Support