Delete data from a Supabase table using the REST API.

This task deletes records from a Supabase table using the REST API with support for filtering conditions.

yaml
type: "io.kestra.plugin.supabase.Delete"

Delete a specific record by ID.

yaml
id: supabase_delete_by_id
namespace: company.team

tasks:
  - id: delete_user
    type: io.kestra.plugin.supabase.Delete
    url: https://your-project.supabase.com
    apiKey: "{{ secret('SUPABASE_API_KEY') }}"
    table: users
    filter: "id=eq.123"

Delete multiple records with complex filtering.

yaml
id: supabase_delete_multiple
namespace: company.team

tasks:
  - id: delete_inactive_users
    type: io.kestra.plugin.supabase.Delete
    url: https://your-project.supabase.com
    apiKey: "{{ secret('SUPABASE_API_KEY') }}"
    table: users
    filter: "status=eq.inactive&last_login=lt.2022-01-01"

Delete with return of deleted records.

yaml
id: supabase_delete_with_return
namespace: company.team

tasks:
  - id: delete_user_with_audit
    type: io.kestra.plugin.supabase.Delete
    url: https://your-project.supabase.com
    apiKey: "{{ secret('SUPABASE_API_KEY') }}"
    table: users
    filter: "id=eq.123"
    select: "id,name,email,deleted_at"
Properties

The Supabase API key

The API key for authenticating with Supabase -- use the anon key for client-side operations or the service_role key for server-side operations with elevated privileges.

Filter conditions

Filter conditions using PostgREST syntax to specify which records to delete (e.g., 'id=eq.123', 'status=eq.inactive'). Be careful with this filter as it determines which records will be deleted.

The name of the table to delete from

The name of the table in your Supabase database

The Supabase project URL

The URL of your Supabase project (e.g., https://your-project.supabase.com)

Default { "followRedirects": "true", "allowFailed": "false", "defaultCharset": "UTF-8" }
Default public

The schema to use

The database schema to use for operations -- defaults to 'public'.

Columns to return after deletion

Comma-separated list of columns to return from the deleted records. Defaults to '*' (all columns). Set to empty string to not return any data.

The HTTP status code of the response

The number of rows deleted

SubType object

The deleted rows returned from the database (if select was specified)

SubType array

The headers of the response

The raw response body

Format uri

The URI of the executed request

Format duration

The time allowed to establish a connection to the server before failing.

Default PT5M
Format duration

The time allowed for a read connection to remain idle before closing it.

The password for HTTP basic authentication.

The username for HTTP basic authentication.

Default false

If true, allow a failed response code (response code >= 400)

SubType integer

List of response code allowed for this request

The authentification to use.

Default UTF-8

The default charset for the request.

Default true

Whether redirects should be followed automatically.

SubType string
Possible Values
REQUEST_HEADERSREQUEST_BODYRESPONSE_HEADERSRESPONSE_BODY

The enabled log.

The proxy configuration.

The SSL request options

The timeout configuration.

The address of the proxy server.

The password for proxy authentication.

The port of the proxy server.

Default DIRECT
Possible Values
DIRECTHTTPSOCKS

The type of proxy to use.

The username for proxy authentication.

Whether to disable checking of the remote SSL certificate.

Only applies if no trust store is configured. Note: This makes the SSL connection insecure and should only be used for testing. If you are using a self-signed certificate, set up a trust store instead.

The token for bearer token authentication.