Outils de développement
Avetis Grigoryan
Développeur principal
28 décembre 2022
Une plateforme low-code mêlant la simplicité du no-code à la puissance du full-code 🚀
Commence gratuitement
28 décembre 2022
-
10
min lire

Création et mise à jour d'un enregistrement dans un tableau Airtable à l'aide de Latenode

Avetis Grigoryan
Développeur principal
Table des matières

Introduction

Mettons en place un script qui permet d'utiliser "Latenode" pour créer et mettre à jour un enregistrement dans la table de la base de données " Airtable " ;

Préparation de la table d'aération

Va sur le site web"Airtable" ;

Les liens vers tous les sites se trouvent au bas de l'article ;

Si tu avais déjà des tableaux, retourne à la page d'accueil, crée-en un nouveau en utilisant le bouton "Recommencer à zéro" et sélectionne "Kanban" ;

Après la création, sélectionne la colonne "Priorité" dans le menu du bas, et vérifie que "Statut" et "Assigné" ont également été sélectionnés ;

Si tu viens de t'inscrire, sélectionne "Tâches" à l'étape intitulée "Maintenant, nous allons ajouter quelques infos" pour créer un tableau Kanban préconstruit avec les trois tâches déjà ajoutées ;

Ajouter un jeton personnel

Allons sur le lien"Airtable créer un jeton personnel" ;

Clique sur le bouton "Créer un nouveau jeton" dans le coin supérieur droit ;

Saisis le nom de ton choix, par exemple "AirtableLatenode" ;

Dans "Scope", ajoute les éléments suivants : data.records:read data.records:write schema.bases:read;

Sous "Permissions", sélectionne l'"espace de travail" souhaité auquel tu veux accorder l'accès pour le gérer à l'aide de l'"API" ;

Clique sur "Créer un jeton" ;

Sauvegarde le jeton obtenu, par exemple pendant un certain temps dans un bloc-notes ;

Créer un projet dans Latenode

Va voir notre liste de projets en "Latenode" ;

Créons un nouveau projet ;

Crée ensuite le premier nœud "Webhook" ;

Copie son adresse dans ton client de repos ou ton bloc-notes ;

Sauvegarde le nœud ;

Crée un nœud "JavaScript" (JS) et copie-y le code de l'article ;

Code pour le nœud JS

let apiURI, personalToken, newTask, recordID;
	apiURI = "https://api.airtable.com/v0";
	personalToken = "Bearer [Insert your personal token in place of these square brackets]";
	newTask = {
		name: , // After the colon and before the comma, select the name field from the received query
		status: , // After the colon and before the comma, select the status field from the resulting query
		priority: , // After the colon and before the comma, select the priority field from the resulting query
	};
	if () { // Inside the parentheses, select the recordID field from the resulting query
		recordID = ; // After the equal sign and before the semicolon, select the recordID field from the received query
	} else {
		recordID = false;
	}
	
return {
	apiURI,
	personalToken,
	newTask,
	recordID,
}

Pour l'instant, sans rien changer, enregistre-le simplement ;

Commençons le projet ;

En utilisant le client rest, nous faisons une demande en insérant l'adresse du nœud webhook dans la barre d'adresse ;

Demande de client de repos


  curl --request POST --url [insère l'adresse de ton webhook dans le projet Latenode à la place de ces crochets]
  --header 'Content-Type : application/x-www-form-urlencoded'
  --header 'Accept : application/json'
  --data 'name=Envoi de données depuis Latenode!'
  --data 'priority=En cours'
  --data 'status=Medium'
  --data 'recordID='

Revenons au nœud "JS" et modifions-le ;

Vérifie que lorsque tu places le curseur de texte à l'intérieur du nœud, ces données apparaissent dans le menu latéral. Si ce n'est pas le cas, répète l'exécution et l'appel du crochet web ;

Insère les données qui ont été envoyées dans la demande aux endroits prévus à cet effet ;

Sauvegarde nos changements ;

Crée quatre nouveaux nœuds "requête HTTP" pour obtenir la liste des bases de données ;

Et dans chacune, copie le code ci-dessous et enregistre, surtout ne les mélange pas, tu peux donner à chacune un nom transparent ;

REQ01 Récupérer la liste des bases


  curl --request GET --url '[insérer la variable apiURL du nœud JS à la place de ces crochets]/meta/bases'
  --header 'Accept : application/json'
  --header 'Authorization : [Insérer le jeton personnel à la place de ces crochets]'

REQ02 Récupérer le schéma et le contenu de la base.


  curl --request GET --url '[insérer à la place de ces crochets la variable apiURL du nœud JS]/meta/bases/[l'ID de votre base issue de la requête REQ01]/tables'
  --header 'Accept : application/json'
  --header 'Authorization : [Insérer le jeton personnel]'

REQ03 Créer une nouvelle entrée dans le tableau des tâches.

curl --request POST --url '[insert the apiURL variable from the JS node in place of these square brackets]/[The ID of your database received in query REQ01]/[The ID of your table received in query REQ02]' --header 'Authorization: [Insert personal token]'
	--header 'Content-Type: application/json'
  --data '{
	    "records": [
	      {
	        "fields": {
	          "Priority": [Substitute the variable priority from the JS node],
	          "Name": [Substitute the name variable from the JS node ],
			      "Status": [Substitute the status variable from the JS node]
	        }
	      }
	    ]
	}'
  

Nous allons maintenant les ajouter un par un à la chaîne et les appeler pour mettre en place la récupération des données ;

Remplace tout ce qui est entre crochets par des données provenant de requêtes et d'autres nœuds ;

Dans chacune d'elles, tu dois ajouter le jeton personnel créé ;

Dans les endroits où il est utilisé pour accéder à des tableaux, spécifie l'index souhaité, il commence par zéro, comme ailleurs, malgré le fait que dans le menu latéral, le premier sera le numéro un ;

Dans la demande d'ajout, n'oublie pas de vérifier que POST est sélectionné comme type de méthode ;

Tu trouveras ci-dessous des captures d'écran de l'aspect final de chacun de ces nœuds après toutes les modifications ;

Après avoir appelé la requête avec l'ajout d'un enregistrement, va dans notre table Airtable et vérifie qu'il y a une nouvelle tâche avec le texte "Send data from Latenode!", sinon vérifie chaque requête individuellement, peut-être que quelque part les données n'ont pas été remplacées, qu'on a oublié de substituer un jeton ;

Supprimons cette tâche ;

À la fin de la chaîne, ajoutons un nœud "réponse au crochet Web" pour plus de commodité ;

Faisons en sorte qu'il renvoie l'identifiant du nouvel enregistrement créé ;

Démarre le projet et appelle Webhook ;

Assurons-nous que l'objet portant le numéro d'enregistrement est renvoyé en réponse à la demande ;

Revenons à notre tableau des tâches et vérifions qu'il a bien été créé ;

J'espère que cela a fonctionné pour toi aussi ;

Liens utiles :

De base :

Latenode

Latenode liste des scénarios

Airtable

Airtable сreating a personal token (Airtable Developers)

Modèles Airtable

Informations :

https://developers.google.com/gmail/api/reference/rest/v1/users.messages/send

https://developers.google.com/gmail/api/reference/rest/v1/users.messages#Message

Blogs associés

Cas d'utilisation

Soutenu par