🗃️ Utiliser Baserow via Voltask
Pour utiliser Baserow avec Voltask, il faut passer par l'API de Baserow et par le bloc httpRequest
Une API (Application Programming Interface, Interface de Programmation Applicative) est un ensemble de fonctionnalités mises à disposition d'un client / utilisateur via une bibliothèque (méthodes d'un langage de programmation) ou un service web.
Pour mettre en place l'API de Baserow, il faut tout d'abord se procurer un jeton d'accès qui permettra d'identifier qui utilise quoi (dans ce cas, le "quoi" peut désigner une seule table, toute la base de données, ou seulement certaines tables de la BDD). Pour générer ce jeton, il faut, une fois connecté sur Baserow et après avoir créé au moins une base, aller dans les paramètres du compte (en cliquant sur le nom de l'espace de travail en haut à gauche, puis dans compte). Une fois dans les paramètres du compte, il faut sélectionner "jeton d'accès à la base", et donner des droits à ce jeton (par défaut, tous les droits (lire, créer, modifier, et supprimer) sont autorisés sur l'ensemble des tables de la base sélectionnée).
Maintenant que le jeton a été créé, il y a plusieurs actions possibles : lire une ou plusieurs lignes d'une table, créer une ligne d'une table, modifier une ligne d'une table, supprimer une ligne d'une table. Les actions évoquées sont les principales mais il est aussi possible de récupérer le nom des colonnes d'une tables, et de déplacer une ligne. Plus d'informations dans la documentation de l'API : https://baserow.io/api-docs .
Pour la lire plusieurs lignes d'une table, il faut préparer le bloc httpRequest de la manière suivante :
la méthode est GET
l'URL est de la forme : https://api.baserow.io/api/database/rows/table/{{tableID}}/?user_field_names=true&size=25
Il est important de changer "{{tableID}}" par l'identifiant de la table dans laquelle la lecture se fera, ou de passer par d'autres blocs pour arriver au même résultat (dans le cas présent, la ligne est déjà prête à être utilisé dans le bloc format). Pour trouver l'identifiant d'une table, il suffit de passer la souris sur son nom, puis de cliquer sur les trois points : l'identifiant de trouve tout en haut du pop-up.
Le "&size=25" à la fin de l'URL indique que la requête renverra au maximum 25 entrées de la table
Attention : si l'identifiant de la table ne correspond pas à une table liée à un jeton d'accès, la requête échouera.
le header est de la forme : {"Authorization":"Token {{ APIkey }}"}
Il est important de changer le "{{APIkey}}" par la valeur du jeton récupéré plus tôt, ou de passer par d'autres blocs pour arriver au même résultat (dans le cas présent, la ligne est déjà prête à être utilisé dans le bloc format). La valeur du jeton s'obtient en cliquant sur les trois petits points à côté du nom du jeton.
La seule différence avec la version à plusieurs lignes, est l'URL. Dans le cas où il ne faut récupérer qu'une seule ligne, il sera la forme : https://api.baserow.io/api/database/rows/table/{{tableID}}/{{rowNumber}}/?user_field_names=true
Encore une fois, il faudra changer le "{{tableID}}", ainsi que le {{ rowNumber }} qui correspond à l'identifiant de la ligne dans la table.
Pour la création d'une ligne dans une table, il faut préparer le bloc httpRequest de la manière suivante :
la méthode est POST
l'URL est de la forme : https://api.baserow.io/api/database/rows/table/{{tableID}}/?user_field_names=true
le header est de la forme : {"Authorization":"Token {{ APIkey }}","Content-Type":"application/json"}
le body contiendra un objet JSON ayant comme clefs le nom des colonnes de la table, et en valeurs, les valeurs à entrer dans la table.
Par exemple : dans une table ayant deux colonnes "fruits", et "legumes", l'objet JSON sera de la forme : { "fruits": "pomme", "legumes": "carotte"}
Le JSON (JavaScript Object Notation) est un format de donnée textuel utilisé pour la transmission de données. Un objet JSON est la chaîne de charactères (le texte) qui contient les données à transmettre. Ces objets sont contenus entre accolades, et associent une clef à une valeur (texte, liste, nombre, une valeur booléenne, ou un autre objet JSON), séparé par deux points (par exemple : {"fruits": ["pomme", banane"], "nombre": 2, "aime": True} )
Pour modifier une ligne dans une table, il faut préparer le bloc httpRequest de la manière suivante :
la méthode est PATCH
l'URL est de la forme : https://api.baserow.io/api/database/rows/table/{{tableID}}/{{rowNumber}}/?user_field_names=true
le header est de la forme : {"Authorization":"Token {{ APIkey }}","Content-Type":"application/json"}
le body contiendra un objet JSON ayant comme clefs le nom des colonnes de la table, et en valeurs, les valeurs à entrer dans la table.
Pour supprimer une ligne dans une table, il faut préparer le bloc httpRequest de la manière suivante :
la méthode est DELETE
l'URL est de la forme : https://api.baserow.io/api/database/rows/table/{{tableID}}/{{rowNumber}}/
le header est de la forme : {"Authorization":"Token {{ APIkey }}","Content-Type":"application/json"}
Une API (Application Programming Interface, Interface de Programmation Applicative) est un ensemble de fonctionnalités mises à disposition d'un client / utilisateur via une bibliothèque (méthodes d'un langage de programmation) ou un service web.
Clef API
Pour mettre en place l'API de Baserow, il faut tout d'abord se procurer un jeton d'accès qui permettra d'identifier qui utilise quoi (dans ce cas, le "quoi" peut désigner une seule table, toute la base de données, ou seulement certaines tables de la BDD). Pour générer ce jeton, il faut, une fois connecté sur Baserow et après avoir créé au moins une base, aller dans les paramètres du compte (en cliquant sur le nom de l'espace de travail en haut à gauche, puis dans compte). Une fois dans les paramètres du compte, il faut sélectionner "jeton d'accès à la base", et donner des droits à ce jeton (par défaut, tous les droits (lire, créer, modifier, et supprimer) sont autorisés sur l'ensemble des tables de la base sélectionnée).
Requêtes
Maintenant que le jeton a été créé, il y a plusieurs actions possibles : lire une ou plusieurs lignes d'une table, créer une ligne d'une table, modifier une ligne d'une table, supprimer une ligne d'une table. Les actions évoquées sont les principales mais il est aussi possible de récupérer le nom des colonnes d'une tables, et de déplacer une ligne. Plus d'informations dans la documentation de l'API : https://baserow.io/api-docs .
Lecture
Plusieurs lignes
Pour la lire plusieurs lignes d'une table, il faut préparer le bloc httpRequest de la manière suivante :
la méthode est GET
l'URL est de la forme : https://api.baserow.io/api/database/rows/table/{{tableID}}/?user_field_names=true&size=25
Il est important de changer "{{tableID}}" par l'identifiant de la table dans laquelle la lecture se fera, ou de passer par d'autres blocs pour arriver au même résultat (dans le cas présent, la ligne est déjà prête à être utilisé dans le bloc format). Pour trouver l'identifiant d'une table, il suffit de passer la souris sur son nom, puis de cliquer sur les trois points : l'identifiant de trouve tout en haut du pop-up.
Le "&size=25" à la fin de l'URL indique que la requête renverra au maximum 25 entrées de la table
Attention : si l'identifiant de la table ne correspond pas à une table liée à un jeton d'accès, la requête échouera.
le header est de la forme : {"Authorization":"Token {{ APIkey }}"}
Il est important de changer le "{{APIkey}}" par la valeur du jeton récupéré plus tôt, ou de passer par d'autres blocs pour arriver au même résultat (dans le cas présent, la ligne est déjà prête à être utilisé dans le bloc format). La valeur du jeton s'obtient en cliquant sur les trois petits points à côté du nom du jeton.
Ligne unique
La seule différence avec la version à plusieurs lignes, est l'URL. Dans le cas où il ne faut récupérer qu'une seule ligne, il sera la forme : https://api.baserow.io/api/database/rows/table/{{tableID}}/{{rowNumber}}/?user_field_names=true
Encore une fois, il faudra changer le "{{tableID}}", ainsi que le {{ rowNumber }} qui correspond à l'identifiant de la ligne dans la table.
Création
Pour la création d'une ligne dans une table, il faut préparer le bloc httpRequest de la manière suivante :
la méthode est POST
l'URL est de la forme : https://api.baserow.io/api/database/rows/table/{{tableID}}/?user_field_names=true
le header est de la forme : {"Authorization":"Token {{ APIkey }}","Content-Type":"application/json"}
le body contiendra un objet JSON ayant comme clefs le nom des colonnes de la table, et en valeurs, les valeurs à entrer dans la table.
Par exemple : dans une table ayant deux colonnes "fruits", et "legumes", l'objet JSON sera de la forme : { "fruits": "pomme", "legumes": "carotte"}
Le JSON (JavaScript Object Notation) est un format de donnée textuel utilisé pour la transmission de données. Un objet JSON est la chaîne de charactères (le texte) qui contient les données à transmettre. Ces objets sont contenus entre accolades, et associent une clef à une valeur (texte, liste, nombre, une valeur booléenne, ou un autre objet JSON), séparé par deux points (par exemple : {"fruits": ["pomme", banane"], "nombre": 2, "aime": True} )
Modification
Pour modifier une ligne dans une table, il faut préparer le bloc httpRequest de la manière suivante :
la méthode est PATCH
l'URL est de la forme : https://api.baserow.io/api/database/rows/table/{{tableID}}/{{rowNumber}}/?user_field_names=true
le header est de la forme : {"Authorization":"Token {{ APIkey }}","Content-Type":"application/json"}
le body contiendra un objet JSON ayant comme clefs le nom des colonnes de la table, et en valeurs, les valeurs à entrer dans la table.
Suppression
Pour supprimer une ligne dans une table, il faut préparer le bloc httpRequest de la manière suivante :
la méthode est DELETE
l'URL est de la forme : https://api.baserow.io/api/database/rows/table/{{tableID}}/{{rowNumber}}/
le header est de la forme : {"Authorization":"Token {{ APIkey }}","Content-Type":"application/json"}
Mis à jour le : 16/05/2025
Merci !