- Accueil
- Ressources
- Intégrations
- Supabase
Intégration Supabase n8nAutomatiser Supabase avec n8n.
Une table Supabase fait une bonne mémoire pour tes automatisations. L’intégration Supabase n8n expose une ressource, Row, et 5 opérations pour créer, lire, modifier et supprimer des lignes. Pas de trigger Supabase, rien ne démarre depuis la base : le workflow part d’ailleurs, puis écrit ici.
Avis vérifiés sur Trustpilot · Agence IA, automatisation & growth
Que couvre vraiment l’intégration Supabase n8n ?
Le nœud Supabase est livré avec n8n et ne s’occupe que d’une chose : les lignes de tes tables. Il en ajoute, en lit, en met à jour et en supprime via la Data API de Supabase, avec un credential, c’est-à-dire un accès enregistré une fois dans n8n puis réutilisé partout. Une ressource, Row, 5 opérations, et un sélecteur qui charge la liste des tables directement depuis le projet.
Des demandes de devis qui arrivent déjà rangées. Le nœud Webhook, une URL n8n qu’un service extérieur appelle, reçoit le formulaire, et Create a row écrit la ligne avec la source, la date et le message. Le tableur partagé que trois personnes modifient en même temps sort du process.
Un stock qui reste juste sans intervention. À chaque commande, Update a row réécrit la quantité de la référence concernée, et Delete a row retire les lignes de test qu’un workflow de recette a laissées derrière lui. La table reste propre sans passage manuel.
Le récap du lundi matin, prêt avant le café. Un Schedule Trigger se déclenche à heure fixe, Get many rows sort la table avec Return All activé, les lignes atterrissent dans Google Sheets et le total part sur Slack pour ceux qui n’ouvriront jamais le tableur.
Le nœud s’arrête aux lignes. Pour le reste de l’API Supabase, l’interface par laquelle un programme parle au service, le nœud HTTP Request prend le relais : il appelle n’importe quel endpoint en réutilisant le même credential via l’authentification prédéfinie. Aucune deuxième clé à gérer.
Deux pièges reviennent souvent. Une table créée dans le schéma public avec le Table Editor a Row Level Security activé d’office : tant qu’aucune politique n’existe, l’API ne renvoie rien à la clé publique anon, et des lignes qui répondent très bien par le nœud Postgres restent invisibles ici. Pour filtrer sur les métadonnées, il faut passer Select Type sur String et écrire la condition dans Filters (String), par exemple metadata->>age=gte.21.
Encore en train d’arbitrer entre plateformes ? L’Avis n8n passe l’outil en revue, et la Formation n8n est l’autre porte d’entrée pour construire ces workflows toi-même.
Comment connecter Supabase à n8n ?
- 01
Activer la Data API et récupérer l’URL du projet
Dans le dashboard Supabase, ouvre le projet à automatiser, puis va dans Integrations, Data API. Le credential passe par cette Data API : si elle n’est pas activée, rien ne répond. Copie le Project URL et colle-le dans le champ Host de n8n sans le chemin
/rest/v1à la fin :https://your_project.supabase.cofonctionne, la version qui se termine par le chemin non. - 02
Créer une secret key
Toujours dans le dashboard, direction Project Settings, API Keys. Crée une clé ou révèle celle qui existe, puis colle-la dans Secret Key côté n8n. Le credential Supabase s’authentifie par clé API, ces deux champs suffisent. Un credential qui porte encore un ancien secret
service_rolecontinue de fonctionner, mais Supabase retire les clés historiques et les coupe fin 2026. - 03
Enregistrer le credential et choisir la table
Enregistre le credential une fois dans le menu Credentials, et chaque nœud Supabase le retrouve dans sa liste déroulante. Pose le nœud sur le canvas, sélectionne le credential, choisis l’opération : le champ Table Name or ID charge la liste des tables du projet. Si le nom de table vient d’une étape précédente, bascule le champ en expression, une valeur d’un autre nœud, par exemple
{{ $json.table }}.
Que sait faire le nœud Supabase ?
Le nœud Supabase expose 5 opérations sur 1 ressources. Pour chacune : le nœud tel que tu le configures dans n8n, les champs obligatoires, et nos notes de terrain.
Sommaire des opérations
Row
5 opérationsCreate a row
row.createCe que tu vois dans n8n
Notes & cas d'usage
Create a row ajoute une ligne dans la table choisie avec les valeurs de l’item entrant. Sa place est en bout de branche, pour une donnée qui mérite d’être gardée.
Paramètres clés
- Table Name or ID : la table de destination, prise dans la liste chargée depuis le projet, ou une expression si le nom circule dans la donnée.
- Data to Send : Auto-Map Input Data to Columns reprend les propriétés dont le nom colle aux colonnes ; Define Below for Each Column fixe chaque valeur dans Fields to Send.
- Inputs to Ignore : les propriétés à écarter, séparées par des virgules, vide, tout part.
Delete a row
row.deleteCe que tu vois dans n8n
Notes & cas d'usage
Delete a row supprime les lignes qui répondent aux conditions posées. Rien ne se sélectionne par position ni par nom, uniquement par le filtre que tu construis.
Paramètres clés
- Select Type : Build Manually ouvre Select Conditions, où chaque condition nomme une colonne et une valeur ; String attend une condition brute dans Filters (String), du type
name=eq.jhon. - Must Match : All Select Conditions ne supprime que les lignes qui valident toutes les conditions, Any Select Condition se contente d’une seule.
Get a row
row.getCe que tu vois dans n8n
Notes & cas d'usage
Get a row lit une ligne et la transmet à la suite du workflow. C’est l’étape de vérification avant une décision : tu récupères, puis tu embranches.
Paramètres clés
- Select Conditions : les conditions qui isolent la ligne, ajoutées une par une dans l’interface, cette opération ne proposant pas de mode String.
- Use Custom Schema et Schema : à laisser tels quels pour une table du schéma public par défaut, à activer pour viser un autre schéma, que Supabase doit d’abord exposer dans son API.
Get many rows
row.getAllCe que tu vois dans n8n
Notes & cas d'usage
Get many rows renvoie un ensemble de lignes plutôt qu’une seule. Exports, récapitulatifs et boucles sur une table commencent ici.
Paramètres clés
- Return All : activé, n8n enchaîne les pages de l’API et ramène toutes les lignes correspondantes ; désactivé, Limit plafonne le nombre renvoyé.
- Order By : la colonne qui trie le résultat,
created_at.descpar exemple. Le champ est recommandé avec Return All ou un Limit de 1000 et plus, pour éviter les doublons et les lignes manquantes. - Filter : None prend toute la table, Build Manually ouvre Filters, String attend Filters (String), et Must Match tranche entre All Filters et Any Filter.
Update a row
row.updateCe que tu vois dans n8n
Notes & cas d'usage
Update a row réécrit les colonnes que tu listes sur les lignes qui correspondent. La ligne garde son identité, seules les valeurs bougent.
Paramètres clés
- Data to Send : Define Below for Each Column fixe les nouvelles valeurs dans Fields to Send, Auto-Map Input Data to Columns reprend les propriétés entrantes dont le nom correspond aux colonnes.
- Select Conditions : les lignes concernées, construites condition par condition, ou écrites en chaîne dans Filters (String) une fois Select Type passé sur String.
Besoin d'aide pour automatiser Supabase avec n8n ?
L'équipe te répond directement.
Chaque message est lu par une personne.


