Supabase ➔ SendGrid Payload Specification

Technical reference for automating data exchange between Backend/DB and Email API workflows.

💡 How this integration works:

1. Supabase triggers an event when postgres_changes occurs.
2. Data is packaged into a standard JSON webhook payload.
3. Payload is delivered into your SendGrid intake pipeline and mapped to your Email API targets.

Authentication & Event Specs

ParameterSource (Supabase)Destination (SendGrid)
Auth MechanismAnon / Service Role KeyBearer API Key
Trigger Eventpostgres_changesIngest Pipeline

Sample Webhook JSON Payload

{
  "event": "postgres_changes_to_sendgrid",
  "timestamp": 1788105200,
  "source": {
    "platform": "Supabase",
    "auth_mode": "Anon / Service Role Key",
    "data": {
      "schema": "sample_schema_val",
      "table": "sample_table_val",
      "commit_timestamp": "sample_commit_timestamp_val",
      "record_data": "sample_record_data_val"
    }
  },
  "destination": {
    "platform": "SendGrid",
    "auth_mode": "Bearer API Key",
    "target_endpoint": "https://api.sendgrid.com/v1/ingest",
    "mapped_fields": {
      "msg_id": "{{source.schema}}",
      "recipient": "{{source.table}}",
      "event_type": "{{source.commit_timestamp}}",
      "smtp_code": "{{source.record_data}}"
    }
  }
}

Quick Integration Setup

  1. Retrieve your secret API credentials from your Supabase developer dashboard using authentication method Anon / Service Role Key.
  2. Configure the target endpoint URL to route payloads into the SendGrid intake pipeline.
  3. Map incoming schema properties according to the JSON specification detailed above.

Expected HTTP Response Codes

Status CodeMeaningTroubleshooting Step
200 OKSuccessPayload accepted and queued for routing.
401 UnauthorizedAuth FailureVerify headers for valid Anon / Service Role Key credentials.
422 UnprocessableSchema ErrorCheck field keys alignment between source and target payload.

Related Technical Specifications