Ressources · Intégration n8n

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

Pourquoi automatiser

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.

Connexion

Comment connecter Supabase à n8n ?

  1. 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.co fonctionne, la version qui se termine par le chemin non.

  2. 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_role continue de fonctionner, mais Supabase retire les clés historiques et les coupe fin 2026.

  3. 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 }}.

Actions

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.

Matrice ressources × opérations
RessourceCreateGetGet ManyUpdateDelete
Row✓✓✓✓✓

Row

5 opérations
01

Create a row

row.create

Ce 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.
Cas d’usage
une demande de démo atterrit dans la table des leads.
02

Delete a row

row.delete

Ce 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.
Cas d’usage
nettoyer les lignes qu’un workflow de recette a laissées, ou retirer un contact quand la durée de conservation fixée par ton équipe est écoulée.
03

Get a row

row.get

Ce 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.
Cas d’usage
lire le forfait d’un compte avant de choisir l’email à envoyer, ou sortir une commande pour contrôler son état.
04

Get many rows

row.getAll

Ce 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.desc par 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.
Cas d’usage
le récap des lignes créées pendant le week-end.
05

Update a row

row.update

Ce 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.
Cas d’usage
basculer le statut d’un abonnement après un paiement, ou réinjecter le score produit par une étape d’enrichissement.
Besoin d'aide

Besoin d'aide pour automatiser Supabase avec n8n ?

L'équipe te répond directement.

Chaque message est lu par une personne.

FAQ

Supabase et n8n, les questions qui viennent ensuite

01L’intégration Supabase n8n est-elle gratuite ?
Le nœud ne coûte rien. Il est livré avec n8n, donc aucune installation et aucun surcoût côté n8n, que le workflow tourne sur n8n Cloud ou sur une instance auto-hébergée en Community Edition, sous licence Sustainable Use. Le workflow se comporte de la même façon des deux côtés. Le credential est gratuit lui aussi : un Host, une Secret Key, enregistrés une fois et réutilisés par tous les workflows qui touchent à la table. Ce que coûte le projet Supabase en lui-même relève de Supabase et se regarde à part.
02Quels credentials faut-il pour connecter Supabase à n8n ?
Un seul credential, authentifié par clé API. Deux champs à remplir. Host correspond au Project URL, visible dans Integrations, Data API du dashboard Supabase, collé sans le chemin /rest/v1 à la fin. Secret Key se crée ou se révèle dans Project Settings, API Keys. La Data API doit être activée sur le projet, sinon rien ne répond. Un credential qui contient encore un ancien secret service_role continue de fonctionner, mais Supabase retire progressivement les clés historiques et les désactive fin 2026 : mieux vaut planifier le remplacement avant de voir un workflow tomber.
03Quelles sont les limites du nœud Supabase dans n8n ?
Il gère des lignes, et rien d’autre : une ressource et 5 opérations, créer, lire, lire en masse, mettre à jour, supprimer. Tout le reste de l’API Supabase sort du nœud, et le nœud HTTP Request le couvre en appelant l’endpoint directement, avec le même credential via l’authentification prédéfinie. Côté lecture, Get many rows s’arrête à Limit tant que Return All n’est pas coché, et avec Return All ou un Limit de 1000 et plus, le champ Order By évite les lignes en double ou manquantes. Row Level Security décide aussi de ce que l’API renvoie : un résultat vide ne veut pas dire une table vide.
04Comment déclencher un workflow n8n depuis Supabase ?
Pas depuis la base elle-même : n8n n’a pas de nœud trigger Supabase, le workflow démarre donc toujours ailleurs. Trois chemins couvrent le terrain. Un Schedule Trigger tourne à intervalle fixe et Get many rows lit ce qui est nouveau, filtré sur la colonne qui marque les lignes fraîches. Un Webhook fournit une URL n8n qu’un service extérieur appelle, et le workflow écrit la ligne au moment de l’appel. Ou le trigger d’un autre outil ouvre le workflow, un formulaire, un paiement, un message, et Supabase devient la destination plutôt que le point de départ.
05n8n ou Make pour Supabase ?
Quatre critères tranchent. L’hébergement : n8n tourne sur ton serveur ou sur n8n Cloud, Make est hébergé uniquement. La maîtrise des données suit, puisqu’une instance auto-hébergée garde les lignes et les clés de ton côté. Le modèle de coût : Make facture à l’opération, ce qui change la façon de concevoir un workflow qui boucle sur une table. La logique visuelle : les deux dessinent le flux sur un canvas, et le confort dépend de la part d’expressions que tu acceptes d’écrire. Pour un projet dont les données vivent déjà dans Supabase, la question de l’hébergement pèse en général le plus lourd.