Management API Reference

Creates a new SSO provider

post/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

delete/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

get/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

get/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,
  "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",
  "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_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_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,
  "password_hibp_enabled": true,
  "password_min_length": 42,
  "password_required_characters": "lorem",
  "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,
  "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_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": "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_max_frequency": 42,
  "smtp_pass": "lorem",
  "smtp_port": "lorem",
  "smtp_sender_name": "lorem",
  "smtp_user": "lorem",
  "uri_allow_list": "lorem"
}

Lists all SSO providers

get/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

put/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

patch/v1/projects/{ref}/config/auth

Path parameters

  • refRequiredstring

    Project ref

Body

  • site_urlOptionalstring
  • disable_signupOptionalboolean
  • jwt_expOptionalnumber
  • smtp_admin_emailOptionalstring
  • smtp_hostOptionalstring
  • smtp_portOptionalstring
  • smtp_userOptionalstring
  • smtp_passOptionalstring
  • smtp_max_frequencyOptionalnumber
  • 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
  • mfa_max_enrolled_factorsOptionalnumber
  • 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_timeboxOptionalnumber
  • sessions_inactivity_timeoutOptionalnumber
  • sessions_single_per_userOptionalboolean
  • sessions_tagsOptionalstring
  • rate_limit_anonymous_usersOptionalnumber
  • rate_limit_email_sentOptionalnumber
  • rate_limit_sms_sentOptionalnumber
  • rate_limit_verifyOptionalnumber
  • rate_limit_token_refreshOptionalnumber
  • rate_limit_otpOptionalnumber
  • mailer_secure_email_change_enabledOptionalboolean
  • refresh_token_rotation_enabledOptionalboolean
  • password_hibp_enabledOptionalboolean
  • password_min_lengthOptionalnumber
  • password_required_charactersOptionalenum
  • security_manual_linking_enabledOptionalboolean
  • security_update_password_require_reauthenticationOptionalboolean
  • security_refresh_token_reuse_intervalOptionalnumber
  • mailer_otp_expOptionalnumber
  • mailer_otp_lengthOptionalnumber
  • sms_autoconfirmOptionalboolean
  • sms_max_frequencyOptionalnumber
  • sms_otp_expOptionalnumber
  • sms_otp_lengthOptionalnumber
  • 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
  • db_max_pool_sizeOptionalnumber
  • api_max_request_durationOptionalnumber
  • 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_frequencyOptionalnumber
  • mfa_phone_otp_lengthOptionalnumber
  • mfa_phone_templateOptionalstring

Response codes

  • 200
  • 403
  • 500

Response (200)

