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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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_refOptionalstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject ref 
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}[Beta] Gets project's custom hostname config
/v1/projects/{ref}/custom-hostnamePath parameters
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject ref 
Query parameters
- slugOptionalstring
- nameOptionalstring
- verify_jwtOptionalbooleanBoolean string, true or false 
- import_mapOptionalbooleanBoolean 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
- refRequiredstringProject ref 
- function_slugRequiredstringFunction 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
- refRequiredstringProject ref 
Query parameters
- slugOptionalstring
- bundleOnlyOptionalbooleanBoolean 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
- refRequiredstringProject ref 
- function_slugRequiredstringFunction 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
- refRequiredstringProject ref 
- function_slugRequiredstringFunction 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
- refRequiredstringProject 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
- refRequiredstringProject ref 
- function_slugRequiredstringFunction slug 
Query parameters
- slugOptionalstring
- nameOptionalstring
- verify_jwtOptionalbooleanBoolean string, true or false 
- import_mapOptionalbooleanBoolean 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
- refRequiredstringProject 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
- refRequiredstringProject 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 optionsBranch 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 optionsBranch 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
- refRequiredstringProject 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
- refRequiredstringProject 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 optionsBranch 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
- refRequiredstringProject ref 
- run_idRequiredstringAction 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
- refRequiredstringProject ref 
- run_idRequiredstringAction 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
- refRequiredstringProject 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
- refRequiredstringProject 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 optionsBranch 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 optionsBranch 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 optionsBranch 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 optionsBranch 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
- refRequiredstringProject ref 
- run_idRequiredstringAction 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
- slugRequiredstringOrganization 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
- slugRequiredstringOrganization 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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_slugRequiredstringSlug of your organization 
- continentOptionalenumContinent 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject ref 
Response codes
- 200
- 401
- 403
- 429
Response (200)
1{}Restores the given project
/v1/projects/{ref}/restorePath parameters
- refRequiredstringProject ref 
Response codes
- 200
- 401
- 403
- 429
Response (200)
1{}[Beta] Updates project's network restrictions
/v1/projects/{ref}/network-restrictions/applyPath parameters
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject ref 
Query parameters
- revealOptionalbooleanBoolean 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
- refRequiredstringProject ref 
- idRequiredstring
Query parameters
- revealOptionalbooleanBoolean string, true or false 
- was_compromisedOptionalbooleanBoolean 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
- refRequiredstringProject 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
- refRequiredstringProject ref 
- idRequiredstring
Query parameters
- revealOptionalbooleanBoolean 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
- refRequiredstringProject ref 
Query parameters
- revealOptionalbooleanBoolean 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject ref 
- idRequiredstring
Query parameters
- revealOptionalbooleanBoolean 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
- refRequiredstringProject ref 
Query parameters
- enabledRequiredbooleanBoolean 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
- refRequiredstringProject 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
- refRequiredstringProject 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
- refRequiredstringProject ref 
Body
- fileSizeLimitOptionalinteger
- featuresOptionalobject
- externalOptionalobject
Response codes
- 200
- 401
- 403
- 429
- 500
Response (200)
1{}