Supabase Trigger
The Supabase Trigger starts your workflow whenever rows are inserted, updated, or deleted in your Supabase database, using Supabase Database Webhooks.
Database Automation: Create a Database Webhook in Supabase that points at your workflow and react to table changes in real time — no polling required.
Key Features
- Real-Time Database Events: Fires on
INSERT,UPDATE, andDELETE - Table & Schema Filtering: Optionally restrict the trigger to one table and schema
- Shared-Secret Protection: Optionally require an
x-webhook-secretheader on incoming requests - Full Row Payload: The new record (and the old record on updates/deletes) is available to downstream blocks
Configuration
| Parameter | Type | Required | Description |
|---|---|---|---|
| Table | Text | No | Only fire for this table (empty = any table) |
| Schema | Text | No | Only fire for this schema (defaults to public) |
| Events | Multi-select | No | INSERT, UPDATE, DELETE (empty = all) |
| Secret | Secret | No | If set, requests must include a matching x-webhook-secret header |
Setting up the Database Webhook in Supabase
- Add the Supabase Trigger block to your workflow and copy the Webhook URL shown in its settings (
https://<your-builder>/api/webhooks/supabase/<workflowId>). - Publish the workflow — events are only delivered to published, active workflows.
- In your Supabase project, open Database → Webhooks and click Create a new hook.
- Give the hook a name, pick the table and the events (
INSERT,UPDATE,DELETE) you want to listen to. - Choose HTTP Request as the hook type, method POST, and paste the Webhook URL.
- If you set a Secret on the trigger block, add an HTTP header named
x-webhook-secretwith the same value. - Save the hook. Supabase will now POST every matching change to your workflow.
Supabase sends payloads shaped like { "type": "INSERT", "table": "orders", "schema": "public", "record": { ... }, "old_record": null }. The trigger's table/schema/event filters are applied to this payload before your workflow starts.
Output
Downstream blocks can reference the trigger's output:
| Field | Description |
|---|---|
eventType | INSERT, UPDATE, or DELETE |
table | The table that changed |
schema | The schema of the table |
record | The new row (for inserts and updates) |
oldRecord | The previous row (for updates and deletes) |
raw | The full webhook payload |