Utilisateurs illimités pour seulement 99 $/mois

Toute votre organisation à un prix fixe

Réserver une démo
Voir tous les articles

Transfert de fichiers via API

Apprenez comment téléverser des fichiers sur Pneumatic via l'API publique, les publier et les inclure en tant que pièces jointes dans les workflows.

Champs de pièce jointe

Un type de champ de données pris en charge par Pneumatic est le champ de pièce jointe. Ceux-ci attendent que l’utilisateur télécharge un fichier vers Pneumatic :

Alt

Par exemple, dans une procédure opérationnelle de rapport de bug, l’utilisateur peut être amené à télécharger une capture d’écran du bug. Naturellement, l’API de Pneumatic vous permet également de télécharger des fichiers, cependant, le processus est un peu plus ésotérique ici. Pneumatic dispose d’un processus sécurisé conforme à l’industrie pour le téléchargement et le partage de fichiers via l’API publique.

Il se compose de deux étapes principales :

  1. D’abord vous téléchargez votre fichier
  2. Puis vous le “publiez”

À l’étape deux, le système génère un lien partageable vers le fichier téléchargé et un ID de pièce jointe, que vous pouvez ensuite insérer de manière programmable dans les champs de pièce jointe de vos processus Pneumatic que vous lancez via l’API.

Côté Utilisateur

Voyons comment cela pourrait fonctionner dans Google Sheets. Nous allons utiliser notre exemple de lancement de workflows comme point de départ.

Nous allons utiliser notre modèle de rapport de bug (ID du modèle - 3026), nettoyons simplement toutes les lignes à partir de la ligne 4 et cliquons sur Obtenir Kick-off Fields

Alt

J’ai quelques png dans mon Google Drive, donc nous allons en utiliser un :

Alt

Ajoutons simplement une ligne à notre feuille de calcul pour ne pas submerger le système de faux rapports de bug :

Alt

Maintenant, si je clique sur Lancer les workflows, voici ce que j’obtiens dans Pneumatic :

Alt

Alt

Comme vous pouvez le voir, un nouveau workflow de signalement de bug a été lancé et mon fichier “BugReport3.png” a été téléchargé en tant que pièce jointe, bien que avec un nom interne un peu étrange.

Lancer plusieurs workflows depuis Google Sheets

Apprenez à utiliser l'API de Pneumatic pour lancer plusieurs workflows dans Pneumatic de manière programmée en fonction de données tabulées dans une feuille de calcul Google Sheets.

Le Code

Alors regardons sous le capot pour voir ce qu’il se passe là-dessous. J’utilise toujours la même fonction launchWorkflows avec juste un léger ajustement :

Alt

Je vérifie si la chaîne dans la troisième cellule de ma ligne se termine par “png” et si c’est le cas, j’appelle la fonction uploadFile, à laquelle je transmets le contenu de la troisième cellule de la ligne et la apiKey. Regardons maintenant la fonction elle-même :

Alt

La fonction abstrait le processus de téléchargement de pièces jointes en plusieurs étapes susmentionné. Tout d’abord, nous obtenons les données du fichier sous forme de tableau de bytes en utilisant la fonction getFileData.

Alt

Ensuite, nous déterminons le type de contenu en fonction de l’extension de fichier en utilisant la fonction getContentType :

Alt

Nous utilisons ensuite le endpoint de téléchargement de l’API de Pneumatic pour obtenir des informations sur la pièce jointe pour notre fichier. Pour générer ces informations, nous devons envoyer à Pneumatic notre nom de fichier, le type de contenu et la taille de notre fichier (que nous obtenons également dans la fonction getFileData).

Alt

AttachmentInfo est un objet qui contient des informations sur notre pièce jointe, y compris son ID. Nous utilisons cet ID dans le code ci-dessous pour télécharger effectivement le fichier, puis nous le renvoyons à la fonction appelante.

Alt

La toute dernière étape dans la fonction d’appel (launchWorkflows) consiste à enregistrer l’ID de la pièce jointe dans la valeur du champ du nouveau workflow que nous lançons à cette étape :

Alt

Pour les champs de pièce jointe, nous devons transmettre des tableaux, et naturellement, nous pouvons ajouter plusieurs pièces jointes, ce que nous ne faisons pas ici, mais l’option est là si vous en avez besoin.

Fondamentalement, si vous avez besoin de télécharger des fichiers, vous pouvez commencer par utiliser la fonction uploadFile trouvée dans cet exemple, avec les fonctions d’aide getFileData, getContentType et getExtension. De cette façon, vous n’aurez pas à vous soucier du processus en plusieurs étapes pour télécharger et publier des fichiers sur Google Cloud. La fonction renverra simplement l’ID de la pièce jointe pour votre fichier que vous pourrez ensuite insérer dans vos champs d’attache.