n8n-nodes-supabase-advanced
v0.1.0
Published
n8n community node for Supabase with relation selects, upsert, RPC, and typed payloads
Maintainers
Readme
n8n-nodes-supabase-advanced
Supabase Advanced is an n8n community node for Supabase with better support for relational reads than the built-in node.
It keeps the standard row CRUD flow, then adds:
- visual relation builder for PostgREST joins and nesting
- raw
selectfallback for advanced queries upsertrpc(...)function calls- custom
/rest/v1API calls - optional user JWT on top of the project API key
Features
Rowoperations:Create,Get,Get Many,Update,Delete,Create or Update- relation builder with nested relations
- manual filters for row queries
- custom schema support through
Accept-Profile/Content-Profile Functionresource for Supabase RPCCustom API Callresource for direct PostgREST access
Credentials
The node uses three credential fields:
Host- your Supabase project URL, for examplehttps://your-project.supabase.coAPI Key- sent in theapikeyheaderAccess Token / JWT- optional bearer token for user-context requests
Recommended setup for server-side automations:
Host= your project URLAPI Key= yourservice_rolekeyAccess Token / JWT= leave empty
Use Access Token / JWT only when you intentionally want requests to run as a specific signed-in user and respect that user's RLS context.
Relation Builder
For Row operations you can choose:
Select Mode=BuilderSelect Mode=Raw
The builder lets you configure:
- root columns
- relation name
- optional alias
- join type
- optional relation hint
- relation columns
- one more nested relation level
This builds standard PostgREST select clauses under the hood, for example:
id,name,profile(*),orders!inner(id,total,items(*))If you need syntax the UI does not cover yet, switch to Raw.
Installation
In n8n UI
Open Settings -> Community Nodes and install:
n8n-nodes-supabase-advancedManual install
Install the package in your custom nodes directory:
npm install n8n-nodes-supabase-advancedThen restart n8n.
Operations Overview
Row
- create rows from mapped fields or JSON payload
- fetch one or many rows
- update or delete rows by filter
- upsert rows with optional conflict target
- return related records through relation builder or raw select
Function
- call Supabase Postgres functions via
/rest/v1/rpc/<function>
Custom API Call
- send direct requests to
/rest/v1 - useful when Supabase adds a capability before the node UI supports it
Known Limitations
- relation builder does not yet auto-discover foreign key graphs
- relation names and hints may still need to be provided manually for ambiguous joins
- deeply custom PostgREST expressions are still easier in
Rawmode
Development
npm install
npm run lint
npm run build
npm run check:packagePublishing
Before publishing:
- create the GitHub repository referenced in
package.jsonif it does not exist yet - verify the package name is still available on npm
- run
npm run check - run
npm run check:package - publish with
npm publish --access public
License
MIT
