Utiliser des API sans savoir coder grâce à Parabola

14/02/2019 – Monique

  • Outils utilisés

    Parabola, Google Sheets

  • Prix

    Gratuit (fonctionnalités limitées)

  • Difficulté

    Intemédiaire

A quoi servent les API et pourquoi sont-elles importantes ?

Aujourd’hui, on va parler API et no-code avec Parabola. Même si vous ne codez pas, ne vous inquiétez pas : grâce à Parabola, manipuler des API est accessible même pour les moins techniques d’entre nous. 

Tout d’abord, un petit rappel rapide pour comprendre à quoi servent les API. Les API (Application Programming Interface/ Interface de programmation applicative) permettent à deux systèmes informatiques totalement indépendants de se parler de façon automatique. Quand deux systèmes sont connectés par le biais d’une API, l’un des systèmes joue le rôle de serveur, c’est-à-dire qu’il fournit l’API, et l’autre joue le rôle de client. Le client connaît les données qui sont disponibles via l’API, et peut les manipuler. 

Pour s’assurer que le client est bien autorisé à consulter les données du serveur, les API recourent à un procédé technique qu’on appelle l’authentification (Authentication en anglais). Comme lorsque vous vous connectez sur un site avec un nom d’utilisateur et un mot de passe, le client doit également s’authentifier auprès du serveur à l’aide de ses identifiants pour prouver au serveur qu’il a bien le droit d’avoir accès à ses données.

Pour faire simple, on peut comparer le fonctionnement des API au fonctionnement d’un restaurant : grâce au menu, vous savez ce que vous pouvez commander, vous passez par le serveur pour faire votre sélection, le serveur transmet votre requête à la cuisine, les cuisiniers préparent votre commande, et le serveur vous la ramène. 

Si les API sont si importantes aujourd’hui, c’est notamment grâce au gain de temps qu’elles représentent. En effet, pour développer un nouveau service, pas besoin de développer toutes les fonctionnalités de A à Z : on peut reprendre les API créées par d’autres entreprises pour intégrer différents services et fonctions dans une autre application. Par exemple, de nombreux sites utilisent l’API Google Maps pour permettre aux utilisateurs de rentrer leur adresse : 

Pour mieux comprendre le fonctionnement des API, de nombreuses ressources sont disponibles en ligne comme : 

Parabola, qu'est-ce que c'est ?

Maintenant, passons à la présentation de la star d’aujourd’hui : Parabola !  

Créé en 2015 par Alex Yaseen & Michael Lang, le service sert à automatiser le traitement de vos données. Ainsi, à partir d’une source de données (ex : une API, un fichier Excel, etc…), vous allez pouvoir facilement extraire et transformer ces données, sans avoir besoin d’écrire une seule ligne de code.

A la différence d’autres outils comme Zapier ou Integromat, qui vont déplacer quelques données d’un service à un autre lorsqu’un événement déclencheur se produit, Parabola se concentre sur ce qui se passe pendant le transit, en vous permettant de créer des flux personnalisés qui reformatent, regroupent, filtrent ou enrichissent vos données pendant qu’elles se déplacent d’un service à un autre.

De plus, avec Parabola, manipuler des API qui utilisent des protocoles d’authentification plus complexes (ex : le protocole d’authentification OAuth2) est beaucoup plus simple qu’avec Zapier, ce qui permet d’aller plus beaucoup loin dans la transformation de vos données. 

Cas d'usage : extraire des données de l'API de Meetup dans un Google Sheet

Pour mieux comprendre comment manipuler une API avec Parabola, on va utiliser l’API de Meetup pour récupérer tous les meetups prévus à Paris et les extraire dans un document Google Sheet. La première étape de la configuration est de trouver l’API qui correspond à son besoin et de consulter sa documentation pour voir comment elle fonctionne. Pour ce tutoriel, on va utiliser l’API Upcoming Events

Une fois qu’on a lu la documentation, on peut commencer à configurer notre flux dans Parabola. Pour commencer, il faut cliquer sur « New Flow ». La fenêtre de configuration s’affiche. Ensuite, nous devons choisir la source de données que l’on veut utiliser. Dans notre cas, c’est une API, donc on va sélectionner « API Import ».

On nous demande alors de remplir le type de requête que l’on va faire à l’API, et son endpoint (point d’accès), et le processus d’authentification que l’API utilise. Toutes ces informations dépendent de l’API utilisée.

Dans notre cas, l’API de Meetup utilise le protocole d’authentification OAuth2.

En règle générale, les API utilisent 3 types d’authentification : 

  • L’authentification basique, avec un nom d’utilisateur et un mot de passe
  • L’authentification avec une clé unique.
  • L’authentification OAuth2. 
parabola

Dans notre scénario, Parabola est le client et L’API Meetup  le serveur. Pour permettre au client de s’identifier, il doit accéder à une URL spécifique, qui contient notre « client ID », et une URL de redirection. La documentation de l’API nous explique exactement comment cette URL doit être structurée, et où l’on doit trouver les informations demandées. Une fois qu’on les a trouvées, nous allons les renseigner dans l’onglet « Authorization » de Parabola.

La deuxième étape est de demander un token d’accès (token access). Il va permettre à notre client (Parabola) d’avoir accès aux données de notre serveur (l’API Meetup). Ce token a une durée de validité limitée. Encore une fois, on va compléter l’onglet « Access Token » avec les informations fournies dans la documentation de l’API.

Enfin, la dernière étape est de paramétrer le token de rafraîchissement (Refresh access token). Ce token de rafraîchissement permet au client d’obtenir un nouveau token d’accès une fois que celui-ci a expiré.

Maintenant que c’est fait, on peut transformer nos données. Parabola offre un nombre d’options de transformation impressionnant : on peut enrichir nos données avec une autre API, ajouter/supprimer des colonnes, ou même faire de l’opinion mining avec l’API de Machine Learning de Google (déterminer si un texte exprime une opinion positive ou négative).

Ce qui nous intéresse aujourd’hui, c’est de récupérer les adresses des événements dans une seule colonne. En effet, ces informations sont contenues dans une seule colonne par défaut parce qu’elles correspondent à un seul objet JSON dans notre API. (💡 le JSON est un format de stockage de données utilisé par de nombreuses API)

Heureusement pour nous, Parabola a une option qui permet de récupérer les valeurs individuelles d’un objet, le JSON Flattener. Pour l’utiliser, il faut le sélectionner dans l’onglet « Transformations » et faire un drag & drop et pour le relier à notre source (API Import).

Ensuite, il faut sélectionner la colonne que l’on veut transformer, et Parabola fait le reste ! 

Pour finir, choisissons où est ce que l’on va  envoyer ces données à l’aide de l’onglet « Destinations ». Nous allons les exporter dans un Google Sheet, mais on aurait pu les exporter dans une autre API ou dans un dossier Dropbox par exemple. 

Il ne reste plus qu’à programmer  à quelle fréquence les données seront exportés dans notre document. 

Voilà, on a fini ! 🎉 Le flux que l’on a configuré aujourd’hui est assez basique et nous a juste permis de découvrir le fonctionnement de Parabola, mais si vous voulez concevoir des flux plus complexes,  vous pouvez vous inspirer des exemples disponibles sur le site de Parabola pour vous inspirer.

Abonnez-vous pour être prévenu quand j’écrirai un nouvel article 🙂 

Laisser un commentaire

©  2019 | Monique Bayama