#
tokens: 49802/50000 1/106 files (page 5/5)
lines: off (toggle) GitHub
raw markdown copy
This is page 5 of 5. Use http://codebase.md/alexander-zuev/supabase-mcp-server?page={x} to view the full context.

# Directory Structure

```
├── .claude
│   └── settings.local.json
├── .dockerignore
├── .env.example
├── .env.test.example
├── .github
│   ├── FUNDING.yml
│   ├── ISSUE_TEMPLATE
│   │   ├── bug_report.md
│   │   ├── feature_request.md
│   │   └── roadmap_item.md
│   ├── PULL_REQUEST_TEMPLATE.md
│   └── workflows
│       ├── ci.yaml
│       ├── docs
│       │   └── release-checklist.md
│       └── publish.yaml
├── .gitignore
├── .pre-commit-config.yaml
├── .python-version
├── CHANGELOG.MD
├── codecov.yml
├── CONTRIBUTING.MD
├── Dockerfile
├── LICENSE
├── llms-full.txt
├── pyproject.toml
├── README.md
├── smithery.yaml
├── supabase_mcp
│   ├── __init__.py
│   ├── clients
│   │   ├── api_client.py
│   │   ├── base_http_client.py
│   │   ├── management_client.py
│   │   └── sdk_client.py
│   ├── core
│   │   ├── __init__.py
│   │   ├── container.py
│   │   └── feature_manager.py
│   ├── exceptions.py
│   ├── logger.py
│   ├── main.py
│   ├── services
│   │   ├── __init__.py
│   │   ├── api
│   │   │   ├── __init__.py
│   │   │   ├── api_manager.py
│   │   │   ├── spec_manager.py
│   │   │   └── specs
│   │   │       └── api_spec.json
│   │   ├── database
│   │   │   ├── __init__.py
│   │   │   ├── migration_manager.py
│   │   │   ├── postgres_client.py
│   │   │   ├── query_manager.py
│   │   │   └── sql
│   │   │       ├── loader.py
│   │   │       ├── models.py
│   │   │       ├── queries
│   │   │       │   ├── create_migration.sql
│   │   │       │   ├── get_migrations.sql
│   │   │       │   ├── get_schemas.sql
│   │   │       │   ├── get_table_schema.sql
│   │   │       │   ├── get_tables.sql
│   │   │       │   ├── init_migrations.sql
│   │   │       │   └── logs
│   │   │       │       ├── auth_logs.sql
│   │   │       │       ├── cron_logs.sql
│   │   │       │       ├── edge_logs.sql
│   │   │       │       ├── function_edge_logs.sql
│   │   │       │       ├── pgbouncer_logs.sql
│   │   │       │       ├── postgres_logs.sql
│   │   │       │       ├── postgrest_logs.sql
│   │   │       │       ├── realtime_logs.sql
│   │   │       │       ├── storage_logs.sql
│   │   │       │       └── supavisor_logs.sql
│   │   │       └── validator.py
│   │   ├── logs
│   │   │   ├── __init__.py
│   │   │   └── log_manager.py
│   │   ├── safety
│   │   │   ├── __init__.py
│   │   │   ├── models.py
│   │   │   ├── safety_configs.py
│   │   │   └── safety_manager.py
│   │   └── sdk
│   │       ├── __init__.py
│   │       ├── auth_admin_models.py
│   │       └── auth_admin_sdk_spec.py
│   ├── settings.py
│   └── tools
│       ├── __init__.py
│       ├── descriptions
│       │   ├── api_tools.yaml
│       │   ├── database_tools.yaml
│       │   ├── logs_and_analytics_tools.yaml
│       │   ├── safety_tools.yaml
│       │   └── sdk_tools.yaml
│       ├── manager.py
│       └── registry.py
├── tests
│   ├── __init__.py
│   ├── conftest.py
│   ├── services
│   │   ├── __init__.py
│   │   ├── api
│   │   │   ├── __init__.py
│   │   │   ├── test_api_client.py
│   │   │   ├── test_api_manager.py
│   │   │   └── test_spec_manager.py
│   │   ├── database
│   │   │   ├── sql
│   │   │   │   ├── __init__.py
│   │   │   │   ├── conftest.py
│   │   │   │   ├── test_loader.py
│   │   │   │   ├── test_sql_validator_integration.py
│   │   │   │   └── test_sql_validator.py
│   │   │   ├── test_migration_manager.py
│   │   │   ├── test_postgres_client.py
│   │   │   └── test_query_manager.py
│   │   ├── logs
│   │   │   └── test_log_manager.py
│   │   ├── safety
│   │   │   ├── test_api_safety_config.py
│   │   │   ├── test_safety_manager.py
│   │   │   └── test_sql_safety_config.py
│   │   └── sdk
│   │       ├── test_auth_admin_models.py
│   │       └── test_sdk_client.py
│   ├── test_container.py
│   ├── test_main.py
│   ├── test_settings.py
│   ├── test_tool_manager.py
│   ├── test_tools_integration.py.bak
│   └── test_tools.py
└── uv.lock
```

# Files

--------------------------------------------------------------------------------
/supabase_mcp/services/api/specs/api_spec.json:
--------------------------------------------------------------------------------

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

```
Page 5/5FirstPrevNextLast