{
  "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_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",
  "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_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_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,
  "password_hibp_enabled": true,
  "password_min_length": 42,
  "password_required_characters": "lorem",
  "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,
  "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_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": "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_max_frequency": 42,
  "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

post/v1/projects/{ref}/readonly/temporary-disable

Path parameters

  • refRequiredstring

    Project ref

Response codes

  • 201
  • 500

Response (201)

{}

[Beta] Enables Database Webhooks on the project

post/v1/projects/{ref}/database/webhooks/enable

Path parameters

  • refRequiredstring

    Project ref

Response codes

  • 201
  • 403
  • 500

Response (201)

{}

Generate TypeScript types

get/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

get/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

get/v1/projects/{ref}/config/database/postgres

Path parameters

  • refRequiredstring

    Project ref

Response codes

  • 200
  • 500

Response (200)

{
  "statement_timeout": "lorem",
  "effective_cache_size": "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_slot_wal_keep_size": "lorem",
  "max_standby_archive_delay": "lorem",
  "max_standby_streaming_delay": "lorem",
  "max_wal_size": "lorem",
  "max_worker_processes": 0,
  "shared_buffers": "lorem",
  "wal_keep_size": "lorem",
  "work_mem": "lorem",
  "session_replication_role": "origin"
}

Get project's pgbouncer config

get/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

get/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.

get/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

get/v1/projects/{ref}/config/database/pooler

Path parameters

  • refRequiredstring

    Project ref

Response codes

  • 200
  • 500

Response (200)

[
  {
    "identifier": "lorem",
    "database_type": "PRIMARY",
    "is_using_scram_auth": true,
    "db_user": "lorem",
    "db_host": "lorem",
    "db_port": 42,
    "db_name": "lorem",
    "connectionString": "lorem",
    "default_pool_size": 42,
    "max_client_conn": 42,
    "pool_mode": "transaction"
  }
]

Lists all backups

get/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

get/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

post/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

post/v1/projects/{ref}/database/backups/restore-pitr

Path parameters

  • refRequiredstring

    Project ref

Body

  • recovery_time_target_unixRequirednumber

Response codes

  • 201

Response (201)

{}

[Beta] Run sql query

post/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

post/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

put/v1/projects/{ref}/config/database/postgres

Path parameters

  • refRequiredstring

    Project ref

Body

  • statement_timeoutOptionalstring
  • effective_cache_sizeOptionalstring
  • maintenance_work_memOptionalstring
  • max_connectionsOptionalinteger
  • max_locks_per_transactionOptionalinteger
  • max_parallel_maintenance_workersOptionalinteger
  • max_parallel_workersOptionalinteger
  • max_parallel_workers_per_gatherOptionalinteger
  • max_slot_wal_keep_sizeOptionalstring
  • max_standby_archive_delayOptionalstring
  • max_standby_streaming_delayOptionalstring
  • max_wal_sizeOptionalstring
  • max_worker_processesOptionalinteger
  • shared_buffersOptionalstring
  • wal_keep_sizeOptionalstring
  • work_memOptionalstring
  • session_replication_roleOptionalenum

Response codes

  • 200
  • 500

Response (200)

{
  "statement_timeout": "lorem",
  "effective_cache_size": "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_slot_wal_keep_size": "lorem",
  "max_standby_archive_delay": "lorem",
  "max_standby_streaming_delay": "lorem",
  "max_wal_size": "lorem",
  "max_worker_processes": 0,
  "shared_buffers": "lorem",
  "wal_keep_size": "lorem",
  "work_mem": "lorem",
  "session_replication_role": "origin"
}

[Beta] Update project's SSL enforcement configuration.

put/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

patch/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.

post/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.

post/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

post/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

delete/v1/projects/{ref}/vanity-subdomain

Path parameters

  • refRequiredstring

    Project ref

Response codes

  • 200
  • 403
  • 500

Response (200)

{}

[Beta] Gets project's custom hostname config

get/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

get/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

post/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

post/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"
    }
  }
}

Delete a function

delete/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

get/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)

{
  "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"
}

Retrieve a function body

get/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

get/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)

[
  {
    "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"
  }
]

Update a function

patch/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

Response codes

  • 200
  • 403
  • 500

Response (200)

{
  "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"
}

Create a database branch

post/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)

{
  "id": "lorem",
  "name": "lorem",
  "project_ref": "lorem",
  "parent_project_ref": "lorem",
  "is_default": true,
  "git_branch": "lorem",
  "pr_number": 42,
  "latest_check_run_id": 42,
  "reset_on_push": true,
  "persistent": true,
  "status": "CREATING_PROJECT",
  "created_at": "lorem",
  "updated_at": "lorem"
}

Delete a database branch

delete/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

delete/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

get/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

get/v1/projects/{ref}/branches

Returns all database branches of the specified project.

Path parameters

  • refRequiredstring

    Project ref

Response codes

  • 200
  • 500

Response (200)

[
  {
    "id": "lorem",
    "name": "lorem",
    "project_ref": "lorem",
    "parent_project_ref": "lorem",
    "is_default": true,
    "git_branch": "lorem",
    "pr_number": 42,
    "latest_check_run_id": 42,
    "reset_on_push": true,
    "persistent": true,
    "status": "CREATING_PROJECT",
    "created_at": "lorem",
    "updated_at": "lorem"
  }
]

Resets a database branch

post/v1/branches/{branch_id}/reset

Resets the specified database branch

Path parameters

  • branch_idRequiredstring

    Branch ID

Response codes

  • 201
  • 500

Response (201)

{
  "message": "lorem"
}

Update database branch config

patch/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)

