Management API
Manage your Supabase organizations and projects programmatically.
Authentication
All API requests require a Supabase Personal token to be included in the Authorization header: Authorization Bearer <supabase_personal_token>
.
To generate or manage your API token, visit your account page.
Your API tokens carry the same privileges as your user account, so be sure to keep it secret.
_10 curl https://api.supabase.com/v1/projects \_10 -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
Creates a new SSO provider
/v1/projects/{ref}/config/auth/sso/providers
Path parameters
- refRequiredstring
Project ref
Body
- typeRequiredenum
- metadata_xmlOptionalstring
- metadata_urlOptionalstring
- domainsOptionalArray<string>
- attribute_mappingOptionalobject
Response codes
- 201
- 403
- 404
Response (201)
{
"id": "lorem",
"saml": {
"id": "lorem",
"entity_id": "lorem",
"metadata_url": "lorem",
"metadata_xml": "lorem",
"attribute_mapping": {
"keys": {
"property1": {
"default": {},
"name": "lorem",
"names": [
"lorem"
],
"array": true
},
"property2": {
"default": {},
"name": "lorem",
"names": [
"lorem"
],
"array": true
}
}
}
},
"domains": [
{
"id": "lorem",
"domain": "lorem",
"created_at": "lorem",
"updated_at": "lorem"
}
],
"created_at": "lorem",
"updated_at": "lorem"
}
Removes a SSO provider by its UUID
/v1/projects/{ref}/config/auth/sso/providers/{provider_id}
Path parameters
- refRequiredstring
Project ref
- provider_idRequiredstring
Response codes
- 200
- 403
- 404
Response (200)
{
"id": "lorem",
"saml": {
"id": "lorem",
"entity_id": "lorem",
"metadata_url": "lorem",
"metadata_xml": "lorem",
"attribute_mapping": {
"keys": {
"property1": {
"default": {},
"name": "lorem",
"names": [
"lorem"
],
"array": true
},
"property2": {
"default": {},
"name": "lorem",
"names": [
"lorem"
],
"array": true
}
}
}
},
"domains": [
{
"id": "lorem",
"domain": "lorem",
"created_at": "lorem",
"updated_at": "lorem"
}
],
"created_at": "lorem",
"updated_at": "lorem"
}
Gets a SSO provider by its UUID
/v1/projects/{ref}/config/auth/sso/providers/{provider_id}
Path parameters
- refRequiredstring
Project ref
- provider_idRequiredstring
Response codes
- 200
- 403
- 404
Response (200)
{
"id": "lorem",
"saml": {
"id": "lorem",
"entity_id": "lorem",
"metadata_url": "lorem",
"metadata_xml": "lorem",
"attribute_mapping": {
"keys": {
"property1": {
"default": {},
"name": "lorem",
"names": [
"lorem"
],
"array": true
},
"property2": {
"default": {},
"name": "lorem",
"names": [
"lorem"
],
"array": true
}
}
}
},
"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/auth
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
- 500
Response (200)
{
"api_max_request_duration": 42,
"db_max_pool_size": 42,
"jwt_exp": 42,
"mailer_otp_exp": 42,
"mailer_otp_length": 42,
"mfa_max_enrolled_factors": 42,
"mfa_phone_otp_length": 42,
"mfa_phone_max_frequency": 42,
"password_min_length": 42,
"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,
"security_refresh_token_reuse_interval": 42,
"sessions_inactivity_timeout": 42,
"sessions_timebox": 42,
"sms_max_frequency": 42,
"sms_otp_exp": 42,
"sms_otp_length": 42,
"smtp_max_frequency": 42,
"disable_signup": true,
"external_anonymous_users_enabled": true,
"external_apple_additional_client_ids": "lorem",
"external_apple_client_id": "lorem",
"external_apple_enabled": true,
"external_apple_secret": "lorem",
"external_azure_client_id": "lorem",
"external_azure_enabled": true,
"external_azure_secret": "lorem",
"external_azure_url": "lorem",
"external_bitbucket_client_id": "lorem",
"external_bitbucket_enabled": true,
"external_bitbucket_secret": "lorem",
"external_discord_client_id": "lorem",
"external_discord_enabled": true,
"external_discord_secret": "lorem",
"external_email_enabled": true,
"external_facebook_client_id": "lorem",
"external_facebook_enabled": true,
"external_facebook_secret": "lorem",
"external_figma_client_id": "lorem",
"external_figma_enabled": true,
"external_figma_secret": "lorem",
"external_github_client_id": "lorem",
"external_github_enabled": true,
"external_github_secret": "lorem",
"external_gitlab_client_id": "lorem",
"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_enabled": true,
"external_google_secret": "lorem",
"external_google_skip_nonce_check": true,
"external_kakao_client_id": "lorem",
"external_kakao_enabled": true,
"external_kakao_secret": "lorem",
"external_keycloak_client_id": "lorem",
"external_keycloak_enabled": true,
"external_keycloak_secret": "lorem",
"external_keycloak_url": "lorem",
"external_linkedin_oidc_client_id": "lorem",
"external_linkedin_oidc_enabled": true,
"external_linkedin_oidc_secret": "lorem",
"external_slack_oidc_client_id": "lorem",
"external_slack_oidc_enabled": true,
"external_slack_oidc_secret": "lorem",
"external_notion_client_id": "lorem",
"external_notion_enabled": true,
"external_notion_secret": "lorem",
"external_phone_enabled": true,
"external_slack_client_id": "lorem",
"external_slack_enabled": true,
"external_slack_secret": "lorem",
"external_spotify_client_id": "lorem",
"external_spotify_enabled": true,
"external_spotify_secret": "lorem",
"external_twitch_client_id": "lorem",
"external_twitch_enabled": true,
"external_twitch_secret": "lorem",
"external_twitter_client_id": "lorem",
"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_zoom_client_id": "lorem",
"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",
"mailer_allow_unverified_email_sign_ins": true,
"mailer_autoconfirm": true,
"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_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",
"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_template": "lorem",
"password_hibp_enabled": true,
"password_required_characters": "lorem",
"refresh_token_rotation_enabled": true,
"saml_enabled": true,
"saml_external_url": "lorem",
"saml_allow_encrypted_assertions": true,
"security_captcha_enabled": true,
"security_captcha_provider": "lorem",
"security_captcha_secret": "lorem",
"security_manual_linking_enabled": true,
"security_update_password_require_reauthentication": true,
"sessions_single_per_user": true,
"sessions_tags": "lorem",
"site_url": "lorem",
"sms_autoconfirm": true,
"sms_messagebird_access_key": "lorem",
"sms_messagebird_originator": "lorem",
"sms_provider": "lorem",
"sms_template": "lorem",
"sms_test_otp": "lorem",
"sms_test_otp_valid_until": "lorem",
"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": "lorem",
"smtp_host": "lorem",
"smtp_pass": "lorem",
"smtp_port": "lorem",
"smtp_sender_name": "lorem",
"smtp_user": "lorem",
"uri_allow_list": "lorem"
}
Lists all SSO providers
/v1/projects/{ref}/config/auth/sso/providers
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
- 404
Response (200)
{
"items": [
{
"id": "lorem",
"saml": {
"id": "lorem",
"entity_id": "lorem",
"metadata_url": "lorem",
"metadata_xml": "lorem",
"attribute_mapping": {
"keys": {
"property1": {
"default": {},
"name": "lorem",
"names": [
"lorem"
],
"array": true
},
"property2": {
"default": {},
"name": "lorem",
"names": [
"lorem"
],
"array": true
}
}
}
},
"domains": [
{
"id": "lorem",
"domain": "lorem",
"created_at": "lorem",
"updated_at": "lorem"
}
],
"created_at": "lorem",
"updated_at": "lorem"
}
]
}
Updates a SSO provider by its UUID
/v1/projects/{ref}/config/auth/sso/providers/{provider_id}
Path parameters
- refRequiredstring
Project ref
- provider_idRequiredstring
Body
- metadata_xmlOptionalstring
- metadata_urlOptionalstring
- domainsOptionalArray<string>
- attribute_mappingOptionalobject
Response codes
- 200
- 403
- 404
Response (200)
{
"id": "lorem",
"saml": {
"id": "lorem",
"entity_id": "lorem",
"metadata_url": "lorem",
"metadata_xml": "lorem",
"attribute_mapping": {
"keys": {
"property1": {
"default": {},
"name": "lorem",
"names": [
"lorem"
],
"array": true
},
"property2": {
"default": {},
"name": "lorem",
"names": [
"lorem"
],
"array": true
}
}
}
},
"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/auth
Path parameters
- refRequiredstring
Project ref
Body
- jwt_expOptionalinteger
- smtp_max_frequencyOptionalinteger
- mfa_max_enrolled_factorsOptionalinteger
- sessions_timeboxOptionalinteger
- sessions_inactivity_timeoutOptionalinteger
- rate_limit_anonymous_usersOptionalinteger
- rate_limit_email_sentOptionalinteger
- rate_limit_sms_sentOptionalinteger
- rate_limit_verifyOptionalinteger
- rate_limit_token_refreshOptionalinteger
- rate_limit_otpOptionalinteger
- password_min_lengthOptionalinteger
- security_refresh_token_reuse_intervalOptionalinteger
- mailer_otp_expOptionalinteger
- mailer_otp_lengthOptionalinteger
- sms_max_frequencyOptionalinteger
- sms_otp_expOptionalinteger
- sms_otp_lengthOptionalinteger
- db_max_pool_sizeOptionalinteger
- api_max_request_durationOptionalinteger
- mfa_phone_max_frequencyOptionalinteger
- mfa_phone_otp_lengthOptionalinteger
- site_urlOptionalstring
- disable_signupOptionalboolean
- smtp_admin_emailOptionalstring
- smtp_hostOptionalstring
- smtp_portOptionalstring
- smtp_userOptionalstring
- smtp_passOptionalstring
- 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_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
- uri_allow_listOptionalstring
- external_anonymous_users_enabledOptionalboolean
- external_email_enabledOptionalboolean
- external_phone_enabledOptionalboolean
- saml_enabledOptionalboolean
- saml_external_urlOptionalstring
- security_captcha_enabledOptionalboolean
- security_captcha_providerOptionalstring
- security_captcha_secretOptionalstring
- sessions_single_per_userOptionalboolean
- sessions_tagsOptionalstring
- mailer_secure_email_change_enabledOptionalboolean
- refresh_token_rotation_enabledOptionalboolean
- password_hibp_enabledOptionalboolean
- password_required_charactersOptionalenum
- security_manual_linking_enabledOptionalboolean
- security_update_password_require_reauthenticationOptionalboolean
- sms_autoconfirmOptionalboolean
- sms_providerOptionalstring
- 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
- external_apple_enabledOptionalboolean
- external_apple_client_idOptionalstring
- external_apple_secretOptionalstring
- external_apple_additional_client_idsOptionalstring
- external_azure_enabledOptionalboolean
- external_azure_client_idOptionalstring
- external_azure_secretOptionalstring
- external_azure_urlOptionalstring
- external_bitbucket_enabledOptionalboolean
- external_bitbucket_client_idOptionalstring
- external_bitbucket_secretOptionalstring
- external_discord_enabledOptionalboolean
- external_discord_client_idOptionalstring
- external_discord_secretOptionalstring
- external_facebook_enabledOptionalboolean
- external_facebook_client_idOptionalstring
- external_facebook_secretOptionalstring
- external_figma_enabledOptionalboolean
- external_figma_client_idOptionalstring
- external_figma_secretOptionalstring
- external_github_enabledOptionalboolean
- external_github_client_idOptionalstring
- external_github_secretOptionalstring
- external_gitlab_enabledOptionalboolean
- external_gitlab_client_idOptionalstring
- external_gitlab_secretOptionalstring
- external_gitlab_urlOptionalstring
- external_google_enabledOptionalboolean
- external_google_client_idOptionalstring
- external_google_secretOptionalstring
- external_google_additional_client_idsOptionalstring
- external_google_skip_nonce_checkOptionalboolean
- external_kakao_enabledOptionalboolean
- external_kakao_client_idOptionalstring
- external_kakao_secretOptionalstring
- external_keycloak_enabledOptionalboolean
- external_keycloak_client_idOptionalstring
- external_keycloak_secretOptionalstring
- external_keycloak_urlOptionalstring
- external_linkedin_oidc_enabledOptionalboolean
- external_linkedin_oidc_client_idOptionalstring
- external_linkedin_oidc_secretOptionalstring
- external_slack_oidc_enabledOptionalboolean
- external_slack_oidc_client_idOptionalstring
- external_slack_oidc_secretOptionalstring
- external_notion_enabledOptionalboolean
- external_notion_client_idOptionalstring
- external_notion_secretOptionalstring
- external_slack_enabledOptionalboolean
- external_slack_client_idOptionalstring
- external_slack_secretOptionalstring
- external_spotify_enabledOptionalboolean
- external_spotify_client_idOptionalstring
- external_spotify_secretOptionalstring
- external_twitch_enabledOptionalboolean
- external_twitch_client_idOptionalstring
- external_twitch_secretOptionalstring
- external_twitter_enabledOptionalboolean
- external_twitter_client_idOptionalstring
- external_twitter_secretOptionalstring
- external_workos_enabledOptionalboolean
- external_workos_client_idOptionalstring
- external_workos_secretOptionalstring
- external_workos_urlOptionalstring
- external_zoom_enabledOptionalboolean
- external_zoom_client_idOptionalstring
- external_zoom_secretOptionalstring
- 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_templateOptionalstring
Response codes
- 200
- 403
- 500
Response (200)
{
"api_max_request_duration": 42,
"db_max_pool_size": 42,
"jwt_exp": 42,
"mailer_otp_exp": 42,
"mailer_otp_length": 42,
"mfa_max_enrolled_factors": 42,
"mfa_phone_otp_length": 42,
"mfa_phone_max_frequency": 42,
"password_min_length": 42,
"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,
"security_refresh_token_reuse_interval": 42,
"sessions_inactivity_timeout": 42,
"sessions_timebox": 42,
"sms_max_frequency": 42,
"sms_otp_exp": 42,
"sms_otp_length": 42,
"smtp_max_frequency": 42,
"disable_signup": true,
"external_anonymous_users_enabled": true,
"external_apple_additional_client_ids": "lorem",
"external_apple_client_id": "lorem",
"external_apple_enabled": true,
"external_apple_secret": "lorem",
"external_azure_client_id": "lorem",
"external_azure_enabled": true,
"external_azure_secret": "lorem",
"external_azure_url": "lorem",
"external_bitbucket_client_id": "lorem",
"external_bitbucket_enabled": true,
"external_bitbucket_secret": "lorem",
"external_discord_client_id": "lorem",
"external_discord_enabled": true,
"external_discord_secret": "lorem",
"external_email_enabled": true,
"external_facebook_client_id": "lorem",
"external_facebook_enabled": true,
"external_facebook_secret": "lorem",
"external_figma_client_id": "lorem",
"external_figma_enabled": true,
"external_figma_secret": "lorem",
"external_github_client_id": "lorem",
"external_github_enabled": true,
"external_github_secret": "lorem",
"external_gitlab_client_id": "lorem",
"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_enabled": true,
"external_google_secret": "lorem",
"external_google_skip_nonce_check": true,
"external_kakao_client_id": "lorem",
"external_kakao_enabled": true,
"external_kakao_secret": "lorem",
"external_keycloak_client_id": "lorem",
"external_keycloak_enabled": true,
"external_keycloak_secret": "lorem",
"external_keycloak_url": "lorem",
"external_linkedin_oidc_client_id": "lorem",
"external_linkedin_oidc_enabled": true,
"external_linkedin_oidc_secret": "lorem",
"external_slack_oidc_client_id": "lorem",
"external_slack_oidc_enabled": true,
"external_slack_oidc_secret": "lorem",
"external_notion_client_id": "lorem",
"external_notion_enabled": true,
"external_notion_secret": "lorem",
"external_phone_enabled": true,
"external_slack_client_id": "lorem",
"external_slack_enabled": true,
"external_slack_secret": "lorem",
"external_spotify_client_id": "lorem",
"external_spotify_enabled": true,
"external_spotify_secret": "lorem",
"external_twitch_client_id": "lorem",
"external_twitch_enabled": true,
"external_twitch_secret": "lorem",
"external_twitter_client_id": "lorem",
"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_zoom_client_id": "lorem",
"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",
"mailer_allow_unverified_email_sign_ins": true,
"mailer_autoconfirm": true,
"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_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",
"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_template": "lorem",
"password_hibp_enabled": true,
"password_required_characters": "lorem",
"refresh_token_rotation_enabled": true,
"saml_enabled": true,
"saml_external_url": "lorem",
"saml_allow_encrypted_assertions": true,
"security_captcha_enabled": true,
"security_captcha_provider": "lorem",
"security_captcha_secret": "lorem",
"security_manual_linking_enabled": true,
"security_update_password_require_reauthentication": true,
"sessions_single_per_user": true,
"sessions_tags": "lorem",
"site_url": "lorem",
"sms_autoconfirm": true,
"sms_messagebird_access_key": "lorem",
"sms_messagebird_originator": "lorem",
"sms_provider": "lorem",
"sms_template": "lorem",
"sms_test_otp": "lorem",
"sms_test_otp_valid_until": "lorem",
"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": "lorem",
"smtp_host": "lorem",
"smtp_pass": "lorem",
"smtp_port": "lorem",
"smtp_sender_name": "lorem",
"smtp_user": "lorem",
"uri_allow_list": "lorem"
}
Disables project's readonly mode for the next 15 minutes
/v1/projects/{ref}/readonly/temporary-disable
Path parameters
- refRequiredstring
Project ref
Response codes
- 201
- 500
Response (201)
{}
[Beta] Enables Database Webhooks on the project
/v1/projects/{ref}/database/webhooks/enable
Path parameters
- refRequiredstring
Project ref
Response codes
- 201
- 403
- 500
Response (201)
{}
Generate TypeScript types
/v1/projects/{ref}/types/typescript
Returns the TypeScript types of your schema for use with supabase-js.
Path parameters
- refRequiredstring
Project ref
Query parameters
- included_schemasOptionalstring
Response codes
- 200
- 403
- 500
Response (200)
{
"types": "lorem"
}
Gets a specific SQL snippet
/v1/snippets/{id}
Path parameters
- idRequiredstring
Response codes
- 200
- 500
Response (200)
{
"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"
},
"content": {
"favorite": true,
"schema_version": "lorem",
"sql": "lorem"
}
}
Gets project's Postgres config
/v1/projects/{ref}/config/database/postgres
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 500
Response (200)
{
"effective_cache_size": "lorem",
"logical_decoding_work_mem": "lorem",
"maintenance_work_mem": "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,
"shared_buffers": "lorem",
"statement_timeout": "lorem",
"track_commit_timestamp": true,
"wal_keep_size": "lorem",
"wal_sender_timeout": "lorem",
"work_mem": "lorem",
"session_replication_role": "origin"
}
Get project's pgbouncer config
/v1/projects/{ref}/config/database/pgbouncer
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 500
Response (200)
{
"pool_mode": "transaction",
"default_pool_size": 42,
"ignore_startup_parameters": "lorem",
"max_client_conn": 42,
"connection_string": "lorem"
}
Returns project's readonly mode status
/v1/projects/{ref}/readonly
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 500
Response (200)
{
"enabled": true,
"override_enabled": true,
"override_active_until": "lorem"
}
[Beta] Get project's SSL enforcement configuration.
/v1/projects/{ref}/ssl-enforcement
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
- 500
Response (200)
{
"currentConfig": {
"database": true
},
"appliedSuccessfully": true
}
Gets project's supavisor config
/v1/projects/{ref}/config/database/pooler
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 500
Response (200)
[
{
"db_port": 42,
"default_pool_size": 42,
"max_client_conn": 42,
"identifier": "lorem",
"database_type": "PRIMARY",
"is_using_scram_auth": true,
"db_user": "lorem",
"db_host": "lorem",
"db_name": "lorem",
"connectionString": "lorem",
"pool_mode": "transaction"
}
]
Lists all backups
/v1/projects/{ref}/database/backups
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 500
Response (200)
{
"region": "lorem",
"walg_enabled": true,
"pitr_enabled": true,
"backups": [
{
"status": "COMPLETED",
"is_physical_backup": true,
"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/snippets
Query parameters
- project_refOptionalstring
Response codes
- 200
- 500
Response (200)
{
"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"
}
}
]
}
[Beta] Remove a read replica
/v1/projects/{ref}/read-replicas/remove
Path parameters
- refRequiredstring
Project ref
Body
- database_identifierRequiredstring
Response codes
- 201
- 403
- 500
Response (201)
{}
Restores a PITR backup for a database
/v1/projects/{ref}/database/backups/restore-pitr
Path parameters
- refRequiredstring
Project ref
Body
- recovery_time_target_unixRequiredinteger
Response codes
- 201
Response (201)
{}
[Beta] Run sql query
/v1/projects/{ref}/database/query
Path parameters
- refRequiredstring
Project ref
Body
- queryRequiredstring
Response codes
- 201
- 403
- 500
Response (201)
{}
[Beta] Set up a read replica
/v1/projects/{ref}/read-replicas/setup
Path parameters
- refRequiredstring
Project ref
Body
- read_replica_regionRequiredenum
Response codes
- 201
- 403
- 500
Response (201)
{}
Updates project's Postgres config
/v1/projects/{ref}/config/database/postgres
Path parameters
- refRequiredstring
Project ref
Body
- effective_cache_sizeOptionalstring
- logical_decoding_work_memOptionalstring
- maintenance_work_memOptionalstring
- 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
- shared_buffersOptionalstring
- statement_timeoutOptionalstring
- track_commit_timestampOptionalboolean
- wal_keep_sizeOptionalstring
- wal_sender_timeoutOptionalstring
- work_memOptionalstring
- restart_databaseOptionalboolean
- session_replication_roleOptionalenum
Response codes
- 200
- 403
- 500
Response (200)
{
"effective_cache_size": "lorem",
"logical_decoding_work_mem": "lorem",
"maintenance_work_mem": "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,
"shared_buffers": "lorem",
"statement_timeout": "lorem",
"track_commit_timestamp": true,
"wal_keep_size": "lorem",
"wal_sender_timeout": "lorem",
"work_mem": "lorem",
"session_replication_role": "origin"
}
[Beta] Update project's SSL enforcement configuration.
/v1/projects/{ref}/ssl-enforcement
Path parameters
- refRequiredstring
Project ref
Body
- requestedConfigRequiredobject
Response codes
- 200
- 403
- 500
Response (200)
{
"currentConfig": {
"database": true
},
"appliedSuccessfully": true
}
Updates project's supavisor config
/v1/projects/{ref}/config/database/pooler
Path parameters
- refRequiredstring
Project ref
Body
- default_pool_sizeOptionalinteger
- pool_modeOptionalDeprecatedenum
Response codes
- 200
- 403
- 500
Response (200)
{
"default_pool_size": 42,
"pool_mode": "transaction"
}
[Beta] Activates a custom hostname for a project.
/v1/projects/{ref}/custom-hostname/activate
Path parameters
- refRequiredstring
Project ref
Response codes
- 201
- 403
- 500
Response (201)
{
"status": "1_not_started",
"custom_hostname": "lorem",
"data": {
"success": true,
"errors": [
{}
],
"messages": [
{}
],
"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/activate
Path parameters
- refRequiredstring
Project ref
Body
- vanity_subdomainRequiredstring
Response codes
- 201
- 403
- 500
Response (201)
{
"custom_domain": "lorem"
}
[Beta] Checks vanity subdomain availability
/v1/projects/{ref}/vanity-subdomain/check-availability
Path parameters
- refRequiredstring
Project ref
Body
- vanity_subdomainRequiredstring
Response codes
- 201
- 403
- 500
Response (201)
{
"available": true
}
[Beta] Deletes a project's vanity subdomain configuration
/v1/projects/{ref}/vanity-subdomain
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
- 500
Response (200)
{}
[Beta] Gets project's custom hostname config
/v1/projects/{ref}/custom-hostname
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
- 500
Response (200)
{
"status": "1_not_started",
"custom_hostname": "lorem",
"data": {
"success": true,
"errors": [
{}
],
"messages": [
{}
],
"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-subdomain
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
- 500
Response (200)
{
"status": "not-used",
"custom_domain": "lorem"
}
[Beta] Updates project's custom hostname configuration
/v1/projects/{ref}/custom-hostname/initialize
Path parameters
- refRequiredstring
Project ref
Body
- custom_hostnameRequiredstring
Response codes
- 201
- 403
- 500
Response (201)
{
"status": "1_not_started",
"custom_hostname": "lorem",
"data": {
"success": true,
"errors": [
{}
],
"messages": [
{}
],
"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/reverify
Path parameters
- refRequiredstring
Project ref
Response codes
- 201
- 403
- 500
Response (201)
{
"status": "1_not_started",
"custom_hostname": "lorem",
"data": {
"success": true,
"errors": [
{}
],
"messages": [
{}
],
"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"
}
}
}
Create a function
/v1/projects/{ref}/functions
Creates a function and adds it to the specified project.
Path parameters
- refRequiredstring
Project ref
Query parameters
- slugOptionalstring
- nameOptionalstring
- verify_jwtOptionalboolean
- import_mapOptionalboolean
- entrypoint_pathOptionalstring
- import_map_pathOptionalstring
Body
- slugRequiredstring
- nameRequiredstring
- bodyRequiredstring
- verify_jwtOptionalboolean
- slugRequiredstring
- nameRequiredstring
- bodyRequiredstring
- verify_jwtOptionalboolean
Response codes
- 201
- 403
- 500
Response (201)
{
"version": 42,
"created_at": 42,
"updated_at": 42,
"id": "lorem",
"slug": "lorem",
"name": "lorem",
"status": "ACTIVE",
"verify_jwt": true,
"import_map": true,
"entrypoint_path": "lorem",
"import_map_path": "lorem"
}
Delete a function
/v1/projects/{ref}/functions/{function_slug}
Deletes a function with the specified slug from the specified project.
Path parameters
- refRequiredstring
Project ref
- function_slugRequiredstring
Function slug
Response codes
- 200
- 403
- 500
Response (200)
{}
Retrieve a function
/v1/projects/{ref}/functions/{function_slug}
Retrieves a function with the specified slug and project.
Path parameters
- refRequiredstring
Project ref
- function_slugRequiredstring
Function slug
Response codes
- 200
- 403
- 500
Response (200)
{
"version": 42,
"created_at": 42,
"updated_at": 42,
"id": "lorem",
"slug": "lorem",
"name": "lorem",
"status": "ACTIVE",
"verify_jwt": true,
"import_map": true,
"entrypoint_path": "lorem",
"import_map_path": "lorem"
}
Retrieve a function body
/v1/projects/{ref}/functions/{function_slug}/body
Retrieves a function body for the specified slug and project.
Path parameters
- refRequiredstring
Project ref
- function_slugRequiredstring
Function slug
Response codes
- 200
- 403
- 500
Response (200)
{}
List all functions
/v1/projects/{ref}/functions
Returns all functions you've previously added to the specified project.
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
- 500
Response (200)
[
{
"version": 42,
"created_at": 42,
"updated_at": 42,
"id": "lorem",
"slug": "lorem",
"name": "lorem",
"status": "ACTIVE",
"verify_jwt": true,
"import_map": true,
"entrypoint_path": "lorem",
"import_map_path": "lorem"
}
]
Update a function
/v1/projects/{ref}/functions/{function_slug}
Updates a function with the specified slug and project.
Path parameters
- refRequiredstring
Project ref
- function_slugRequiredstring
Function slug
Query parameters
- slugOptionalstring
- nameOptionalstring
- verify_jwtOptionalboolean
- import_mapOptionalboolean
- entrypoint_pathOptionalstring
- import_map_pathOptionalstring
Body
- nameOptionalstring
- bodyOptionalstring
- verify_jwtOptionalboolean
- nameOptionalstring
- bodyOptionalstring
- verify_jwtOptionalboolean
Response codes
- 200
- 403
- 500
Response (200)
{
"version": 42,
"created_at": 42,
"updated_at": 42,
"id": "lorem",
"slug": "lorem",
"name": "lorem",
"status": "ACTIVE",
"verify_jwt": true,
"import_map": true,
"entrypoint_path": "lorem",
"import_map_path": "lorem"
}
Create a database branch
/v1/projects/{ref}/branches
Creates a database branch from the specified project.
Path parameters
- refRequiredstring
Project ref
Body
- desired_instance_sizeOptionalenum
- release_channelOptionalenum
- postgres_engineOptionalenum
- branch_nameRequiredstring
- git_branchOptionalstring
- persistentOptionalboolean
- regionOptionalstring
Response codes
- 201
- 500
Response (201)
{
"pr_number": 42,
"latest_check_run_id": 42,
"id": "lorem",
"name": "lorem",
"project_ref": "lorem",
"parent_project_ref": "lorem",
"is_default": true,
"git_branch": "lorem",
"reset_on_push": true,
"persistent": true,
"status": "CREATING_PROJECT",
"created_at": "lorem",
"updated_at": "lorem"
}
Delete a database branch
/v1/branches/{branch_id}
Deletes the specified database branch
Path parameters
- branch_idRequiredstring
Branch ID
Response codes
- 200
- 500
Response (200)
{
"message": "lorem"
}
Disables preview branching
/v1/projects/{ref}/branches
Disables preview branching for the specified project
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 500
Response (200)
{}
Get database branch config
/v1/branches/{branch_id}
Fetches configurations of the specified database branch
Path parameters
- branch_idRequiredstring
Branch ID
Response codes
- 200
- 500
Response (200)
{
"db_port": 42,
"ref": "lorem",
"postgres_version": "lorem",
"postgres_engine": "lorem",
"release_channel": "lorem",
"status": "ACTIVE_HEALTHY",
"db_host": "lorem",
"db_user": "lorem",
"db_pass": "lorem",
"jwt_secret": "lorem"
}
List all database branches
/v1/projects/{ref}/branches
Returns all database branches of the specified project.
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 500
Response (200)
[
{
"pr_number": 42,
"latest_check_run_id": 42,
"id": "lorem",
"name": "lorem",
"project_ref": "lorem",
"parent_project_ref": "lorem",
"is_default": true,
"git_branch": "lorem",
"reset_on_push": true,
"persistent": true,
"status": "CREATING_PROJECT",
"created_at": "lorem",
"updated_at": "lorem"
}
]
Resets a database branch
/v1/branches/{branch_id}/reset
Resets the specified database branch
Path parameters
- branch_idRequiredstring
Branch ID
Response codes
- 201
- 500
Response (201)
{
"workflow_run_id": "lorem",
"message": "lorem"
}
Update database branch config
/v1/branches/{branch_id}
Updates the configuration of the specified database branch
Path parameters
- branch_idRequiredstring
Branch ID
Body
- branch_nameOptionalstring
- git_branchOptionalstring
- reset_on_pushOptionalboolean
- persistentOptionalboolean
- statusOptionalenum
Response codes
- 200
- 500
Response (200)
{
"pr_number": 42,
"latest_check_run_id": 42,
"id": "lorem",
"name": "lorem",
"project_ref": "lorem",
"parent_project_ref": "lorem",
"is_default": true,
"git_branch": "lorem",
"reset_on_push": true,
"persistent": true,
"status": "CREATING_PROJECT",
"created_at": "lorem",
"updated_at": "lorem"
}
[Beta] Exchange auth code for user's access and refresh token
/v1/oauth/token
Body
- grant_typeRequiredenum
- client_idRequiredstring
- client_secretRequiredstring
- codeOptionalstring
- code_verifierOptionalstring
- redirect_uriOptionalstring
- refresh_tokenOptionalstring
Response codes
- 201
Response (201)
{
"expires_in": 42,
"token_type": "Bearer",
"access_token": "lorem",
"refresh_token": "lorem"
}
Create an organization
/v1/organizations
Body
- nameRequiredstring
Response codes
- 201
- 500
Response (201)
{
"id": "lorem",
"name": "lorem"
}
Gets information about the organization
/v1/organizations/{slug}
Path parameters
- slugRequiredstring
Response codes
- 200
Response (200)
{
"plan": "free",
"opt_in_tags": [
"AI_SQL_GENERATOR_OPT_IN"
],
"allowed_release_channels": [
"internal"
],
"id": "lorem",
"name": "lorem"
}
List all organizations
/v1/organizations
Returns a list of organizations that you currently belong to.
Response codes
- 200
- 500
Response (200)
[
{
"id": "lorem",
"name": "lorem"
}
]
List members of an organization
/v1/organizations/{slug}/members
Path parameters
- slugRequiredstring
Response codes
- 200
Response (200)
[
{
"user_id": "lorem",
"user_name": "lorem",
"email": "lorem",
"role_name": "lorem",
"mfa_enabled": true
}
]
Create a project
/v1/projects
Body
- db_passRequiredstring
- nameRequiredstring
- organization_idRequiredstring
- planOptionalDeprecatedenum
- regionRequiredenum
- kps_enabledOptionalDeprecatedboolean
- desired_instance_sizeOptionalenum
- template_urlOptionalstring
- release_channelOptionalenum
- postgres_engineOptionalenum
Response codes
- 201
Response (201)
{
"id": "lorem",
"organization_id": "lorem",
"name": "lorem",
"region": "us-east-1",
"created_at": "2023-03-29T16:32:59Z",
"database": {
"host": "lorem",
"version": "lorem",
"postgres_engine": "lorem",
"release_channel": "lorem"
},
"status": "ACTIVE_HEALTHY"
}
Deletes the given project
/v1/projects/{ref}
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
Response (200)
{
"id": 42,
"ref": "lorem",
"name": "lorem"
}
[Beta] Remove network bans.
/v1/projects/{ref}/network-bans
Path parameters
- refRequiredstring
Project ref
Body
- ipv4_addressesRequiredArray<string>
Response codes
- 200
- 403
- 500
Response (200)
{}
[Beta] Gets project's network restrictions
/v1/projects/{ref}/network-restrictions
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
- 500
Response (200)
{
"entitlement": "disallowed",
"config": {
"dbAllowedCidrs": [
"lorem"
],
"dbAllowedCidrsV6": [
"lorem"
]
},
"old_config": {
"dbAllowedCidrs": [
"lorem"
],
"dbAllowedCidrsV6": [
"lorem"
]
},
"status": "stored"
}
[Beta] Returns the project's eligibility for upgrades
/v1/projects/{ref}/upgrade/eligibility
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
- 500
Response (200)
{
"current_app_version_release_channel": "internal",
"duration_estimate_hours": 42,
"eligible": true,
"current_app_version": "lorem",
"latest_app_version": "lorem",
"target_upgrade_versions": [
{
"postgres_version": "15",
"release_channel": "internal",
"app_version": "lorem"
}
],
"potential_breaking_changes": [
"lorem"
],
"legacy_auth_custom_roles": [
"lorem"
],
"extension_dependent_objects": [
"lorem"
]
}
[Beta] Gets the latest status of the project's upgrade
/v1/projects/{ref}/upgrade/status
Path parameters
- refRequiredstring
Project ref
Query parameters
- tracking_idOptionalstring
Response codes
- 200
- 403
- 500
Response (200)
{
"databaseUpgradeStatus": {
"target_version": 42,
"status": 0,
"initiated_at": "lorem",
"latest_status_at": "lorem",
"error": "1_upgraded_instance_launch_failed",
"progress": "0_requested"
}
}
Gets a specific project that belongs to the authenticated user
/v1/projects/{ref}
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 500
Response (200)
{
"id": "lorem",
"organization_id": "lorem",
"name": "lorem",
"region": "us-east-1",
"created_at": "2023-03-29T16:32:59Z",
"database": {
"host": "lorem",
"version": "lorem",
"postgres_engine": "lorem",
"release_channel": "lorem"
},
"status": "ACTIVE_HEALTHY"
}
Gets project's service health status
/v1/projects/{ref}/health
Path parameters
- refRequiredstring
Project ref
Query parameters
- timeout_msOptionalinteger
- servicesRequiredArray<enum>
Response codes
- 200
- 403
- 500
Response (200)
[
{
"info": {
"name": "GoTrue"
},
"name": "auth",
"healthy": true,
"status": "COMING_UP",
"error": "lorem"
}
]
[Beta] Gets project's network bans
/v1/projects/{ref}/network-bans/retrieve
Path parameters
- refRequiredstring
Project ref
Response codes
- 201
- 403
- 500
Response (201)
{
"banned_ipv4_addresses": [
"lorem"
]
}
List all projects
/v1/projects
Returns a list of all projects you've previously created.
Response codes
- 200
Response (200)
[
{
"id": "lorem",
"organization_id": "lorem",
"name": "lorem",
"region": "us-east-1",
"created_at": "2023-03-29T16:32:59Z",
"database": {
"host": "lorem",
"version": "lorem",
"postgres_engine": "lorem",
"release_channel": "lorem"
},
"status": "ACTIVE_HEALTHY"
}
]
[Beta] Updates project's network restrictions
/v1/projects/{ref}/network-restrictions/apply
Path parameters
- refRequiredstring
Project ref
Body
- dbAllowedCidrsOptionalArray<string>
- dbAllowedCidrsV6OptionalArray<string>
Response codes
- 201
- 403
- 500
Response (201)
{
"entitlement": "disallowed",
"config": {
"dbAllowedCidrs": [
"lorem"
],
"dbAllowedCidrsV6": [
"lorem"
]
},
"old_config": {
"dbAllowedCidrs": [
"lorem"
],
"dbAllowedCidrsV6": [
"lorem"
]
},
"status": "stored"
}
[Beta] Upgrades the project's Postgres version
/v1/projects/{ref}/upgrade
Path parameters
- refRequiredstring
Project ref
Body
- release_channelRequiredenum
- target_versionRequiredstring
Response codes
- 201
- 403
- 500
Response (201)
{
"tracking_id": "lorem"
}
Gets project's postgrest config
/v1/projects/{ref}/postgrest
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
- 500
Response (200)
{
"max_rows": 42,
"db_pool": 42,
"db_schema": "lorem",
"db_extra_search_path": "lorem",
"jwt_secret": "lorem"
}
Updates project's postgrest config
/v1/projects/{ref}/postgrest
Path parameters
- refRequiredstring
Project ref
Body
- max_rowsOptionalinteger
- db_poolOptionalinteger
- db_extra_search_pathOptionalstring
- db_schemaOptionalstring
Response codes
- 200
- 403
- 500
Response (200)
{
"max_rows": 42,
"db_pool": 42,
"db_schema": "lorem",
"db_extra_search_path": "lorem"
}
Bulk create secrets
/v1/projects/{ref}/secrets
Creates multiple secrets and adds them to the specified project.
Path parameters
- refRequiredstring
Project ref
Body
Response codes
- 201
- 403
- 500
Response (201)
{}
Bulk delete secrets
/v1/projects/{ref}/secrets
Deletes all secrets with the given names from the specified project
Path parameters
- refRequiredstring
Project ref
Body
Response codes
- 200
- 403
- 500
Response (200)
{}
[Beta] Gets project's pgsodium config
/v1/projects/{ref}/pgsodium
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
- 500
Response (200)
{
"root_key": "lorem"
}
Get project api keys
/v1/projects/{ref}/api-keys
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
Response (200)
[
{
"name": "lorem",
"api_key": "lorem",
"id": "lorem",
"type": {},
"prefix": "lorem",
"description": "lorem",
"hash": "lorem",
"secret_jwt_template": {
"role": "lorem"
},
"inserted_at": "lorem",
"updated_at": "lorem"
}
]
List all secrets
/v1/projects/{ref}/secrets
Returns all secrets you've previously added to the specified project.
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
- 500
Response (200)
[
{
"name": "lorem",
"value": "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}/pgsodium
Path parameters
- refRequiredstring
Project ref
Body
- root_keyRequiredstring
Response codes
- 200
- 403
- 500
Response (200)
{
"root_key": "lorem"
}
Gets project's storage config
/v1/projects/{ref}/config/storage
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
- 500
Response (200)
{
"fileSizeLimit": 42,
"features": {
"imageTransformation": {
"enabled": true
}
}
}
Lists all buckets
/v1/projects/{ref}/storage/buckets
Path parameters
- refRequiredstring
Project ref
Response codes
- 200
- 403
- 500
Response (200)
[
{
"id": "lorem",
"name": "lorem",
"owner": "lorem",
"created_at": "lorem",
"updated_at": "lorem",
"public": true
}
]
Updates project's storage config
/v1/projects/{ref}/config/storage
Path parameters
- refRequiredstring
Project ref
Body
- fileSizeLimitOptionalinteger
- featuresOptionalobject
Response codes
- 200
- 403
- 500
Response (200)
{}