For the complete documentation index, see llms.txt. This page is also available as Markdown.

Why do my Supabase destination columns not match the docs?

The Supabase destination uses both SQL tables and a storage bucket.

The Supabase destination uses both SQL tables and a storage bucket. Three tables are created automatically (users, data payloads, other payloads).

The data-payloads table references the full JSON via a column named payload_id. (Older docs showing payload_url are a display issue being corrected, use payload_id.) The complete JSON is stored in the bucket via its URL. Keep the full JSON in storage and build your own slim tables with only the fields you need.

A 400 with PostgREST error PGRST204 is your Supabase endpoint rejecting the insert before it reaches the table, not a Terra problem. Common causes:

  • Incoming JSON fields that don't exist in your table.

  • Missing NOT NULL columns.

  • An Edge Function not using the service role key.

  • Type mismatches.

Log the payload, check Supabase API logs, and align your schema to the current Terra payload.

Each dev ID has its own destination config. To route test data to a dev Supabase project:

1

Switch to your testing dev ID.

2
3

Add Supabase, authorise, and pick the dev project (disconnect and redo if the wrong project is connected).

Last updated

Was this helpful?