{
  "id": "lorem",
  "name": "lorem",
  "project_ref": "lorem",
  "parent_project_ref": "lorem",
  "is_default": true,
  "git_branch": "lorem",
  "pr_number": 42,
  "latest_check_run_id": 42,
  "reset_on_push": true,
  "persistent": true,
  "status": "CREATING_PROJECT",
  "created_at": "lorem",
  "updated_at": "lorem"
}

[Beta] Authorize user through oauth

get/v1/oauth/authorize

Query parameters

  • client_idRequiredstring
  • response_typeRequiredenum
  • redirect_uriRequiredstring
  • scopeOptionalstring
  • stateOptionalstring
  • response_modeOptionalstring
  • code_challengeOptionalstring
  • code_challenge_methodOptionalenum

Response codes

  • 303

[Beta] Exchange auth code for user's access and refresh token

post/v1/oauth/token

Body

  • grant_typeRequiredenum
  • client_idRequiredstring
  • client_secretRequiredstring
  • codeOptionalstring
  • code_verifierOptionalstring
  • redirect_uriOptionalstring
  • refresh_tokenOptionalstring

Response codes

  • 201

Response (201)

{
  "token_type": "Bearer",
  "access_token": "lorem",
  "refresh_token": "lorem",
  "expires_in": 42
}

Create an organization

post/v1/organizations

Body

  • nameRequiredstring

Response codes

  • 201
  • 500

Response (201)

{
  "id": "lorem",
  "name": "lorem"
}

Gets information about the organization

get/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

get/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

get/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

post/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

delete/v1/projects/{ref}

Path parameters

  • refRequiredstring

    Project ref

Response codes

  • 200
  • 403

Response (200)

{
  "id": 42,
  "ref": "lorem",
  "name": "lorem"
}

[Beta] Remove network bans.

delete/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

get/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

get/v1/projects/{ref}/upgrade/eligibility

Path parameters

  • refRequiredstring

    Project ref

Response codes

  • 200
  • 403
  • 500

Response (200)

{
  "current_app_version_release_channel": "internal",
  "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"
  ],
  "duration_estimate_hours": 42,
  "legacy_auth_custom_roles": [
    "lorem"
  ],
  "extension_dependent_objects": [
    "lorem"
  ]
}

[Beta] Gets the latest status of the project's upgrade

get/v1/projects/{ref}/upgrade/status

Path parameters

  • refRequiredstring

    Project ref

Response codes

  • 200
  • 403
  • 500

Response (200)

{
  "databaseUpgradeStatus": {
    "initiated_at": "lorem",
    "latest_status_at": "lorem",
    "target_version": 42,
    "error": "1_upgraded_instance_launch_failed",
    "progress": "0_requested",
    "status": 0
  }
}

Gets project's service health status

get/v1/projects/{ref}/health

Path parameters

  • refRequiredstring

    Project ref

Query parameters

  • timeout_msOptionalinteger
  • servicesRequiredArray<enum>

Response codes

  • 200
  • 500

Response (200)

[
  {
    "info": {
      "name": "lorem",
      "version": "lorem",
      "description": "lorem"
    },
    "name": "auth",
    "healthy": true,
    "status": "COMING_UP",
    "error": "lorem"
  }
]

[Beta] Gets project's network bans

post/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

get/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

post/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

post/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

get/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

patch/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

post/v1/projects/{ref}/secrets

Creates multiple secrets and adds them to the specified project.

Path parameters

  • refRequiredstring

    Project ref

Body

Array of object

Response codes

  • 201
  • 403
  • 500

Response (201)

{}

Bulk delete secrets

delete/v1/projects/{ref}/secrets

Deletes all secrets with the given names from the specified project

Path parameters

  • refRequiredstring

    Project ref

Body

Array of string

Response codes

  • 200
  • 403
  • 500

Response (200)

{}

[Beta] Gets project's pgsodium config

get/v1/projects/{ref}/pgsodium

Path parameters

  • refRequiredstring

    Project ref

Response codes

  • 200
  • 403
  • 500

Response (200)

{
  "root_key": "lorem"
}

Get project api keys

get/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

get/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.

put/v1/projects/{ref}/pgsodium

Path parameters

  • refRequiredstring

    Project ref

Body

  • root_keyRequiredstring

Response codes

  • 200
  • 403
  • 500

Response (200)

{
  "root_key": "lorem"
}

Lists all buckets

get/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
  }
]