Supabase MCP Server
by Deploya-labs
{
"openapi": "3.0.0",
"paths": {
"/v1/branches/{branch_id}": {
"get": {
"operationId": "v1-get-a-branch-config",
"summary": "Get database branch config",
"description": "Fetches configurations of the specified database branch",
"parameters": [
{
"name": "branch_id",
"required": true,
"in": "path",
"description": "Branch ID",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BranchDetailResponse"
}
}
}
},
"500": {
"description": "Failed to retrieve database branch"
}
},
"tags": [
"Environments"
],
"security": [
{
"bearer": []
}
]
},
"patch": {
"operationId": "v1-update-a-branch-config",
"summary": "Update database branch config",
"description": "Updates the configuration of the specified database branch",
"parameters": [
{
"name": "branch_id",
"required": true,
"in": "path",
"description": "Branch ID",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateBranchBody"
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BranchResponse"
}
}
}
},
"500": {
"description": "Failed to update database branch"
}
},
"tags": [
"Environments"
],
"security": [
{
"bearer": []
}
]
},
"delete": {
"operationId": "v1-delete-a-branch",
"summary": "Delete a database branch",
"description": "Deletes the specified database branch",
"parameters": [
{
"name": "branch_id",
"required": true,
"in": "path",
"description": "Branch ID",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BranchDeleteResponse"
}
}
}
},
"500": {
"description": "Failed to delete database branch"
}
},
"tags": [
"Environments"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/branches/{branch_id}/push": {
"post": {
"operationId": "v1-push-a-branch",
"summary": "Pushes a database branch",
"description": "Pushes the specified database branch",
"parameters": [
{
"name": "branch_id",
"required": true,
"in": "path",
"description": "Branch ID",
"schema": {
"type": "string"
}
}
],
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BranchUpdateResponse"
}
}
}
},
"500": {
"description": "Failed to push database branch"
}
},
"tags": [
"Environments"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/branches/{branch_id}/reset": {
"post": {
"operationId": "v1-reset-a-branch",
"summary": "Resets a database branch",
"description": "Resets the specified database branch",
"parameters": [
{
"name": "branch_id",
"required": true,
"in": "path",
"description": "Branch ID",
"schema": {
"type": "string"
}
}
],
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BranchUpdateResponse"
}
}
}
},
"500": {
"description": "Failed to reset database branch"
}
},
"tags": [
"Environments"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects": {
"get": {
"operationId": "v1-list-all-projects",
"summary": "List all projects",
"description": "Returns a list of all projects you've previously created.",
"parameters": [],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/V1ProjectWithDatabaseResponse"
}
}
}
}
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
},
"post": {
"operationId": "v1-create-a-project",
"summary": "Create a project",
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/V1CreateProjectBodyDto"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/V1ProjectResponse"
}
}
}
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/organizations": {
"get": {
"operationId": "v1-list-all-organizations",
"summary": "List all organizations",
"description": "Returns a list of organizations that you currently belong to.",
"parameters": [],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/OrganizationResponseV1"
}
}
}
}
},
"500": {
"description": "Unexpected error listing organizations"
}
},
"tags": [
"Organizations"
],
"security": [
{
"bearer": []
}
]
},
"post": {
"operationId": "v1-create-an-organization",
"summary": "Create an organization",
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateOrganizationV1Dto"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OrganizationResponseV1"
}
}
}
},
"500": {
"description": "Unexpected error creating an organization"
}
},
"tags": [
"Organizations"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/oauth/authorize": {
"get": {
"operationId": "v1-authorize-user",
"summary": "[Beta] Authorize user through oauth",
"parameters": [
{
"name": "client_id",
"required": true,
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "response_type",
"required": true,
"in": "query",
"schema": {
"enum": [
"code",
"token",
"id_token token"
],
"type": "string"
}
},
{
"name": "redirect_uri",
"required": true,
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "scope",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "state",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "response_mode",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "code_challenge",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "code_challenge_method",
"required": false,
"in": "query",
"schema": {
"enum": [
"plain",
"sha256",
"S256"
],
"type": "string"
}
}
],
"responses": {
"303": {
"description": ""
}
},
"tags": [
"OAuth"
],
"security": [
{
"oauth2": [
"read"
]
}
]
}
},
"/v1/oauth/token": {
"post": {
"operationId": "v1-exchange-oauth-token",
"summary": "[Beta] Exchange auth code for user's access and refresh token",
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/x-www-form-urlencoded": {
"schema": {
"$ref": "#/components/schemas/OAuthTokenBody"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OAuthTokenResponse"
}
}
}
}
},
"tags": [
"OAuth"
],
"security": [
{
"oauth2": [
"write"
]
}
]
}
},
"/v1/oauth/revoke": {
"post": {
"operationId": "v1-revoke-token",
"summary": "[Beta] Revoke oauth app authorization and it's corresponding tokens",
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/OAuthRevokeTokenBodyDto"
}
}
}
},
"responses": {
"204": {
"description": ""
}
},
"tags": [
"OAuth"
],
"security": [
{
"oauth2": [
"write"
]
}
]
}
},
"/v1/snippets": {
"get": {
"operationId": "v1-list-all-snippets",
"summary": "Lists SQL snippets for the logged in user",
"parameters": [
{
"name": "cursor",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "limit",
"required": false,
"in": "query",
"schema": {
"type": "string",
"minimum": 1,
"maximum": 100
}
},
{
"name": "sort_by",
"required": false,
"in": "query",
"schema": {
"enum": [
"name",
"inserted_at"
],
"type": "string"
}
},
{
"name": "sort_order",
"required": false,
"in": "query",
"schema": {
"enum": [
"asc",
"desc"
],
"type": "string"
}
},
{
"name": "project_ref",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SnippetList"
}
}
}
},
"500": {
"description": "Failed to list user's SQL snippets"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/snippets/{id}": {
"get": {
"operationId": "v1-get-a-snippet",
"summary": "Gets a specific SQL snippet",
"parameters": [
{
"name": "id",
"required": true,
"in": "path",
"schema": {
"format": "uuid",
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SnippetResponse"
}
}
}
},
"500": {
"description": "Failed to retrieve SQL snippet"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/api-keys": {
"get": {
"operationId": "v1-get-project-api-keys",
"summary": "Get project api keys",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "reveal",
"required": true,
"in": "query",
"schema": {
"type": "boolean"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ApiKeyResponse"
}
}
}
}
}
},
"tags": [
"Secrets"
],
"security": [
{
"bearer": []
}
]
},
"post": {
"operationId": "createApiKey",
"summary": "[Alpha] Creates a new API key for the project",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "reveal",
"required": true,
"in": "query",
"schema": {
"type": "boolean"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateApiKeyBody"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiKeyResponse"
}
}
}
}
},
"tags": [
"Secrets"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/api-keys/{id}": {
"patch": {
"operationId": "updateApiKey",
"summary": "[Alpha] Updates an API key for the project",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "reveal",
"required": true,
"in": "query",
"schema": {
"type": "boolean"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateApiKeyBody"
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiKeyResponse"
}
}
}
}
},
"tags": [
"Secrets"
],
"security": [
{
"bearer": []
}
]
},
"get": {
"operationId": "getApiKey",
"summary": "[Alpha] Get API key",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "reveal",
"required": true,
"in": "query",
"schema": {
"type": "boolean"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiKeyResponse"
}
}
}
}
},
"tags": [
"Secrets"
],
"security": [
{
"bearer": []
}
]
},
"delete": {
"operationId": "deleteApiKey",
"summary": "[Alpha] Deletes an API key for the project",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
},
{
"name": "reveal",
"required": true,
"in": "query",
"schema": {
"type": "boolean"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ApiKeyResponse"
}
}
}
},
"403": {
"description": ""
}
},
"tags": [
"Secrets"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/branches": {
"get": {
"operationId": "v1-list-all-branches",
"summary": "List all database branches",
"description": "Returns all database branches of the specified project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BranchResponse"
}
}
}
}
},
"500": {
"description": "Failed to retrieve database branches"
}
},
"tags": [
"Environments"
],
"security": [
{
"bearer": []
}
]
},
"post": {
"operationId": "v1-create-a-branch",
"summary": "Create a database branch",
"description": "Creates a database branch from the specified project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateBranchBody"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BranchResponse"
}
}
}
},
"500": {
"description": "Failed to create database branch"
}
},
"tags": [
"Environments"
],
"security": [
{
"bearer": []
}
]
},
"delete": {
"operationId": "v1-disable-preview-branching",
"summary": "Disables preview branching",
"description": "Disables preview branching for the specified project",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": ""
},
"500": {
"description": "Failed to disable preview branching"
}
},
"tags": [
"Environments"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/custom-hostname": {
"get": {
"operationId": "v1-get-hostname-config",
"summary": "[Beta] Gets project's custom hostname config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateCustomHostnameResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's custom hostname config"
}
},
"tags": [
"Domains"
],
"security": [
{
"bearer": []
}
]
},
"delete": {
"operationId": "v1-Delete hostname config",
"summary": "[Beta] Deletes a project's custom hostname configuration",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": ""
},
"403": {
"description": ""
},
"500": {
"description": "Failed to delete project custom hostname configuration"
}
},
"tags": [
"Domains"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/custom-hostname/initialize": {
"post": {
"operationId": "v1-update-hostname-config",
"summary": "[Beta] Updates project's custom hostname configuration",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateCustomHostnameBody"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateCustomHostnameResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project custom hostname configuration"
}
},
"tags": [
"Domains"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/custom-hostname/reverify": {
"post": {
"operationId": "v1-verify-dns-config",
"summary": "[Beta] Attempts to verify the DNS configuration for project's custom hostname configuration",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateCustomHostnameResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to verify project custom hostname configuration"
}
},
"tags": [
"Domains"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/custom-hostname/activate": {
"post": {
"operationId": "v1-activate-custom-hostname",
"summary": "[Beta] Activates a custom hostname for a project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateCustomHostnameResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to activate project custom hostname configuration"
}
},
"tags": [
"Domains"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/network-bans/retrieve": {
"post": {
"operationId": "v1-list-all-network-bans",
"summary": "[Beta] Gets project's network bans",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/NetworkBanResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's network bans"
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/network-bans": {
"delete": {
"operationId": "v1-delete-network-bans",
"summary": "[Beta] Remove network bans.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RemoveNetworkBanRequest"
}
}
}
},
"responses": {
"200": {
"description": ""
},
"403": {
"description": ""
},
"500": {
"description": "Failed to remove network bans."
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/network-restrictions": {
"get": {
"operationId": "v1-get-network-restrictions",
"summary": "[Beta] Gets project's network restrictions",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/NetworkRestrictionsResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's network restrictions"
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/network-restrictions/apply": {
"post": {
"operationId": "v1-update-network-restrictions",
"summary": "[Beta] Updates project's network restrictions",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/NetworkRestrictionsRequest"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/NetworkRestrictionsResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project network restrictions"
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/pgsodium": {
"get": {
"operationId": "v1-get-pgsodium-config",
"summary": "[Beta] Gets project's pgsodium config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PgsodiumConfigResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's pgsodium config"
}
},
"tags": [
"Secrets"
],
"security": [
{
"bearer": []
}
]
},
"put": {
"operationId": "v1-update-pgsodium-config",
"summary": "[Beta] Updates project's pgsodium config. Updating the root_key can cause all data encrypted with the older key to become inaccessible.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdatePgsodiumConfigBody"
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PgsodiumConfigResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project's pgsodium config"
}
},
"tags": [
"Secrets"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/postgrest": {
"get": {
"operationId": "v1-get-postgrest-service-config",
"summary": "Gets project's postgrest config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PostgrestConfigWithJWTSecretResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's postgrest config"
}
},
"tags": [
"Rest"
],
"security": [
{
"bearer": []
}
]
},
"patch": {
"operationId": "v1-update-postgrest-service-config",
"summary": "Updates project's postgrest config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdatePostgrestConfigBody"
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/V1PostgrestConfigResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project's postgrest config"
}
},
"tags": [
"Rest"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}": {
"get": {
"operationId": "v1-get-project",
"summary": "Gets a specific project that belongs to the authenticated user",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/V1ProjectWithDatabaseResponse"
}
}
}
},
"500": {
"description": "Failed to retrieve project"
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
},
"delete": {
"operationId": "v1-delete-a-project",
"summary": "Deletes the given project",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/V1ProjectRefResponse"
}
}
}
},
"403": {
"description": ""
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/secrets": {
"get": {
"operationId": "v1-list-all-secrets",
"summary": "List all secrets",
"description": "Returns all secrets you've previously added to the specified project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SecretResponse"
}
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's secrets"
}
},
"tags": [
"Secrets"
],
"security": [
{
"bearer": []
}
]
},
"post": {
"operationId": "v1-bulk-create-secrets",
"summary": "Bulk create secrets",
"description": "Creates multiple secrets and adds them to the specified project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CreateSecretBody"
}
}
}
}
},
"responses": {
"201": {
"description": ""
},
"403": {
"description": ""
},
"500": {
"description": "Failed to create project's secrets"
}
},
"tags": [
"Secrets"
],
"security": [
{
"bearer": []
}
]
},
"delete": {
"operationId": "v1-bulk-delete-secrets",
"summary": "Bulk delete secrets",
"description": "Deletes all secrets with the given names from the specified project",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to delete secrets with given names"
}
},
"tags": [
"Secrets"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/ssl-enforcement": {
"get": {
"operationId": "v1-get-ssl-enforcement-config",
"summary": "[Beta] Get project's SSL enforcement configuration.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SslEnforcementResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's SSL enforcement config"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
},
"put": {
"operationId": "v1-update-ssl-enforcement-config",
"summary": "[Beta] Update project's SSL enforcement configuration.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SslEnforcementRequest"
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SslEnforcementResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project's SSL enforcement configuration."
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/types/typescript": {
"get": {
"operationId": "v1-generate-typescript-types",
"summary": "Generate TypeScript types",
"description": "Returns the TypeScript types of your schema for use with supabase-js.",
"parameters": [
{
"name": "included_schemas",
"required": false,
"in": "query",
"schema": {
"default": "public",
"type": "string"
}
},
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/TypescriptResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to generate TypeScript types"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/vanity-subdomain": {
"get": {
"operationId": "v1-get-vanity-subdomain-config",
"summary": "[Beta] Gets current vanity subdomain config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/VanitySubdomainConfigResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to get project vanity subdomain configuration"
}
},
"tags": [
"Domains"
],
"security": [
{
"bearer": []
}
]
},
"delete": {
"operationId": "v1-deactivate-vanity-subdomain-config",
"summary": "[Beta] Deletes a project's vanity subdomain configuration",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": ""
},
"403": {
"description": ""
},
"500": {
"description": "Failed to delete project vanity subdomain configuration"
}
},
"tags": [
"Domains"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/vanity-subdomain/check-availability": {
"post": {
"operationId": "v1-check-vanity-subdomain-availability",
"summary": "[Beta] Checks vanity subdomain availability",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/VanitySubdomainBody"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SubdomainAvailabilityResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to check project vanity subdomain configuration"
}
},
"tags": [
"Domains"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/vanity-subdomain/activate": {
"post": {
"operationId": "v1-activate-vanity-subdomain-config",
"summary": "[Beta] Activates a vanity subdomain for a project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/VanitySubdomainBody"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ActivateVanitySubdomainResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to activate project vanity subdomain configuration"
}
},
"tags": [
"Domains"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/upgrade": {
"post": {
"operationId": "v1-upgrade-postgres-version",
"summary": "[Beta] Upgrades the project's Postgres version",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpgradeDatabaseBody"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProjectUpgradeInitiateResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to initiate project upgrade"
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/upgrade/eligibility": {
"get": {
"operationId": "v1-get-postgres-upgrade-eligibility",
"summary": "[Beta] Returns the project's eligibility for upgrades",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProjectUpgradeEligibilityResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to determine project upgrade eligibility"
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/upgrade/status": {
"get": {
"operationId": "v1-get-postgres-upgrade-status",
"summary": "[Beta] Gets the latest status of the project's upgrade",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "tracking_id",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DatabaseUpgradeStatusResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project upgrade status"
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/readonly": {
"get": {
"operationId": "v1-get-readonly-mode-status",
"summary": "Returns project's readonly mode status",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ReadOnlyStatusResponse"
}
}
}
},
"500": {
"description": "Failed to get project readonly mode status"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/readonly/temporary-disable": {
"post": {
"operationId": "v1-disable-readonly-mode-temporarily",
"summary": "Disables project's readonly mode for the next 15 minutes",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"201": {
"description": ""
},
"500": {
"description": "Failed to disable project's readonly mode"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/read-replicas/setup": {
"post": {
"operationId": "v1-setup-a-read-replica",
"summary": "[Beta] Set up a read replica",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/SetUpReadReplicaBody"
}
}
}
},
"responses": {
"201": {
"description": ""
},
"403": {
"description": ""
},
"500": {
"description": "Failed to set up read replica"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/read-replicas/remove": {
"post": {
"operationId": "v1-remove-a-read-replica",
"summary": "[Beta] Remove a read replica",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RemoveReadReplicaBody"
}
}
}
},
"responses": {
"201": {
"description": ""
},
"403": {
"description": ""
},
"500": {
"description": "Failed to remove read replica"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/health": {
"get": {
"operationId": "v1-get-services-health",
"summary": "Gets project's service health status",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "timeout_ms",
"required": false,
"in": "query",
"schema": {
"minimum": 0,
"maximum": 10000,
"type": "integer"
}
},
{
"name": "services",
"required": true,
"in": "query",
"schema": {
"type": "array",
"items": {
"type": "string",
"enum": [
"auth",
"db",
"pooler",
"realtime",
"rest",
"storage"
]
}
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/V1ServiceHealthResponse"
}
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's service health status"
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/config/storage": {
"get": {
"operationId": "v1-get-storage-config",
"summary": "Gets project's storage config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StorageConfigResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's storage config"
}
},
"tags": [
"Storage"
],
"security": [
{
"bearer": []
}
]
},
"patch": {
"operationId": "v1-update-storage-config",
"summary": "Updates project's storage config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateStorageConfigBody"
}
}
}
},
"responses": {
"200": {
"description": ""
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project's storage config"
}
},
"tags": [
"Storage"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/config/database/postgres": {
"get": {
"operationId": "v1-get-postgres-config",
"summary": "Gets project's Postgres config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PostgresConfigResponse"
}
}
}
},
"500": {
"description": "Failed to retrieve project's Postgres config"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
},
"put": {
"operationId": "v1-update-postgres-config",
"summary": "Updates project's Postgres config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdatePostgresConfigBody"
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PostgresConfigResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project's Postgres config"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/config/database/pgbouncer": {
"get": {
"operationId": "v1-get-project-pgbouncer-config",
"summary": "Get project's pgbouncer config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/V1PgbouncerConfigResponse"
}
}
}
},
"500": {
"description": "Failed to retrieve project's pgbouncer config"
}
},
"tags": [
"Database"
]
}
},
"/v1/projects/{ref}/config/database/pooler": {
"get": {
"operationId": "v1-get-supavisor-config",
"summary": "Gets project's supavisor config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SupavisorConfigResponse"
}
}
}
}
},
"500": {
"description": "Failed to retrieve project's supavisor config"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
},
"patch": {
"operationId": "v1-update-supavisor-config",
"summary": "Updates project's supavisor config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSupavisorConfigBody"
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateSupavisorConfigResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project's supavisor config"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/config/auth": {
"get": {
"operationId": "v1-get-auth-service-config",
"summary": "Gets project's auth config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthConfigResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's auth config"
}
},
"tags": [
"Auth"
],
"security": [
{
"bearer": []
}
]
},
"patch": {
"operationId": "v1-update-auth-service-config",
"summary": "Updates a project's auth config",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateAuthConfigBody"
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthConfigResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project's auth config"
}
},
"tags": [
"Auth"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/config/auth/third-party-auth": {
"post": {
"operationId": "createTPAForProject",
"summary": "Creates a new third-party auth integration",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateThirdPartyAuthBody"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ThirdPartyAuth"
}
}
}
},
"403": {
"description": ""
}
},
"tags": [
"Auth"
],
"security": [
{
"bearer": []
}
]
},
"get": {
"operationId": "listTPAForProject",
"summary": "[Alpha] Lists all third-party auth integrations",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ThirdPartyAuth"
}
}
}
}
},
"403": {
"description": ""
}
},
"tags": [
"Auth"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/config/auth/third-party-auth/{tpa_id}": {
"delete": {
"operationId": "deleteTPAForProject",
"summary": "[Alpha] Removes a third-party auth integration",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "tpa_id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ThirdPartyAuth"
}
}
}
},
"403": {
"description": ""
}
},
"tags": [
"Auth"
],
"security": [
{
"bearer": []
}
]
},
"get": {
"operationId": "getTPAForProject",
"summary": "[Alpha] Get a third-party integration",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "tpa_id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ThirdPartyAuth"
}
}
}
},
"403": {
"description": ""
}
},
"tags": [
"Auth"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/pause": {
"post": {
"operationId": "v1-pause-a-project",
"summary": "Pauses the given project",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": ""
},
"403": {
"description": ""
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/restore": {
"get": {
"operationId": "v1-list-available-restore-versions",
"summary": "Lists available restore versions for the given project",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetProjectAvailableRestoreVersionsResponse"
}
}
}
},
"403": {
"description": ""
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
},
"post": {
"operationId": "v1-restore-a-project",
"summary": "Restores the given project",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/RestoreProjectBodyDto"
}
}
}
},
"responses": {
"200": {
"description": ""
},
"403": {
"description": ""
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/restore/cancel": {
"post": {
"operationId": "v1-cancel-a-project-restoration",
"summary": "Cancels the given project restoration",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": ""
},
"403": {
"description": ""
}
},
"tags": [
"Projects"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/analytics/endpoints/logs.all": {
"get": {
"operationId": "getLogs",
"summary": "Gets project's logs",
"parameters": [
{
"name": "iso_timestamp_end",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "iso_timestamp_start",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "sql",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "ref",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/V1AnalyticsResponse"
}
}
}
},
"403": {
"description": ""
}
},
"tags": [
"Analytics"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/database/query": {
"post": {
"operationId": "v1-run-a-query",
"summary": "[Beta] Run sql query",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/V1RunQueryBody"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to run sql query"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/database/webhooks/enable": {
"post": {
"operationId": "v1-enable-database-webhook",
"summary": "[Beta] Enables Database Webhooks on the project",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"201": {
"description": ""
},
"403": {
"description": ""
},
"500": {
"description": "Failed to enable Database Webhooks on the project"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/database/context": {
"get": {
"operationId": "getDatabaseMetadata",
"summary": "Gets database metadata for the given project.",
"description": "This is an **experimental** endpoint. It is subject to change or removal in future versions. Use it with caution, as it may not remain supported or stable.",
"deprecated": true,
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetProjectDbMetadataResponseDto"
}
}
}
},
"403": {
"description": ""
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/functions": {
"get": {
"operationId": "v1-list-all-functions",
"summary": "List all functions",
"description": "Returns all functions you've previously added to the specified project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FunctionResponse"
}
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's functions"
}
},
"tags": [
"Edge Functions"
],
"security": [
{
"bearer": []
}
]
},
"post": {
"operationId": "v1-create-a-function",
"summary": "Create a function",
"description": "This endpoint is deprecated - use the deploy endpoint. Creates a function and adds it to the specified project.",
"deprecated": true,
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "slug",
"required": false,
"in": "query",
"schema": {
"pattern": "/^[A-Za-z0-9_-]+$/",
"type": "string"
}
},
{
"name": "name",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "verify_jwt",
"required": false,
"in": "query",
"schema": {
"type": "boolean"
}
},
{
"name": "import_map",
"required": false,
"in": "query",
"schema": {
"type": "boolean"
}
},
{
"name": "entrypoint_path",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "import_map_path",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/V1CreateFunctionBody"
}
},
"application/vnd.denoland.eszip": {
"schema": {
"$ref": "#/components/schemas/V1CreateFunctionBody"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FunctionResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to create project's function"
}
},
"tags": [
"Edge Functions"
],
"security": [
{
"bearer": []
}
]
},
"put": {
"operationId": "v1-bulk-update-functions",
"summary": "Bulk update functions",
"description": "Bulk update functions. It will create a new function or replace existing. The operation is idempotent. NOTE: You will need to manually bump the version.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BulkUpdateFunctionBody"
}
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BulkUpdateFunctionResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update functions"
}
},
"tags": [
"Edge Functions"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/functions/deploy": {
"post": {
"operationId": "v1-deploy-a-function",
"summary": "Deploy a function",
"description": "A new endpoint to deploy functions. It will create if function does not exist.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "slug",
"required": false,
"in": "query",
"schema": {
"pattern": "/^[A-Za-z0-9_-]+$/",
"type": "string"
}
},
{
"name": "bundleOnly",
"required": false,
"in": "query",
"schema": {
"type": "boolean"
}
}
],
"requestBody": {
"required": true,
"content": {
"multipart/form-data": {
"schema": {
"$ref": "#/components/schemas/FunctionDeployBody"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DeployFunctionResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to deploy function"
}
},
"tags": [
"Edge Functions"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/functions/{function_slug}": {
"get": {
"operationId": "v1-get-a-function",
"summary": "Retrieve a function",
"description": "Retrieves a function with the specified slug and project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "function_slug",
"required": true,
"in": "path",
"description": "Function slug",
"schema": {
"pattern": "/^[A-Za-z0-9_-]+$/",
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FunctionSlugResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve function with given slug"
}
},
"tags": [
"Edge Functions"
],
"security": [
{
"bearer": []
}
]
},
"patch": {
"operationId": "v1-update-a-function",
"summary": "Update a function",
"description": "Updates a function with the specified slug and project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "function_slug",
"required": true,
"in": "path",
"description": "Function slug",
"schema": {
"pattern": "/^[A-Za-z0-9_-]+$/",
"type": "string"
}
},
{
"name": "slug",
"required": false,
"in": "query",
"schema": {
"pattern": "/^[A-Za-z0-9_-]+$/",
"type": "string"
}
},
{
"name": "name",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "verify_jwt",
"required": false,
"in": "query",
"schema": {
"type": "boolean"
}
},
{
"name": "import_map",
"required": false,
"in": "query",
"schema": {
"type": "boolean"
}
},
{
"name": "entrypoint_path",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "import_map_path",
"required": false,
"in": "query",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/V1UpdateFunctionBody"
}
},
"application/vnd.denoland.eszip": {
"schema": {
"$ref": "#/components/schemas/V1UpdateFunctionBody"
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/FunctionResponse"
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update function with given slug"
}
},
"tags": [
"Edge Functions"
],
"security": [
{
"bearer": []
}
]
},
"delete": {
"operationId": "v1-delete-a-function",
"summary": "Delete a function",
"description": "Deletes a function with the specified slug from the specified project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "function_slug",
"required": true,
"in": "path",
"description": "Function slug",
"schema": {
"pattern": "/^[A-Za-z0-9_-]+$/",
"type": "string"
}
}
],
"responses": {
"200": {
"description": ""
},
"403": {
"description": ""
},
"500": {
"description": "Failed to delete function with given slug"
}
},
"tags": [
"Edge Functions"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/functions/{function_slug}/body": {
"get": {
"operationId": "v1-get-a-function-body",
"summary": "Retrieve a function body",
"description": "Retrieves a function body for the specified slug and project.",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "function_slug",
"required": true,
"in": "path",
"description": "Function slug",
"schema": {
"pattern": "/^[A-Za-z0-9_-]+$/",
"type": "string"
}
}
],
"responses": {
"200": {
"description": ""
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve function body with given slug"
}
},
"tags": [
"Edge Functions"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/storage/buckets": {
"get": {
"operationId": "v1-list-all-buckets",
"summary": "Lists all buckets",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/V1StorageBucketResponse"
}
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to get list of buckets"
}
},
"tags": [
"Storage"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/config/auth/sso/providers": {
"post": {
"operationId": "v1-create-a-sso-provider",
"summary": "Creates a new SSO provider",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateProviderBody"
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/CreateProviderResponse"
}
}
}
},
"403": {
"description": ""
},
"404": {
"description": "SAML 2.0 support is not enabled for this project"
}
},
"tags": [
"Auth"
],
"security": [
{
"bearer": []
}
]
},
"get": {
"operationId": "v1-list-all-sso-provider",
"summary": "Lists all SSO providers",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ListProvidersResponse"
}
}
}
},
"403": {
"description": ""
},
"404": {
"description": "SAML 2.0 support is not enabled for this project"
}
},
"tags": [
"Auth"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/config/auth/sso/providers/{provider_id}": {
"get": {
"operationId": "v1-get-a-sso-provider",
"summary": "Gets a SSO provider by its UUID",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "provider_id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/GetProviderResponse"
}
}
}
},
"403": {
"description": ""
},
"404": {
"description": "Either SAML 2.0 was not enabled for this project, or the provider does not exist"
}
},
"tags": [
"Auth"
],
"security": [
{
"bearer": []
}
]
},
"put": {
"operationId": "v1-update-a-sso-provider",
"summary": "Updates a SSO provider by its UUID",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "provider_id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateProviderBody"
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UpdateProviderResponse"
}
}
}
},
"403": {
"description": ""
},
"404": {
"description": "Either SAML 2.0 was not enabled for this project, or the provider does not exist"
}
},
"tags": [
"Auth"
],
"security": [
{
"bearer": []
}
]
},
"delete": {
"operationId": "v1-delete-a-sso-provider",
"summary": "Removes a SSO provider by its UUID",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
},
{
"name": "provider_id",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DeleteProviderResponse"
}
}
}
},
"403": {
"description": ""
},
"404": {
"description": "Either SAML 2.0 was not enabled for this project, or the provider does not exist"
}
},
"tags": [
"Auth"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/database/backups": {
"get": {
"operationId": "v1-list-all-backups",
"summary": "Lists all backups",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/V1BackupsResponse"
}
}
}
},
"500": {
"description": "Failed to get backups"
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/database/backups/restore-pitr": {
"post": {
"operationId": "v1-restore-pitr-backup",
"summary": "Restores a PITR backup for a database",
"parameters": [
{
"name": "ref",
"required": true,
"in": "path",
"description": "Project ref",
"schema": {
"minLength": 20,
"maxLength": 20,
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/V1RestorePitrBody"
}
}
}
},
"responses": {
"201": {
"description": ""
}
},
"tags": [
"Database"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/organizations/{slug}/members": {
"get": {
"operationId": "v1-list-organization-members",
"summary": "List members of an organization",
"parameters": [
{
"name": "slug",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/V1OrganizationMemberResponse"
}
}
}
}
}
},
"tags": [
"Organizations"
],
"security": [
{
"bearer": []
}
]
}
},
"/v1/organizations/{slug}": {
"get": {
"operationId": "v1-get-an-organization",
"summary": "Gets information about the organization",
"parameters": [
{
"name": "slug",
"required": true,
"in": "path",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/V1OrganizationSlugResponse"
}
}
}
}
},
"tags": [
"Organizations"
],
"security": [
{
"bearer": []
}
]
}
}
},
"info": {
"title": "Supabase API (v1)",
"description": "Supabase API generated from the OpenAPI specification.\u003Cbr\u003EVisit [https://supabase.com/docs](https://supabase.com/docs) for a complete documentation.",
"version": "1.0.0",
"contact": {
}
},
"tags": [
{
"name": "Auth",
"description": "Auth related endpoints"
},
{
"name": "Database",
"description": "Database related endpoints"
},
{
"name": "Domains",
"description": "Domains related endpoints"
},
{
"name": "Edge Functions",
"description": "Edge related endpoints"
},
{
"name": "Environments",
"description": "Environments related endpoints"
},
{
"name": "OAuth",
"description": "OAuth related endpoints"
},
{
"name": "Organizations",
"description": "Organizations related endpoints"
},
{
"name": "Projects",
"description": "Projects related endpoints"
},
{
"name": "Rest",
"description": "Rest related endpoints"
},
{
"name": "Secrets",
"description": "Secrets related endpoints"
},
{
"name": "Storage",
"description": "Storage related endpoints"
}
],
"servers": [],
"components": {
"securitySchemes": {
"bearer": {
"scheme": "bearer",
"bearerFormat": "JWT",
"type": "http"
}
},
"schemas": {
"BranchDetailResponse": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"INACTIVE",
"ACTIVE_HEALTHY",
"ACTIVE_UNHEALTHY",
"COMING_UP",
"UNKNOWN",
"GOING_DOWN",
"INIT_FAILED",
"REMOVED",
"RESTORING",
"UPGRADING",
"PAUSING",
"RESTORE_FAILED",
"RESTARTING",
"PAUSE_FAILED",
"RESIZING"
]
},
"db_port": {
"type": "integer"
},
"ref": {
"type": "string"
},
"postgres_version": {
"type": "string"
},
"postgres_engine": {
"type": "string"
},
"release_channel": {
"type": "string"
},
"db_host": {
"type": "string"
},
"db_user": {
"type": "string"
},
"db_pass": {
"type": "string"
},
"jwt_secret": {
"type": "string"
}
},
"required": [
"status",
"db_port",
"ref",
"postgres_version",
"postgres_engine",
"release_channel",
"db_host"
]
},
"UpdateBranchBody": {
"type": "object",
"properties": {
"reset_on_push": {
"type": "boolean",
"deprecated": true,
"description": "This field is deprecated and will be ignored. Use v1-reset-a-branch endpoint directly instead."
},
"branch_name": {
"type": "string"
},
"git_branch": {
"type": "string"
},
"persistent": {
"type": "boolean"
},
"status": {
"type": "string",
"enum": [
"CREATING_PROJECT",
"RUNNING_MIGRATIONS",
"MIGRATIONS_PASSED",
"MIGRATIONS_FAILED",
"FUNCTIONS_DEPLOYED",
"FUNCTIONS_FAILED"
]
}
}
},
"BranchResponse": {
"type": "object",
"properties": {
"pr_number": {
"type": "integer",
"format": "int32"
},
"latest_check_run_id": {
"type": "number",
"deprecated": true,
"description": "This field is deprecated and will not be populated."
},
"status": {
"type": "string",
"enum": [
"CREATING_PROJECT",
"RUNNING_MIGRATIONS",
"MIGRATIONS_PASSED",
"MIGRATIONS_FAILED",
"FUNCTIONS_DEPLOYED",
"FUNCTIONS_FAILED"
]
},
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"project_ref": {
"type": "string"
},
"parent_project_ref": {
"type": "string"
},
"is_default": {
"type": "boolean"
},
"git_branch": {
"type": "string"
},
"persistent": {
"type": "boolean"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": [
"status",
"id",
"name",
"project_ref",
"parent_project_ref",
"is_default",
"persistent",
"created_at",
"updated_at"
]
},
"BranchDeleteResponse": {
"type": "object",
"properties": {
"message": {
"type": "string"
}
},
"required": [
"message"
]
},
"BranchUpdateResponse": {
"type": "object",
"properties": {
"workflow_run_id": {
"type": "string"
},
"message": {
"type": "string"
}
},
"required": [
"workflow_run_id",
"message"
]
},
"V1DatabaseResponse": {
"type": "object",
"properties": {
"host": {
"type": "string",
"description": "Database host"
},
"version": {
"type": "string",
"description": "Database version"
},
"postgres_engine": {
"type": "string",
"description": "Database engine"
},
"release_channel": {
"type": "string",
"description": "Release channel"
}
},
"required": [
"host",
"version",
"postgres_engine",
"release_channel"
]
},
"V1ProjectWithDatabaseResponse": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Id of your project"
},
"organization_id": {
"type": "string",
"description": "Slug of your organization"
},
"name": {
"type": "string",
"description": "Name of your project"
},
"region": {
"type": "string",
"description": "Region of your project",
"example": "us-east-1"
},
"created_at": {
"type": "string",
"description": "Creation timestamp",
"example": "2023-03-29T16:32:59Z"
},
"status": {
"type": "string",
"enum": [
"INACTIVE",
"ACTIVE_HEALTHY",
"ACTIVE_UNHEALTHY",
"COMING_UP",
"UNKNOWN",
"GOING_DOWN",
"INIT_FAILED",
"REMOVED",
"RESTORING",
"UPGRADING",
"PAUSING",
"RESTORE_FAILED",
"RESTARTING",
"PAUSE_FAILED",
"RESIZING"
]
},
"database": {
"$ref": "#/components/schemas/V1DatabaseResponse"
}
},
"required": [
"id",
"organization_id",
"name",
"region",
"created_at",
"status",
"database"
]
},
"V1CreateProjectBodyDto": {
"type": "object",
"properties": {
"db_pass": {
"type": "string",
"description": "Database password"
},
"name": {
"type": "string",
"description": "Name of your project"
},
"organization_id": {
"type": "string",
"description": "Slug of your organization"
},
"plan": {
"type": "string",
"enum": [
"free",
"pro"
],
"deprecated": true,
"description": "Subscription Plan is now set on organization level and is ignored in this request"
},
"region": {
"type": "string",
"description": "Region you want your server to reside in",
"enum": [
"us-east-1",
"us-east-2",
"us-west-1",
"us-west-2",
"ap-east-1",
"ap-southeast-1",
"ap-northeast-1",
"ap-northeast-2",
"ap-southeast-2",
"eu-west-1",
"eu-west-2",
"eu-west-3",
"eu-north-1",
"eu-central-1",
"eu-central-2",
"ca-central-1",
"ap-south-1",
"sa-east-1"
]
},
"kps_enabled": {
"type": "boolean",
"deprecated": true,
"description": "This field is deprecated and is ignored in this request"
},
"desired_instance_size": {
"type": "string",
"enum": [
"micro",
"small",
"medium",
"large",
"xlarge",
"2xlarge",
"4xlarge",
"8xlarge",
"12xlarge",
"16xlarge"
]
},
"template_url": {
"type": "string",
"format": "uri",
"description": "Template URL used to create the project from the CLI.",
"example": "https://github.com/supabase/supabase/tree/master/examples/slack-clone/nextjs-slack-clone"
}
},
"required": [
"db_pass",
"name",
"organization_id",
"region"
],
"additionalProperties": false,
"hideDefinitions": [
"release_channel",
"postgres_engine"
]
},
"V1ProjectResponse": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Id of your project"
},
"organization_id": {
"type": "string",
"description": "Slug of your organization"
},
"name": {
"type": "string",
"description": "Name of your project"
},
"region": {
"type": "string",
"description": "Region of your project",
"example": "us-east-1"
},
"created_at": {
"type": "string",
"description": "Creation timestamp",
"example": "2023-03-29T16:32:59Z"
},
"status": {
"type": "string",
"enum": [
"INACTIVE",
"ACTIVE_HEALTHY",
"ACTIVE_UNHEALTHY",
"COMING_UP",
"UNKNOWN",
"GOING_DOWN",
"INIT_FAILED",
"REMOVED",
"RESTORING",
"UPGRADING",
"PAUSING",
"RESTORE_FAILED",
"RESTARTING",
"PAUSE_FAILED",
"RESIZING"
]
}
},
"required": [
"id",
"organization_id",
"name",
"region",
"created_at",
"status"
]
},
"OrganizationResponseV1": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"name"
]
},
"CreateOrganizationV1Dto": {
"type": "object",
"properties": {
"name": {
"type": "string"
}
},
"required": [
"name"
],
"additionalProperties": false
},
"OAuthTokenBody": {
"type": "object",
"properties": {
"grant_type": {
"enum": [
"authorization_code",
"refresh_token"
],
"type": "string"
},
"client_id": {
"type": "string"
},
"client_secret": {
"type": "string"
},
"code": {
"type": "string"
},
"code_verifier": {
"type": "string"
},
"redirect_uri": {
"type": "string"
},
"refresh_token": {
"type": "string"
}
},
"required": [
"grant_type",
"client_id",
"client_secret"
]
},
"OAuthTokenResponse": {
"type": "object",
"properties": {
"expires_in": {
"type": "integer",
"format": "int64"
},
"token_type": {
"type": "string",
"enum": [
"Bearer"
]
},
"access_token": {
"type": "string"
},
"refresh_token": {
"type": "string"
}
},
"required": [
"expires_in",
"token_type",
"access_token",
"refresh_token"
]
},
"OAuthRevokeTokenBodyDto": {
"type": "object",
"properties": {
"client_id": {
"type": "string",
"format": "uuid"
},
"client_secret": {
"type": "string"
},
"refresh_token": {
"type": "string"
}
},
"required": [
"client_id",
"client_secret",
"refresh_token"
],
"additionalProperties": false
},
"SnippetProject": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"name"
]
},
"SnippetUser": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"username": {
"type": "string"
}
},
"required": [
"id",
"username"
]
},
"SnippetMeta": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"inserted_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"sql"
]
},
"visibility": {
"type": "string",
"enum": [
"user",
"project",
"org",
"public"
]
},
"name": {
"type": "string"
},
"description": {
"type": "string",
"nullable": true
},
"project": {
"$ref": "#/components/schemas/SnippetProject"
},
"owner": {
"$ref": "#/components/schemas/SnippetUser"
},
"updated_by": {
"$ref": "#/components/schemas/SnippetUser"
}
},
"required": [
"id",
"inserted_at",
"updated_at",
"type",
"visibility",
"name",
"description",
"project",
"owner",
"updated_by"
]
},
"SnippetList": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"$ref": "#/components/schemas/SnippetMeta"
}
},
"cursor": {
"type": "string"
}
},
"required": [
"data"
]
},
"SnippetContent": {
"type": "object",
"properties": {
"favorite": {
"type": "boolean"
},
"schema_version": {
"type": "string"
},
"sql": {
"type": "string"
}
},
"required": [
"favorite",
"schema_version",
"sql"
]
},
"SnippetResponse": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"inserted_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"sql"
]
},
"visibility": {
"enum": [
"user",
"project",
"org",
"public"
],
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": "string",
"nullable": true
},
"project": {
"$ref": "#/components/schemas/SnippetProject"
},
"owner": {
"$ref": "#/components/schemas/SnippetUser"
},
"updated_by": {
"$ref": "#/components/schemas/SnippetUser"
},
"content": {
"$ref": "#/components/schemas/SnippetContent"
}
},
"required": [
"id",
"inserted_at",
"updated_at",
"type",
"visibility",
"name",
"description",
"project",
"owner",
"updated_by",
"content"
]
},
"ApiKeySecretJWTTemplate": {
"type": "object",
"properties": {
"role": {
"type": "string"
}
},
"required": [
"role"
]
},
"ApiKeyResponse": {
"type": "object",
"properties": {
"type": {
"nullable": true,
"type": "string",
"enum": [
"publishable",
"secret",
"legacy"
]
},
"name": {
"type": "string"
},
"api_key": {
"type": "string"
},
"id": {
"type": "string",
"nullable": true
},
"prefix": {
"type": "string",
"nullable": true
},
"description": {
"type": "string",
"nullable": true
},
"hash": {
"type": "string",
"nullable": true
},
"secret_jwt_template": {
"nullable": true,
"allOf": [
{
"$ref": "#/components/schemas/ApiKeySecretJWTTemplate"
}
]
},
"inserted_at": {
"type": "string",
"nullable": true
},
"updated_at": {
"type": "string",
"nullable": true
}
},
"required": [
"name",
"api_key"
]
},
"CreateApiKeyBody": {
"type": "object",
"properties": {
"type": {
"enum": [
"publishable",
"secret"
],
"type": "string"
},
"description": {
"type": "string",
"nullable": true
},
"secret_jwt_template": {
"nullable": true,
"allOf": [
{
"$ref": "#/components/schemas/ApiKeySecretJWTTemplate"
}
]
}
},
"required": [
"type"
]
},
"UpdateApiKeyBody": {
"type": "object",
"properties": {
"description": {
"type": "string",
"nullable": true
},
"secret_jwt_template": {
"nullable": true,
"allOf": [
{
"$ref": "#/components/schemas/ApiKeySecretJWTTemplate"
}
]
}
}
},
"DesiredInstanceSize": {
"type": "string",
"enum": [
"micro",
"small",
"medium",
"large",
"xlarge",
"2xlarge",
"4xlarge",
"8xlarge",
"12xlarge",
"16xlarge"
]
},
"ReleaseChannel": {
"type": "string",
"enum": [
"internal",
"alpha",
"beta",
"ga",
"withdrawn",
"preview"
]
},
"PostgresEngine": {
"type": "string",
"description": "Postgres engine version. If not provided, the latest version will be used.",
"enum": [
"15",
"17-oriole"
]
},
"CreateBranchBody": {
"type": "object",
"properties": {
"desired_instance_size": {
"$ref": "#/components/schemas/DesiredInstanceSize"
},
"release_channel": {
"$ref": "#/components/schemas/ReleaseChannel"
},
"postgres_engine": {
"$ref": "#/components/schemas/PostgresEngine"
},
"branch_name": {
"type": "string"
},
"git_branch": {
"type": "string"
},
"persistent": {
"type": "boolean"
},
"region": {
"type": "string"
}
},
"required": [
"branch_name"
]
},
"ValidationRecord": {
"type": "object",
"properties": {
"txt_name": {
"type": "string"
},
"txt_value": {
"type": "string"
}
},
"required": [
"txt_name",
"txt_value"
]
},
"ValidationError": {
"type": "object",
"properties": {
"message": {
"type": "string"
}
},
"required": [
"message"
]
},
"SslValidation": {
"type": "object",
"properties": {
"status": {
"type": "string"
},
"validation_records": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ValidationRecord"
}
},
"validation_errors": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ValidationError"
}
}
},
"required": [
"status",
"validation_records"
]
},
"OwnershipVerification": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"type",
"name",
"value"
]
},
"CustomHostnameDetails": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"hostname": {
"type": "string"
},
"ssl": {
"$ref": "#/components/schemas/SslValidation"
},
"ownership_verification": {
"$ref": "#/components/schemas/OwnershipVerification"
},
"custom_origin_server": {
"type": "string"
},
"verification_errors": {
"type": "array",
"items": {
"type": "string"
}
},
"status": {
"type": "string"
}
},
"required": [
"id",
"hostname",
"ssl",
"ownership_verification",
"custom_origin_server",
"status"
]
},
"CfResponse": {
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"errors": {
"type": "array",
"items": {
"type": "object"
}
},
"messages": {
"type": "array",
"items": {
"type": "object"
}
},
"result": {
"$ref": "#/components/schemas/CustomHostnameDetails"
}
},
"required": [
"success",
"errors",
"messages",
"result"
]
},
"UpdateCustomHostnameResponse": {
"type": "object",
"properties": {
"status": {
"enum": [
"1_not_started",
"2_initiated",
"3_challenge_verified",
"4_origin_setup_completed",
"5_services_reconfigured"
],
"type": "string"
},
"custom_hostname": {
"type": "string"
},
"data": {
"$ref": "#/components/schemas/CfResponse"
}
},
"required": [
"status",
"custom_hostname",
"data"
]
},
"UpdateCustomHostnameBody": {
"type": "object",
"properties": {
"custom_hostname": {
"type": "string"
}
},
"required": [
"custom_hostname"
]
},
"NetworkBanResponse": {
"type": "object",
"properties": {
"banned_ipv4_addresses": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"banned_ipv4_addresses"
]
},
"RemoveNetworkBanRequest": {
"type": "object",
"properties": {
"ipv4_addresses": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"ipv4_addresses"
]
},
"NetworkRestrictionsRequest": {
"type": "object",
"properties": {
"dbAllowedCidrs": {
"type": "array",
"items": {
"type": "string"
}
},
"dbAllowedCidrsV6": {
"type": "array",
"items": {
"type": "string"
}
}
}
},
"NetworkRestrictionsResponse": {
"type": "object",
"properties": {
"entitlement": {
"enum": [
"disallowed",
"allowed"
],
"type": "string"
},
"config": {
"$ref": "#/components/schemas/NetworkRestrictionsRequest"
},
"old_config": {
"$ref": "#/components/schemas/NetworkRestrictionsRequest"
},
"status": {
"enum": [
"stored",
"applied"
],
"type": "string"
}
},
"required": [
"entitlement",
"config",
"status"
]
},
"PgsodiumConfigResponse": {
"type": "object",
"properties": {
"root_key": {
"type": "string"
}
},
"required": [
"root_key"
]
},
"UpdatePgsodiumConfigBody": {
"type": "object",
"properties": {
"root_key": {
"type": "string"
}
},
"required": [
"root_key"
]
},
"PostgrestConfigWithJWTSecretResponse": {
"type": "object",
"properties": {
"max_rows": {
"type": "integer"
},
"db_pool": {
"type": "integer",
"nullable": true,
"description": "If `null`, the value is automatically configured based on compute size."
},
"db_schema": {
"type": "string"
},
"db_extra_search_path": {
"type": "string"
},
"jwt_secret": {
"type": "string"
}
},
"required": [
"max_rows",
"db_pool",
"db_schema",
"db_extra_search_path"
]
},
"UpdatePostgrestConfigBody": {
"type": "object",
"properties": {
"max_rows": {
"type": "integer",
"minimum": 0,
"maximum": 1000000
},
"db_pool": {
"type": "integer",
"minimum": 0,
"maximum": 1000
},
"db_extra_search_path": {
"type": "string"
},
"db_schema": {
"type": "string"
}
}
},
"V1PostgrestConfigResponse": {
"type": "object",
"properties": {
"max_rows": {
"type": "integer"
},
"db_pool": {
"type": "integer",
"nullable": true,
"description": "If `null`, the value is automatically configured based on compute size."
},
"db_schema": {
"type": "string"
},
"db_extra_search_path": {
"type": "string"
}
},
"required": [
"max_rows",
"db_pool",
"db_schema",
"db_extra_search_path"
]
},
"V1ProjectRefResponse": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"format": "int64"
},
"ref": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"id",
"ref",
"name"
]
},
"SecretResponse": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [
"name",
"value"
]
},
"CreateSecretBody": {
"type": "object",
"properties": {
"name": {
"type": "string",
"maxLength": 256,
"pattern": "/^(?!SUPABASE_).*/",
"description": "Secret name must not start with the SUPABASE_ prefix.",
"example": "string"
},
"value": {
"type": "string",
"maxLength": 24576
}
},
"required": [
"name",
"value"
]
},
"SslEnforcements": {
"type": "object",
"properties": {
"database": {
"type": "boolean"
}
},
"required": [
"database"
]
},
"SslEnforcementResponse": {
"type": "object",
"properties": {
"currentConfig": {
"$ref": "#/components/schemas/SslEnforcements"
},
"appliedSuccessfully": {
"type": "boolean"
}
},
"required": [
"currentConfig",
"appliedSuccessfully"
]
},
"SslEnforcementRequest": {
"type": "object",
"properties": {
"requestedConfig": {
"$ref": "#/components/schemas/SslEnforcements"
}
},
"required": [
"requestedConfig"
]
},
"TypescriptResponse": {
"type": "object",
"properties": {
"types": {
"type": "string"
}
},
"required": [
"types"
]
},
"VanitySubdomainConfigResponse": {
"type": "object",
"properties": {
"status": {
"enum": [
"not-used",
"custom-domain-used",
"active"
],
"type": "string"
},
"custom_domain": {
"type": "string"
}
},
"required": [
"status"
]
},
"VanitySubdomainBody": {
"type": "object",
"properties": {
"vanity_subdomain": {
"type": "string"
}
},
"required": [
"vanity_subdomain"
]
},
"SubdomainAvailabilityResponse": {
"type": "object",
"properties": {
"available": {
"type": "boolean"
}
},
"required": [
"available"
]
},
"ActivateVanitySubdomainResponse": {
"type": "object",
"properties": {
"custom_domain": {
"type": "string"
}
},
"required": [
"custom_domain"
]
},
"UpgradeDatabaseBody": {
"type": "object",
"properties": {
"release_channel": {
"$ref": "#/components/schemas/ReleaseChannel"
},
"target_version": {
"type": "string"
}
},
"required": [
"release_channel",
"target_version"
]
},
"ProjectUpgradeInitiateResponse": {
"type": "object",
"properties": {
"tracking_id": {
"type": "string"
}
},
"required": [
"tracking_id"
]
},
"ProjectVersion": {
"type": "object",
"properties": {
"postgres_version": {
"$ref": "#/components/schemas/PostgresEngine"
},
"release_channel": {
"$ref": "#/components/schemas/ReleaseChannel"
},
"app_version": {
"type": "string"
}
},
"required": [
"postgres_version",
"release_channel",
"app_version"
]
},
"ProjectUpgradeEligibilityResponse": {
"type": "object",
"properties": {
"current_app_version_release_channel": {
"$ref": "#/components/schemas/ReleaseChannel"
},
"duration_estimate_hours": {
"type": "integer"
},
"eligible": {
"type": "boolean"
},
"current_app_version": {
"type": "string"
},
"latest_app_version": {
"type": "string"
},
"target_upgrade_versions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProjectVersion"
}
},
"potential_breaking_changes": {
"type": "array",
"items": {
"type": "string"
}
},
"legacy_auth_custom_roles": {
"type": "array",
"items": {
"type": "string"
}
},
"extension_dependent_objects": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"current_app_version_release_channel",
"duration_estimate_hours",
"eligible",
"current_app_version",
"latest_app_version",
"target_upgrade_versions",
"potential_breaking_changes",
"legacy_auth_custom_roles",
"extension_dependent_objects"
]
},
"DatabaseUpgradeStatus": {
"type": "object",
"properties": {
"target_version": {
"type": "integer"
},
"status": {
"enum": [0, 1, 2],
"type": "integer"
},
"initiated_at": {
"type": "string"
},
"latest_status_at": {
"type": "string"
},
"error": {
"type": "string",
"enum": [
"1_upgraded_instance_launch_failed",
"2_volume_detachchment_from_upgraded_instance_failed",
"3_volume_attachment_to_original_instance_failed",
"4_data_upgrade_initiation_failed",
"5_data_upgrade_completion_failed",
"6_volume_detachchment_from_original_instance_failed",
"7_volume_attachment_to_upgraded_instance_failed",
"8_upgrade_completion_failed",
"9_post_physical_backup_failed"
]
},
"progress": {
"type": "string",
"enum": [
"0_requested",
"1_started",
"2_launched_upgraded_instance",
"3_detached_volume_from_upgraded_instance",
"4_attached_volume_to_original_instance",
"5_initiated_data_upgrade",
"6_completed_data_upgrade",
"7_detached_volume_from_original_instance",
"8_attached_volume_to_upgraded_instance",
"9_completed_upgrade",
"10_completed_post_physical_backup"
]
}
},
"required": [
"target_version",
"status",
"initiated_at",
"latest_status_at"
]
},
"DatabaseUpgradeStatusResponse": {
"type": "object",
"properties": {
"databaseUpgradeStatus": {
"nullable": true,
"allOf": [
{
"$ref": "#/components/schemas/DatabaseUpgradeStatus"
}
]
}
},
"required": [
"databaseUpgradeStatus"
]
},
"ReadOnlyStatusResponse": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"override_enabled": {
"type": "boolean"
},
"override_active_until": {
"type": "string"
}
},
"required": [
"enabled",
"override_enabled",
"override_active_until"
]
},
"SetUpReadReplicaBody": {
"type": "object",
"properties": {
"read_replica_region": {
"type": "string",
"enum": [
"us-east-1",
"us-east-2",
"us-west-1",
"us-west-2",
"ap-east-1",
"ap-southeast-1",
"ap-northeast-1",
"ap-northeast-2",
"ap-southeast-2",
"eu-west-1",
"eu-west-2",
"eu-west-3",
"eu-north-1",
"eu-central-1",
"eu-central-2",
"ca-central-1",
"ap-south-1",
"sa-east-1"
],
"description": "Region you want your read replica to reside in",
"example": "us-east-1"
}
},
"required": [
"read_replica_region"
]
},
"RemoveReadReplicaBody": {
"type": "object",
"properties": {
"database_identifier": {
"type": "string"
}
},
"required": [
"database_identifier"
]
},
"AuthHealthResponse": {
"type": "object",
"properties": {
"name": {
"type": "string",
"enum": [
"GoTrue"
]
}
},
"required": [
"name"
]
},
"RealtimeHealthResponse": {
"type": "object",
"properties": {
"connected_cluster": {
"type": "integer"
}
},
"required": [
"connected_cluster"
]
},
"V1ServiceHealthResponse": {
"type": "object",
"properties": {
"info": {
"oneOf": [
{
"$ref": "#/components/schemas/AuthHealthResponse"
},
{
"$ref": "#/components/schemas/RealtimeHealthResponse"
}
]
},
"name": {
"enum": [
"auth",
"db",
"pooler",
"realtime",
"rest",
"storage"
],
"type": "string"
},
"healthy": {
"type": "boolean"
},
"status": {
"enum": [
"COMING_UP",
"ACTIVE_HEALTHY",
"UNHEALTHY"
],
"type": "string"
},
"error": {
"type": "string"
}
},
"required": [
"name",
"healthy",
"status"
]
},
"StorageFeatureImageTransformation": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
},
"required": [
"enabled"
]
},
"StorageFeatureS3Protocol": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
},
"required": [
"enabled"
]
},
"StorageFeatures": {
"type": "object",
"properties": {
"imageTransformation": {
"$ref": "#/components/schemas/StorageFeatureImageTransformation"
},
"s3Protocol": {
"$ref": "#/components/schemas/StorageFeatureS3Protocol"
}
},
"required": [
"imageTransformation",
"s3Protocol"
]
},
"StorageConfigResponse": {
"type": "object",
"properties": {
"fileSizeLimit": {
"type": "integer",
"format": "int64"
},
"features": {
"$ref": "#/components/schemas/StorageFeatures"
}
},
"required": [
"fileSizeLimit",
"features"
]
},
"UpdateStorageConfigBody": {
"type": "object",
"properties": {
"fileSizeLimit": {
"type": "integer",
"minimum": 0,
"maximum": 53687091200,
"format": "int64"
},
"features": {
"$ref": "#/components/schemas/StorageFeatures"
}
}
},
"PostgresConfigResponse": {
"type": "object",
"properties": {
"effective_cache_size": {
"type": "string"
},
"logical_decoding_work_mem": {
"type": "string"
},
"maintenance_work_mem": {
"type": "string"
},
"track_activity_query_size": {
"type": "string"
},
"max_connections": {
"type": "integer",
"minimum": 1,
"maximum": 262143
},
"max_locks_per_transaction": {
"type": "integer",
"minimum": 10,
"maximum": 2147483640
},
"max_parallel_maintenance_workers": {
"type": "integer",
"minimum": 0,
"maximum": 1024
},
"max_parallel_workers": {
"type": "integer",
"minimum": 0,
"maximum": 1024
},
"max_parallel_workers_per_gather": {
"type": "integer",
"minimum": 0,
"maximum": 1024
},
"max_replication_slots": {
"type": "integer"
},
"max_slot_wal_keep_size": {
"type": "string"
},
"max_standby_archive_delay": {
"type": "string"
},
"max_standby_streaming_delay": {
"type": "string"
},
"max_wal_size": {
"type": "string"
},
"max_wal_senders": {
"type": "integer"
},
"max_worker_processes": {
"type": "integer",
"minimum": 0,
"maximum": 262143
},
"shared_buffers": {
"type": "string"
},
"statement_timeout": {
"type": "string"
},
"track_commit_timestamp": {
"type": "boolean"
},
"wal_keep_size": {
"type": "string"
},
"wal_sender_timeout": {
"type": "string"
},
"work_mem": {
"type": "string"
},
"session_replication_role": {
"enum": [
"origin",
"replica",
"local"
],
"type": "string"
}
}
},
"UpdatePostgresConfigBody": {
"type": "object",
"properties": {
"effective_cache_size": {
"type": "string"
},
"logical_decoding_work_mem": {
"type": "string"
},
"maintenance_work_mem": {
"type": "string"
},
"track_activity_query_size": {
"type": "string"
},
"max_connections": {
"type": "integer",
"minimum": 1,
"maximum": 262143
},
"max_locks_per_transaction": {
"type": "integer",
"minimum": 10,
"maximum": 2147483640
},
"max_parallel_maintenance_workers": {
"type": "integer",
"minimum": 0,
"maximum": 1024
},
"max_parallel_workers": {
"type": "integer",
"minimum": 0,
"maximum": 1024
},
"max_parallel_workers_per_gather": {
"type": "integer",
"minimum": 0,
"maximum": 1024
},
"max_replication_slots": {
"type": "integer"
},
"max_slot_wal_keep_size": {
"type": "string"
},
"max_standby_archive_delay": {
"type": "string"
},
"max_standby_streaming_delay": {
"type": "string"
},
"max_wal_size": {
"type": "string"
},
"max_wal_senders": {
"type": "integer"
},
"max_worker_processes": {
"type": "integer",
"minimum": 0,
"maximum": 262143
},
"shared_buffers": {
"type": "string"
},
"statement_timeout": {
"type": "string"
},
"track_commit_timestamp": {
"type": "boolean"
},
"wal_keep_size": {
"type": "string"
},
"wal_sender_timeout": {
"type": "string"
},
"work_mem": {
"type": "string"
},
"restart_database": {
"type": "boolean"
},
"session_replication_role": {
"enum": [
"origin",
"replica",
"local"
],
"type": "string"
}
}
},
"V1PgbouncerConfigResponse": {
"type": "object",
"properties": {
"pool_mode": {
"type": "string",
"enum": [
"transaction",
"session",
"statement"
]
},
"default_pool_size": {
"type": "number"
},
"ignore_startup_parameters": {
"type": "string"
},
"max_client_conn": {
"type": "number"
},
"connection_string": {
"type": "string"
}
}
},
"SupavisorConfigResponse": {
"type": "object",
"properties": {
"database_type": {
"type": "string",
"enum": [
"PRIMARY",
"READ_REPLICA"
]
},
"db_port": {
"type": "integer"
},
"default_pool_size": {
"type": "integer",
"nullable": true
},
"max_client_conn": {
"type": "integer",
"nullable": true
},
"identifier": {
"type": "string"
},
"is_using_scram_auth": {
"type": "boolean"
},
"db_user": {
"type": "string"
},
"db_host": {
"type": "string"
},
"db_name": {
"type": "string"
},
"connectionString": {
"type": "string"
},
"pool_mode": {
"enum": [
"transaction",
"session"
],
"type": "string"
}
},
"required": [
"database_type",
"db_port",
"default_pool_size",
"max_client_conn",
"identifier",
"is_using_scram_auth",
"db_user",
"db_host",
"db_name",
"connectionString",
"pool_mode"
]
},
"UpdateSupavisorConfigBody": {
"type": "object",
"properties": {
"default_pool_size": {
"type": "integer",
"nullable": true,
"minimum": 0,
"maximum": 1000
},
"pool_mode": {
"enum": [
"transaction",
"session"
],
"type": "string",
"deprecated": true,
"description": "This field is deprecated and is ignored in this request"
}
}
},
"UpdateSupavisorConfigResponse": {
"type": "object",
"properties": {
"default_pool_size": {
"type": "integer",
"nullable": true
},
"pool_mode": {
"enum": [
"transaction",
"session"
],
"type": "string"
}
},
"required": [
"default_pool_size",
"pool_mode"
]
},
"AuthConfigResponse": {
"type": "object",
"properties": {
"api_max_request_duration": {
"type": "integer",
"nullable": true
},
"db_max_pool_size": {
"type": "integer",
"nullable": true
},
"jwt_exp": {
"type": "integer",
"nullable": true
},
"mailer_otp_exp": {
"type": "integer"
},
"mailer_otp_length": {
"type": "integer",
"nullable": true
},
"mfa_max_enrolled_factors": {
"type": "integer",
"nullable": true
},
"mfa_phone_otp_length": {
"type": "integer"
},
"mfa_phone_max_frequency": {
"type": "integer",
"nullable": true
},
"password_min_length": {
"type": "integer",
"nullable": true
},
"rate_limit_anonymous_users": {
"type": "integer",
"nullable": true
},
"rate_limit_email_sent": {
"type": "integer",
"nullable": true
},
"rate_limit_sms_sent": {
"type": "integer",
"nullable": true
},
"rate_limit_token_refresh": {
"type": "integer",
"nullable": true
},
"rate_limit_verify": {
"type": "integer",
"nullable": true
},
"rate_limit_otp": {
"type": "integer",
"nullable": true
},
"security_refresh_token_reuse_interval": {
"type": "integer",
"nullable": true
},
"sessions_inactivity_timeout": {
"type": "integer",
"nullable": true
},
"sessions_timebox": {
"type": "integer",
"nullable": true
},
"sms_max_frequency": {
"type": "integer",
"nullable": true
},
"sms_otp_exp": {
"type": "integer",
"nullable": true
},
"sms_otp_length": {
"type": "integer"
},
"smtp_max_frequency": {
"type": "integer",
"nullable": true
},
"disable_signup": {
"type": "boolean",
"nullable": true
},
"external_anonymous_users_enabled": {
"type": "boolean",
"nullable": true
},
"external_apple_additional_client_ids": {
"type": "string",
"nullable": true
},
"external_apple_client_id": {
"type": "string",
"nullable": true
},
"external_apple_enabled": {
"type": "boolean",
"nullable": true
},
"external_apple_secret": {
"type": "string",
"nullable": true
},
"external_azure_client_id": {
"type": "string",
"nullable": true
},
"external_azure_enabled": {
"type": "boolean",
"nullable": true
},
"external_azure_secret": {
"type": "string",
"nullable": true
},
"external_azure_url": {
"type": "string",
"nullable": true
},
"external_bitbucket_client_id": {
"type": "string",
"nullable": true
},
"external_bitbucket_enabled": {
"type": "boolean",
"nullable": true
},
"external_bitbucket_secret": {
"type": "string",
"nullable": true
},
"external_discord_client_id": {
"type": "string",
"nullable": true
},
"external_discord_enabled": {
"type": "boolean",
"nullable": true
},
"external_discord_secret": {
"type": "string",
"nullable": true
},
"external_email_enabled": {
"type": "boolean",
"nullable": true
},
"external_facebook_client_id": {
"type": "string",
"nullable": true
},
"external_facebook_enabled": {
"type": "boolean",
"nullable": true
},
"external_facebook_secret": {
"type": "string",
"nullable": true
},
"external_figma_client_id": {
"type": "string",
"nullable": true
},
"external_figma_enabled": {
"type": "boolean",
"nullable": true
},
"external_figma_secret": {
"type": "string",
"nullable": true
},
"external_github_client_id": {
"type": "string",
"nullable": true
},
"external_github_enabled": {
"type": "boolean",
"nullable": true
},
"external_github_secret": {
"type": "string",
"nullable": true
},
"external_gitlab_client_id": {
"type": "string",
"nullable": true
},
"external_gitlab_enabled": {
"type": "boolean",
"nullable": true
},
"external_gitlab_secret": {
"type": "string",
"nullable": true
},
"external_gitlab_url": {
"type": "string",
"nullable": true
},
"external_google_additional_client_ids": {
"type": "string",
"nullable": true
},
"external_google_client_id": {
"type": "string",
"nullable": true
},
"external_google_enabled": {
"type": "boolean",
"nullable": true
},
"external_google_secret": {
"type": "string",
"nullable": true
},
"external_google_skip_nonce_check": {
"type": "boolean",
"nullable": true
},
"external_kakao_client_id": {
"type": "string",
"nullable": true
},
"external_kakao_enabled": {
"type": "boolean",
"nullable": true
},
"external_kakao_secret": {
"type": "string",
"nullable": true
},
"external_keycloak_client_id": {
"type": "string",
"nullable": true
},
"external_keycloak_enabled": {
"type": "boolean",
"nullable": true
},
"external_keycloak_secret": {
"type": "string",
"nullable": true
},
"external_keycloak_url": {
"type": "string",
"nullable": true
},
"external_linkedin_oidc_client_id": {
"type": "string",
"nullable": true
},
"external_linkedin_oidc_enabled": {
"type": "boolean",
"nullable": true
},
"external_linkedin_oidc_secret": {
"type": "string",
"nullable": true
},
"external_slack_oidc_client_id": {
"type": "string",
"nullable": true
},
"external_slack_oidc_enabled": {
"type": "boolean",
"nullable": true
},
"external_slack_oidc_secret": {
"type": "string",
"nullable": true
},
"external_notion_client_id": {
"type": "string",
"nullable": true
},
"external_notion_enabled": {
"type": "boolean",
"nullable": true
},
"external_notion_secret": {
"type": "string",
"nullable": true
},
"external_phone_enabled": {
"type": "boolean",
"nullable": true
},
"external_slack_client_id": {
"type": "string",
"nullable": true
},
"external_slack_enabled": {
"type": "boolean",
"nullable": true
},
"external_slack_secret": {
"type": "string",
"nullable": true
},
"external_spotify_client_id": {
"type": "string",
"nullable": true
},
"external_spotify_enabled": {
"type": "boolean",
"nullable": true
},
"external_spotify_secret": {
"type": "string",
"nullable": true
},
"external_twitch_client_id": {
"type": "string",
"nullable": true
},
"external_twitch_enabled": {
"type": "boolean",
"nullable": true
},
"external_twitch_secret": {
"type": "string",
"nullable": true
},
"external_twitter_client_id": {
"type": "string",
"nullable": true
},
"external_twitter_enabled": {
"type": "boolean",
"nullable": true
},
"external_twitter_secret": {
"type": "string",
"nullable": true
},
"external_workos_client_id": {
"type": "string",
"nullable": true
},
"external_workos_enabled": {
"type": "boolean",
"nullable": true
},
"external_workos_secret": {
"type": "string",
"nullable": true
},
"external_workos_url": {
"type": "string",
"nullable": true
},
"external_zoom_client_id": {
"type": "string",
"nullable": true
},
"external_zoom_enabled": {
"type": "boolean",
"nullable": true
},
"external_zoom_secret": {
"type": "string",
"nullable": true
},
"hook_custom_access_token_enabled": {
"type": "boolean",
"nullable": true
},
"hook_custom_access_token_uri": {
"type": "string",
"nullable": true
},
"hook_custom_access_token_secrets": {
"type": "string",
"nullable": true
},
"hook_mfa_verification_attempt_enabled": {
"type": "boolean",
"nullable": true
},
"hook_mfa_verification_attempt_uri": {
"type": "string",
"nullable": true
},
"hook_mfa_verification_attempt_secrets": {
"type": "string",
"nullable": true
},
"hook_password_verification_attempt_enabled": {
"type": "boolean",
"nullable": true
},
"hook_password_verification_attempt_uri": {
"type": "string",
"nullable": true
},
"hook_password_verification_attempt_secrets": {
"type": "string",
"nullable": true
},
"hook_send_sms_enabled": {
"type": "boolean",
"nullable": true
},
"hook_send_sms_uri": {
"type": "string",
"nullable": true
},
"hook_send_sms_secrets": {
"type": "string",
"nullable": true
},
"hook_send_email_enabled": {
"type": "boolean",
"nullable": true
},
"hook_send_email_uri": {
"type": "string",
"nullable": true
},
"hook_send_email_secrets": {
"type": "string",
"nullable": true
},
"mailer_allow_unverified_email_sign_ins": {
"type": "boolean",
"nullable": true
},
"mailer_autoconfirm": {
"type": "boolean",
"nullable": true
},
"mailer_secure_email_change_enabled": {
"type": "boolean",
"nullable": true
},
"mailer_subjects_confirmation": {
"type": "string",
"nullable": true
},
"mailer_subjects_email_change": {
"type": "string",
"nullable": true
},
"mailer_subjects_invite": {
"type": "string",
"nullable": true
},
"mailer_subjects_magic_link": {
"type": "string",
"nullable": true
},
"mailer_subjects_reauthentication": {
"type": "string",
"nullable": true
},
"mailer_subjects_recovery": {
"type": "string",
"nullable": true
},
"mailer_templates_confirmation_content": {
"type": "string",
"nullable": true
},
"mailer_templates_email_change_content": {
"type": "string",
"nullable": true
},
"mailer_templates_invite_content": {
"type": "string",
"nullable": true
},
"mailer_templates_magic_link_content": {
"type": "string",
"nullable": true
},
"mailer_templates_reauthentication_content": {
"type": "string",
"nullable": true
},
"mailer_templates_recovery_content": {
"type": "string",
"nullable": true
},
"mfa_totp_enroll_enabled": {
"type": "boolean",
"nullable": true
},
"mfa_totp_verify_enabled": {
"type": "boolean",
"nullable": true
},
"mfa_phone_enroll_enabled": {
"type": "boolean",
"nullable": true
},
"mfa_phone_verify_enabled": {
"type": "boolean",
"nullable": true
},
"mfa_web_authn_enroll_enabled": {
"type": "boolean",
"nullable": true
},
"mfa_web_authn_verify_enabled": {
"type": "boolean",
"nullable": true
},
"mfa_phone_template": {
"type": "string",
"nullable": true
},
"password_hibp_enabled": {
"type": "boolean",
"nullable": true
},
"password_required_characters": {
"type": "string",
"nullable": true
},
"refresh_token_rotation_enabled": {
"type": "boolean",
"nullable": true
},
"saml_enabled": {
"type": "boolean",
"nullable": true
},
"saml_external_url": {
"type": "string",
"nullable": true
},
"saml_allow_encrypted_assertions": {
"type": "boolean",
"nullable": true
},
"security_captcha_enabled": {
"type": "boolean",
"nullable": true
},
"security_captcha_provider": {
"type": "string",
"nullable": true
},
"security_captcha_secret": {
"type": "string",
"nullable": true
},
"security_manual_linking_enabled": {
"type": "boolean",
"nullable": true
},
"security_update_password_require_reauthentication": {
"type": "boolean",
"nullable": true
},
"sessions_single_per_user": {
"type": "boolean",
"nullable": true
},
"sessions_tags": {
"type": "string",
"nullable": true
},
"site_url": {
"type": "string",
"nullable": true
},
"sms_autoconfirm": {
"type": "boolean",
"nullable": true
},
"sms_messagebird_access_key": {
"type": "string",
"nullable": true
},
"sms_messagebird_originator": {
"type": "string",
"nullable": true
},
"sms_provider": {
"type": "string",
"nullable": true
},
"sms_template": {
"type": "string",
"nullable": true
},
"sms_test_otp": {
"type": "string",
"nullable": true
},
"sms_test_otp_valid_until": {
"type": "string",
"nullable": true
},
"sms_textlocal_api_key": {
"type": "string",
"nullable": true
},
"sms_textlocal_sender": {
"type": "string",
"nullable": true
},
"sms_twilio_account_sid": {
"type": "string",
"nullable": true
},
"sms_twilio_auth_token": {
"type": "string",
"nullable": true
},
"sms_twilio_content_sid": {
"type": "string",
"nullable": true
},
"sms_twilio_message_service_sid": {
"type": "string",
"nullable": true
},
"sms_twilio_verify_account_sid": {
"type": "string",
"nullable": true
},
"sms_twilio_verify_auth_token": {
"type": "string",
"nullable": true
},
"sms_twilio_verify_message_service_sid": {
"type": "string",
"nullable": true
},
"sms_vonage_api_key": {
"type": "string",
"nullable": true
},
"sms_vonage_api_secret": {
"type": "string",
"nullable": true
},
"sms_vonage_from": {
"type": "string",
"nullable": true
},
"smtp_admin_email": {
"type": "string",
"nullable": true
},
"smtp_host": {
"type": "string",
"nullable": true
},
"smtp_pass": {
"type": "string",
"nullable": true
},
"smtp_port": {
"type": "string",
"nullable": true
},
"smtp_sender_name": {
"type": "string",
"nullable": true
},
"smtp_user": {
"type": "string",
"nullable": true
},
"uri_allow_list": {
"type": "string",
"nullable": true
}
},
"required": [
"api_max_request_duration",
"db_max_pool_size",
"jwt_exp",
"mailer_otp_exp",
"mailer_otp_length",
"mfa_max_enrolled_factors",
"mfa_phone_otp_length",
"mfa_phone_max_frequency",
"password_min_length",
"rate_limit_anonymous_users",
"rate_limit_email_sent",
"rate_limit_sms_sent",
"rate_limit_token_refresh",
"rate_limit_verify",
"rate_limit_otp",
"security_refresh_token_reuse_interval",
"sessions_inactivity_timeout",
"sessions_timebox",
"sms_max_frequency",
"sms_otp_exp",
"sms_otp_length",
"smtp_max_frequency",
"disable_signup",
"external_anonymous_users_enabled",
"external_apple_additional_client_ids",
"external_apple_client_id",
"external_apple_enabled",
"external_apple_secret",
"external_azure_client_id",
"external_azure_enabled",
"external_azure_secret",
"external_azure_url",
"external_bitbucket_client_id",
"external_bitbucket_enabled",
"external_bitbucket_secret",
"external_discord_client_id",
"external_discord_enabled",
"external_discord_secret",
"external_email_enabled",
"external_facebook_client_id",
"external_facebook_enabled",
"external_facebook_secret",
"external_figma_client_id",
"external_figma_enabled",
"external_figma_secret",
"external_github_client_id",
"external_github_enabled",
"external_github_secret",
"external_gitlab_client_id",
"external_gitlab_enabled",
"external_gitlab_secret",
"external_gitlab_url",
"external_google_additional_client_ids",
"external_google_client_id",
"external_google_enabled",
"external_google_secret",
"external_google_skip_nonce_check",
"external_kakao_client_id",
"external_kakao_enabled",
"external_kakao_secret",
"external_keycloak_client_id",
"external_keycloak_enabled",
"external_keycloak_secret",
"external_keycloak_url",
"external_linkedin_oidc_client_id",
"external_linkedin_oidc_enabled",
"external_linkedin_oidc_secret",
"external_slack_oidc_client_id",
"external_slack_oidc_enabled",
"external_slack_oidc_secret",
"external_notion_client_id",
"external_notion_enabled",
"external_notion_secret",
"external_phone_enabled",
"external_slack_client_id",
"external_slack_enabled",
"external_slack_secret",
"external_spotify_client_id",
"external_spotify_enabled",
"external_spotify_secret",
"external_twitch_client_id",
"external_twitch_enabled",
"external_twitch_secret",
"external_twitter_client_id",
"external_twitter_enabled",
"external_twitter_secret",
"external_workos_client_id",
"external_workos_enabled",
"external_workos_secret",
"external_workos_url",
"external_zoom_client_id",
"external_zoom_enabled",
"external_zoom_secret",
"hook_custom_access_token_enabled",
"hook_custom_access_token_uri",
"hook_custom_access_token_secrets",
"hook_mfa_verification_attempt_enabled",
"hook_mfa_verification_attempt_uri",
"hook_mfa_verification_attempt_secrets",
"hook_password_verification_attempt_enabled",
"hook_password_verification_attempt_uri",
"hook_password_verification_attempt_secrets",
"hook_send_sms_enabled",
"hook_send_sms_uri",
"hook_send_sms_secrets",
"hook_send_email_enabled",
"hook_send_email_uri",
"hook_send_email_secrets",
"mailer_allow_unverified_email_sign_ins",
"mailer_autoconfirm",
"mailer_secure_email_change_enabled",
"mailer_subjects_confirmation",
"mailer_subjects_email_change",
"mailer_subjects_invite",
"mailer_subjects_magic_link",
"mailer_subjects_reauthentication",
"mailer_subjects_recovery",
"mailer_templates_confirmation_content",
"mailer_templates_email_change_content",
"mailer_templates_invite_content",
"mailer_templates_magic_link_content",
"mailer_templates_reauthentication_content",
"mailer_templates_recovery_content",
"mfa_totp_enroll_enabled",
"mfa_totp_verify_enabled",
"mfa_phone_enroll_enabled",
"mfa_phone_verify_enabled",
"mfa_web_authn_enroll_enabled",
"mfa_web_authn_verify_enabled",
"mfa_phone_template",
"password_hibp_enabled",
"password_required_characters",
"refresh_token_rotation_enabled",
"saml_enabled",
"saml_external_url",
"saml_allow_encrypted_assertions",
"security_captcha_enabled",
"security_captcha_provider",
"security_captcha_secret",
"security_manual_linking_enabled",
"security_update_password_require_reauthentication",
"sessions_single_per_user",
"sessions_tags",
"site_url",
"sms_autoconfirm",
"sms_messagebird_access_key",
"sms_messagebird_originator",
"sms_provider",
"sms_template",
"sms_test_otp",
"sms_test_otp_valid_until",
"sms_textlocal_api_key",
"sms_textlocal_sender",
"sms_twilio_account_sid",
"sms_twilio_auth_token",
"sms_twilio_content_sid",
"sms_twilio_message_service_sid",
"sms_twilio_verify_account_sid",
"sms_twilio_verify_auth_token",
"sms_twilio_verify_message_service_sid",
"sms_vonage_api_key",
"sms_vonage_api_secret",
"sms_vonage_from",
"smtp_admin_email",
"smtp_host",
"smtp_pass",
"smtp_port",
"smtp_sender_name",
"smtp_user",
"uri_allow_list"
]
},
"UpdateAuthConfigBody": {
"type": "object",
"properties": {
"jwt_exp": {
"type": "integer",
"minimum": 0,
"maximum": 604800
},
"smtp_max_frequency": {
"type": "integer",
"minimum": 0,
"maximum": 32767
},
"mfa_max_enrolled_factors": {
"type": "integer",
"minimum": 0,
"maximum": 2147483647
},
"sessions_timebox": {
"type": "integer",
"minimum": 0
},
"sessions_inactivity_timeout": {
"type": "integer",
"minimum": 0
},
"rate_limit_anonymous_users": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647
},
"rate_limit_email_sent": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647
},
"rate_limit_sms_sent": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647
},
"rate_limit_verify": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647
},
"rate_limit_token_refresh": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647
},
"rate_limit_otp": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647
},
"password_min_length": {
"type": "integer",
"minimum": 6,
"maximum": 32767
},
"security_refresh_token_reuse_interval": {
"type": "integer",
"minimum": 0,
"maximum": 2147483647
},
"mailer_otp_exp": {
"type": "integer",
"minimum": 0,
"maximum": 2147483647
},
"mailer_otp_length": {
"type": "integer",
"minimum": 6,
"maximum": 10
},
"sms_max_frequency": {
"type": "integer",
"minimum": 0,
"maximum": 32767
},
"sms_otp_exp": {
"type": "integer",
"minimum": 0,
"maximum": 2147483647
},
"sms_otp_length": {
"type": "integer",
"minimum": 0,
"maximum": 32767
},
"db_max_pool_size": {
"type": "integer"
},
"api_max_request_duration": {
"type": "integer"
},
"mfa_phone_max_frequency": {
"type": "integer",
"minimum": 0,
"maximum": 32767
},
"mfa_phone_otp_length": {
"type": "integer",
"minimum": 0,
"maximum": 32767
},
"site_url": {
"type": "string",
"pattern": "/^[^,]+$/"
},
"disable_signup": {
"type": "boolean"
},
"smtp_admin_email": {
"type": "string"
},
"smtp_host": {
"type": "string"
},
"smtp_port": {
"type": "string"
},
"smtp_user": {
"type": "string"
},
"smtp_pass": {
"type": "string"
},
"smtp_sender_name": {
"type": "string"
},
"mailer_allow_unverified_email_sign_ins": {
"type": "boolean"
},
"mailer_autoconfirm": {
"type": "boolean"
},
"mailer_subjects_invite": {
"type": "string"
},
"mailer_subjects_confirmation": {
"type": "string"
},
"mailer_subjects_recovery": {
"type": "string"
},
"mailer_subjects_email_change": {
"type": "string"
},
"mailer_subjects_magic_link": {
"type": "string"
},
"mailer_subjects_reauthentication": {
"type": "string"
},
"mailer_templates_invite_content": {
"type": "string"
},
"mailer_templates_confirmation_content": {
"type": "string"
},
"mailer_templates_recovery_content": {
"type": "string"
},
"mailer_templates_email_change_content": {
"type": "string"
},
"mailer_templates_magic_link_content": {
"type": "string"
},
"mailer_templates_reauthentication_content": {
"type": "string"
},
"uri_allow_list": {
"type": "string"
},
"external_anonymous_users_enabled": {
"type": "boolean"
},
"external_email_enabled": {
"type": "boolean"
},
"external_phone_enabled": {
"type": "boolean"
},
"saml_enabled": {
"type": "boolean"
},
"saml_external_url": {
"type": "string",
"pattern": "/^[^,]+$/"
},
"security_captcha_enabled": {
"type": "boolean"
},
"security_captcha_provider": {
"type": "string"
},
"security_captcha_secret": {
"type": "string"
},
"sessions_single_per_user": {
"type": "boolean"
},
"sessions_tags": {
"type": "string",
"pattern": "/^\\s*([a-z0-9_-]+(\\s*,+\\s*)?)*\\s*$/i"
},
"mailer_secure_email_change_enabled": {
"type": "boolean"
},
"refresh_token_rotation_enabled": {
"type": "boolean"
},
"password_hibp_enabled": {
"type": "boolean"
},
"password_required_characters": {
"type": "string",
"enum": [
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ:0123456789",
"abcdefghijklmnopqrstuvwxyz:ABCDEFGHIJKLMNOPQRSTUVWXYZ:0123456789",
"abcdefghijklmnopqrstuvwxyz:ABCDEFGHIJKLMNOPQRSTUVWXYZ:0123456789:!@#$%^&*()_+-=[]{};'\\\\:\"|\u003C\u003E?,./`~",
""
]
},
"security_manual_linking_enabled": {
"type": "boolean"
},
"security_update_password_require_reauthentication": {
"type": "boolean"
},
"sms_autoconfirm": {
"type": "boolean"
},
"sms_provider": {
"type": "string"
},
"sms_messagebird_access_key": {
"type": "string"
},
"sms_messagebird_originator": {
"type": "string"
},
"sms_test_otp": {
"type": "string",
"pattern": "/^([0-9]{1,15}=[0-9]+,?)*$/"
},
"sms_test_otp_valid_until": {
"type": "string"
},
"sms_textlocal_api_key": {
"type": "string"
},
"sms_textlocal_sender": {
"type": "string"
},
"sms_twilio_account_sid": {
"type": "string"
},
"sms_twilio_auth_token": {
"type": "string"
},
"sms_twilio_content_sid": {
"type": "string"
},
"sms_twilio_message_service_sid": {
"type": "string"
},
"sms_twilio_verify_account_sid": {
"type": "string"
},
"sms_twilio_verify_auth_token": {
"type": "string"
},
"sms_twilio_verify_message_service_sid": {
"type": "string"
},
"sms_vonage_api_key": {
"type": "string"
},
"sms_vonage_api_secret": {
"type": "string"
},
"sms_vonage_from": {
"type": "string"
},
"sms_template": {
"type": "string"
},
"hook_mfa_verification_attempt_enabled": {
"type": "boolean"
},
"hook_mfa_verification_attempt_uri": {
"type": "string"
},
"hook_mfa_verification_attempt_secrets": {
"type": "string"
},
"hook_password_verification_attempt_enabled": {
"type": "boolean"
},
"hook_password_verification_attempt_uri": {
"type": "string"
},
"hook_password_verification_attempt_secrets": {
"type": "string"
},
"hook_custom_access_token_enabled": {
"type": "boolean"
},
"hook_custom_access_token_uri": {
"type": "string"
},
"hook_custom_access_token_secrets": {
"type": "string"
},
"hook_send_sms_enabled": {
"type": "boolean"
},
"hook_send_sms_uri": {
"type": "string"
},
"hook_send_sms_secrets": {
"type": "string"
},
"hook_send_email_enabled": {
"type": "boolean"
},
"hook_send_email_uri": {
"type": "string"
},
"hook_send_email_secrets": {
"type": "string"
},
"external_apple_enabled": {
"type": "boolean"
},
"external_apple_client_id": {
"type": "string"
},
"external_apple_secret": {
"type": "string"
},
"external_apple_additional_client_ids": {
"type": "string"
},
"external_azure_enabled": {
"type": "boolean"
},
"external_azure_client_id": {
"type": "string"
},
"external_azure_secret": {
"type": "string"
},
"external_azure_url": {
"type": "string"
},
"external_bitbucket_enabled": {
"type": "boolean"
},
"external_bitbucket_client_id": {
"type": "string"
},
"external_bitbucket_secret": {
"type": "string"
},
"external_discord_enabled": {
"type": "boolean"
},
"external_discord_client_id": {
"type": "string"
},
"external_discord_secret": {
"type": "string"
},
"external_facebook_enabled": {
"type": "boolean"
},
"external_facebook_client_id": {
"type": "string"
},
"external_facebook_secret": {
"type": "string"
},
"external_figma_enabled": {
"type": "boolean"
},
"external_figma_client_id": {
"type": "string"
},
"external_figma_secret": {
"type": "string"
},
"external_github_enabled": {
"type": "boolean"
},
"external_github_client_id": {
"type": "string"
},
"external_github_secret": {
"type": "string"
},
"external_gitlab_enabled": {
"type": "boolean"
},
"external_gitlab_client_id": {
"type": "string"
},
"external_gitlab_secret": {
"type": "string"
},
"external_gitlab_url": {
"type": "string"
},
"external_google_enabled": {
"type": "boolean"
},
"external_google_client_id": {
"type": "string"
},
"external_google_secret": {
"type": "string"
},
"external_google_additional_client_ids": {
"type": "string"
},
"external_google_skip_nonce_check": {
"type": "boolean"
},
"external_kakao_enabled": {
"type": "boolean"
},
"external_kakao_client_id": {
"type": "string"
},
"external_kakao_secret": {
"type": "string"
},
"external_keycloak_enabled": {
"type": "boolean"
},
"external_keycloak_client_id": {
"type": "string"
},
"external_keycloak_secret": {
"type": "string"
},
"external_keycloak_url": {
"type": "string"
},
"external_linkedin_oidc_enabled": {
"type": "boolean"
},
"external_linkedin_oidc_client_id": {
"type": "string"
},
"external_linkedin_oidc_secret": {
"type": "string"
},
"external_slack_oidc_enabled": {
"type": "boolean"
},
"external_slack_oidc_client_id": {
"type": "string"
},
"external_slack_oidc_secret": {
"type": "string"
},
"external_notion_enabled": {
"type": "boolean"
},
"external_notion_client_id": {
"type": "string"
},
"external_notion_secret": {
"type": "string"
},
"external_slack_enabled": {
"type": "boolean"
},
"external_slack_client_id": {
"type": "string"
},
"external_slack_secret": {
"type": "string"
},
"external_spotify_enabled": {
"type": "boolean"
},
"external_spotify_client_id": {
"type": "string"
},
"external_spotify_secret": {
"type": "string"
},
"external_twitch_enabled": {
"type": "boolean"
},
"external_twitch_client_id": {
"type": "string"
},
"external_twitch_secret": {
"type": "string"
},
"external_twitter_enabled": {
"type": "boolean"
},
"external_twitter_client_id": {
"type": "string"
},
"external_twitter_secret": {
"type": "string"
},
"external_workos_enabled": {
"type": "boolean"
},
"external_workos_client_id": {
"type": "string"
},
"external_workos_secret": {
"type": "string"
},
"external_workos_url": {
"type": "string"
},
"external_zoom_enabled": {
"type": "boolean"
},
"external_zoom_client_id": {
"type": "string"
},
"external_zoom_secret": {
"type": "string"
},
"mfa_totp_enroll_enabled": {
"type": "boolean"
},
"mfa_totp_verify_enabled": {
"type": "boolean"
},
"mfa_web_authn_enroll_enabled": {
"type": "boolean"
},
"mfa_web_authn_verify_enabled": {
"type": "boolean"
},
"mfa_phone_enroll_enabled": {
"type": "boolean"
},
"mfa_phone_verify_enabled": {
"type": "boolean"
},
"mfa_phone_template": {
"type": "string"
}
}
},
"CreateThirdPartyAuthBody": {
"type": "object",
"properties": {
"oidc_issuer_url": {
"type": "string"
},
"jwks_url": {
"type": "string"
},
"custom_jwks": {
"type": "object"
}
}
},
"ThirdPartyAuth": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"type": {
"type": "string"
},
"oidc_issuer_url": {
"type": "string",
"nullable": true
},
"jwks_url": {
"type": "string",
"nullable": true
},
"custom_jwks": {
"type": "object",
"nullable": true
},
"resolved_jwks": {
"type": "object",
"nullable": true
},
"inserted_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"resolved_at": {
"type": "string",
"nullable": true
}
},
"required": [
"id",
"type",
"inserted_at",
"updated_at"
]
},
"ProjectAvailableRestoreVersion": {
"type": "object",
"properties": {
"version": {
"type": "string"
},
"release_channel": {
"type": "string",
"enum": [
"internal",
"alpha",
"beta",
"ga",
"withdrawn",
"preview"
]
},
"postgres_engine": {
"type": "string",
"enum": [
"13",
"14",
"15",
"17",
"17-oriole"
]
}
},
"required": [
"version",
"release_channel",
"postgres_engine"
]
},
"GetProjectAvailableRestoreVersionsResponse": {
"type": "object",
"properties": {
"available_versions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ProjectAvailableRestoreVersion"
}
}
},
"required": [
"available_versions"
]
},
"RestoreProjectBodyDto": {
"type": "object",
"properties": {
},
"hideDefinitions": [
"release_channel",
"postgres_engine"
]
},
"V1AnalyticsResponse": {
"type": "object",
"properties": {
"error": {
"oneOf": [
{
"properties": {
"code": {
"type": "number"
},
"errors": {
"type": "array",
"items": {
"properties": {
"domain": {
"type": "string"
},
"location": {
"type": "string"
},
"locationType": {
"type": "string"
},
"message": {
"type": "string"
},
"reason": {
"type": "string"
}
}
}
},
"message": {
"type": "string"
},
"status": {
"type": "string"
}
}
},
{
"type": "string"
}
]
},
"result": {
"type": "array",
"items": {
"type": "object"
}
}
}
},
"V1RunQueryBody": {
"type": "object",
"properties": {
"query": {
"type": "string"
}
},
"required": [
"query"
]
},
"GetProjectDbMetadataResponseDto": {
"type": "object",
"properties": {
"databases": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"schemas": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string"
}
},
"required": [
"name"
],
"additionalProperties": true
}
}
},
"required": [
"name",
"schemas"
],
"additionalProperties": true
}
}
},
"required": [
"databases"
]
},
"FunctionResponse": {
"type": "object",
"properties": {
"version": {
"type": "integer"
},
"created_at": {
"type": "integer",
"format": "int64"
},
"updated_at": {
"type": "integer",
"format": "int64"
},
"id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"enum": [
"ACTIVE",
"REMOVED",
"THROTTLED"
],
"type": "string"
},
"verify_jwt": {
"type": "boolean"
},
"import_map": {
"type": "boolean"
},
"entrypoint_path": {
"type": "string"
},
"import_map_path": {
"type": "string"
}
},
"required": [
"version",
"created_at",
"updated_at",
"id",
"slug",
"name",
"status"
]
},
"V1CreateFunctionBody": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"pattern": "/^[A-Za-z0-9_-]+$/"
},
"name": {
"type": "string"
},
"body": {
"type": "string"
},
"verify_jwt": {
"type": "boolean"
}
},
"required": [
"slug",
"name",
"body"
]
},
"BulkUpdateFunctionBody": {
"type": "object",
"properties": {
"version": {
"type": "integer"
},
"created_at": {
"type": "integer",
"format": "int64"
},
"id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"enum": [
"ACTIVE",
"REMOVED",
"THROTTLED"
],
"type": "string"
},
"verify_jwt": {
"type": "boolean"
},
"import_map": {
"type": "boolean"
},
"entrypoint_path": {
"type": "string"
},
"import_map_path": {
"type": "string"
}
},
"required": [
"version",
"id",
"slug",
"name",
"status"
]
},
"BulkUpdateFunctionResponse": {
"type": "object",
"properties": {
"functions": {
"type": "array",
"items": {
"$ref": "#/components/schemas/FunctionResponse"
}
}
},
"required": [
"functions"
]
},
"FunctionDeployMetadata": {
"type": "object",
"properties": {
"entrypoint_path": {
"type": "string"
},
"import_map_path": {
"type": "string"
},
"static_patterns": {
"type": "array",
"items": {
"type": "string"
}
},
"verify_jwt": {
"type": "boolean"
},
"name": {
"type": "string"
}
},
"required": [
"entrypoint_path"
]
},
"FunctionDeployBody": {
"type": "object",
"properties": {
"file": {
"type": "array",
"items": {
"type": "string",
"format": "binary"
}
},
"metadata": {
"$ref": "#/components/schemas/FunctionDeployMetadata"
}
},
"required": [
"file",
"metadata"
]
},
"DeployFunctionResponse": {
"type": "object",
"properties": {
"version": {
"type": "integer"
},
"created_at": {
"type": "integer",
"format": "int64"
},
"updated_at": {
"type": "integer",
"format": "int64"
},
"id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"enum": [
"ACTIVE",
"REMOVED",
"THROTTLED"
],
"type": "string"
},
"verify_jwt": {
"type": "boolean"
},
"import_map": {
"type": "boolean"
},
"entrypoint_path": {
"type": "string"
},
"import_map_path": {
"type": "string"
}
},
"required": [
"version",
"id",
"slug",
"name",
"status"
]
},
"FunctionSlugResponse": {
"type": "object",
"properties": {
"version": {
"type": "integer"
},
"created_at": {
"type": "integer",
"format": "int64"
},
"updated_at": {
"type": "integer",
"format": "int64"
},
"id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"enum": [
"ACTIVE",
"REMOVED",
"THROTTLED"
],
"type": "string"
},
"verify_jwt": {
"type": "boolean"
},
"import_map": {
"type": "boolean"
},
"entrypoint_path": {
"type": "string"
},
"import_map_path": {
"type": "string"
}
},
"required": [
"version",
"created_at",
"updated_at",
"id",
"slug",
"name",
"status"
]
},
"V1UpdateFunctionBody": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"body": {
"type": "string"
},
"verify_jwt": {
"type": "boolean"
}
}
},
"V1StorageBucketResponse": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"owner": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"public": {
"type": "boolean"
}
},
"required": [
"id",
"name",
"owner",
"created_at",
"updated_at",
"public"
]
},
"AttributeValue": {
"type": "object",
"properties": {
"default": {
"oneOf": [
{
"type": "object"
},
{
"type": "number"
},
{
"type": "string"
},
{
"type": "boolean"
}
]
},
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"array": {
"type": "boolean"
}
}
},
"AttributeMapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"$ref": "#/components/schemas/AttributeValue"
}
}
},
"required": [
"keys"
]
},
"CreateProviderBody": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"saml"
],
"description": "What type of provider will be created"
},
"metadata_xml": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"domains": {
"type": "array",
"items": {
"type": "string"
}
},
"attribute_mapping": {
"$ref": "#/components/schemas/AttributeMapping"
}
},
"required": [
"type"
]
},
"SamlDescriptor": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"entity_id": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"metadata_xml": {
"type": "string"
},
"attribute_mapping": {
"$ref": "#/components/schemas/AttributeMapping"
}
},
"required": [
"id",
"entity_id"
]
},
"Domain": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"domain": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": [
"id"
]
},
"CreateProviderResponse": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"$ref": "#/components/schemas/SamlDescriptor"
},
"domains": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Domain"
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": [
"id"
]
},
"Provider": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"$ref": "#/components/schemas/SamlDescriptor"
},
"domains": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Domain"
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": [
"id"
]
},
"ListProvidersResponse": {
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Provider"
}
}
},
"required": [
"items"
]
},
"GetProviderResponse": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"$ref": "#/components/schemas/SamlDescriptor"
},
"domains": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Domain"
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": [
"id"
]
},
"UpdateProviderBody": {
"type": "object",
"properties": {
"metadata_xml": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"domains": {
"type": "array",
"items": {
"type": "string"
}
},
"attribute_mapping": {
"$ref": "#/components/schemas/AttributeMapping"
}
}
},
"UpdateProviderResponse": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"$ref": "#/components/schemas/SamlDescriptor"
},
"domains": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Domain"
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": [
"id"
]
},
"DeleteProviderResponse": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"$ref": "#/components/schemas/SamlDescriptor"
},
"domains": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Domain"
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": [
"id"
]
},
"V1Backup": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": [
"COMPLETED",
"FAILED",
"PENDING",
"REMOVED",
"ARCHIVED",
"CANCELLED"
]
},
"is_physical_backup": {
"type": "boolean"
},
"inserted_at": {
"type": "string"
}
},
"required": [
"status",
"is_physical_backup",
"inserted_at"
]
},
"V1PhysicalBackup": {
"type": "object",
"properties": {
"earliest_physical_backup_date_unix": {
"type": "integer",
"format": "int64"
},
"latest_physical_backup_date_unix": {
"type": "integer",
"format": "int64"
}
}
},
"V1BackupsResponse": {
"type": "object",
"properties": {
"region": {
"type": "string"
},
"walg_enabled": {
"type": "boolean"
},
"pitr_enabled": {
"type": "boolean"
},
"backups": {
"type": "array",
"items": {
"$ref": "#/components/schemas/V1Backup"
}
},
"physical_backup_data": {
"$ref": "#/components/schemas/V1PhysicalBackup"
}
},
"required": [
"region",
"walg_enabled",
"pitr_enabled",
"backups",
"physical_backup_data"
]
},
"V1RestorePitrBody": {
"type": "object",
"properties": {
"recovery_time_target_unix": {
"type": "integer",
"minimum": 0,
"format": "int64"
}
},
"required": [
"recovery_time_target_unix"
]
},
"V1OrganizationMemberResponse": {
"type": "object",
"properties": {
"user_id": {
"type": "string"
},
"user_name": {
"type": "string"
},
"email": {
"type": "string"
},
"role_name": {
"type": "string"
},
"mfa_enabled": {
"type": "boolean"
}
},
"required": [
"user_id",
"user_name",
"role_name",
"mfa_enabled"
]
},
"BillingPlanId": {
"type": "string",
"enum": [
"free",
"pro",
"team",
"enterprise"
]
},
"V1OrganizationSlugResponse": {
"type": "object",
"properties": {
"plan": {
"$ref": "#/components/schemas/BillingPlanId"
},
"opt_in_tags": {
"type": "array",
"items": {
"type": "string",
"enum": [
"AI_SQL_GENERATOR_OPT_IN"
]
}
},
"allowed_release_channels": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReleaseChannel"
}
},
"id": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": [
"opt_in_tags",
"allowed_release_channels",
"id",
"name"
]
}
}
}
}