Management API
Manage your Supabase organizations and projects programmatically.
Authentication
All API requests require an access token to be included in the Authorization header: Authorization Bearer <access_token>.
There are two ways to generate an access token:
-
Personal access token (PAT): PATs are long-lived tokens that you manually generate to access the Management API. They are useful for automating workflows or developing against the Management API. PATs carry the same privileges as your user account, so be sure to keep it secret.
To generate or manage your personal access tokens, visit your account page.
-
OAuth2: OAuth2 allows your application to generate tokens on behalf of a Supabase user, providing secure and limited access to their account without requiring their credentials. Use this if you're building a third-party app that needs to create or manage Supabase projects on behalf of your users. Tokens generated via OAuth2 are short-lived and tied to specific scopes to ensure your app can only perform actions that are explicitly approved by the user.
See Build a Supabase Integration to set up OAuth2 for your application.
12curl https://api.supabase.com/v1/projects \ -H "Authorization: Bearer sbp_bdd0••••••••••••••••••••••••••••••••4f23"All API requests must be authenticated and made over HTTPS.
Rate limits
The rate limit for Management API is 60 requests per one minute per user, and applies cumulatively across all requests made with your personal access tokens.
If you exceed this limit, all Management API calls for the next minute will be blocked, resulting in a HTTP 429 response.
The Management API is subject to our fair-use policy. All resources created via the API are subject to the pricing detailed on our Pricing pages.
Additional links
Gets project performance advisors.deprecated
/v1/projects/{ref}/advisors/performanceThis is an experimental endpoint. It is subject to change or removal in future versions. Use it with caution, as it may not remain supported or stable.
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
Response (200)
123456789101112131415161718192021222324252627{ "lints": [ { "name": "unindexed_foreign_keys", "title": "lorem", "level": "ERROR", "facing": "EXTERNAL", "categories": [ "PERFORMANCE" ], "description": "lorem", "detail": "lorem", "remediation": "lorem", "metadata": { "schema": "lorem", "name": "lorem", "entity": "lorem", "type": "table", "fkey_name": "lorem", "fkey_columns": [ 42 ] }, "cache_key": "lorem" } ]}Gets project security advisors.deprecated
/v1/projects/{ref}/advisors/securityThis is an experimental endpoint. It is subject to change or removal in future versions. Use it with caution, as it may not remain supported or stable.
Path parameters
- refRequiredstring
Project ref
Query parameters
- lint_typeOptionalenum
Response codes
- 200
- 401
- 403
- 429
Response (200)
123456789101112131415161718192021222324252627{ "lints": [ { "name": "unindexed_foreign_keys", "title": "lorem", "level": "ERROR", "facing": "EXTERNAL", "categories": [ "PERFORMANCE" ], "description": "lorem", "detail": "lorem", "remediation": "lorem", "metadata": { "schema": "lorem", "name": "lorem", "entity": "lorem", "type": "table", "fkey_name": "lorem", "fkey_columns": [ 42 ] }, "cache_key": "lorem" } ]}Gets a project's function combined statistics
/v1/projects/{ref}/analytics/endpoints/functions.combined-statsPath parameters
- refRequiredstring
Project ref
Query parameters
- intervalRequiredenum
- function_idRequiredstring
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123456{ "result": [ null ], "error": "lorem"}Gets project's logs
/v1/projects/{ref}/analytics/endpoints/logs.allExecutes a SQL query on the project's logs.
Either the 'iso_timestamp_start' and 'iso_timestamp_end' parameters must be provided. If both are not provided, only the last 1 minute of logs will be queried. The timestamp range must be no more than 24 hours and is rounded to the nearest minute. If the range is more than 24 hours, a validation error will be thrown.
Path parameters
- refRequiredstring
Project ref
Query parameters
- sqlOptionalstring
- iso_timestamp_startOptionalstring
- iso_timestamp_endOptionalstring
Response codes
- 200
- 401
- 403
- 429
Response (200)
123456{ "result": [ null ], "error": "lorem"}Gets project's usage api counts
/v1/projects/{ref}/analytics/endpoints/usage.api-countsPath parameters
- refRequiredstring
Project ref
Query parameters
- intervalOptionalenum
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123456789101112{ "result": [ { "timestamp": "2021-12-31T23:34:00Z", "total_auth_requests": 42, "total_realtime_requests": 42, "total_rest_requests": 42, "total_storage_requests": 42 } ], "error": "lorem"}Gets project's usage api requests count
/v1/projects/{ref}/analytics/endpoints/usage.api-requests-countPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678{ "result": [ { "count": 42 } ], "error": "lorem"}Creates a new SSO provider
/v1/projects/{ref}/config/auth/sso/providersPath parameters
- refRequiredstring
Project ref
Body
- typeRequiredenum
- metadata_xmlOptionalstring
- metadata_urlOptionalstring
- domainsOptionalArray<string>
- attribute_mappingOptionalobject
- name_id_formatOptionalenum
Response codes
- 201
- 401
- 403
- 404
- 429
Response (201)
12345678910111213141516171819202122232425262728293031323334353637383940{ "id": "lorem", "saml": { "id": "lorem", "entity_id": "lorem", "metadata_url": "lorem", "metadata_xml": "lorem", "attribute_mapping": { "keys": { "property1": { "name": "lorem", "names": [ "lorem" ], "default": {}, "array": true }, "property2": { "name": "lorem", "names": [ "lorem" ], "default": {}, "array": true } } }, "name_id_format": "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" }, "domains": [ { "id": "lorem", "domain": "lorem", "created_at": "lorem", "updated_at": "lorem" } ], "created_at": "lorem", "updated_at": "lorem"}Set up the project's existing JWT secret as an in_use JWT signing key. This endpoint will be removed in the future always check for HTTP 404 Not Found.
/v1/projects/{ref}/config/auth/signing-keys/legacyPath parameters
- refRequiredstring
Project ref
Response codes
- 201
- 401
- 403
- 429
Response (201)
12345678{ "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "algorithm": "EdDSA", "status": "in_use", "public_jwk": null, "created_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z"}Create a new signing key for the project in standby status
/v1/projects/{ref}/config/auth/signing-keysPath parameters
- refRequiredstring
Project ref
Body
- algorithmRequiredenum
- statusOptionalenum
- private_jwkOptionalone of the following options
Response codes
- 201
- 401
- 403
- 429
Response (201)
12345678{ "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "algorithm": "EdDSA", "status": "in_use", "public_jwk": null, "created_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z"}Creates a new third-party auth integration
/v1/projects/{ref}/config/auth/third-party-authPath parameters
- refRequiredstring
Project ref
Body
- oidc_issuer_urlOptionalstring
- jwks_urlOptionalstring
- custom_jwksOptional
Response codes
- 201
- 401
- 403
- 429
Response (201)
1234567891011{ "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "type": "lorem", "oidc_issuer_url": "lorem", "jwks_url": "lorem", "custom_jwks": null, "resolved_jwks": null, "inserted_at": "lorem", "updated_at": "lorem", "resolved_at": "lorem"}Removes a SSO provider by its UUID
/v1/projects/{ref}/config/auth/sso/providers/{provider_id}Path parameters
- refRequiredstring
Project ref
- provider_idRequiredstring
Response codes
- 200
- 401
- 403
- 404
- 429
Response (200)
12345678910111213141516171819202122232425262728293031323334353637383940{ "id": "lorem", "saml": { "id": "lorem", "entity_id": "lorem", "metadata_url": "lorem", "metadata_xml": "lorem", "attribute_mapping": { "keys": { "property1": { "name": "lorem", "names": [ "lorem" ], "default": {}, "array": true }, "property2": { "name": "lorem", "names": [ "lorem" ], "default": {}, "array": true } } }, "name_id_format": "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" }, "domains": [ { "id": "lorem", "domain": "lorem", "created_at": "lorem", "updated_at": "lorem" } ], "created_at": "lorem", "updated_at": "lorem"}Removes a third-party auth integration
/v1/projects/{ref}/config/auth/third-party-auth/{tpa_id}Path parameters
- refRequiredstring
Project ref
- tpa_idRequiredstring
Response codes
- 200
- 401
- 403
- 429
Response (200)
1234567891011{ "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "type": "lorem", "oidc_issuer_url": "lorem", "jwks_url": "lorem", "custom_jwks": null, "resolved_jwks": null, "inserted_at": "lorem", "updated_at": "lorem", "resolved_at": "lorem"}Gets a SSO provider by its UUID
/v1/projects/{ref}/config/auth/sso/providers/{provider_id}Path parameters
- refRequiredstring
Project ref
- provider_idRequiredstring
Response codes
- 200
- 401
- 403
- 404
- 429
Response (200)
12345678910111213141516171819202122232425262728293031323334353637383940{ "id": "lorem", "saml": { "id": "lorem", "entity_id": "lorem", "metadata_url": "lorem", "metadata_xml": "lorem", "attribute_mapping": { "keys": { "property1": { "name": "lorem", "names": [ "lorem" ], "default": {}, "array": true }, "property2": { "name": "lorem", "names": [ "lorem" ], "default": {}, "array": true } } }, "name_id_format": "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" }, "domains": [ { "id": "lorem", "domain": "lorem", "created_at": "lorem", "updated_at": "lorem" } ], "created_at": "lorem", "updated_at": "lorem"}Gets project's auth config
/v1/projects/{ref}/config/authPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224{ "api_max_request_duration": 42, "db_max_pool_size": 42, "disable_signup": true, "external_anonymous_users_enabled": true, "external_apple_additional_client_ids": "lorem", "external_apple_client_id": "lorem", "external_apple_email_optional": true, "external_apple_enabled": true, "external_apple_secret": "lorem", "external_azure_client_id": "lorem", "external_azure_email_optional": true, "external_azure_enabled": true, "external_azure_secret": "lorem", "external_azure_url": "lorem", "external_bitbucket_client_id": "lorem", "external_bitbucket_email_optional": true, "external_bitbucket_enabled": true, "external_bitbucket_secret": "lorem", "external_discord_client_id": "lorem", "external_discord_email_optional": true, "external_discord_enabled": true, "external_discord_secret": "lorem", "external_email_enabled": true, "external_facebook_client_id": "lorem", "external_facebook_email_optional": true, "external_facebook_enabled": true, "external_facebook_secret": "lorem", "external_figma_client_id": "lorem", "external_figma_email_optional": true, "external_figma_enabled": true, "external_figma_secret": "lorem", "external_github_client_id": "lorem", "external_github_email_optional": true, "external_github_enabled": true, "external_github_secret": "lorem", "external_gitlab_client_id": "lorem", "external_gitlab_email_optional": true, "external_gitlab_enabled": true, "external_gitlab_secret": "lorem", "external_gitlab_url": "lorem", "external_google_additional_client_ids": "lorem", "external_google_client_id": "lorem", "external_google_email_optional": true, "external_google_enabled": true, "external_google_secret": "lorem", "external_google_skip_nonce_check": true, "external_kakao_client_id": "lorem", "external_kakao_email_optional": true, "external_kakao_enabled": true, "external_kakao_secret": "lorem", "external_keycloak_client_id": "lorem", "external_keycloak_email_optional": true, "external_keycloak_enabled": true, "external_keycloak_secret": "lorem", "external_keycloak_url": "lorem", "external_linkedin_oidc_client_id": "lorem", "external_linkedin_oidc_email_optional": true, "external_linkedin_oidc_enabled": true, "external_linkedin_oidc_secret": "lorem", "external_slack_oidc_client_id": "lorem", "external_slack_oidc_email_optional": true, "external_slack_oidc_enabled": true, "external_slack_oidc_secret": "lorem", "external_notion_client_id": "lorem", "external_notion_email_optional": true, "external_notion_enabled": true, "external_notion_secret": "lorem", "external_phone_enabled": true, "external_slack_client_id": "lorem", "external_slack_email_optional": true, "external_slack_enabled": true, "external_slack_secret": "lorem", "external_spotify_client_id": "lorem", "external_spotify_email_optional": true, "external_spotify_enabled": true, "external_spotify_secret": "lorem", "external_twitch_client_id": "lorem", "external_twitch_email_optional": true, "external_twitch_enabled": true, "external_twitch_secret": "lorem", "external_twitter_client_id": "lorem", "external_twitter_email_optional": true, "external_twitter_enabled": true, "external_twitter_secret": "lorem", "external_workos_client_id": "lorem", "external_workos_enabled": true, "external_workos_secret": "lorem", "external_workos_url": "lorem", "external_web3_solana_enabled": true, "external_web3_ethereum_enabled": true, "external_zoom_client_id": "lorem", "external_zoom_email_optional": true, "external_zoom_enabled": true, "external_zoom_secret": "lorem", "hook_custom_access_token_enabled": true, "hook_custom_access_token_uri": "lorem", "hook_custom_access_token_secrets": "lorem", "hook_mfa_verification_attempt_enabled": true, "hook_mfa_verification_attempt_uri": "lorem", "hook_mfa_verification_attempt_secrets": "lorem", "hook_password_verification_attempt_enabled": true, "hook_password_verification_attempt_uri": "lorem", "hook_password_verification_attempt_secrets": "lorem", "hook_send_sms_enabled": true, "hook_send_sms_uri": "lorem", "hook_send_sms_secrets": "lorem", "hook_send_email_enabled": true, "hook_send_email_uri": "lorem", "hook_send_email_secrets": "lorem", "hook_before_user_created_enabled": true, "hook_before_user_created_uri": "lorem", "hook_before_user_created_secrets": "lorem", "hook_after_user_created_enabled": true, "hook_after_user_created_uri": "lorem", "hook_after_user_created_secrets": "lorem", "jwt_exp": 42, "mailer_allow_unverified_email_sign_ins": true, "mailer_autoconfirm": true, "mailer_otp_exp": 42, "mailer_otp_length": 42, "mailer_secure_email_change_enabled": true, "mailer_subjects_confirmation": "lorem", "mailer_subjects_email_change": "lorem", "mailer_subjects_invite": "lorem", "mailer_subjects_magic_link": "lorem", "mailer_subjects_reauthentication": "lorem", "mailer_subjects_recovery": "lorem", "mailer_subjects_password_changed_notification": "lorem", "mailer_subjects_email_changed_notification": "lorem", "mailer_subjects_phone_changed_notification": "lorem", "mailer_subjects_mfa_factor_enrolled_notification": "lorem", "mailer_subjects_mfa_factor_unenrolled_notification": "lorem", "mailer_subjects_identity_linked_notification": "lorem", "mailer_subjects_identity_unlinked_notification": "lorem", "mailer_templates_confirmation_content": "lorem", "mailer_templates_email_change_content": "lorem", "mailer_templates_invite_content": "lorem", "mailer_templates_magic_link_content": "lorem", "mailer_templates_reauthentication_content": "lorem", "mailer_templates_recovery_content": "lorem", "mailer_templates_password_changed_notification_content": "lorem", "mailer_templates_email_changed_notification_content": "lorem", "mailer_templates_phone_changed_notification_content": "lorem", "mailer_templates_mfa_factor_enrolled_notification_content": "lorem", "mailer_templates_mfa_factor_unenrolled_notification_content": "lorem", "mailer_templates_identity_linked_notification_content": "lorem", "mailer_templates_identity_unlinked_notification_content": "lorem", "mailer_notifications_password_changed_enabled": true, "mailer_notifications_email_changed_enabled": true, "mailer_notifications_phone_changed_enabled": true, "mailer_notifications_mfa_factor_enrolled_enabled": true, "mailer_notifications_mfa_factor_unenrolled_enabled": true, "mailer_notifications_identity_linked_enabled": true, "mailer_notifications_identity_unlinked_enabled": true, "mfa_max_enrolled_factors": 42, "mfa_totp_enroll_enabled": true, "mfa_totp_verify_enabled": true, "mfa_phone_enroll_enabled": true, "mfa_phone_verify_enabled": true, "mfa_web_authn_enroll_enabled": true, "mfa_web_authn_verify_enabled": true, "mfa_phone_otp_length": 42, "mfa_phone_template": "lorem", "mfa_phone_max_frequency": 42, "nimbus_oauth_client_id": "lorem", "nimbus_oauth_email_optional": true, "nimbus_oauth_client_secret": "lorem", "password_hibp_enabled": true, "password_min_length": 42, "password_required_characters": "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ:0123456789", "rate_limit_anonymous_users": 42, "rate_limit_email_sent": 42, "rate_limit_sms_sent": 42, "rate_limit_token_refresh": 42, "rate_limit_verify": 42, "rate_limit_otp": 42, "rate_limit_web3": 42, "refresh_token_rotation_enabled": true, "saml_enabled": true, "saml_external_url": "lorem", "saml_allow_encrypted_assertions": true, "security_captcha_enabled": true, "security_captcha_provider": "turnstile", "security_captcha_secret": "lorem", "security_manual_linking_enabled": true, "security_refresh_token_reuse_interval": 42, "security_update_password_require_reauthentication": true, "sessions_inactivity_timeout": 42, "sessions_single_per_user": true, "sessions_tags": "lorem", "sessions_timebox": 42, "site_url": "lorem", "sms_autoconfirm": true, "sms_max_frequency": 42, "sms_messagebird_access_key": "lorem", "sms_messagebird_originator": "lorem", "sms_otp_exp": 42, "sms_otp_length": 42, "sms_provider": "messagebird", "sms_template": "lorem", "sms_test_otp": "lorem", "sms_test_otp_valid_until": "2021-12-31T23:34:00Z", "sms_textlocal_api_key": "lorem", "sms_textlocal_sender": "lorem", "sms_twilio_account_sid": "lorem", "sms_twilio_auth_token": "lorem", "sms_twilio_content_sid": "lorem", "sms_twilio_message_service_sid": "lorem", "sms_twilio_verify_account_sid": "lorem", "sms_twilio_verify_auth_token": "lorem", "sms_twilio_verify_message_service_sid": "lorem", "sms_vonage_api_key": "lorem", "sms_vonage_api_secret": "lorem", "sms_vonage_from": "lorem", "smtp_admin_email": "jon.snow@targaryen.com", "smtp_host": "lorem", "smtp_max_frequency": 42, "smtp_pass": "lorem", "smtp_port": "lorem", "smtp_sender_name": "lorem", "smtp_user": "lorem", "uri_allow_list": "lorem"}Get the signing key information for the JWT secret imported as signing key for this project. This endpoint will be removed in the future, check for HTTP 404 Not Found.
/v1/projects/{ref}/config/auth/signing-keys/legacyPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
Response (200)
12345678{ "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "algorithm": "EdDSA", "status": "in_use", "public_jwk": null, "created_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z"}Get information about a signing key
/v1/projects/{ref}/config/auth/signing-keys/{id}Path parameters
- idRequiredstring
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
Response (200)
12345678{ "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "algorithm": "EdDSA", "status": "in_use", "public_jwk": null, "created_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z"}List all signing keys for the project
/v1/projects/{ref}/config/auth/signing-keysPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
Response (200)
123456789101112{ "keys": [ { "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "algorithm": "EdDSA", "status": "in_use", "public_jwk": null, "created_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z" } ]}Get a third-party integration
/v1/projects/{ref}/config/auth/third-party-auth/{tpa_id}Path parameters
- refRequiredstring
Project ref
- tpa_idRequiredstring
Response codes
- 200
- 401
- 403
- 429
Response (200)
1234567891011{ "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "type": "lorem", "oidc_issuer_url": "lorem", "jwks_url": "lorem", "custom_jwks": null, "resolved_jwks": null, "inserted_at": "lorem", "updated_at": "lorem", "resolved_at": "lorem"}Lists all SSO providers
/v1/projects/{ref}/config/auth/sso/providersPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 404
- 429
Response (200)
1234567891011121314151617181920212223242526272829303132333435363738394041424344{ "items": [ { "id": "lorem", "saml": { "id": "lorem", "entity_id": "lorem", "metadata_url": "lorem", "metadata_xml": "lorem", "attribute_mapping": { "keys": { "property1": { "name": "lorem", "names": [ "lorem" ], "default": {}, "array": true }, "property2": { "name": "lorem", "names": [ "lorem" ], "default": {}, "array": true } } }, "name_id_format": "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" }, "domains": [ { "id": "lorem", "domain": "lorem", "created_at": "lorem", "updated_at": "lorem" } ], "created_at": "lorem", "updated_at": "lorem" } ]}Lists all third-party auth integrations
/v1/projects/{ref}/config/auth/third-party-authPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
Response (200)
12345678910111213[ { "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "type": "lorem", "oidc_issuer_url": "lorem", "jwks_url": "lorem", "custom_jwks": null, "resolved_jwks": null, "inserted_at": "lorem", "updated_at": "lorem", "resolved_at": "lorem" }]Remove a signing key from a project. Only possible if the key has been in revoked status for a while.
/v1/projects/{ref}/config/auth/signing-keys/{id}Path parameters
- idRequiredstring
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
Response (200)
12345678{ "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "algorithm": "EdDSA", "status": "in_use", "public_jwk": null, "created_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z"}Updates a SSO provider by its UUID
/v1/projects/{ref}/config/auth/sso/providers/{provider_id}Path parameters
- refRequiredstring
Project ref
- provider_idRequiredstring
Body
- metadata_xmlOptionalstring
- metadata_urlOptionalstring
- domainsOptionalArray<string>
- attribute_mappingOptionalobject
- name_id_formatOptionalenum
Response codes
- 200
- 401
- 403
- 404
- 429
Response (200)
12345678910111213141516171819202122232425262728293031323334353637383940{ "id": "lorem", "saml": { "id": "lorem", "entity_id": "lorem", "metadata_url": "lorem", "metadata_xml": "lorem", "attribute_mapping": { "keys": { "property1": { "name": "lorem", "names": [ "lorem" ], "default": {}, "array": true }, "property2": { "name": "lorem", "names": [ "lorem" ], "default": {}, "array": true } } }, "name_id_format": "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" }, "domains": [ { "id": "lorem", "domain": "lorem", "created_at": "lorem", "updated_at": "lorem" } ], "created_at": "lorem", "updated_at": "lorem"}Updates a project's auth config
/v1/projects/{ref}/config/authPath parameters
- refRequiredstring
Project ref
Body
- site_urlOptionalstring
- disable_signupOptionalboolean
- jwt_expOptionalinteger
- smtp_admin_emailOptionalstring
- smtp_hostOptionalstring
- smtp_portOptionalstring
- smtp_userOptionalstring
- smtp_passOptionalstring
- smtp_max_frequencyOptionalinteger
- smtp_sender_nameOptionalstring
- mailer_allow_unverified_email_sign_insOptionalboolean
- mailer_autoconfirmOptionalboolean
- mailer_subjects_inviteOptionalstring
- mailer_subjects_confirmationOptionalstring
- mailer_subjects_recoveryOptionalstring
- mailer_subjects_email_changeOptionalstring
- mailer_subjects_magic_linkOptionalstring
- mailer_subjects_reauthenticationOptionalstring
- mailer_subjects_password_changed_notificationOptionalstring
- mailer_subjects_email_changed_notificationOptionalstring
- mailer_subjects_phone_changed_notificationOptionalstring
- mailer_subjects_mfa_factor_enrolled_notificationOptionalstring
- mailer_subjects_mfa_factor_unenrolled_notificationOptionalstring
- mailer_subjects_identity_linked_notificationOptionalstring
- mailer_subjects_identity_unlinked_notificationOptionalstring
- mailer_templates_invite_contentOptionalstring
- mailer_templates_confirmation_contentOptionalstring
- mailer_templates_recovery_contentOptionalstring
- mailer_templates_email_change_contentOptionalstring
- mailer_templates_magic_link_contentOptionalstring
- mailer_templates_reauthentication_contentOptionalstring
- mailer_templates_password_changed_notification_contentOptionalstring
- mailer_templates_email_changed_notification_contentOptionalstring
- mailer_templates_phone_changed_notification_contentOptionalstring
- mailer_templates_mfa_factor_enrolled_notification_contentOptionalstring
- mailer_templates_mfa_factor_unenrolled_notification_contentOptionalstring
- mailer_templates_identity_linked_notification_contentOptionalstring
- mailer_templates_identity_unlinked_notification_contentOptionalstring
- mailer_notifications_password_changed_enabledOptionalboolean
- mailer_notifications_email_changed_enabledOptionalboolean
- mailer_notifications_phone_changed_enabledOptionalboolean
- mailer_notifications_mfa_factor_enrolled_enabledOptionalboolean
- mailer_notifications_mfa_factor_unenrolled_enabledOptionalboolean
- mailer_notifications_identity_linked_enabledOptionalboolean
- mailer_notifications_identity_unlinked_enabledOptionalboolean
- mfa_max_enrolled_factorsOptionalinteger
- uri_allow_listOptionalstring
- external_anonymous_users_enabledOptionalboolean
- external_email_enabledOptionalboolean
- external_phone_enabledOptionalboolean
- saml_enabledOptionalboolean
- saml_external_urlOptionalstring
- security_captcha_enabledOptionalboolean
- security_captcha_providerOptionalenum
- security_captcha_secretOptionalstring
- sessions_timeboxOptionalinteger
- sessions_inactivity_timeoutOptionalinteger
- sessions_single_per_userOptionalboolean
- sessions_tagsOptionalstring
- rate_limit_anonymous_usersOptionalinteger
- rate_limit_email_sentOptionalinteger
- rate_limit_sms_sentOptionalinteger
- rate_limit_verifyOptionalinteger
- rate_limit_token_refreshOptionalinteger
- rate_limit_otpOptionalinteger
- rate_limit_web3Optionalinteger
- mailer_secure_email_change_enabledOptionalboolean
- refresh_token_rotation_enabledOptionalboolean
- password_hibp_enabledOptionalboolean
- password_min_lengthOptionalinteger
- password_required_charactersOptionalenum
- security_manual_linking_enabledOptionalboolean
- security_update_password_require_reauthenticationOptionalboolean
- security_refresh_token_reuse_intervalOptionalinteger
- mailer_otp_expOptionalinteger
- mailer_otp_lengthOptionalinteger
- sms_autoconfirmOptionalboolean
- sms_max_frequencyOptionalinteger
- sms_otp_expOptionalinteger
- sms_otp_lengthOptionalinteger
- sms_providerOptionalenum
- sms_messagebird_access_keyOptionalstring
- sms_messagebird_originatorOptionalstring
- sms_test_otpOptionalstring
- sms_test_otp_valid_untilOptionalstring
- sms_textlocal_api_keyOptionalstring
- sms_textlocal_senderOptionalstring
- sms_twilio_account_sidOptionalstring
- sms_twilio_auth_tokenOptionalstring
- sms_twilio_content_sidOptionalstring
- sms_twilio_message_service_sidOptionalstring
- sms_twilio_verify_account_sidOptionalstring
- sms_twilio_verify_auth_tokenOptionalstring
- sms_twilio_verify_message_service_sidOptionalstring
- sms_vonage_api_keyOptionalstring
- sms_vonage_api_secretOptionalstring
- sms_vonage_fromOptionalstring
- sms_templateOptionalstring
- hook_mfa_verification_attempt_enabledOptionalboolean
- hook_mfa_verification_attempt_uriOptionalstring
- hook_mfa_verification_attempt_secretsOptionalstring
- hook_password_verification_attempt_enabledOptionalboolean
- hook_password_verification_attempt_uriOptionalstring
- hook_password_verification_attempt_secretsOptionalstring
- hook_custom_access_token_enabledOptionalboolean
- hook_custom_access_token_uriOptionalstring
- hook_custom_access_token_secretsOptionalstring
- hook_send_sms_enabledOptionalboolean
- hook_send_sms_uriOptionalstring
- hook_send_sms_secretsOptionalstring
- hook_send_email_enabledOptionalboolean
- hook_send_email_uriOptionalstring
- hook_send_email_secretsOptionalstring
- hook_before_user_created_enabledOptionalboolean
- hook_before_user_created_uriOptionalstring
- hook_before_user_created_secretsOptionalstring
- hook_after_user_created_enabledOptionalboolean
- hook_after_user_created_uriOptionalstring
- hook_after_user_created_secretsOptionalstring
- external_apple_enabledOptionalboolean
- external_apple_client_idOptionalstring
- external_apple_email_optionalOptionalboolean
- external_apple_secretOptionalstring
- external_apple_additional_client_idsOptionalstring
- external_azure_enabledOptionalboolean
- external_azure_client_idOptionalstring
- external_azure_email_optionalOptionalboolean
- external_azure_secretOptionalstring
- external_azure_urlOptionalstring
- external_bitbucket_enabledOptionalboolean
- external_bitbucket_client_idOptionalstring
- external_bitbucket_email_optionalOptionalboolean
- external_bitbucket_secretOptionalstring
- external_discord_enabledOptionalboolean
- external_discord_client_idOptionalstring
- external_discord_email_optionalOptionalboolean
- external_discord_secretOptionalstring
- external_facebook_enabledOptionalboolean
- external_facebook_client_idOptionalstring
- external_facebook_email_optionalOptionalboolean
- external_facebook_secretOptionalstring
- external_figma_enabledOptionalboolean
- external_figma_client_idOptionalstring
- external_figma_email_optionalOptionalboolean
- external_figma_secretOptionalstring
- external_github_enabledOptionalboolean
- external_github_client_idOptionalstring
- external_github_email_optionalOptionalboolean
- external_github_secretOptionalstring
- external_gitlab_enabledOptionalboolean
- external_gitlab_client_idOptionalstring
- external_gitlab_email_optionalOptionalboolean
- external_gitlab_secretOptionalstring
- external_gitlab_urlOptionalstring
- external_google_enabledOptionalboolean
- external_google_client_idOptionalstring
- external_google_email_optionalOptionalboolean
- external_google_secretOptionalstring
- external_google_additional_client_idsOptionalstring
- external_google_skip_nonce_checkOptionalboolean
- external_kakao_enabledOptionalboolean
- external_kakao_client_idOptionalstring
- external_kakao_email_optionalOptionalboolean
- external_kakao_secretOptionalstring
- external_keycloak_enabledOptionalboolean
- external_keycloak_client_idOptionalstring
- external_keycloak_email_optionalOptionalboolean
- external_keycloak_secretOptionalstring
- external_keycloak_urlOptionalstring
- external_linkedin_oidc_enabledOptionalboolean
- external_linkedin_oidc_client_idOptionalstring
- external_linkedin_oidc_email_optionalOptionalboolean
- external_linkedin_oidc_secretOptionalstring
- external_slack_oidc_enabledOptionalboolean
- external_slack_oidc_client_idOptionalstring
- external_slack_oidc_email_optionalOptionalboolean
- external_slack_oidc_secretOptionalstring
- external_notion_enabledOptionalboolean
- external_notion_client_idOptionalstring
- external_notion_email_optionalOptionalboolean
- external_notion_secretOptionalstring
- external_slack_enabledOptionalboolean
- external_slack_client_idOptionalstring
- external_slack_email_optionalOptionalboolean
- external_slack_secretOptionalstring
- external_spotify_enabledOptionalboolean
- external_spotify_client_idOptionalstring
- external_spotify_email_optionalOptionalboolean
- external_spotify_secretOptionalstring
- external_twitch_enabledOptionalboolean
- external_twitch_client_idOptionalstring
- external_twitch_email_optionalOptionalboolean
- external_twitch_secretOptionalstring
- external_twitter_enabledOptionalboolean
- external_twitter_client_idOptionalstring
- external_twitter_email_optionalOptionalboolean
- external_twitter_secretOptionalstring
- external_workos_enabledOptionalboolean
- external_workos_client_idOptionalstring
- external_workos_secretOptionalstring
- external_workos_urlOptionalstring
- external_web3_solana_enabledOptionalboolean
- external_web3_ethereum_enabledOptionalboolean
- external_zoom_enabledOptionalboolean
- external_zoom_client_idOptionalstring
- external_zoom_email_optionalOptionalboolean
- external_zoom_secretOptionalstring
- db_max_pool_sizeOptionalinteger
- api_max_request_durationOptionalinteger
- mfa_totp_enroll_enabledOptionalboolean
- mfa_totp_verify_enabledOptionalboolean
- mfa_web_authn_enroll_enabledOptionalboolean
- mfa_web_authn_verify_enabledOptionalboolean
- mfa_phone_enroll_enabledOptionalboolean
- mfa_phone_verify_enabledOptionalboolean
- mfa_phone_max_frequencyOptionalinteger
- mfa_phone_otp_lengthOptionalinteger
- mfa_phone_templateOptionalstring
- nimbus_oauth_client_idOptionalstring
- nimbus_oauth_client_secretOptionalstring
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224{ "api_max_request_duration": 42, "db_max_pool_size": 42, "disable_signup": true, "external_anonymous_users_enabled": true, "external_apple_additional_client_ids": "lorem", "external_apple_client_id": "lorem", "external_apple_email_optional": true, "external_apple_enabled": true, "external_apple_secret": "lorem", "external_azure_client_id": "lorem", "external_azure_email_optional": true, "external_azure_enabled": true, "external_azure_secret": "lorem", "external_azure_url": "lorem", "external_bitbucket_client_id": "lorem", "external_bitbucket_email_optional": true, "external_bitbucket_enabled": true, "external_bitbucket_secret": "lorem", "external_discord_client_id": "lorem", "external_discord_email_optional": true, "external_discord_enabled": true, "external_discord_secret": "lorem", "external_email_enabled": true, "external_facebook_client_id": "lorem", "external_facebook_email_optional": true, "external_facebook_enabled": true, "external_facebook_secret": "lorem", "external_figma_client_id": "lorem", "external_figma_email_optional": true, "external_figma_enabled": true, "external_figma_secret": "lorem", "external_github_client_id": "lorem", "external_github_email_optional": true, "external_github_enabled": true, "external_github_secret": "lorem", "external_gitlab_client_id": "lorem", "external_gitlab_email_optional": true, "external_gitlab_enabled": true, "external_gitlab_secret": "lorem", "external_gitlab_url": "lorem", "external_google_additional_client_ids": "lorem", "external_google_client_id": "lorem", "external_google_email_optional": true, "external_google_enabled": true, "external_google_secret": "lorem", "external_google_skip_nonce_check": true, "external_kakao_client_id": "lorem", "external_kakao_email_optional": true, "external_kakao_enabled": true, "external_kakao_secret": "lorem", "external_keycloak_client_id": "lorem", "external_keycloak_email_optional": true, "external_keycloak_enabled": true, "external_keycloak_secret": "lorem", "external_keycloak_url": "lorem", "external_linkedin_oidc_client_id": "lorem", "external_linkedin_oidc_email_optional": true, "external_linkedin_oidc_enabled": true, "external_linkedin_oidc_secret": "lorem", "external_slack_oidc_client_id": "lorem", "external_slack_oidc_email_optional": true, "external_slack_oidc_enabled": true, "external_slack_oidc_secret": "lorem", "external_notion_client_id": "lorem", "external_notion_email_optional": true, "external_notion_enabled": true, "external_notion_secret": "lorem", "external_phone_enabled": true, "external_slack_client_id": "lorem", "external_slack_email_optional": true, "external_slack_enabled": true, "external_slack_secret": "lorem", "external_spotify_client_id": "lorem", "external_spotify_email_optional": true, "external_spotify_enabled": true, "external_spotify_secret": "lorem", "external_twitch_client_id": "lorem", "external_twitch_email_optional": true, "external_twitch_enabled": true, "external_twitch_secret": "lorem", "external_twitter_client_id": "lorem", "external_twitter_email_optional": true, "external_twitter_enabled": true, "external_twitter_secret": "lorem", "external_workos_client_id": "lorem", "external_workos_enabled": true, "external_workos_secret": "lorem", "external_workos_url": "lorem", "external_web3_solana_enabled": true, "external_web3_ethereum_enabled": true, "external_zoom_client_id": "lorem", "external_zoom_email_optional": true, "external_zoom_enabled": true, "external_zoom_secret": "lorem", "hook_custom_access_token_enabled": true, "hook_custom_access_token_uri": "lorem", "hook_custom_access_token_secrets": "lorem", "hook_mfa_verification_attempt_enabled": true, "hook_mfa_verification_attempt_uri": "lorem", "hook_mfa_verification_attempt_secrets": "lorem", "hook_password_verification_attempt_enabled": true, "hook_password_verification_attempt_uri": "lorem", "hook_password_verification_attempt_secrets": "lorem", "hook_send_sms_enabled": true, "hook_send_sms_uri": "lorem", "hook_send_sms_secrets": "lorem", "hook_send_email_enabled": true, "hook_send_email_uri": "lorem", "hook_send_email_secrets": "lorem", "hook_before_user_created_enabled": true, "hook_before_user_created_uri": "lorem", "hook_before_user_created_secrets": "lorem", "hook_after_user_created_enabled": true, "hook_after_user_created_uri": "lorem", "hook_after_user_created_secrets": "lorem", "jwt_exp": 42, "mailer_allow_unverified_email_sign_ins": true, "mailer_autoconfirm": true, "mailer_otp_exp": 42, "mailer_otp_length": 42, "mailer_secure_email_change_enabled": true, "mailer_subjects_confirmation": "lorem", "mailer_subjects_email_change": "lorem", "mailer_subjects_invite": "lorem", "mailer_subjects_magic_link": "lorem", "mailer_subjects_reauthentication": "lorem", "mailer_subjects_recovery": "lorem", "mailer_subjects_password_changed_notification": "lorem", "mailer_subjects_email_changed_notification": "lorem", "mailer_subjects_phone_changed_notification": "lorem", "mailer_subjects_mfa_factor_enrolled_notification": "lorem", "mailer_subjects_mfa_factor_unenrolled_notification": "lorem", "mailer_subjects_identity_linked_notification": "lorem", "mailer_subjects_identity_unlinked_notification": "lorem", "mailer_templates_confirmation_content": "lorem", "mailer_templates_email_change_content": "lorem", "mailer_templates_invite_content": "lorem", "mailer_templates_magic_link_content": "lorem", "mailer_templates_reauthentication_content": "lorem", "mailer_templates_recovery_content": "lorem", "mailer_templates_password_changed_notification_content": "lorem", "mailer_templates_email_changed_notification_content": "lorem", "mailer_templates_phone_changed_notification_content": "lorem", "mailer_templates_mfa_factor_enrolled_notification_content": "lorem", "mailer_templates_mfa_factor_unenrolled_notification_content": "lorem", "mailer_templates_identity_linked_notification_content": "lorem", "mailer_templates_identity_unlinked_notification_content": "lorem", "mailer_notifications_password_changed_enabled": true, "mailer_notifications_email_changed_enabled": true, "mailer_notifications_phone_changed_enabled": true, "mailer_notifications_mfa_factor_enrolled_enabled": true, "mailer_notifications_mfa_factor_unenrolled_enabled": true, "mailer_notifications_identity_linked_enabled": true, "mailer_notifications_identity_unlinked_enabled": true, "mfa_max_enrolled_factors": 42, "mfa_totp_enroll_enabled": true, "mfa_totp_verify_enabled": true, "mfa_phone_enroll_enabled": true, "mfa_phone_verify_enabled": true, "mfa_web_authn_enroll_enabled": true, "mfa_web_authn_verify_enabled": true, "mfa_phone_otp_length": 42, "mfa_phone_template": "lorem", "mfa_phone_max_frequency": 42, "nimbus_oauth_client_id": "lorem", "nimbus_oauth_email_optional": true, "nimbus_oauth_client_secret": "lorem", "password_hibp_enabled": true, "password_min_length": 42, "password_required_characters": "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ:0123456789", "rate_limit_anonymous_users": 42, "rate_limit_email_sent": 42, "rate_limit_sms_sent": 42, "rate_limit_token_refresh": 42, "rate_limit_verify": 42, "rate_limit_otp": 42, "rate_limit_web3": 42, "refresh_token_rotation_enabled": true, "saml_enabled": true, "saml_external_url": "lorem", "saml_allow_encrypted_assertions": true, "security_captcha_enabled": true, "security_captcha_provider": "turnstile", "security_captcha_secret": "lorem", "security_manual_linking_enabled": true, "security_refresh_token_reuse_interval": 42, "security_update_password_require_reauthentication": true, "sessions_inactivity_timeout": 42, "sessions_single_per_user": true, "sessions_tags": "lorem", "sessions_timebox": 42, "site_url": "lorem", "sms_autoconfirm": true, "sms_max_frequency": 42, "sms_messagebird_access_key": "lorem", "sms_messagebird_originator": "lorem", "sms_otp_exp": 42, "sms_otp_length": 42, "sms_provider": "messagebird", "sms_template": "lorem", "sms_test_otp": "lorem", "sms_test_otp_valid_until": "2021-12-31T23:34:00Z", "sms_textlocal_api_key": "lorem", "sms_textlocal_sender": "lorem", "sms_twilio_account_sid": "lorem", "sms_twilio_auth_token": "lorem", "sms_twilio_content_sid": "lorem", "sms_twilio_message_service_sid": "lorem", "sms_twilio_verify_account_sid": "lorem", "sms_twilio_verify_auth_token": "lorem", "sms_twilio_verify_message_service_sid": "lorem", "sms_vonage_api_key": "lorem", "sms_vonage_api_secret": "lorem", "sms_vonage_from": "lorem", "smtp_admin_email": "jon.snow@targaryen.com", "smtp_host": "lorem", "smtp_max_frequency": 42, "smtp_pass": "lorem", "smtp_port": "lorem", "smtp_sender_name": "lorem", "smtp_user": "lorem", "uri_allow_list": "lorem"}Update a signing key, mainly its status
/v1/projects/{ref}/config/auth/signing-keys/{id}Path parameters
- idRequiredstring
- refRequiredstring
Project ref
Body
- statusRequiredenum
Response codes
- 200
- 401
- 403
- 429
Response (200)
12345678{ "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "algorithm": "EdDSA", "status": "in_use", "public_jwk": null, "created_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z"}Apply or update billing addons, including compute instance size
/v1/projects/{ref}/billing/addonsSelects an addon variant, for example scaling the project’s compute instance up or down, and applies it to the project.
Path parameters
- refRequiredstring
Project ref
Body
- addon_variantRequiredone of the following options
- addon_typeRequiredenum
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}List billing addons and compute instance selections
/v1/projects/{ref}/billing/addonsReturns the billing addons that are currently applied, including the active compute instance size, and lists every addon option that can be provisioned with pricing metadata.
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678910111213141516171819202122232425262728293031323334353637{ "selected_addons": [ { "type": "custom_domain", "variant": { "id": "ci_micro", "name": "lorem", "price": { "description": "lorem", "type": "fixed", "interval": "monthly", "amount": 42 }, "meta": null } } ], "available_addons": [ { "type": "custom_domain", "name": "lorem", "variants": [ { "id": "ci_micro", "name": "lorem", "price": { "description": "lorem", "type": "fixed", "interval": "monthly", "amount": 42 }, "meta": null } ] } ]}Remove billing addons or revert compute instance sizing
/v1/projects/{ref}/billing/addons/{addon_variant}Disables the selected addon variant, including rolling the compute instance back to its previous size.
Path parameters
- refRequiredstring
Project ref
- addon_variantRequiredone of the following options
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}[Beta] Apply a database migration
/v1/projects/{ref}/database/migrationsOnly available to selected partner OAuth apps
Path parameters
- refRequiredstring
Project ref
Body
- queryRequiredstring
- nameOptionalstring
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}[Beta] Create a login role for CLI with temporary password
/v1/projects/{ref}/cli/login-rolePath parameters
- refRequiredstring
Project ref
Body
- read_onlyRequiredboolean
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
12345{ "role": "lorem", "password": "lorem", "ttl_seconds": 1}Delete JIT access by user-id
/v1/projects/{ref}/database/jit/{user_id}Remove JIT mappings of a user, revoking all JIT database access
Path parameters
- refRequiredstring
Project ref
- user_idRequiredstring
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}[Beta] Delete existing login roles used by CLI
/v1/projects/{ref}/cli/login-rolePath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123{ "message": "ok"}Disables project's readonly mode for the next 15 minutes
/v1/projects/{ref}/readonly/temporary-disablePath parameters
- refRequiredstring
Project ref
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
1{}[Beta] Enables Database Webhooks on the project
/v1/projects/{ref}/database/webhooks/enablePath parameters
- refRequiredstring
Project ref
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
1{}Generate TypeScript types
/v1/projects/{ref}/types/typescriptReturns the TypeScript types of your schema for use with supabase-js.
Path parameters
- refRequiredstring
Project ref
Query parameters
- included_schemasOptionalstring
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123{ "types": "lorem"}Gets a specific SQL snippet
/v1/snippets/{id}Path parameters
- idRequiredstring
Response codes
- 200
- 500
Response (200)
123456789101112131415161718192021222324252627{ "id": "lorem", "inserted_at": "lorem", "updated_at": "lorem", "type": "sql", "visibility": "user", "name": "lorem", "description": "lorem", "project": { "id": 42, "name": "lorem" }, "owner": { "id": 42, "username": "lorem" }, "updated_by": { "id": 42, "username": "lorem" }, "favorite": true, "content": { "favorite": true, "schema_version": "lorem", "sql": "lorem" }}Gets database metadata for the given project.deprecated
/v1/projects/{ref}/database/contextThis is an experimental endpoint. It is subject to change or removal in future versions. Use it with caution, as it may not remain supported or stable.
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
Response (200)
123456789101112{ "databases": [ { "name": "lorem", "schemas": [ { "name": "lorem" } ] } ]}Get user-id to role mappings for JIT access
/v1/projects/{ref}/database/jitMappings of roles a user can assume in the project database
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123456789101112131415161718192021{ "user_id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "user_roles": [ { "role": "lorem", "expires_at": 42, "allowed_networks": { "allowed_cidrs": [ { "cidr": "lorem" } ], "allowed_cidrs_v6": [ { "cidr": "lorem" } ] } } ]}Gets project's supavisor config
/v1/projects/{ref}/config/database/poolerPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678910111213141516[ { "identifier": "lorem", "database_type": "PRIMARY", "is_using_scram_auth": true, "db_user": "lorem", "db_host": "lorem", "db_port": 42, "db_name": "lorem", "connection_string": "lorem", "connectionString": "lorem", "default_pool_size": 42, "max_client_conn": 42, "pool_mode": "transaction" }]Gets project's Postgres config
/v1/projects/{ref}/config/database/postgresPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678910111213141516171819202122232425{ "effective_cache_size": "lorem", "logical_decoding_work_mem": "lorem", "maintenance_work_mem": "lorem", "track_activity_query_size": "lorem", "max_connections": 1, "max_locks_per_transaction": 10, "max_parallel_maintenance_workers": 0, "max_parallel_workers": 0, "max_parallel_workers_per_gather": 0, "max_replication_slots": 42, "max_slot_wal_keep_size": "lorem", "max_standby_archive_delay": "lorem", "max_standby_streaming_delay": "lorem", "max_wal_size": "lorem", "max_wal_senders": 42, "max_worker_processes": 0, "session_replication_role": "origin", "shared_buffers": "lorem", "statement_timeout": "lorem", "track_commit_timestamp": true, "wal_keep_size": "lorem", "wal_sender_timeout": "lorem", "work_mem": "lorem"}Get project's pgbouncer config
/v1/projects/{ref}/config/database/pgbouncerPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1234567891011{ "default_pool_size": 42, "ignore_startup_parameters": "lorem", "max_client_conn": 42, "pool_mode": "transaction", "connection_string": "lorem", "server_idle_timeout": 42, "server_lifetime": 42, "query_wait_timeout": 42, "reserve_pool_size": 42}Returns project's readonly mode status
/v1/projects/{ref}/readonlyPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345{ "enabled": true, "override_enabled": true, "override_active_until": "lorem"}[Beta] Get project's SSL enforcement configuration.
/v1/projects/{ref}/ssl-enforcementPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123456{ "currentConfig": { "database": true }, "appliedSuccessfully": true}Lists all backups
/v1/projects/{ref}/database/backupsPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678910111213141516{ "region": "lorem", "walg_enabled": true, "pitr_enabled": true, "backups": [ { "is_physical_backup": true, "status": "COMPLETED", "inserted_at": "lorem" } ], "physical_backup_data": { "earliest_physical_backup_date_unix": 42, "latest_physical_backup_date_unix": 42 }}Lists SQL snippets for the logged in user
/v1/snippetsQuery parameters
- project_refOptionalstring
Project ref
- cursorOptionalstring
- limitOptionalstring
- sort_byOptionalenum
- sort_orderOptionalenum
Response codes
- 200
- 500
Response (200)
123456789101112131415161718192021222324252627{ "data": [ { "id": "lorem", "inserted_at": "lorem", "updated_at": "lorem", "type": "sql", "visibility": "user", "name": "lorem", "description": "lorem", "project": { "id": 42, "name": "lorem" }, "owner": { "id": 42, "username": "lorem" }, "updated_by": { "id": 42, "username": "lorem" }, "favorite": true } ], "cursor": "lorem"}List all user-id to role mappings for JIT access
/v1/projects/{ref}/database/jit/listMappings of roles a user can assume in the project database
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678910111213141516171819202122232425{ "items": [ { "user_id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "user_roles": [ { "role": "lorem", "expires_at": 42, "allowed_networks": { "allowed_cidrs": [ { "cidr": "lorem" } ], "allowed_cidrs_v6": [ { "cidr": "lorem" } ] } } ] } ]}[Beta] List applied migration versions
/v1/projects/{ref}/database/migrationsOnly available to selected partner OAuth apps
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123456[ { "version": "lorem", "name": "lorem" }][Beta] Remove a read replica
/v1/projects/{ref}/read-replicas/removePath parameters
- refRequiredstring
Project ref
Body
- database_identifierRequiredstring
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
1{}Restores a PITR backup for a database
/v1/projects/{ref}/database/backups/restore-pitrPath parameters
- refRequiredstring
Project ref
Body
- recovery_time_target_unixRequiredinteger
Response codes
- 201
- 401
- 403
- 429
Response (201)
1{}[Beta] Run sql query
/v1/projects/{ref}/database/queryPath parameters
- refRequiredstring
Project ref
Body
- queryRequiredstring
- read_onlyOptionalboolean
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
1{}[Beta] Set up a read replica
/v1/projects/{ref}/read-replicas/setupPath parameters
- refRequiredstring
Project ref
Body
- read_replica_regionRequiredenum
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
1{}Updates a user mapping for JIT access
/v1/projects/{ref}/database/jitModifies the roles that can be assumed and for how long
Path parameters
- refRequiredstring
Project ref
Body
- user_idRequiredstring
- rolesRequiredArray<object>
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123456789101112131415161718192021{ "user_id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "user_roles": [ { "role": "lorem", "expires_at": 42, "allowed_networks": { "allowed_cidrs": [ { "cidr": "lorem" } ], "allowed_cidrs_v6": [ { "cidr": "lorem" } ] } } ]}Updates project's supavisor config
/v1/projects/{ref}/config/database/poolerPath parameters
- refRequiredstring
Project ref
Body
- default_pool_sizeOptionalinteger
- pool_modeOptionalenum
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1234{ "default_pool_size": 42, "pool_mode": "lorem"}Updates project's Postgres config
/v1/projects/{ref}/config/database/postgresPath parameters
- refRequiredstring
Project ref
Body
- effective_cache_sizeOptionalstring
- logical_decoding_work_memOptionalstring
- maintenance_work_memOptionalstring
- track_activity_query_sizeOptionalstring
- max_connectionsOptionalinteger
- max_locks_per_transactionOptionalinteger
- max_parallel_maintenance_workersOptionalinteger
- max_parallel_workersOptionalinteger
- max_parallel_workers_per_gatherOptionalinteger
- max_replication_slotsOptionalinteger
- max_slot_wal_keep_sizeOptionalstring
- max_standby_archive_delayOptionalstring
- max_standby_streaming_delayOptionalstring
- max_wal_sizeOptionalstring
- max_wal_sendersOptionalinteger
- max_worker_processesOptionalinteger
- session_replication_roleOptionalenum
- shared_buffersOptionalstring
- statement_timeoutOptionalstring
- track_commit_timestampOptionalboolean
- wal_keep_sizeOptionalstring
- wal_sender_timeoutOptionalstring
- work_memOptionalstring
- restart_databaseOptionalboolean
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678910111213141516171819202122232425{ "effective_cache_size": "lorem", "logical_decoding_work_mem": "lorem", "maintenance_work_mem": "lorem", "track_activity_query_size": "lorem", "max_connections": 1, "max_locks_per_transaction": 10, "max_parallel_maintenance_workers": 0, "max_parallel_workers": 0, "max_parallel_workers_per_gather": 0, "max_replication_slots": 42, "max_slot_wal_keep_size": "lorem", "max_standby_archive_delay": "lorem", "max_standby_streaming_delay": "lorem", "max_wal_size": "lorem", "max_wal_senders": 42, "max_worker_processes": 0, "session_replication_role": "origin", "shared_buffers": "lorem", "statement_timeout": "lorem", "track_commit_timestamp": true, "wal_keep_size": "lorem", "wal_sender_timeout": "lorem", "work_mem": "lorem"}[Beta] Update project's SSL enforcement configuration.
/v1/projects/{ref}/ssl-enforcementPath parameters
- refRequiredstring
Project ref
Body
- requestedConfigRequiredobject
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123456{ "currentConfig": { "database": true }, "appliedSuccessfully": true}[Beta] Upsert a database migration without applying
/v1/projects/{ref}/database/migrationsOnly available to selected partner OAuth apps
Path parameters
- refRequiredstring
Project ref
Body
- queryRequiredstring
- nameOptionalstring
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}[Beta] Activates a custom hostname for a project.
/v1/projects/{ref}/custom-hostname/activatePath parameters
- refRequiredstring
Project ref
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
1234567891011121314151617181920212223242526272829303132333435363738394041{ "status": "1_not_started", "custom_hostname": "lorem", "data": { "success": true, "errors": [ null ], "messages": [ null ], "result": { "id": "lorem", "hostname": "lorem", "ssl": { "status": "lorem", "validation_records": [ { "txt_name": "lorem", "txt_value": "lorem" } ], "validation_errors": [ { "message": "lorem" } ] }, "ownership_verification": { "type": "lorem", "name": "lorem", "value": "lorem" }, "custom_origin_server": "lorem", "verification_errors": [ "lorem" ], "status": "lorem" } }}[Beta] Activates a vanity subdomain for a project.
/v1/projects/{ref}/vanity-subdomain/activatePath parameters
- refRequiredstring
Project ref
Body
- vanity_subdomainRequiredstring
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
123{ "custom_domain": "lorem"}[Beta] Checks vanity subdomain availability
/v1/projects/{ref}/vanity-subdomain/check-availabilityPath parameters
- refRequiredstring
Project ref
Body
- vanity_subdomainRequiredstring
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
123{ "available": true}[Beta] Deletes a project's vanity subdomain configuration
/v1/projects/{ref}/vanity-subdomainPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}[Beta] Gets project's custom hostname config
/v1/projects/{ref}/custom-hostnamePath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1234567891011121314151617181920212223242526272829303132333435363738394041{ "status": "1_not_started", "custom_hostname": "lorem", "data": { "success": true, "errors": [ null ], "messages": [ null ], "result": { "id": "lorem", "hostname": "lorem", "ssl": { "status": "lorem", "validation_records": [ { "txt_name": "lorem", "txt_value": "lorem" } ], "validation_errors": [ { "message": "lorem" } ] }, "ownership_verification": { "type": "lorem", "name": "lorem", "value": "lorem" }, "custom_origin_server": "lorem", "verification_errors": [ "lorem" ], "status": "lorem" } }}[Beta] Gets current vanity subdomain config
/v1/projects/{ref}/vanity-subdomainPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1234{ "status": "not-used", "custom_domain": "lorem"}[Beta] Updates project's custom hostname configuration
/v1/projects/{ref}/custom-hostname/initializePath parameters
- refRequiredstring
Project ref
Body
- custom_hostnameRequiredstring
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
1234567891011121314151617181920212223242526272829303132333435363738394041{ "status": "1_not_started", "custom_hostname": "lorem", "data": { "success": true, "errors": [ null ], "messages": [ null ], "result": { "id": "lorem", "hostname": "lorem", "ssl": { "status": "lorem", "validation_records": [ { "txt_name": "lorem", "txt_value": "lorem" } ], "validation_errors": [ { "message": "lorem" } ] }, "ownership_verification": { "type": "lorem", "name": "lorem", "value": "lorem" }, "custom_origin_server": "lorem", "verification_errors": [ "lorem" ], "status": "lorem" } }}[Beta] Attempts to verify the DNS configuration for project's custom hostname configuration
/v1/projects/{ref}/custom-hostname/reverifyPath parameters
- refRequiredstring
Project ref
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
1234567891011121314151617181920212223242526272829303132333435363738394041{ "status": "1_not_started", "custom_hostname": "lorem", "data": { "success": true, "errors": [ null ], "messages": [ null ], "result": { "id": "lorem", "hostname": "lorem", "ssl": { "status": "lorem", "validation_records": [ { "txt_name": "lorem", "txt_value": "lorem" } ], "validation_errors": [ { "message": "lorem" } ] }, "ownership_verification": { "type": "lorem", "name": "lorem", "value": "lorem" }, "custom_origin_server": "lorem", "verification_errors": [ "lorem" ], "status": "lorem" } }}Bulk update functions
/v1/projects/{ref}/functionsBulk update functions. It will create a new function or replace existing. The operation is idempotent. NOTE: You will need to manually bump the version.
Path parameters
- refRequiredstring
Project ref
Body
Response codes
- 200
- 401
- 402
- 403
- 429
- 500
Response (200)
123456789101112131415161718{ "functions": [ { "id": "lorem", "slug": "lorem", "name": "lorem", "status": "ACTIVE", "version": 42, "created_at": 42, "updated_at": 42, "verify_jwt": true, "import_map": true, "entrypoint_path": "lorem", "import_map_path": "lorem", "ezbr_sha256": "lorem" } ]}Create a functiondeprecated
/v1/projects/{ref}/functionsThis endpoint is deprecated - use the deploy endpoint. Creates a function and adds it to the specified project.
Path parameters
- refRequiredstring
Project ref
Query parameters
- slugOptionalstring
- nameOptionalstring
- verify_jwtOptionalboolean
Boolean string, true or false
- import_mapOptionalboolean
Boolean string, true or false
- entrypoint_pathOptionalstring
- import_map_pathOptionalstring
- ezbr_sha256Optionalstring
Body
- slugRequiredstring
- nameRequiredstring
- bodyRequiredstring
- verify_jwtOptionalboolean
Response codes
- 201
- 401
- 402
- 403
- 429
- 500
Response (201)
1234567891011121314{ "id": "lorem", "slug": "lorem", "name": "lorem", "status": "ACTIVE", "version": 42, "created_at": 42, "updated_at": 42, "verify_jwt": true, "import_map": true, "entrypoint_path": "lorem", "import_map_path": "lorem", "ezbr_sha256": "lorem"}Delete a function
/v1/projects/{ref}/functions/{function_slug}Deletes a function with the specified slug from the specified project.
Path parameters
- refRequiredstring
Project ref
- function_slugRequiredstring
Function slug
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}Deploy a function
/v1/projects/{ref}/functions/deployA new endpoint to deploy functions. It will create if function does not exist.
Path parameters
- refRequiredstring
Project ref
Query parameters
- slugOptionalstring
- bundleOnlyOptionalboolean
Boolean string, true or false
Body
- fileOptionalArray<string>
- metadataRequiredobject
Response codes
- 201
- 401
- 402
- 403
- 429
- 500
Response (201)
1234567891011121314{ "id": "lorem", "slug": "lorem", "name": "lorem", "status": "ACTIVE", "version": 42, "created_at": 42, "updated_at": 42, "verify_jwt": true, "import_map": true, "entrypoint_path": "lorem", "import_map_path": "lorem", "ezbr_sha256": "lorem"}Retrieve a function
/v1/projects/{ref}/functions/{function_slug}Retrieves a function with the specified slug and project.
Path parameters
- refRequiredstring
Project ref
- function_slugRequiredstring
Function slug
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1234567891011121314{ "id": "lorem", "slug": "lorem", "name": "lorem", "status": "ACTIVE", "version": 42, "created_at": 42, "updated_at": 42, "verify_jwt": true, "import_map": true, "entrypoint_path": "lorem", "import_map_path": "lorem", "ezbr_sha256": "lorem"}Retrieve a function body
/v1/projects/{ref}/functions/{function_slug}/bodyRetrieves a function body for the specified slug and project.
Path parameters
- refRequiredstring
Project ref
- function_slugRequiredstring
Function slug
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}List all functions
/v1/projects/{ref}/functionsReturns all functions you've previously added to the specified project.
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678910111213141516[ { "id": "lorem", "slug": "lorem", "name": "lorem", "status": "ACTIVE", "version": 42, "created_at": 42, "updated_at": 42, "verify_jwt": true, "import_map": true, "entrypoint_path": "lorem", "import_map_path": "lorem", "ezbr_sha256": "lorem" }]Update a function
/v1/projects/{ref}/functions/{function_slug}Updates a function with the specified slug and project.
Path parameters
- refRequiredstring
Project ref
- function_slugRequiredstring
Function slug
Query parameters
- slugOptionalstring
- nameOptionalstring
- verify_jwtOptionalboolean
Boolean string, true or false
- import_mapOptionalboolean
Boolean string, true or false
- entrypoint_pathOptionalstring
- import_map_pathOptionalstring
- ezbr_sha256Optionalstring
Body
- nameOptionalstring
- bodyOptionalstring
- verify_jwtOptionalboolean
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1234567891011121314{ "id": "lorem", "slug": "lorem", "name": "lorem", "status": "ACTIVE", "version": 42, "created_at": 42, "updated_at": 42, "verify_jwt": true, "import_map": true, "entrypoint_path": "lorem", "import_map_path": "lorem", "ezbr_sha256": "lorem"}Count the number of action runs
/v1/projects/{ref}/actionsReturns the total number of action runs of the specified project.
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}Create a database branch
/v1/projects/{ref}/branchesCreates a database branch from the specified project.
Path parameters
- refRequiredstring
Project ref
Body
- branch_nameRequiredstring
- git_branchOptionalstring
- is_defaultOptionalboolean
- persistentOptionalboolean
- regionOptionalstring
- desired_instance_sizeOptionalenum
- release_channelOptionalenum
- postgres_engineOptionalenum
- secretsOptionalobject
- with_dataOptionalboolean
- notify_urlOptionalstring
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
1234567891011121314151617{ "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "name": "lorem", "project_ref": "lorem", "parent_project_ref": "lorem", "is_default": true, "git_branch": "lorem", "pr_number": 42, "latest_check_run_id": 42, "persistent": true, "status": "CREATING_PROJECT", "created_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z", "review_requested_at": "2021-12-31T23:34:00Z", "with_data": true, "notify_url": "https://github.com/NeuraLegion/brokencrystals"}Delete a database branch
/v1/branches/{branch_id_or_ref}Deletes the specified database branch
Path parameters
- branch_id_or_refRequiredone of the following options
Branch ID
Response codes
- 200
- 500
Response (200)
123{ "message": "ok"}[Beta] Diffs a database branch
/v1/branches/{branch_id_or_ref}/diffDiffs the specified database branch
Path parameters
- branch_id_or_refRequiredone of the following options
Branch ID
Query parameters
- included_schemasOptionalstring
Response codes
- 200
- 500
Response (200)
1{}Disables preview branching
/v1/projects/{ref}/branchesDisables preview branching for the specified project
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}Get a database branch
/v1/projects/{ref}/branches/{name}Fetches the specified database branch by its name.
Path parameters
- refRequiredstring
Project ref
- nameRequiredstring
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1234567891011121314151617{ "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "name": "lorem", "project_ref": "lorem", "parent_project_ref": "lorem", "is_default": true, "git_branch": "lorem", "pr_number": 42, "latest_check_run_id": 42, "persistent": true, "status": "CREATING_PROJECT", "created_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z", "review_requested_at": "2021-12-31T23:34:00Z", "with_data": true, "notify_url": "https://github.com/NeuraLegion/brokencrystals"}Get database branch config
/v1/branches/{branch_id_or_ref}Fetches configurations of the specified database branch
Path parameters
- branch_id_or_refRequiredone of the following options
Branch ID
Response codes
- 200
- 500
Response (200)
123456789101112{ "ref": "lorem", "postgres_version": "lorem", "postgres_engine": "lorem", "release_channel": "lorem", "status": "INACTIVE", "db_host": "lorem", "db_port": 1, "db_user": "lorem", "db_pass": "lorem", "jwt_secret": "lorem"}Get the status of an action run
/v1/projects/{ref}/actions/{run_id}Returns the current status of the specified action run.
Path parameters
- refRequiredstring
Project ref
- run_idRequiredstring
Action Run ID
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1234567891011121314151617{ "id": "lorem", "branch_id": "lorem", "run_steps": [ { "name": "clone", "status": "CREATED", "created_at": "lorem", "updated_at": "lorem" } ], "git_config": null, "workdir": "lorem", "check_run_id": 42, "created_at": "lorem", "updated_at": "lorem"}Get the logs of an action run
/v1/projects/{ref}/actions/{run_id}/logsReturns the logs from the specified action run.
Path parameters
- refRequiredstring
Project ref
- run_idRequiredstring
Action Run ID
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}List all action runs
/v1/projects/{ref}/actionsReturns a paginated list of action runs of the specified project.
Path parameters
- refRequiredstring
Project ref
Query parameters
- offsetOptionalnumber
- limitOptionalnumber
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678910111213141516171819[ { "id": "lorem", "branch_id": "lorem", "run_steps": [ { "name": "clone", "status": "CREATED", "created_at": "lorem", "updated_at": "lorem" } ], "git_config": null, "workdir": "lorem", "check_run_id": 42, "created_at": "lorem", "updated_at": "lorem" }]List all database branches
/v1/projects/{ref}/branchesReturns all database branches of the specified project.
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678910111213141516171819[ { "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "name": "lorem", "project_ref": "lorem", "parent_project_ref": "lorem", "is_default": true, "git_branch": "lorem", "pr_number": 42, "latest_check_run_id": 42, "persistent": true, "status": "CREATING_PROJECT", "created_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z", "review_requested_at": "2021-12-31T23:34:00Z", "with_data": true, "notify_url": "https://github.com/NeuraLegion/brokencrystals" }]Merges a database branch
/v1/branches/{branch_id_or_ref}/mergeMerges the specified database branch
Path parameters
- branch_id_or_refRequiredone of the following options
Branch ID
Body
- migration_versionOptionalstring
Response codes
- 201
- 500
Response (201)
1234{ "workflow_run_id": "lorem", "message": "ok"}Pushes a database branch
/v1/branches/{branch_id_or_ref}/pushPushes the specified database branch
Path parameters
- branch_id_or_refRequiredone of the following options
Branch ID
Body
- migration_versionOptionalstring
Response codes
- 201
- 500
Response (201)
1234{ "workflow_run_id": "lorem", "message": "ok"}Resets a database branch
/v1/branches/{branch_id_or_ref}/resetResets the specified database branch
Path parameters
- branch_id_or_refRequiredone of the following options
Branch ID
Body
- migration_versionOptionalstring
Response codes
- 201
- 500
Response (201)
1234{ "workflow_run_id": "lorem", "message": "ok"}Update database branch config
/v1/branches/{branch_id_or_ref}Updates the configuration of the specified database branch
Path parameters
- branch_id_or_refRequiredone of the following options
Branch ID
Body
- branch_nameOptionalstring
- git_branchOptionalstring
- reset_on_pushOptionalDeprecatedboolean
- persistentOptionalboolean
- statusOptionalenum
- request_reviewOptionalboolean
- notify_urlOptionalstring
Response codes
- 200
- 500
Response (200)
1234567891011121314151617{ "id": "fbdf5a53-161e-4460-98ad-0e39408d8689", "name": "lorem", "project_ref": "lorem", "parent_project_ref": "lorem", "is_default": true, "git_branch": "lorem", "pr_number": 42, "latest_check_run_id": 42, "persistent": true, "status": "CREATING_PROJECT", "created_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z", "review_requested_at": "2021-12-31T23:34:00Z", "with_data": true, "notify_url": "https://github.com/NeuraLegion/brokencrystals"}Update the status of an action run
/v1/projects/{ref}/actions/{run_id}/statusUpdates the status of an ongoing action run.
Path parameters
- refRequiredstring
Project ref
- run_idRequiredstring
Action Run ID
Body
- cloneOptionalenum
- pullOptionalenum
- healthOptionalenum
- configureOptionalenum
- migrateOptionalenum
- seedOptionalenum
- deployOptionalenum
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123{ "message": "ok"}[Beta] Exchange auth code for user's access and refresh token
/v1/oauth/tokenBody
- grant_typeOptionalenum
- client_idOptionalstring
- client_secretOptionalstring
- codeOptionalstring
- code_verifierOptionalstring
- redirect_uriOptionalstring
- refresh_tokenOptionalstring
- resourceOptionalstring
- scopeOptionalstring
Response codes
- 201
Response (201)
123456{ "access_token": "lorem", "refresh_token": "lorem", "expires_in": 42, "token_type": "Bearer"}[Beta] Revoke oauth app authorization and it's corresponding tokens
/v1/oauth/revokeBody
- client_idRequiredstring
- client_secretRequiredstring
- refresh_tokenRequiredstring
Response codes
- 204
Response (204)
1{}Create an organization
/v1/organizationsBody
- nameRequiredstring
Response codes
- 201
- 500
Response (201)
1234{ "id": "lorem", "name": "lorem"}Gets information about the organization
/v1/organizations/{slug}Path parameters
- slugRequiredstring
Organization slug
Response codes
- 200
- 401
- 403
- 429
Response (200)
1234567891011{ "id": "lorem", "name": "lorem", "plan": "free", "opt_in_tags": [ "AI_SQL_GENERATOR_OPT_IN" ], "allowed_release_channels": [ "internal" ]}List all organizations
/v1/organizationsReturns a list of organizations that you currently belong to.
Response codes
- 200
- 500
Response (200)
123456[ { "id": "lorem", "name": "lorem" }]List members of an organization
/v1/organizations/{slug}/membersPath parameters
- slugRequiredstring
Organization slug
Response codes
- 200
- 401
- 403
- 429
Response (200)
123456789[ { "user_id": "lorem", "user_name": "lorem", "email": "lorem", "role_name": "lorem", "mfa_enabled": true }]Cancels the given project restoration
/v1/projects/{ref}/restore/cancelPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
Response (200)
1{}Create a project
/v1/projectsBody
- db_passRequiredstring
- nameRequiredstring
- organization_idRequiredstring
- planOptionalDeprecatedenum
- regionOptionalDeprecatedenum
- region_selectionOptionalone of the following options
- kps_enabledOptionalDeprecatedboolean
- desired_instance_sizeOptionalenum
- template_urlOptionalstring
- release_channelOptionalDeprecatedenum
- postgres_engineOptionalDeprecatedenum
Response codes
- 201
Response (201)
12345678{ "id": "lorem", "organization_id": "lorem", "name": "lorem", "region": "us-east-1", "created_at": "2023-03-29T16:32:59Z", "status": "INACTIVE"}Deletes the given project
/v1/projects/{ref}Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
Response (200)
12345{ "id": 42, "ref": "lorem", "name": "lorem"}[Beta] Remove network bans.
/v1/projects/{ref}/network-bansPath parameters
- refRequiredstring
Project ref
Body
- ipv4_addressesRequiredArray<string>
- requester_ipOptionalboolean
- identifierOptionalstring
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}[Beta] Gets the list of available regions that can be used for a new project
/v1/projects/available-regionsQuery parameters
- organization_slugRequiredstring
Slug of your organization
- continentOptionalenum
Continent code to determine regional recommendations: NA (North America), SA (South America), EU (Europe), AF (Africa), AS (Asia), OC (Oceania), AN (Antarctica)
Response codes
- 200
Response (200)
123456789101112131415161718192021222324252627282930313233343536{ "recommendations": { "smartGroup": { "name": "lorem", "code": "americas", "type": "smartGroup" }, "specific": [ { "name": "lorem", "code": "lorem", "type": "specific", "provider": "AWS", "status": "capacity" } ] }, "all": { "smartGroup": [ { "name": "lorem", "code": "americas", "type": "smartGroup" } ], "specific": [ { "name": "lorem", "code": "lorem", "type": "specific", "provider": "AWS", "status": "capacity" } ] }}[Beta] Gets project's network restrictions
/v1/projects/{ref}/network-restrictionsPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678910111213141516171819202122{ "entitlement": "disallowed", "config": { "dbAllowedCidrs": [ "lorem" ], "dbAllowedCidrsV6": [ "lorem" ] }, "old_config": { "dbAllowedCidrs": [ "lorem" ], "dbAllowedCidrsV6": [ "lorem" ] }, "status": "stored", "updated_at": "2021-12-31T23:34:00Z", "applied_at": "2021-12-31T23:34:00Z"}[Beta] Returns the project's eligibility for upgrades
/v1/projects/{ref}/upgrade/eligibilityPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1234567891011121314151617181920212223242526{ "eligible": true, "current_app_version": "lorem", "current_app_version_release_channel": "internal", "latest_app_version": "lorem", "target_upgrade_versions": [ { "postgres_version": "13", "release_channel": "internal", "app_version": "lorem" } ], "duration_estimate_hours": 42, "legacy_auth_custom_roles": [ "lorem" ], "objects_to_be_dropped": [ "lorem" ], "unsupported_extensions": [ "lorem" ], "user_defined_objects_in_internal_schemas": [ "lorem" ]}[Beta] Gets the latest status of the project's upgrade
/v1/projects/{ref}/upgrade/statusPath parameters
- refRequiredstring
Project ref
Query parameters
- tracking_idOptionalstring
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678910{ "databaseUpgradeStatus": { "initiated_at": "lorem", "latest_status_at": "lorem", "target_version": 42, "error": "1_upgraded_instance_launch_failed", "progress": "0_requested", "status": 42 }}Gets a specific project that belongs to the authenticated user
/v1/projects/{ref}Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1234567891011121314{ "id": "lorem", "organization_id": "lorem", "name": "lorem", "region": "us-east-1", "created_at": "2023-03-29T16:32:59Z", "status": "INACTIVE", "database": { "host": "lorem", "version": "lorem", "postgres_engine": "lorem", "release_channel": "lorem" }}Gets project's service health status
/v1/projects/{ref}/healthPath parameters
- refRequiredstring
Project ref
Query parameters
- servicesRequiredArray<enum>
- timeout_msOptionalinteger
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678910111213[ { "name": "auth", "healthy": true, "status": "COMING_UP", "info": { "name": "GoTrue", "version": "lorem", "description": "lorem" }, "error": "lorem" }][Beta] Gets project's network bans
/v1/projects/{ref}/network-bans/retrievePath parameters
- refRequiredstring
Project ref
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
12345{ "banned_ipv4_addresses": [ "lorem" ]}[Beta] Gets project's network bans with additional information about which databases they affect
/v1/projects/{ref}/network-bans/retrieve/enrichedPath parameters
- refRequiredstring
Project ref
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
123456789{ "banned_ipv4_addresses": [ { "banned_address": "lorem", "identifier": "lorem", "type": "lorem" } ]}List all projects
/v1/projectsReturns a list of all projects you've previously created.
Response codes
- 200
Response (200)
12345678910111213141516[ { "id": "lorem", "organization_id": "lorem", "name": "lorem", "region": "us-east-1", "created_at": "2023-03-29T16:32:59Z", "status": "INACTIVE", "database": { "host": "lorem", "version": "lorem", "postgres_engine": "lorem", "release_channel": "lorem" } }]Lists available restore versions for the given project
/v1/projects/{ref}/restorePath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
Response (200)
123456789{ "available_versions": [ { "version": "lorem", "release_channel": "internal", "postgres_engine": "13" } ]}[Alpha] Updates project's network restrictions by adding or removing CIDRs
/v1/projects/{ref}/network-restrictionsPath parameters
- refRequiredstring
Project ref
Body
- addOptionalobject
- removeOptionalobject
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678910111213141516171819202122{ "entitlement": "disallowed", "config": { "dbAllowedCidrs": [ { "address": "lorem", "type": "v4" } ] }, "old_config": { "dbAllowedCidrs": [ { "address": "lorem", "type": "v4" } ] }, "updated_at": "2021-12-31T23:34:00Z", "applied_at": "2021-12-31T23:34:00Z", "status": "stored"}Pauses the given project
/v1/projects/{ref}/pausePath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
Response (200)
1{}Restores the given project
/v1/projects/{ref}/restorePath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
Response (200)
1{}[Beta] Updates project's network restrictions
/v1/projects/{ref}/network-restrictions/applyPath parameters
- refRequiredstring
Project ref
Body
- dbAllowedCidrsOptionalArray<string>
- dbAllowedCidrsV6OptionalArray<string>
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
12345678910111213141516171819202122{ "entitlement": "disallowed", "config": { "dbAllowedCidrs": [ "lorem" ], "dbAllowedCidrsV6": [ "lorem" ] }, "old_config": { "dbAllowedCidrs": [ "lorem" ], "dbAllowedCidrsV6": [ "lorem" ] }, "status": "stored", "updated_at": "2021-12-31T23:34:00Z", "applied_at": "2021-12-31T23:34:00Z"}[Beta] Upgrades the project's Postgres version
/v1/projects/{ref}/upgradePath parameters
- refRequiredstring
Project ref
Body
- target_versionRequiredstring
- release_channelOptionalenum
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
123{ "tracking_id": "lorem"}Gets project's postgrest config
/v1/projects/{ref}/postgrestPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1234567{ "db_schema": "lorem", "max_rows": 42, "db_extra_search_path": "lorem", "db_pool": 42, "jwt_secret": "lorem"}Updates project's postgrest config
/v1/projects/{ref}/postgrestPath parameters
- refRequiredstring
Project ref
Body
- db_extra_search_pathOptionalstring
- db_schemaOptionalstring
- max_rowsOptionalinteger
- db_poolOptionalinteger
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123456{ "db_schema": "lorem", "max_rows": 42, "db_extra_search_path": "lorem", "db_pool": 42}Bulk create secrets
/v1/projects/{ref}/secretsCreates multiple secrets and adds them to the specified project.
Path parameters
- refRequiredstring
Project ref
Body
Response codes
- 201
- 401
- 403
- 429
- 500
Response (201)
1{}Bulk delete secrets
/v1/projects/{ref}/secretsDeletes all secrets with the given names from the specified project
Path parameters
- refRequiredstring
Project ref
Body
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}Creates a new API key for the project
/v1/projects/{ref}/api-keysPath parameters
- refRequiredstring
Project ref
Query parameters
- revealOptionalboolean
Boolean string, true or false
Body
- typeRequiredenum
- nameRequiredstring
- descriptionOptionalstring
- secret_jwt_templateOptionalobject
Response codes
- 201
- 401
- 403
- 429
Response (201)
123456789101112131415{ "api_key": "lorem", "id": "lorem", "type": "legacy", "prefix": "lorem", "name": "lorem", "description": "lorem", "hash": "lorem", "secret_jwt_template": { "property1": null, "property2": null }, "inserted_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z"}Deletes an API key for the project
/v1/projects/{ref}/api-keys/{id}Path parameters
- refRequiredstring
Project ref
- idRequiredstring
Query parameters
- revealOptionalboolean
Boolean string, true or false
- was_compromisedOptionalboolean
Boolean string, true or false
- reasonOptionalstring
Response codes
- 200
- 401
- 403
- 429
Response (200)
123456789101112131415{ "api_key": "lorem", "id": "lorem", "type": "legacy", "prefix": "lorem", "name": "lorem", "description": "lorem", "hash": "lorem", "secret_jwt_template": { "property1": null, "property2": null }, "inserted_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z"}[Beta] Gets project's pgsodium config
/v1/projects/{ref}/pgsodiumPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123{ "root_key": "lorem"}Get API key
/v1/projects/{ref}/api-keys/{id}Path parameters
- refRequiredstring
Project ref
- idRequiredstring
Query parameters
- revealOptionalboolean
Boolean string, true or false
Response codes
- 200
- 401
- 403
- 429
Response (200)
123456789101112131415{ "api_key": "lorem", "id": "lorem", "type": "legacy", "prefix": "lorem", "name": "lorem", "description": "lorem", "hash": "lorem", "secret_jwt_template": { "property1": null, "property2": null }, "inserted_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z"}Get project api keys
/v1/projects/{ref}/api-keysPath parameters
- refRequiredstring
Project ref
Query parameters
- revealOptionalboolean
Boolean string, true or false
Response codes
- 200
- 401
- 403
- 429
Response (200)
1234567891011121314151617[ { "api_key": "lorem", "id": "lorem", "type": "legacy", "prefix": "lorem", "name": "lorem", "description": "lorem", "hash": "lorem", "secret_jwt_template": { "property1": null, "property2": null }, "inserted_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z" }]Check whether JWT based legacy (anon, service_role) API keys are enabled. This API endpoint will be removed in the future, check for HTTP 404 Not Found.
/v1/projects/{ref}/api-keys/legacyPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
Response (200)
123{ "enabled": true}List all secrets
/v1/projects/{ref}/secretsReturns all secrets you've previously added to the specified project.
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1234567[ { "name": "lorem", "value": "lorem", "updated_at": "lorem" }][Beta] Updates project's pgsodium config. Updating the root_key can cause all data encrypted with the older key to become inaccessible.
/v1/projects/{ref}/pgsodiumPath parameters
- refRequiredstring
Project ref
Body
- root_keyRequiredstring
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123{ "root_key": "lorem"}Updates an API key for the project
/v1/projects/{ref}/api-keys/{id}Path parameters
- refRequiredstring
Project ref
- idRequiredstring
Query parameters
- revealOptionalboolean
Boolean string, true or false
Body
- nameOptionalstring
- descriptionOptionalstring
- secret_jwt_templateOptionalobject
Response codes
- 200
- 401
- 403
- 429
Response (200)
123456789101112131415{ "api_key": "lorem", "id": "lorem", "type": "legacy", "prefix": "lorem", "name": "lorem", "description": "lorem", "hash": "lorem", "secret_jwt_template": { "property1": null, "property2": null }, "inserted_at": "2021-12-31T23:34:00Z", "updated_at": "2021-12-31T23:34:00Z"}Disable or re-enable JWT based legacy (anon, service_role) API keys. This API endpoint will be removed in the future, check for HTTP 404 Not Found.
/v1/projects/{ref}/api-keys/legacyPath parameters
- refRequiredstring
Project ref
Query parameters
- enabledRequiredboolean
Boolean string, true or false
Response codes
- 200
- 401
- 403
- 429
Response (200)
123{ "enabled": true}Gets project's storage config
/v1/projects/{ref}/config/storagePath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
123456789101112131415161718192021{ "fileSizeLimit": 42, "features": { "imageTransformation": { "enabled": true }, "s3Protocol": { "enabled": true }, "icebergCatalog": { "enabled": true } }, "capabilities": { "list_v2": true, "iceberg_catalog": true }, "external": { "upstreamTarget": "main" }}Lists all buckets
/v1/projects/{ref}/storage/bucketsPath parameters
- refRequiredstring
Project ref
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
12345678910[ { "id": "lorem", "name": "lorem", "owner": "lorem", "created_at": "lorem", "updated_at": "lorem", "public": true }]Updates project's storage config
/v1/projects/{ref}/config/storagePath parameters
- refRequiredstring
Project ref
Body
- fileSizeLimitOptionalinteger
- featuresOptionalobject
- externalOptionalobject
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}