Files
supabase/spec/transforms/api_v0_openapi_deparsed.json
T
2023-04-12 15:08:51 +08:00

5255 lines
148 KiB
JSON

{
"openapi": "3.0.0",
"paths": {
"/v1/projects": {
"get": {
"operationId": "getProjects",
"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": {
"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"
},
"database": {
"type": "object",
"properties": {
"host": {
"type": "string",
"description": "Database host"
},
"version": {
"type": "string",
"description": "Database version"
}
},
"required": ["host", "version"]
}
},
"required": ["id", "organization_id", "name", "region", "created_at"]
}
}
}
}
}
},
"tags": ["projects"],
"security": [
{
"bearer": []
}
]
},
"post": {
"operationId": "createProject",
"summary": "Create a project",
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"db_pass": {
"type": "string",
"description": "Database password"
},
"name": {
"type": "string",
"description": "Name of your project, should not contain dots"
},
"organization_id": {
"type": "string",
"description": "Slug of your organization"
},
"plan": {
"type": "string",
"enum": ["free", "pro"],
"description": "Subscription plan",
"example": "free"
},
"region": {
"type": "string",
"enum": [
"us-east-1",
"us-west-1",
"us-west-2",
"ap-southeast-1",
"ap-northeast-1",
"ap-northeast-2",
"ap-southeast-2",
"eu-west-1",
"eu-west-2",
"eu-west-3",
"eu-central-1",
"ca-central-1",
"ap-south-1",
"sa-east-1"
],
"description": "Region you want your server to reside in",
"example": "us-east-1"
},
"kps_enabled": {
"type": "boolean"
}
},
"required": ["db_pass", "name", "organization_id", "plan", "region"]
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"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"
},
"database": {
"type": "object",
"properties": {
"host": {
"type": "string",
"description": "Database host"
},
"version": {
"type": "string",
"description": "Database version"
}
},
"required": ["host", "version"]
}
},
"required": ["id", "organization_id", "name", "region", "created_at"]
}
}
}
},
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"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"
},
"database": {
"type": "object",
"properties": {
"host": {
"type": "string",
"description": "Database host"
},
"version": {
"type": "string",
"description": "Database version"
}
},
"required": ["host", "version"]
}
},
"required": ["id", "organization_id", "name", "region", "created_at"]
}
}
}
}
},
"tags": ["projects"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/organizations": {
"get": {
"operationId": "getOrganizations",
"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": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": ["id", "name"]
}
}
}
}
},
"500": {
"description": "Unexpected error listing organizations"
}
},
"tags": ["organizations"],
"security": [
{
"bearer": []
}
]
},
"post": {
"operationId": "createOrganization",
"summary": "Create an organization",
"parameters": [],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"name": {
"type": "string"
}
},
"required": ["name"]
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": ["id", "name"]
}
}
}
},
"500": {
"description": "Unexpected error creating an organization"
}
},
"tags": ["organizations"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/functions": {
"post": {
"operationId": "createFunction",
"summary": "Create a function",
"description": "Creates a function and adds it to the specified project.",
"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"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"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"]
}
},
"application/vnd.denoland.eszip": {
"schema": {
"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"]
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"enum": ["ACTIVE", "REMOVED", "THROTTLED"],
"type": "string"
},
"version": {
"type": "number"
},
"created_at": {
"type": "number"
},
"updated_at": {
"type": "number"
},
"verify_jwt": {
"type": "boolean"
},
"import_map": {
"type": "boolean"
}
},
"required": [
"id",
"slug",
"name",
"status",
"version",
"created_at",
"updated_at"
]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to create project's function"
}
},
"tags": ["functions"],
"security": [
{
"apiKeyHeader": [],
"apiKeyParam": []
},
{
"bearer": []
}
]
},
"get": {
"operationId": "getFunctions",
"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": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"enum": ["ACTIVE", "REMOVED", "THROTTLED"],
"type": "string"
},
"version": {
"type": "number"
},
"created_at": {
"type": "number"
},
"updated_at": {
"type": "number"
},
"verify_jwt": {
"type": "boolean"
},
"import_map": {
"type": "boolean"
}
},
"required": [
"id",
"slug",
"name",
"status",
"version",
"created_at",
"updated_at"
]
}
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's functions"
}
},
"tags": ["functions"],
"security": [
{
"apiKeyHeader": [],
"apiKeyParam": []
},
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/functions/{function_slug}": {
"get": {
"operationId": "getFunction",
"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": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"enum": ["ACTIVE", "REMOVED", "THROTTLED"],
"type": "string"
},
"version": {
"type": "number"
},
"created_at": {
"type": "number"
},
"updated_at": {
"type": "number"
},
"verify_jwt": {
"type": "boolean"
},
"import_map": {
"type": "boolean"
}
},
"required": [
"id",
"slug",
"name",
"status",
"version",
"created_at",
"updated_at"
]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve function with given slug"
}
},
"tags": ["functions"],
"security": [
{
"apiKeyHeader": [],
"apiKeyParam": []
},
{
"bearer": []
}
]
},
"patch": {
"operationId": "updateFunction",
"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"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"body": {
"type": "string"
},
"verify_jwt": {
"type": "boolean"
}
}
}
},
"application/vnd.denoland.eszip": {
"schema": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"body": {
"type": "string"
},
"verify_jwt": {
"type": "boolean"
}
}
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"enum": ["ACTIVE", "REMOVED", "THROTTLED"],
"type": "string"
},
"version": {
"type": "number"
},
"created_at": {
"type": "number"
},
"updated_at": {
"type": "number"
},
"verify_jwt": {
"type": "boolean"
},
"import_map": {
"type": "boolean"
}
},
"required": [
"id",
"slug",
"name",
"status",
"version",
"created_at",
"updated_at"
]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update function with given slug"
}
},
"tags": ["functions"],
"security": [
{
"apiKeyHeader": [],
"apiKeyParam": []
},
{
"bearer": []
}
]
},
"delete": {
"operationId": "deleteFunction",
"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": ["functions"],
"security": [
{
"apiKeyHeader": [],
"apiKeyParam": []
},
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/functions/{function_slug}/body": {
"get": {
"operationId": "getFunctionBody",
"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": ["functions"],
"security": [
{
"apiKeyHeader": [],
"apiKeyParam": []
},
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/custom-hostname": {
"get": {
"operationId": "getCustomHostnameConfig",
"summary": "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": {
"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": {
"type": "object"
}
},
"required": ["status", "custom_hostname", "data"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's custom hostname config"
}
},
"tags": ["custom hostname (beta)"],
"security": [
{
"bearer": []
}
]
},
"delete": {
"operationId": "removeCustomHostnameConfig",
"summary": "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": ["custom hostname (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/custom-hostname/initialize": {
"post": {
"operationId": "createCustomHostnameConfig",
"summary": "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": {
"type": "object",
"properties": {
"custom_hostname": {
"type": "string"
}
},
"required": ["custom_hostname"]
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"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": {
"type": "object"
}
},
"required": ["status", "custom_hostname", "data"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project custom hostname configuration"
}
},
"tags": ["custom hostname (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/custom-hostname/reverify": {
"post": {
"operationId": "reverify",
"summary": "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": {
"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": {
"type": "object"
}
},
"required": ["status", "custom_hostname", "data"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to verify project custom hostname configuration"
}
},
"tags": ["custom hostname (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/custom-hostname/activate": {
"post": {
"operationId": "activate",
"summary": "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": {
"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": {
"type": "object"
}
},
"required": ["status", "custom_hostname", "data"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to activate project custom hostname configuration"
}
},
"tags": ["custom hostname (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/network-bans/retrieve": {
"post": {
"operationId": "getNetworkBans",
"summary": "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": {
"type": "object",
"properties": {
"banned_ipv4_addresses": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": ["banned_ipv4_addresses"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's network bans"
}
},
"tags": ["network bans (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/network-bans": {
"delete": {
"operationId": "removeNetworkBan",
"summary": "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": {
"type": "object",
"properties": {
"ipv4_addresses": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": ["ipv4_addresses"]
}
}
}
},
"responses": {
"200": {
"description": ""
},
"403": {
"description": ""
},
"500": {
"description": "Failed to remove network bans."
}
},
"tags": ["network bans (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/network-restrictions": {
"get": {
"operationId": "getNetworkRestrictions",
"summary": "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": {
"type": "object",
"properties": {
"entitlement": {
"enum": ["disallowed", "allowed"],
"type": "string"
},
"config": {
"type": "object",
"properties": {
"dbAllowedCidrs": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": ["dbAllowedCidrs"]
},
"old_config": {
"type": "object",
"properties": {
"dbAllowedCidrs": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": ["dbAllowedCidrs"]
},
"status": {
"enum": ["stored", "applied"],
"type": "string"
}
},
"required": ["entitlement", "config", "status"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's network restrictions"
}
},
"tags": ["network restrictions (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/network-restrictions/apply": {
"post": {
"operationId": "applyNetworkRestrictions",
"summary": "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": {
"type": "object",
"properties": {
"dbAllowedCidrs": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": ["dbAllowedCidrs"]
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"entitlement": {
"enum": ["disallowed", "allowed"],
"type": "string"
},
"config": {
"type": "object",
"properties": {
"dbAllowedCidrs": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": ["dbAllowedCidrs"]
},
"old_config": {
"type": "object",
"properties": {
"dbAllowedCidrs": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": ["dbAllowedCidrs"]
},
"status": {
"enum": ["stored", "applied"],
"type": "string"
}
},
"required": ["entitlement", "config", "status"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project network restrictions"
}
},
"tags": ["network restrictions (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/pgsodium": {
"get": {
"operationId": "getConfig",
"summary": "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": {
"type": "object",
"properties": {
"root_key": {
"type": "string"
}
},
"required": ["root_key"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's pgsodium config"
}
},
"tags": ["pgsodium (beta)"],
"security": [
{
"bearer": []
}
]
},
"put": {
"operationId": "updateConfig",
"summary": "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": {
"type": "object",
"properties": {
"root_key": {
"type": "string"
}
},
"required": ["root_key"]
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"root_key": {
"type": "string"
}
},
"required": ["root_key"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project's pgsodium config"
}
},
"tags": ["pgsodium (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/postgrest": {
"get": {
"operationId": "getPostgRESTConfig",
"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": {
"type": "object",
"properties": {
"max_rows": {
"type": "integer"
},
"db_schema": {
"type": "string"
},
"db_extra_search_path": {
"type": "string"
}
},
"required": ["max_rows", "db_schema", "db_extra_search_path"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's postgrest config"
}
},
"tags": ["services"],
"security": [
{
"bearer": []
}
]
},
"patch": {
"operationId": "updatePostgRESTConfig",
"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": {
"type": "object",
"properties": {
"max_rows": {
"type": "integer",
"minimum": 0,
"maximum": 1000000
},
"db_extra_search_path": {
"type": "string"
},
"db_schema": {
"type": "string"
}
}
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"max_rows": {
"type": "integer"
},
"db_schema": {
"type": "string"
},
"db_extra_search_path": {
"type": "string"
}
},
"required": ["max_rows", "db_schema", "db_extra_search_path"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project's postgrest config"
}
},
"tags": ["services"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/secrets": {
"get": {
"operationId": "getSecrets",
"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": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": ["name", "value"]
}
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's secrets"
}
},
"tags": ["secrets"],
"security": [
{
"apiKeyHeader": [],
"apiKeyParam": []
},
{
"bearer": []
}
]
},
"post": {
"operationId": "createSecrets",
"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": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string",
"pattern": "/^(?!SUPABASE_).*/"
}
},
"required": ["name", "value"]
}
}
}
}
},
"responses": {
"201": {
"description": ""
},
"403": {
"description": ""
},
"500": {
"description": "Failed to create project's secrets"
}
},
"tags": ["secrets"],
"security": [
{
"apiKeyHeader": [],
"apiKeyParam": []
},
{
"bearer": []
}
]
},
"delete": {
"operationId": "deleteSecrets",
"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": [
{
"apiKeyHeader": [],
"apiKeyParam": []
},
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/ssl-enforcement": {
"get": {
"operationId": "getSslEnforcementConfig",
"summary": "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": {
"type": "object",
"properties": {
"currentConfig": {
"type": "object",
"properties": {
"database": {
"type": "boolean"
}
},
"required": ["database"]
},
"appliedSuccessfully": {
"type": "boolean"
}
},
"required": ["currentConfig", "appliedSuccessfully"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project's SSL enforcement config"
}
},
"tags": ["ssl enforcement (beta)"],
"security": [
{
"bearer": []
}
]
},
"put": {
"operationId": "updateSslEnforcementConfig",
"summary": "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": {
"type": "object",
"properties": {
"requestedConfig": {
"type": "object",
"properties": {
"database": {
"type": "boolean"
}
},
"required": ["database"]
}
},
"required": ["requestedConfig"]
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"currentConfig": {
"type": "object",
"properties": {
"database": {
"type": "boolean"
}
},
"required": ["database"]
},
"appliedSuccessfully": {
"type": "boolean"
}
},
"required": ["currentConfig", "appliedSuccessfully"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to update project's SSL enforcement configuration."
}
},
"tags": ["ssl enforcement (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/types/typescript": {
"get": {
"operationId": "getTypescriptTypes",
"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": {
"type": "object",
"properties": {
"types": {
"type": "string"
}
},
"required": ["types"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to generate TypeScript types"
}
},
"tags": ["projects"],
"security": [
{
"apiKeyHeader": [],
"apiKeyParam": []
},
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/vanity-subdomain": {
"get": {
"operationId": "getVanitySubdomainConfig",
"summary": "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": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": ["not-used", "custom-domain-used", "active"]
},
"custom_domain": {
"type": "string"
}
},
"required": ["status"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to get project vanity subdomain configuration"
}
},
"tags": ["vanity subdomain (beta)"],
"security": [
{
"bearer": []
}
]
},
"delete": {
"operationId": "removeVanitySubdomainConfig",
"summary": "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": ["vanity subdomain (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/vanity-subdomain/check-availability": {
"post": {
"operationId": "checkVanitySubdomainAvailability",
"summary": "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": {
"type": "object",
"properties": {
"vanity_subdomain": {
"type": "string"
}
},
"required": ["vanity_subdomain"]
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"available": {
"type": "boolean"
}
},
"required": ["available"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to check project vanity subdomain configuration"
}
},
"tags": ["vanity subdomain (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/vanity-subdomain/activate": {
"post": {
"operationId": "activateVanitySubdomainPlease",
"summary": "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": {
"type": "object",
"properties": {
"vanity_subdomain": {
"type": "string"
}
},
"required": ["vanity_subdomain"]
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"custom_domain": {
"type": "string"
}
},
"required": ["custom_domain"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to activate project vanity subdomain configuration"
}
},
"tags": ["vanity subdomain (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/upgrade": {
"post": {
"operationId": "upgradeProject",
"summary": "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": {
"type": "object",
"properties": {
"target_version": {
"type": "number"
}
},
"required": ["target_version"]
}
}
}
},
"responses": {
"201": {
"description": ""
},
"403": {
"description": ""
},
"500": {
"description": "Failed to initiate project upgrade"
}
},
"tags": ["database version upgrade (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/upgrade/eligibility": {
"get": {
"operationId": "upgradeEligibilityInformation",
"summary": "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": {
"type": "object",
"properties": {
"eligible": {
"type": "boolean"
},
"current_app_version": {
"type": "string"
},
"latest_app_version": {
"type": "string"
},
"target_upgrade_versions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"postgres_version": {
"type": "number"
},
"app_version": {
"type": "string"
}
},
"required": ["postgres_version", "app_version"]
}
},
"requires_manual_intervention": {
"type": "string",
"nullable": true
},
"potential_breaking_changes": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"eligible",
"current_app_version",
"latest_app_version",
"target_upgrade_versions",
"requires_manual_intervention",
"potential_breaking_changes"
]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to determine project upgrade eligibility"
}
},
"tags": ["database version upgrade (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/upgrade/status": {
"get": {
"operationId": "getUpgradeStatus",
"summary": "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"
}
}
],
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"databaseUpgradeStatus": {
"nullable": true,
"allOf": [
{
"type": "object",
"properties": {
"initiated_at": {
"type": "string"
},
"target_version": {
"type": "number"
},
"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"
]
},
"progress": {
"type": "string",
"enum": [
"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"
]
},
"status": {
"type": "number",
"enum": [0, 1, 2]
}
},
"required": ["initiated_at", "target_version", "status"]
}
]
}
},
"required": ["databaseUpgradeStatus"]
}
}
}
},
"403": {
"description": ""
},
"500": {
"description": "Failed to retrieve project upgrade status"
}
},
"tags": ["database version upgrade (beta)"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/readonly": {
"get": {
"operationId": "getReadOnlyModeStatus",
"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": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"override_enabled": {
"type": "boolean"
},
"override_active_until": {
"type": "string"
}
},
"required": ["enabled", "override_enabled", "override_active_until"]
}
}
}
},
"500": {
"description": "Failed to get project readonly mode status"
}
},
"tags": ["database readonly mode"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/readonly/temporary-disable": {
"post": {
"operationId": "temporarilyDisableReadonlyMode",
"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 readonly mode"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/config/database/postgres": {
"get": {
"operationId": "getConfig",
"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": {
"type": "object",
"properties": {
"statement_timeout": {
"type": "integer",
"minimum": 0,
"maximum": 2147483647
},
"effective_cache_size": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647
},
"maintenance_work_mem": {
"type": "integer",
"minimum": 1024,
"maximum": 2147483647
},
"max_connections": {
"type": "integer",
"minimum": 1,
"maximum": 262143
},
"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_worker_processes": {
"type": "integer",
"minimum": 0,
"maximum": 262143
},
"shared_buffers": {
"type": "integer",
"minimum": 16,
"maximum": 1073741823
},
"work_mem": {
"type": "integer",
"minimum": 64,
"maximum": 2147483647
},
"session_replication_role": {
"enum": ["origin", "replica", "local"],
"type": "string"
}
},
"required": [
"statement_timeout",
"effective_cache_size",
"maintenance_work_mem",
"max_connections",
"max_parallel_maintenance_workers",
"max_parallel_workers",
"max_parallel_workers_per_gather",
"max_worker_processes",
"shared_buffers",
"work_mem",
"session_replication_role"
]
}
}
}
},
"500": {
"description": "Failed to retrieve project's Postgres config"
}
},
"tags": ["projects config"],
"security": [
{
"bearer": []
},
{
"bearer": []
}
]
},
"put": {
"operationId": "updateConfig",
"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": {
"type": "object",
"properties": {
"statement_timeout": {
"type": "integer",
"minimum": 0,
"maximum": 2147483647
},
"effective_cache_size": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647
},
"maintenance_work_mem": {
"type": "integer",
"minimum": 1024,
"maximum": 2147483647
},
"max_connections": {
"type": "integer",
"minimum": 1,
"maximum": 262143
},
"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_worker_processes": {
"type": "integer",
"minimum": 0,
"maximum": 262143
},
"shared_buffers": {
"type": "integer",
"minimum": 16,
"maximum": 1073741823
},
"work_mem": {
"type": "integer",
"minimum": 64,
"maximum": 2147483647
},
"session_replication_role": {
"enum": ["origin", "replica", "local"],
"type": "string"
}
},
"required": [
"statement_timeout",
"effective_cache_size",
"maintenance_work_mem",
"max_connections",
"max_parallel_maintenance_workers",
"max_parallel_workers",
"max_parallel_workers_per_gather",
"max_worker_processes",
"shared_buffers",
"work_mem",
"session_replication_role"
]
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"statement_timeout": {
"type": "integer",
"minimum": 0,
"maximum": 2147483647
},
"effective_cache_size": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647
},
"maintenance_work_mem": {
"type": "integer",
"minimum": 1024,
"maximum": 2147483647
},
"max_connections": {
"type": "integer",
"minimum": 1,
"maximum": 262143
},
"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_worker_processes": {
"type": "integer",
"minimum": 0,
"maximum": 262143
},
"shared_buffers": {
"type": "integer",
"minimum": 16,
"maximum": 1073741823
},
"work_mem": {
"type": "integer",
"minimum": 64,
"maximum": 2147483647
},
"session_replication_role": {
"enum": ["origin", "replica", "local"],
"type": "string"
}
},
"required": [
"statement_timeout",
"effective_cache_size",
"maintenance_work_mem",
"max_connections",
"max_parallel_maintenance_workers",
"max_parallel_workers",
"max_parallel_workers_per_gather",
"max_worker_processes",
"shared_buffers",
"work_mem",
"session_replication_role"
]
}
}
}
},
"500": {
"description": "Failed to update project's Postgres config"
}
},
"tags": ["projects config"],
"security": [
{
"bearer": []
},
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/config/auth/sso/providers": {
"post": {
"operationId": "createProviderForProject",
"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": {
"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": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
},
"required": ["type"]
}
}
}
},
"responses": {
"201": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"entity_id": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"metadata_xml": {
"type": "string"
},
"attribute_mapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
},
"required": ["id", "entity_id"]
},
"domains": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"domain": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
}
}
},
"403": {
"description": ""
},
"404": {
"description": "SAML 2.0 support is not enabled for this project"
}
},
"tags": ["sso"],
"security": [
{
"bearer": []
}
]
},
"get": {
"operationId": "listAllProviders",
"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": {
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"entity_id": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"metadata_xml": {
"type": "string"
},
"attribute_mapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
},
"required": ["id", "entity_id"]
},
"domains": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"domain": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
}
},
"required": ["items"]
}
}
}
},
"403": {
"description": ""
},
"404": {
"description": "SAML 2.0 support is not enabled for this project"
}
},
"tags": ["sso"],
"security": [
{
"bearer": []
}
]
}
},
"/v1/projects/{ref}/config/auth/sso/providers/{provider_id}": {
"get": {
"operationId": "getProviderById",
"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": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"entity_id": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"metadata_xml": {
"type": "string"
},
"attribute_mapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
},
"required": ["id", "entity_id"]
},
"domains": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"domain": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
}
}
},
"403": {
"description": ""
},
"404": {
"description": "Either SAML 2.0 was not enabled for this project, or the provider does not exist"
}
},
"tags": ["sso"],
"security": [
{
"bearer": []
}
]
},
"put": {
"operationId": "updateProviderById",
"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": {
"type": "object",
"properties": {
"metadata_xml": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"domains": {
"type": "array",
"items": {
"type": "string"
}
},
"attribute_mapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
}
}
}
}
},
"responses": {
"200": {
"description": "",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"entity_id": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"metadata_xml": {
"type": "string"
},
"attribute_mapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
},
"required": ["id", "entity_id"]
},
"domains": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"domain": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
}
}
},
"403": {
"description": ""
},
"404": {
"description": "Either SAML 2.0 was not enabled for this project, or the provider does not exist"
}
},
"tags": ["sso"],
"security": [
{
"bearer": []
}
]
},
"delete": {
"operationId": "removeProviderById",
"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": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"entity_id": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"metadata_xml": {
"type": "string"
},
"attribute_mapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
},
"required": ["id", "entity_id"]
},
"domains": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"domain": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
}
}
},
"403": {
"description": ""
},
"404": {
"description": "Either SAML 2.0 was not enabled for this project, or the provider does not exist"
}
},
"tags": ["sso"],
"security": [
{
"bearer": []
}
]
}
}
},
"info": {
"title": "Supabase API (v1)",
"description": "",
"version": "1.0.0",
"contact": {}
},
"tags": [
{
"name": "organizations",
"description": "Organization endpoints"
},
{
"name": "projects",
"description": "Project endpoints"
}
],
"servers": [],
"components": {
"securitySchemes": {
"bearer": {
"scheme": "bearer",
"bearerFormat": "JWT",
"type": "http"
}
},
"schemas": {
"DatabaseResponse": {
"type": "object",
"properties": {
"host": {
"type": "string",
"description": "Database host"
},
"version": {
"type": "string",
"description": "Database version"
}
},
"required": ["host", "version"]
},
"ProjectResponse": {
"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"
},
"database": {
"type": "object",
"properties": {
"host": {
"type": "string",
"description": "Database host"
},
"version": {
"type": "string",
"description": "Database version"
}
},
"required": ["host", "version"]
}
},
"required": ["id", "organization_id", "name", "region", "created_at"]
},
"CreateProjectBody": {
"type": "object",
"properties": {
"db_pass": {
"type": "string",
"description": "Database password"
},
"name": {
"type": "string",
"description": "Name of your project, should not contain dots"
},
"organization_id": {
"type": "string",
"description": "Slug of your organization"
},
"plan": {
"type": "string",
"enum": ["free", "pro"],
"description": "Subscription plan",
"example": "free"
},
"region": {
"type": "string",
"enum": [
"us-east-1",
"us-west-1",
"us-west-2",
"ap-southeast-1",
"ap-northeast-1",
"ap-northeast-2",
"ap-southeast-2",
"eu-west-1",
"eu-west-2",
"eu-west-3",
"eu-central-1",
"ca-central-1",
"ap-south-1",
"sa-east-1"
],
"description": "Region you want your server to reside in",
"example": "us-east-1"
},
"kps_enabled": {
"type": "boolean"
}
},
"required": ["db_pass", "name", "organization_id", "plan", "region"]
},
"OrganizationResponse": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
}
},
"required": ["id", "name"]
},
"CreateOrganizationBody": {
"type": "object",
"properties": {
"name": {
"type": "string"
}
},
"required": ["name"]
},
"CreateFunctionBody": {
"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"]
},
"FunctionResponse": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"enum": ["ACTIVE", "REMOVED", "THROTTLED"],
"type": "string"
},
"version": {
"type": "number"
},
"created_at": {
"type": "number"
},
"updated_at": {
"type": "number"
},
"verify_jwt": {
"type": "boolean"
},
"import_map": {
"type": "boolean"
}
},
"required": ["id", "slug", "name", "status", "version", "created_at", "updated_at"]
},
"FunctionSlugResponse": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"slug": {
"type": "string"
},
"name": {
"type": "string"
},
"status": {
"enum": ["ACTIVE", "REMOVED", "THROTTLED"],
"type": "string"
},
"version": {
"type": "number"
},
"created_at": {
"type": "number"
},
"updated_at": {
"type": "number"
},
"verify_jwt": {
"type": "boolean"
},
"import_map": {
"type": "boolean"
}
},
"required": ["id", "slug", "name", "status", "version", "created_at", "updated_at"]
},
"UpdateFunctionBody": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"body": {
"type": "string"
},
"verify_jwt": {
"type": "boolean"
}
}
},
"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": {
"type": "object"
}
},
"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"
}
}
},
"required": ["dbAllowedCidrs"]
},
"NetworkRestrictionsResponse": {
"type": "object",
"properties": {
"entitlement": {
"enum": ["disallowed", "allowed"],
"type": "string"
},
"config": {
"type": "object",
"properties": {
"dbAllowedCidrs": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": ["dbAllowedCidrs"]
},
"old_config": {
"type": "object",
"properties": {
"dbAllowedCidrs": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": ["dbAllowedCidrs"]
},
"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"]
},
"PostgrestConfigResponse": {
"type": "object",
"properties": {
"max_rows": {
"type": "integer"
},
"db_schema": {
"type": "string"
},
"db_extra_search_path": {
"type": "string"
}
},
"required": ["max_rows", "db_schema", "db_extra_search_path"]
},
"UpdatePostgrestConfigBody": {
"type": "object",
"properties": {
"max_rows": {
"type": "integer",
"minimum": 0,
"maximum": 1000000
},
"db_extra_search_path": {
"type": "string"
},
"db_schema": {
"type": "string"
}
}
},
"SecretResponse": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": ["name", "value"]
},
"CreateSecretBody": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"value": {
"type": "string",
"pattern": "/^(?!SUPABASE_).*/"
}
},
"required": ["name", "value"]
},
"SslEnforcements": {
"type": "object",
"properties": {
"database": {
"type": "boolean"
}
},
"required": ["database"]
},
"SslEnforcementResponse": {
"type": "object",
"properties": {
"currentConfig": {
"type": "object",
"properties": {
"database": {
"type": "boolean"
}
},
"required": ["database"]
},
"appliedSuccessfully": {
"type": "boolean"
}
},
"required": ["currentConfig", "appliedSuccessfully"]
},
"SslEnforcementRequest": {
"type": "object",
"properties": {
"requestedConfig": {
"type": "object",
"properties": {
"database": {
"type": "boolean"
}
},
"required": ["database"]
}
},
"required": ["requestedConfig"]
},
"TypescriptResponse": {
"type": "object",
"properties": {
"types": {
"type": "string"
}
},
"required": ["types"]
},
"VanitySubdomainConfigResponse": {
"type": "object",
"properties": {
"status": {
"type": "string",
"enum": ["not-used", "custom-domain-used", "active"]
},
"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": {
"target_version": {
"type": "number"
}
},
"required": ["target_version"]
},
"ProjectVersion": {
"type": "object",
"properties": {
"postgres_version": {
"type": "number"
},
"app_version": {
"type": "string"
}
},
"required": ["postgres_version", "app_version"]
},
"ProjectUpgradeEligibilityResponse": {
"type": "object",
"properties": {
"eligible": {
"type": "boolean"
},
"current_app_version": {
"type": "string"
},
"latest_app_version": {
"type": "string"
},
"target_upgrade_versions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"postgres_version": {
"type": "number"
},
"app_version": {
"type": "string"
}
},
"required": ["postgres_version", "app_version"]
}
},
"requires_manual_intervention": {
"type": "string",
"nullable": true
},
"potential_breaking_changes": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"eligible",
"current_app_version",
"latest_app_version",
"target_upgrade_versions",
"requires_manual_intervention",
"potential_breaking_changes"
]
},
"DatabaseUpgradeStatus": {
"type": "object",
"properties": {
"initiated_at": {
"type": "string"
},
"target_version": {
"type": "number"
},
"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"
]
},
"progress": {
"type": "string",
"enum": [
"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"
]
},
"status": {
"type": "number",
"enum": [0, 1, 2]
}
},
"required": ["initiated_at", "target_version", "status"]
},
"DatabaseUpgradeStatusResponse": {
"type": "object",
"properties": {
"databaseUpgradeStatus": {
"nullable": true,
"allOf": [
{
"type": "object",
"properties": {
"initiated_at": {
"type": "string"
},
"target_version": {
"type": "number"
},
"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"
]
},
"progress": {
"type": "string",
"enum": [
"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"
]
},
"status": {
"type": "number",
"enum": [0, 1, 2]
}
},
"required": ["initiated_at", "target_version", "status"]
}
]
}
},
"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"]
},
"PostgresConfigResponse": {
"type": "object",
"properties": {
"statement_timeout": {
"type": "integer",
"minimum": 0,
"maximum": 2147483647
},
"effective_cache_size": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647
},
"maintenance_work_mem": {
"type": "integer",
"minimum": 1024,
"maximum": 2147483647
},
"max_connections": {
"type": "integer",
"minimum": 1,
"maximum": 262143
},
"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_worker_processes": {
"type": "integer",
"minimum": 0,
"maximum": 262143
},
"shared_buffers": {
"type": "integer",
"minimum": 16,
"maximum": 1073741823
},
"work_mem": {
"type": "integer",
"minimum": 64,
"maximum": 2147483647
},
"session_replication_role": {
"enum": ["origin", "replica", "local"],
"type": "string"
}
},
"required": [
"statement_timeout",
"effective_cache_size",
"maintenance_work_mem",
"max_connections",
"max_parallel_maintenance_workers",
"max_parallel_workers",
"max_parallel_workers_per_gather",
"max_worker_processes",
"shared_buffers",
"work_mem",
"session_replication_role"
]
},
"UpdatePostgresConfigBody": {
"type": "object",
"properties": {
"statement_timeout": {
"type": "integer",
"minimum": 0,
"maximum": 2147483647
},
"effective_cache_size": {
"type": "integer",
"minimum": 1,
"maximum": 2147483647
},
"maintenance_work_mem": {
"type": "integer",
"minimum": 1024,
"maximum": 2147483647
},
"max_connections": {
"type": "integer",
"minimum": 1,
"maximum": 262143
},
"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_worker_processes": {
"type": "integer",
"minimum": 0,
"maximum": 262143
},
"shared_buffers": {
"type": "integer",
"minimum": 16,
"maximum": 1073741823
},
"work_mem": {
"type": "integer",
"minimum": 64,
"maximum": 2147483647
},
"session_replication_role": {
"enum": ["origin", "replica", "local"],
"type": "string"
}
},
"required": [
"statement_timeout",
"effective_cache_size",
"maintenance_work_mem",
"max_connections",
"max_parallel_maintenance_workers",
"max_parallel_workers",
"max_parallel_workers_per_gather",
"max_worker_processes",
"shared_buffers",
"work_mem",
"session_replication_role"
]
},
"AttributeValue": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
},
"AttributeMapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"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": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
},
"required": ["type"]
},
"SamlDescriptor": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"entity_id": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"metadata_xml": {
"type": "string"
},
"attribute_mapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
},
"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": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"entity_id": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"metadata_xml": {
"type": "string"
},
"attribute_mapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
},
"required": ["id", "entity_id"]
},
"domains": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"domain": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
},
"Provider": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"entity_id": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"metadata_xml": {
"type": "string"
},
"attribute_mapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
},
"required": ["id", "entity_id"]
},
"domains": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"domain": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
},
"ListProvidersResponse": {
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"entity_id": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"metadata_xml": {
"type": "string"
},
"attribute_mapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
},
"required": ["id", "entity_id"]
},
"domains": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"domain": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
}
},
"required": ["items"]
},
"GetProviderResponse": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"entity_id": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"metadata_xml": {
"type": "string"
},
"attribute_mapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
},
"required": ["id", "entity_id"]
},
"domains": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"domain": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
},
"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": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
}
},
"UpdateProviderResponse": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"entity_id": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"metadata_xml": {
"type": "string"
},
"attribute_mapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
},
"required": ["id", "entity_id"]
},
"domains": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"domain": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
},
"DeleteProviderResponse": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"saml": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"entity_id": {
"type": "string"
},
"metadata_url": {
"type": "string"
},
"metadata_xml": {
"type": "string"
},
"attribute_mapping": {
"type": "object",
"properties": {
"keys": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"names": {
"type": "array",
"items": {
"type": "string"
}
},
"default": {
"type": "object"
}
}
}
}
},
"required": ["keys"]
}
},
"required": ["id", "entity_id"]
},
"domains": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"domain": {
"type": "string"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": ["id"]
}
}
}
}