mirror of
https://github.com/supabase/supabase.git
synced 2026-07-04 06:44:22 +08:00
6548 lines
206 KiB
JSON
6548 lines
206 KiB
JSON
{
|
|
"openapi": "3.0.0",
|
|
"paths": {
|
|
"/platform/login": {
|
|
"get": {
|
|
"operationId": "LoginController_redirectToDashboardHomepage",
|
|
"summary": "Redirects to dashboard homepage",
|
|
"parameters": [],
|
|
"responses": { "200": { "description": "" } }
|
|
}
|
|
},
|
|
"/platform/notifications": {
|
|
"get": {
|
|
"operationId": "NotificationsController_getNotifications",
|
|
"summary": "Get notifications",
|
|
"parameters": [],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/Notification" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to retrieve notifications" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "NotificationsController_updateNotifications",
|
|
"summary": "Update notifications",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateNotificationsBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/Notification" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to update notifications" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/feedback/send": {
|
|
"post": {
|
|
"operationId": "SendFeedbackController_sendFeedback",
|
|
"summary": "Send feedback",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/SendFeedbackBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to send feedback" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/users/{gotrue_id}/roles/{role_id}": {
|
|
"post": {
|
|
"operationId": "SubjectRoleController_assignRoleToSubject",
|
|
"summary": "Assigns the given role to the given subject",
|
|
"parameters": [
|
|
{
|
|
"name": "gotrue_id",
|
|
"required": true,
|
|
"in": "path",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "role_id",
|
|
"required": true,
|
|
"in": "path",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/SubjectRoleParams" }
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Failed to assign the given role to the given subject"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "SubjectRoleController_unassignRoleFromSubject",
|
|
"summary": "Unassigns the given role from the given subject",
|
|
"parameters": [
|
|
{
|
|
"name": "gotrue_id",
|
|
"required": true,
|
|
"in": "path",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "role_id",
|
|
"required": true,
|
|
"in": "path",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/SubjectRoleParams" }
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Failed to unassign the given role from the given subject"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/auth/{ref}/config": {
|
|
"get": {
|
|
"operationId": "GoTrueConfigController_getGoTrueConfig",
|
|
"summary": "Gets GoTrue 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/GetGoTrueConfigResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to retrieve GoTrue config" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "GoTrueConfigController_updateGoTrueConfig",
|
|
"summary": "Updates GoTrue 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/UpdateGoTrueConfigBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/GoTrueConfig" }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to update GoTrue config" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/auth/{ref}/invite": {
|
|
"post": {
|
|
"operationId": "InviteController_sendInvite",
|
|
"summary": "Sends an invite to the given email",
|
|
"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/UserBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to send an invite to the given email"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/auth/{ref}/magiclink": {
|
|
"post": {
|
|
"operationId": "MagicLinkController_sendMagicLink",
|
|
"summary": "Sends a magic link to the given email",
|
|
"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/UserBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to send a magic link to the given email"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/auth/{ref}/otp": {
|
|
"post": {
|
|
"operationId": "OtpController_sendOtp",
|
|
"summary": "Sends an OTP to the given phone number",
|
|
"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/UserBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to send an OTP to the given phone number"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/auth/{ref}/recover": {
|
|
"post": {
|
|
"operationId": "RecoverController_sendRecover",
|
|
"summary": "Sends a recovery email to the given email",
|
|
"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/UserBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to send a recovery email to the given email"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/auth/{ref}/templates/{template}": {
|
|
"get": {
|
|
"operationId": "TemplateController_getTemplate",
|
|
"summary": "Gets GoTrue template",
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "template",
|
|
"required": true,
|
|
"in": "path",
|
|
"schema": {
|
|
"enum": [
|
|
"confirmation",
|
|
"email-change",
|
|
"invite",
|
|
"magic-link",
|
|
"recovery"
|
|
],
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "string" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to retrieve GoTrue template" }
|
|
}
|
|
}
|
|
},
|
|
"/platform/auth/{ref}/users": {
|
|
"get": {
|
|
"operationId": "UsersController_getUsers",
|
|
"summary": "Gets users",
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "keywords",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "limit",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "offset",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to retrieve users" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "UsersController_deleteUser",
|
|
"summary": "Delete user with given ID",
|
|
"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/UserBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to delete user" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/database/{ref}/backups": {
|
|
"get": {
|
|
"operationId": "BackupsController_getBackups",
|
|
"summary": "Gets project 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/BackupsResponse" }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to get project backups" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/database/{ref}/backups/download": {
|
|
"post": {
|
|
"operationId": "BackupsController_downloadBackup",
|
|
"summary": "Download project backup",
|
|
"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/DownloadBackupBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/DownloadBackupResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to download project backup" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/database/{ref}/backups/restore": {
|
|
"post": {
|
|
"operationId": "BackupsController_restoreBackup",
|
|
"summary": "Restore project backup",
|
|
"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/RestoreBackupBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to restore project backup" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/database/{ref}/backups/pitr": {
|
|
"post": {
|
|
"operationId": "BackupsController_restorePointInTimeBackup",
|
|
"summary": "Restore project to a previous point in time",
|
|
"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/PointInTimeRestoreBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Failed to restore project to a previous point in time"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/database/{ref}/hook-logs": {
|
|
"get": {
|
|
"operationId": "HooksController_getHookLogs",
|
|
"summary": "Gets hook logs with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "number" }
|
|
},
|
|
{
|
|
"name": "limit",
|
|
"required": false,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "offset",
|
|
"required": false,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to get hook logs with the given ID" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/database/{ref}/hook-enable": {
|
|
"post": {
|
|
"operationId": "HooksController_enableHooks",
|
|
"summary": "Enables hooks on the project",
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to enable hooks on the project" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/organizations": {
|
|
"get": {
|
|
"operationId": "OrganizationsController_getOrganizations",
|
|
"summary": "Gets user's organizations",
|
|
"parameters": [],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/Organization" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to retrieve user's organizations" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "OrganizationsController_createOrganization",
|
|
"summary": "Creates organization",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateOrganizationBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/Organization" }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to create organization" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/organizations/{slug}": {
|
|
"patch": {
|
|
"operationId": "OrganizationSlugController_updateOrganization",
|
|
"summary": "Updates organization",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdateOrganizationBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/Organization" }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to update organization" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "OrganizationSlugController_deleteOrganization",
|
|
"summary": "Deletes organization",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/RemovedOrganization" }
|
|
}
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to delete organization" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/organizations/{slug}/customer": {
|
|
"get": {
|
|
"operationId": "CustomerController_getCustomer",
|
|
"summary": "Gets the Stripe customer",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to retrieve the Stripe customer" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "CustomerController_updateCustomer",
|
|
"summary": "Updates the Stripe customer",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to update the Stripe customer" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/organizations/{slug}/members": {
|
|
"get": {
|
|
"operationId": "MembersController_getOrganizationMembers",
|
|
"summary": "Gets organization's members",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/Member" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to retrieve organization's members" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/organizations/{slug}/members/add": {
|
|
"post": {
|
|
"operationId": "MembersController_addMember",
|
|
"summary": "Adds an organization member",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/AddMemberBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to add an organization member" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/organizations/{slug}/members/leave": {
|
|
"post": {
|
|
"operationId": "MembersController_leaveOrganization",
|
|
"summary": "Leaves the given organization",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to leave organization" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/organizations/{slug}/members/remove": {
|
|
"delete": {
|
|
"operationId": "MembersController_removeMember",
|
|
"summary": "Leaves the given organization",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/RemoveMemberBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to leave organization" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/organizations/{slug}/roles": {
|
|
"get": {
|
|
"operationId": "RolesController_addMember",
|
|
"summary": "Gets the given organization's roles",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Failed to retrieve the organization's roles"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/organizations/{slug}/tax-ids": {
|
|
"get": {
|
|
"operationId": "TaxIdsController_getTaxIds",
|
|
"summary": "Gets the given organization's tax IDs",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to retrieve the organization's tax IDs"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "TaxIdsController_createTaxId",
|
|
"summary": "Creates a tax ID for the given organization",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/CreateTaxIdBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to create the tax ID" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "TaxIdsController_deleteTaxId",
|
|
"summary": "Delete the tax ID with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/DeleteTaxIdBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to delete the tax ID" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/organizations/{slug}/transfer": {
|
|
"post": {
|
|
"operationId": "TransferController_transferOrganization",
|
|
"summary": "Transfers the organization to the given member",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/TransferOrganizationBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to update owner" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/organizations/{slug}/members/invite": {
|
|
"get": {
|
|
"operationId": "InviteController_getInvitedUsers",
|
|
"summary": "Gets invited users",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get invited users" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "InviteController_deleteInvitedUser",
|
|
"summary": "Delete invited user",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "invited_id",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to delete invited user" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "InviteController_inviteUser",
|
|
"summary": "Invites user",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/InviteUserBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to invite user" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/organizations/{slug}/members/join": {
|
|
"get": {
|
|
"operationId": "JoinController_getInvite",
|
|
"summary": "Gets invite",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "token",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get invite" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "JoinController_joinOrganization",
|
|
"summary": "Joins organization",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "token",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to join organization" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/organizations/{slug}/payments": {
|
|
"get": {
|
|
"operationId": "PaymentsController_getPaymentMethods",
|
|
"summary": "Gets Stripe payment methods for the given organization",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to get Stripe payment methods" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "PaymentsController_detachPaymentMethod",
|
|
"summary": "Detach Stripe payment method with the given card ID",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/DetachPaymentMethodBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to detach Stripe payment method" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/organizations/{slug}/payments/setup-intent": {
|
|
"post": {
|
|
"operationId": "SetupIntentController_setUpPaymentMethod",
|
|
"summary": "Sets up a payment method",
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to set up a payment method" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/columns": {
|
|
"get": {
|
|
"operationId": "ColumnsController_getColumns",
|
|
"summary": "Gets project pg.columns",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get pg.columns" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "ColumnsController_createColumn",
|
|
"summary": "Creates project pg.column",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"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/CreateColumnBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to create pg.column" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "ColumnsController_updateColumn",
|
|
"summary": "Updates project pg.column with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Column ID",
|
|
"schema": { "pattern": {}, "type": "string" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UpdateColumnBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to update pg.column with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "ColumnsController_deleteColumn",
|
|
"summary": "Deletes project pg.column with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Column ID",
|
|
"schema": { "pattern": {}, "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to delete pg.column with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/extensions": {
|
|
"get": {
|
|
"operationId": "ExtensionsController_getExtensions",
|
|
"summary": "Gets project pg.extensions",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get pg.extensions" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "ExtensionsController_createExtension",
|
|
"summary": "Creates project pg.extension",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"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/CreateExtensionBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to create pg.extension" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "ExtensionsController_deleteExtension",
|
|
"summary": "Deletes project pg.extension with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Extension ID",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to delete pg.extension with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/functions": {
|
|
"get": {
|
|
"operationId": "FunctionsController_getFunctions",
|
|
"summary": "Gets project pg.functions",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get pg.functions" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "FunctionsController_createFunction",
|
|
"summary": "Creates project pg.function",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"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/CreateFunctionBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to create pg.function" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "FunctionsController_updateFunction",
|
|
"summary": "Updates project pg.function with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Function ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UpdateFunctionBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to update pg.function with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "FunctionsController_deleteFunction",
|
|
"summary": "Deletes project pg.function with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Function ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to delete pg.function with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/policies": {
|
|
"get": {
|
|
"operationId": "PoliciesController_getPolicies",
|
|
"summary": "Gets project pg.policies",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get pg.policies" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "PoliciesController_createPolicy",
|
|
"summary": "Creates project pg.policy",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"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/CreatePolicyBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to create pg.policy" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "PoliciesController_updatePolicy",
|
|
"summary": "Updates project pg.policy with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Policy ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UpdatePolicyBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to update pg.policy with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "PoliciesController_deletePolicy",
|
|
"summary": "Deletes project pg.policy with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Policy ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to delete pg.policy with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/publications": {
|
|
"get": {
|
|
"operationId": "PublicationsController_getPublications",
|
|
"summary": "Gets project pg.publications",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get pg.publications" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "PublicationsController_createPublication",
|
|
"summary": "Creates project pg.publication",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"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/CreatePublicationBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to create pg.publication" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "PublicationsController_updatePublication",
|
|
"summary": "Updates project pg.publication with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Publication ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UpdatePublicationBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to update pg.publication with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "PublicationsController_deletePublication",
|
|
"summary": "Deletes project pg.publication with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Publication ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to delete pg.publication with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/query": {
|
|
"post": {
|
|
"operationId": "QueryController_runQuery",
|
|
"summary": "Run sql query",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"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/RunQueryBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to run sql query" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/query/format": {
|
|
"post": {
|
|
"operationId": "QueryController_formatQuery",
|
|
"summary": "Format 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/FormatQueryBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "string" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to format sql query" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/query/validate": {
|
|
"post": {
|
|
"operationId": "QueryController_validateQuery",
|
|
"summary": "Validate 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/ValidateQueryBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to validate sql query" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/roles": {
|
|
"get": {
|
|
"operationId": "RolesController_getRoles",
|
|
"summary": "Gets project pg.roles",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get pg.roles" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/search/tables": {
|
|
"post": {
|
|
"operationId": "SearchController_searchTables",
|
|
"summary": "Searches project pg.tables. Return maximum 50 results.",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"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/SearchTableBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "type": "array", "items": { "type": "object" } }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to search pg.tables" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/search/columns": {
|
|
"post": {
|
|
"operationId": "SearchController_searchColumns",
|
|
"summary": "Searches project pg.columns. Return maximum 50 results.",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"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/SearchColumnBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "type": "array", "items": { "type": "object" } }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to search pg.columns" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/schemas": {
|
|
"get": {
|
|
"operationId": "SchemasController_getSchemas",
|
|
"summary": "Gets project pg.schemas",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get pg.schemas" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "SchemasController_createSchema",
|
|
"summary": "Creates project pg.schema",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"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/CreateSchemaBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to create pg.schema" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "SchemasController_updateSchema",
|
|
"summary": "Updates project pg.schema with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Schema ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UpdateSchemaBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to update pg.schema with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "SchemasController_deleteSchema",
|
|
"summary": "Deletes project pg.schema with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Schema ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to delete pg.schema with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/tables": {
|
|
"get": {
|
|
"operationId": "TablesController_getTables",
|
|
"summary": "Gets project pg.tables or pg.table with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": false,
|
|
"in": "query",
|
|
"description": "Table ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to get pg.tables or pg.table with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "TablesController_createTable",
|
|
"summary": "Creates project pg.table",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"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/CreateTableBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to create pg.table" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "TablesController_updateTable",
|
|
"summary": "Updates project pg.table with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Table ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UpdateTableBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to update pg.table with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "TablesController_deleteTable",
|
|
"summary": "Deletes project pg.table with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Table ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to delete pg.table with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/triggers": {
|
|
"get": {
|
|
"operationId": "TriggersController_getTriggers",
|
|
"summary": "Gets project pg.triggers",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get pg.triggers" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "TriggersController_createTrigger",
|
|
"summary": "Creates project pg.trigger",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"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/CreateTriggerBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to create pg.trigger" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "TriggersController_updateTrigger",
|
|
"summary": "Updates project pg.trigger with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Trigger ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UpdateTriggerBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to update pg.trigger with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "TriggersController_deleteTrigger",
|
|
"summary": "Deletes project pg.trigger with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Trigger ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to delete pg.trigger with the given ID"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/pg-meta/{ref}/types": {
|
|
"get": {
|
|
"operationId": "TypesController_getTypes",
|
|
"summary": "Gets project pg.types",
|
|
"parameters": [
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get pg.types" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/profile/access-tokens": {
|
|
"get": {
|
|
"operationId": "AccessTokensController_getAccessTokens",
|
|
"summary": "Gets the user's access tokens",
|
|
"parameters": [],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/AccessToken" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to get user's access tokens" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "AccessTokensController_createAccessToken",
|
|
"summary": "Creates a new access token",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/CreateAccessTokenBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateAccessTokenResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to create access token" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/profile/access-tokens/{id}": {
|
|
"get": {
|
|
"operationId": "AccessTokensController_getAccessToken",
|
|
"summary": "Gets the access token with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Access token ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/AccessToken" }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to get access token" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "AccessTokensController_deleteAccessToken",
|
|
"summary": "Deletes the access token with the given ID",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Access token ID",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/AccessToken" }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to delete access token" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/profile/search": {
|
|
"post": {
|
|
"operationId": "SearchProfileController_searchProfile",
|
|
"summary": "Search profiles by username, email with the given keywords",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/SearchProfileBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/Profile" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Failed to search profiles with the given keywords"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/profile/subscriptions": {
|
|
"get": {
|
|
"operationId": "SubscriptionsController_getSubscriptionsStatistics",
|
|
"summary": "Gets the user's subscription statistics",
|
|
"parameters": [],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/SubscriptionStatisticsResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Failed to retrieve user's subscription statistics"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/profile/password-check": {
|
|
"post": {
|
|
"operationId": "PasswordCheckController_checkPassword",
|
|
"summary": "Check password strength",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/PasswordCheckBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/PasswordCheckResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to check password strength" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/profile/permissions": {
|
|
"get": {
|
|
"operationId": "PermissionsController_getPermissions",
|
|
"summary": "Gets all the user's permissions",
|
|
"parameters": [],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/Permission" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to retrieve permissions" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/profile": {
|
|
"get": {
|
|
"operationId": "ProfileController_getProfile",
|
|
"summary": "Gets the user's profile",
|
|
"parameters": [
|
|
{
|
|
"name": "returning",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "enum": ["minimal"], "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/ProfileResponse" }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to retrieve user's profile" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/profile/update": {
|
|
"post": {
|
|
"operationId": "ProfileController_updateProfile",
|
|
"summary": "Update user's profile",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/UpdateProfileBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/ProfileResponse" }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to update user's profile" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects": {
|
|
"get": {
|
|
"operationId": "ProjectsController_getProjects",
|
|
"summary": "Gets all projects that belong to the authenticated user",
|
|
"description": "Only returns the minimal project info",
|
|
"parameters": [],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "ProjectsController_createProject",
|
|
"summary": "Creates a project",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/CreateProjectBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": { "201": { "description": "" } },
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/daily-stats": {
|
|
"get": {
|
|
"operationId": "DailyStatsController_getDailyStats",
|
|
"summary": "Gets daily project stats",
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "attribute",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "interval",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "endDate",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "startDate",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to get daily project stats" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/db-password": {
|
|
"patch": {
|
|
"operationId": "DbPasswordController_updatePassword",
|
|
"summary": "Updates the database password",
|
|
"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/UpdatePasswordBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to update database password" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/infra-monitoring": {
|
|
"get": {
|
|
"operationId": "InfraMonitoringController_getUsageMetrics",
|
|
"summary": "Gets project's usage metrics",
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "attribute",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": {
|
|
"enum": ["cpu_usage", "disk_io_budget", "ram_usage"],
|
|
"type": "string"
|
|
}
|
|
},
|
|
{
|
|
"name": "startDate",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "endDate",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "interval",
|
|
"required": false,
|
|
"in": "query",
|
|
"schema": {
|
|
"enum": ["1m", "5m", "10m", "30m", "1h", "1d"],
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to get project's usage metrics" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/invoices": {
|
|
"head": {
|
|
"operationId": "InvoicesController_getInvoiceCount",
|
|
"summary": "Gets project's invoice count",
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get project's invoice count" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"get": {
|
|
"operationId": "InvoicesController_getInvoices",
|
|
"summary": "Gets project's invoices",
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "limit",
|
|
"required": false,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "offset",
|
|
"required": false,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "type": "array", "items": { "type": "object" } }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to get project's invoices" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/pause": {
|
|
"post": {
|
|
"operationId": "PauseController_pauseProject",
|
|
"summary": "Pauses the 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" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to pause the project" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/pooling": {
|
|
"get": {
|
|
"operationId": "PoolingController_getPoolingConfig",
|
|
"summary": "Gets project's pooling 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/PoolingConfig" }
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Failed to retrieve project's pooling config"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "PoolingController_updatePoolingConfig",
|
|
"summary": "Updates project's pooling 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/UpdatePoolingConfigBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdatePoolingConfigResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to update project's pooling config" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/restart": {
|
|
"post": {
|
|
"operationId": "RestartController_restartServices",
|
|
"summary": "Restarts 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 restart project" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}": {
|
|
"get": {
|
|
"operationId": "ProjectsRefController_getProjects",
|
|
"summary": "Gets all projects that belong 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": { "type": "object" } }
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"delete": {
|
|
"operationId": "ProjectsRefController_deleteProject",
|
|
"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": "" },
|
|
"403": { "description": "" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "ProjectsRefController_updateProject",
|
|
"summary": "Updates the given 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/UpdateProjectBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to update project" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/restore": {
|
|
"post": {
|
|
"operationId": "RestoreController_restartServices",
|
|
"summary": "Restores the 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/Project" }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to restore project" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/restart-services": {
|
|
"post": {
|
|
"operationId": "RestartServicesController_restartServices",
|
|
"summary": "Restarts given services",
|
|
"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/RestartServicesBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to restart given services" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/status": {
|
|
"get": {
|
|
"operationId": "StatusController_getStatus",
|
|
"summary": "Gets project's status",
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get project's status" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/update": {
|
|
"post": {
|
|
"operationId": "UpdateController_updateProject",
|
|
"summary": "Updates the project",
|
|
"description": "Replaced by PATCH /platform/projects/:ref",
|
|
"deprecated": true,
|
|
"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/UpdateProjectBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to update project" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/usage": {
|
|
"get": {
|
|
"operationId": "UsageController_getUsage",
|
|
"summary": "Gets project's usage",
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "x-connection-encrypted",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to retrieve project's usage" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/usage-status": {
|
|
"get": {
|
|
"operationId": "UsageStatusController_getUsageStatusConfig",
|
|
"summary": "Gets project's usage 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/UsageStatusResponse" }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to retrieve project's usage status" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/subscription/enterprise": {
|
|
"post": {
|
|
"operationId": "EnterpriseController_sendEnterpriseRequest",
|
|
"summary": "Send enterprise request",
|
|
"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/SendEnterpriseRequestBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to send enterprise request" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/subscription/preview": {
|
|
"post": {
|
|
"operationId": "PreviewController_previewSubscription",
|
|
"summary": "Preview subscription",
|
|
"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/PreviewSubscriptionBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to preview subscription" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/subscription": {
|
|
"get": {
|
|
"operationId": "SubscriptionController_getSubscription",
|
|
"summary": "Gets subscription",
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to retrieve subscription" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "SubscriptionController_updateSubscription",
|
|
"summary": "Updates subscription",
|
|
"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/UpdateSubscriptionBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to update subscription" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/config": {
|
|
"get": {
|
|
"operationId": "ConfigController_getConfig",
|
|
"summary": "Gets project's config",
|
|
"description": "Replaced by /config/postgrest, /config/storage, /config/secrets",
|
|
"deprecated": true,
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "app",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "enum": ["postgrest", "storage"], "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to retrieve project's config" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "ConfigController_updateConfig",
|
|
"summary": "Updates project's config",
|
|
"description": "Replaced by /config/postgrest, /config/storage, /config/secrets",
|
|
"deprecated": true,
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
},
|
|
{
|
|
"name": "app",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": {
|
|
"enum": ["postgrest", "secrets", "storage"],
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to update project's config" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/config/postgrest": {
|
|
"get": {
|
|
"operationId": "PostgrestConfigController_getConfig",
|
|
"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" } }
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Failed to retrieve project's postgrest config"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "PostgrestConfigController_updateConfig",
|
|
"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": "" },
|
|
"500": {
|
|
"description": "Failed to update project's postgrest config"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/config/secrets": {
|
|
"patch": {
|
|
"operationId": "SecretsConfigController_updateConfig",
|
|
"summary": "Updates project's secrets 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/UpdateSecretsConfigBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to update project's secrets config" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/projects/{ref}/config/storage": {
|
|
"get": {
|
|
"operationId": "StorageConfigController_getConfig",
|
|
"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": "" },
|
|
"403": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to retrieve project's storage config"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "StorageConfigController_updateConfig",
|
|
"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" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/props/org/{slug}": {
|
|
"get": {
|
|
"operationId": "OrganizationSlugController_getOrganizationMembers",
|
|
"summary": "Gets organization's members",
|
|
"description": "Replaced by GET /platform/organization/:slug/members",
|
|
"deprecated": true,
|
|
"parameters": [
|
|
{
|
|
"name": "slug",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Organization slug",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/OrganizationMembersResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to retrieve organization's members" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/props/pooling/{ref}/config": {
|
|
"get": {
|
|
"operationId": "PoolingRefConfigController_getProjectPoolingConfig",
|
|
"summary": "Gets project's pooling config",
|
|
"description": "Replaced by GET /platform/projects/:ref/pooling",
|
|
"deprecated": true,
|
|
"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/PoolingRefConfigResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Failed to retrieve project's pooling config"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"patch": {
|
|
"operationId": "PoolingRefConfigController_updateProjectPoolingConfig",
|
|
"summary": "Updates project's pooling config",
|
|
"description": "Replaced by PATCH /platform/projects/:ref/pooling",
|
|
"deprecated": true,
|
|
"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/UpdatePoolingRefConfigBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/UpdatePoolingRefConfigResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to update project's pooling config" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/props/project/{ref}/api": {
|
|
"get": {
|
|
"operationId": "ApiController_getProjectApi",
|
|
"summary": "Gets project's api info",
|
|
"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/ApiResponse" }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to retrieve project's api info" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/props/project/{ref}/jwt-secret-update-status": {
|
|
"get": {
|
|
"operationId": "JwtSecretUpdateStatusController_getJwtSecretUpdateStatus",
|
|
"summary": "Gets the last JWT secret update 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/JwtSecretUpdateStatus"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": {
|
|
"description": "Failed to retrieve JWT secret update status"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/props/project/{ref}/settings": {
|
|
"get": {
|
|
"operationId": "SettingsController_getProjectApi",
|
|
"summary": "Gets project's settings",
|
|
"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/SettingsResponse" }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to retrieve project's settings" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/stripe/customer": {
|
|
"post": {
|
|
"operationId": "CustomerController_getCustomer",
|
|
"summary": "Gets the Stripe customer",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/GetCustomerBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to retrieve the Stripe customer" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/stripe/invoices": {
|
|
"head": {
|
|
"operationId": "InvoicesController_countInvoices",
|
|
"summary": "Gets the total count of Stripe invoices for the given customer",
|
|
"parameters": [
|
|
{
|
|
"name": "customer",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to retrieve the total count of Stripe invoice"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"get": {
|
|
"operationId": "InvoicesController_getInvoices",
|
|
"summary": "Gets the Stripe invoices for the given customer",
|
|
"parameters": [
|
|
{
|
|
"name": "customer",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to retrieve Stripe invoices" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/stripe/invoices/{id}": {
|
|
"get": {
|
|
"operationId": "InvoicesController_getInvoice",
|
|
"summary": "Gets the Stripe invoice with the given invoice ID",
|
|
"parameters": [
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "path",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"403": { "description": "" },
|
|
"500": { "description": "Failed to retrieve Stripe invoice" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/stripe/portal": {
|
|
"post": {
|
|
"operationId": "PortalController_createCustomerPortalSession",
|
|
"summary": "Creates a session of the customer portal",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateCustomerPortalSessionBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to create a session of the customer portal"
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/stripe/products": {
|
|
"get": {
|
|
"operationId": "ProductsController_createCustomerPortalSession",
|
|
"summary": "Gets Stripe products",
|
|
"parameters": [],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get Stripe products" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/telemetry/event": {
|
|
"post": {
|
|
"operationId": "TelemetryEventController_sendServerEvent",
|
|
"summary": "Sends analytics server event",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/TelemetryEventBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to send analytics server event" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/telemetry/identify": {
|
|
"post": {
|
|
"operationId": "TelemetryIdentifyController_identify",
|
|
"summary": "Send analytics identify event",
|
|
"parameters": [],
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to send analytics identify event" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/telemetry/page": {
|
|
"post": {
|
|
"operationId": "TelemetryPageController_sendServerPage",
|
|
"summary": "Send server page event",
|
|
"parameters": [],
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to send server page event" }
|
|
}
|
|
}
|
|
},
|
|
"/platform/vercel/token": {
|
|
"get": {
|
|
"operationId": "VercelAccessTokenController_getAccessToken",
|
|
"summary": "Gets the Vercel access token for the given code",
|
|
"parameters": [
|
|
{
|
|
"name": "code",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to get Vercel access token" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/vercel/projects": {
|
|
"get": {
|
|
"operationId": "VercelProjectsController_getVercelProjects",
|
|
"summary": "Gets the project with the given ID if provided, otherwise gets the list of projects",
|
|
"parameters": [
|
|
{
|
|
"name": "vercel_authorization",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "id",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "teamId",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to get project(s)" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/platform/vercel/projects/envs": {
|
|
"get": {
|
|
"operationId": "VercelEnvironmentVariablesController_getEnvironmentVariables",
|
|
"summary": "Gets the environment variables for the given project ID on behalf of the given team ID",
|
|
"parameters": [
|
|
{
|
|
"name": "vercel_authorization",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "projectId",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "teamId",
|
|
"required": false,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "type": "array", "items": { "type": "object" } }
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Failed to get Vercel environment variables" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "VercelEnvironmentVariablesController_createEnvironmentVariable",
|
|
"summary": "Creates the environment variable for the given project ID on behalf of the given team ID",
|
|
"parameters": [
|
|
{
|
|
"name": "vercel_authorization",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "projectId",
|
|
"required": true,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "teamId",
|
|
"required": false,
|
|
"in": "query",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateVercelEnvironmentVariableBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "object" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to get the environment variables" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/system/github-secret-alert": {
|
|
"post": {
|
|
"operationId": "GithubSecretAlertController_resetJwt",
|
|
"summary": "Reset JWT if leaked keys found by GitHub secret scanning",
|
|
"parameters": [
|
|
{
|
|
"name": "github-public-key-identifier",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "github-public-key-signature",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": { "application/json": { "schema": { "type": "string" } } }
|
|
},
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to reset JWT" }
|
|
}
|
|
}
|
|
},
|
|
"/system/projects/{ref}/secrets/refresh": {
|
|
"post": {
|
|
"operationId": "SecretsRefreshController_refreshSecrets",
|
|
"summary": "Refreshes secrets",
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"description": "Project ref",
|
|
"schema": { "minLength": 20, "maxLength": 20, "type": "string" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to refresh secrets" }
|
|
},
|
|
"security": [{ "apiKeyHeader": [], "apiKeyParam": [] }]
|
|
}
|
|
},
|
|
"/system/auth/{ref}/templates/{template}": {
|
|
"get": {
|
|
"operationId": "TemplateController_getTemplate",
|
|
"summary": "Gets GoTrue template",
|
|
"parameters": [
|
|
{
|
|
"name": "ref",
|
|
"required": true,
|
|
"in": "path",
|
|
"schema": { "type": "string" }
|
|
},
|
|
{
|
|
"name": "template",
|
|
"required": true,
|
|
"in": "path",
|
|
"schema": {
|
|
"enum": [
|
|
"confirmation",
|
|
"email-change",
|
|
"invite",
|
|
"magic-link",
|
|
"recovery"
|
|
],
|
|
"type": "string"
|
|
}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": { "schema": { "type": "string" } }
|
|
}
|
|
},
|
|
"500": { "description": "Failed to retrieve GoTrue template" }
|
|
},
|
|
"security": [{ "apiKeyHeader": [], "apiKeyParam": [] }]
|
|
}
|
|
},
|
|
"/system/stripe/subscriptions": {
|
|
"post": {
|
|
"operationId": "StripeSubscriptionsController_createSubscription",
|
|
"summary": "Creates Stripe subscription",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateSubscriptionBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": { "description": "Failed to create Stripe subscription" }
|
|
},
|
|
"security": [{ "apiKeyHeader": [], "apiKeyParam": [] }]
|
|
}
|
|
},
|
|
"/system/stripe/subscriptions/{projectId}": {
|
|
"delete": {
|
|
"operationId": "StripeSubscriptionsController_cancelSubscription",
|
|
"summary": "Cancels Stripe subscription",
|
|
"parameters": [
|
|
{
|
|
"name": "projectId",
|
|
"required": true,
|
|
"in": "path",
|
|
"schema": { "type": "number" }
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to cancel Stripe subscription" }
|
|
},
|
|
"security": [{ "apiKeyHeader": [], "apiKeyParam": [] }]
|
|
}
|
|
},
|
|
"/system/stripe/sync": {
|
|
"post": {
|
|
"operationId": "StripeSyncController_syncStripe",
|
|
"summary": "Sync Supabase organization with Stripe customer",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/StripeSyncBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": { "description": "" },
|
|
"500": {
|
|
"description": "Failed to sync Supabase organization with Stripe customer"
|
|
}
|
|
},
|
|
"security": [{ "apiKeyHeader": [], "apiKeyParam": [] }]
|
|
}
|
|
},
|
|
"/system/stripe/webhooks": {
|
|
"post": {
|
|
"operationId": "StripeWebhooksController_processEvent",
|
|
"summary": "Processes Stripe event",
|
|
"parameters": [
|
|
{
|
|
"name": "stripe-signature",
|
|
"required": true,
|
|
"in": "header",
|
|
"schema": { "type": "string" }
|
|
}
|
|
],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/Buffer" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": { "description": "" },
|
|
"500": { "description": "Failed to process Stripe event" }
|
|
}
|
|
}
|
|
},
|
|
"/v1/organizations": {
|
|
"get": {
|
|
"operationId": "OrganizationsController_getOrganizations",
|
|
"summary": "Lists all organizations",
|
|
"parameters": [
|
|
{
|
|
"name": "owned_only",
|
|
"required": true,
|
|
"in": "query",
|
|
"description": "Only list organizations you own",
|
|
"schema": {}
|
|
}
|
|
],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": {
|
|
"$ref": "#/components/schemas/OrganizationResponse"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Unexpected error listing organizations" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "OrganizationsController_createOrganization_",
|
|
"summary": "Creates an organization",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/CreateOrganizationBody"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"201": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"$ref": "#/components/schemas/OrganizationResponse"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"500": { "description": "Unexpected error creating an organization" }
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
},
|
|
"/v1/projects": {
|
|
"get": {
|
|
"operationId": "ProjectsController_getProjects",
|
|
"summary": "Gets all projects that belong to the authenticated user",
|
|
"description": "Only returns the minimal project info",
|
|
"parameters": [],
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/ProjectResponse" }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
},
|
|
"post": {
|
|
"operationId": "ProjectsController_createProject",
|
|
"summary": "Creates a project",
|
|
"parameters": [],
|
|
"requestBody": {
|
|
"required": true,
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/CreateProjectBody" }
|
|
}
|
|
}
|
|
},
|
|
"responses": {
|
|
"200": {
|
|
"description": "",
|
|
"content": {
|
|
"application/json": {
|
|
"schema": { "$ref": "#/components/schemas/ProjectResponse" }
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"security": [{ "bearer": [] }]
|
|
}
|
|
}
|
|
},
|
|
"info": {
|
|
"title": "Supabase API",
|
|
"description": "",
|
|
"version": "1.0.0",
|
|
"contact": {}
|
|
},
|
|
"tags": [],
|
|
"servers": [],
|
|
"components": {
|
|
"securitySchemes": {
|
|
"bearer": { "scheme": "bearer", "bearerFormat": "JWT", "type": "http" },
|
|
"apiKeyHeader": { "in": "header", "name": "apikey", "type": "apiKey" },
|
|
"apiKeyQuery": { "in": "query", "name": "apikey", "type": "apiKey" }
|
|
},
|
|
"schemas": {
|
|
"Notification": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"inserted_at": { "type": "string" },
|
|
"project_id": { "type": "number" },
|
|
"notification_name": { "type": "string" },
|
|
"notification_status": { "type": "string" },
|
|
"data": { "type": "object" },
|
|
"meta": { "type": "object" }
|
|
},
|
|
"required": [
|
|
"id",
|
|
"inserted_at",
|
|
"project_id",
|
|
"notification_name",
|
|
"notification_status",
|
|
"data",
|
|
"meta"
|
|
]
|
|
},
|
|
"UpdateNotificationsBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"ids": { "type": "array", "items": { "type": "string" } }
|
|
},
|
|
"required": ["ids"]
|
|
},
|
|
"SendFeedbackBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"message": { "type": "string" },
|
|
"category": { "type": "string" },
|
|
"subject": { "type": "string" },
|
|
"tags": { "type": "array", "items": { "type": "string" } },
|
|
"additionalRedirectUrls": { "type": "string" },
|
|
"pathname": { "type": "string" },
|
|
"projectRef": { "type": "string" },
|
|
"severity": { "type": "string" },
|
|
"siteUrl": { "type": "string" },
|
|
"urlToAirTable": { "type": "string" },
|
|
"verified": { "type": "boolean" }
|
|
},
|
|
"required": ["message", "category", "tags"]
|
|
},
|
|
"SubjectRoleParams": {
|
|
"type": "object",
|
|
"properties": {
|
|
"gotrue_id": { "type": "string" },
|
|
"role_id": { "type": "string" }
|
|
},
|
|
"required": ["gotrue_id", "role_id"]
|
|
},
|
|
"GetGoTrueConfigResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"app_version": { "type": "string" },
|
|
"isFreeTier": { "type": "boolean" },
|
|
"id": { "type": "number" },
|
|
"project_id": { "type": "number" },
|
|
"updated_at": { "type": "string" },
|
|
"SITE_URL": { "type": "string" },
|
|
"OPERATOR_TOKEN": { "type": "string" },
|
|
"DISABLE_SIGNUP": { "type": "boolean" },
|
|
"RATE_LIMIT_HEADER": { "type": "string" },
|
|
"JWT_EXP": { "type": "number" },
|
|
"JWT_AUD": { "type": "string" },
|
|
"JWT_DEFAULT_GROUP_NAME": { "type": "string" },
|
|
"EXTERNAL_GITHUB_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_GITHUB_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_GITHUB_SECRET": { "type": "string" },
|
|
"EXTERNAL_BITBUCKET_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_BITBUCKET_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_BITBUCKET_SECRET": { "type": "string" },
|
|
"EXTERNAL_GOOGLE_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_GOOGLE_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_GOOGLE_SECRET": { "type": "string" },
|
|
"EXTERNAL_GITLAB_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_GITLAB_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_GITLAB_SECRET": { "type": "string" },
|
|
"EXTERNAL_GITLAB_REDIRECT_URI": { "type": "string" },
|
|
"EXTERNAL_GITLAB_URL": { "type": "string" },
|
|
"SMTP_ADMIN_EMAIL": { "type": "string" },
|
|
"SMTP_HOST": { "type": "string" },
|
|
"SMTP_PORT": { "type": "string" },
|
|
"SMTP_USER": { "type": "string" },
|
|
"SMTP_PASS": { "type": "string" },
|
|
"SMTP_MAX_FREQUENCY": { "type": "number" },
|
|
"MAILER_AUTOCONFIRM": { "type": "boolean" },
|
|
"MAILER_URLPATHS_INVITE": { "type": "string" },
|
|
"MAILER_URLPATHS_CONFIRMATION": { "type": "string" },
|
|
"MAILER_URLPATHS_RECOVERY": { "type": "string" },
|
|
"MAILER_URLPATHS_EMAIL_CHANGE": { "type": "string" },
|
|
"MAILER_SUBJECTS_INVITE": { "type": "string" },
|
|
"MAILER_SUBJECTS_CONFIRMATION": { "type": "string" },
|
|
"MAILER_SUBJECTS_RECOVERY": { "type": "string" },
|
|
"MAILER_SUBJECTS_EMAIL_CHANGE": { "type": "string" },
|
|
"MAILER_TEMPLATES_INVITE": { "type": "string" },
|
|
"MAILER_TEMPLATES_INVITE_CONTENT": { "type": "string" },
|
|
"MAILER_TEMPLATES_CONFIRMATION": { "type": "string" },
|
|
"MAILER_TEMPLATES_CONFIRMATION_CONTENT": { "type": "string" },
|
|
"MAILER_TEMPLATES_RECOVERY": { "type": "string" },
|
|
"MAILER_TEMPLATES_RECOVERY_CONTENT": { "type": "string" },
|
|
"MAILER_TEMPLATES_EMAIL_CHANGE": { "type": "string" },
|
|
"MAILER_TEMPLATES_EMAIL_CHANGE_CONTENT": { "type": "string" },
|
|
"MAILER_SUBJECTS_MAGIC_LINK": { "type": "string" },
|
|
"MAILER_TEMPLATES_MAGIC_LINK": { "type": "string" },
|
|
"MAILER_TEMPLATES_MAGIC_LINK_CONTENT": { "type": "string" },
|
|
"EXTERNAL_AZURE_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_AZURE_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_AZURE_SECRET": { "type": "string" },
|
|
"EXTERNAL_FACEBOOK_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_FACEBOOK_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_FACEBOOK_SECRET": { "type": "string" },
|
|
"URI_ALLOW_LIST": { "type": "string" },
|
|
"EXTERNAL_TWITTER_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_TWITTER_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_TWITTER_SECRET": { "type": "string" },
|
|
"EXTERNAL_APPLE_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_APPLE_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_APPLE_SECRET": { "type": "string" },
|
|
"EXTERNAL_DISCORD_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_DISCORD_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_DISCORD_SECRET": { "type": "string" },
|
|
"EXTERNAL_TWITCH_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_TWITCH_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_TWITCH_SECRET": { "type": "string" },
|
|
"SMTP_SENDER_NAME": { "type": "string" },
|
|
"EXTERNAL_EMAIL_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_PHONE_ENABLED": { "type": "boolean" },
|
|
"SMS_AUTOCONFIRM": { "type": "boolean" },
|
|
"SMS_MAX_FREQUENCY": { "type": "number" },
|
|
"SMS_OTP_EXP": { "type": "number" },
|
|
"SMS_OTP_LENGTH": { "type": "number" },
|
|
"SMS_PROVIDER": { "type": "string" },
|
|
"SMS_TWILIO_ACCOUNT_SID": { "type": "string" },
|
|
"SMS_TWILIO_AUTH_TOKEN": { "type": "string" },
|
|
"SMS_TWILIO_MESSAGE_SERVICE_SID": { "type": "string" },
|
|
"SMS_TEMPLATE": { "type": "string" },
|
|
"SECURITY_CAPTCHA_ENABLED": { "type": "boolean" },
|
|
"SECURITY_CAPTCHA_PROVIDER": { "type": "string" },
|
|
"SECURITY_CAPTCHA_SECRET": { "type": "string" },
|
|
"RATE_LIMIT_EMAIL_SENT": { "type": "number" },
|
|
"MAILER_SECURE_EMAIL_CHANGE_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_SPOTIFY_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_SPOTIFY_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_SPOTIFY_SECRET": { "type": "string" },
|
|
"EXTERNAL_SLACK_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_SLACK_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_SLACK_SECRET": { "type": "string" },
|
|
"SMS_MESSAGEBIRD_ACCESS_KEY": { "type": "string" },
|
|
"SMS_MESSAGEBIRD_ORIGINATOR": { "type": "string" },
|
|
"SMTP_PASS_ENCRYPTED": { "type": "string" },
|
|
"REFRESH_TOKEN_ROTATION_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_LINKEDIN_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_LINKEDIN_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_LINKEDIN_SECRET": { "type": "string" },
|
|
"EXTERNAL_NOTION_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_NOTION_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_NOTION_SECRET": { "type": "string" },
|
|
"SMS_VONAGE_API_KEY": { "type": "string" },
|
|
"SMS_VONAGE_API_SECRET": { "type": "string" },
|
|
"SMS_VONAGE_FROM": { "type": "string" },
|
|
"SMS_TEXTLOCAL_API_KEY": { "type": "string" },
|
|
"SMS_TEXTLOCAL_SENDER": { "type": "string" },
|
|
"EXTERNAL_ZOOM_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_ZOOM_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_ZOOM_SECRET": { "type": "string" },
|
|
"EXTERNAL_AZURE_URL": { "type": "string" },
|
|
"PASSWORD_MIN_LENGTH": { "type": "number" },
|
|
"EXTERNAL_KEYCLOAK_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_KEYCLOAK_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_KEYCLOAK_SECRET": { "type": "string" },
|
|
"EXTERNAL_KEYCLOAK_URL": { "type": "string" },
|
|
"EXTERNAL_WORKOS_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_WORKOS_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_WORKOS_SECRET": { "type": "string" },
|
|
"EXTERNAL_WORKOS_URL": { "type": "string" },
|
|
"SECURITY_UPDATE_PASSWORD_REQUIRE_REAUTHENTICATION": {
|
|
"type": "boolean"
|
|
},
|
|
"SECURITY_REFRESH_TOKEN_REUSE_INTERVAL": { "type": "number" },
|
|
"MAILER_OTP_EXP": { "type": "number" },
|
|
"RATE_LIMIT_VERIFY": { "type": "number" },
|
|
"RATE_LIMIT_TOKEN_REFRESH": { "type": "number" }
|
|
},
|
|
"required": [
|
|
"app_version",
|
|
"isFreeTier",
|
|
"id",
|
|
"project_id",
|
|
"updated_at",
|
|
"SITE_URL",
|
|
"OPERATOR_TOKEN",
|
|
"DISABLE_SIGNUP",
|
|
"RATE_LIMIT_HEADER",
|
|
"JWT_EXP",
|
|
"JWT_AUD",
|
|
"JWT_DEFAULT_GROUP_NAME",
|
|
"EXTERNAL_GITHUB_ENABLED",
|
|
"EXTERNAL_GITHUB_CLIENT_ID",
|
|
"EXTERNAL_GITHUB_SECRET",
|
|
"EXTERNAL_BITBUCKET_ENABLED",
|
|
"EXTERNAL_BITBUCKET_CLIENT_ID",
|
|
"EXTERNAL_BITBUCKET_SECRET",
|
|
"EXTERNAL_GOOGLE_ENABLED",
|
|
"EXTERNAL_GOOGLE_CLIENT_ID",
|
|
"EXTERNAL_GOOGLE_SECRET",
|
|
"EXTERNAL_GITLAB_ENABLED",
|
|
"EXTERNAL_GITLAB_CLIENT_ID",
|
|
"EXTERNAL_GITLAB_SECRET",
|
|
"EXTERNAL_GITLAB_REDIRECT_URI",
|
|
"EXTERNAL_GITLAB_URL",
|
|
"SMTP_ADMIN_EMAIL",
|
|
"SMTP_HOST",
|
|
"SMTP_PORT",
|
|
"SMTP_USER",
|
|
"SMTP_PASS",
|
|
"SMTP_MAX_FREQUENCY",
|
|
"MAILER_AUTOCONFIRM",
|
|
"MAILER_URLPATHS_INVITE",
|
|
"MAILER_URLPATHS_CONFIRMATION",
|
|
"MAILER_URLPATHS_RECOVERY",
|
|
"MAILER_URLPATHS_EMAIL_CHANGE",
|
|
"MAILER_SUBJECTS_INVITE",
|
|
"MAILER_SUBJECTS_CONFIRMATION",
|
|
"MAILER_SUBJECTS_RECOVERY",
|
|
"MAILER_SUBJECTS_EMAIL_CHANGE",
|
|
"MAILER_TEMPLATES_INVITE",
|
|
"MAILER_TEMPLATES_INVITE_CONTENT",
|
|
"MAILER_TEMPLATES_CONFIRMATION",
|
|
"MAILER_TEMPLATES_CONFIRMATION_CONTENT",
|
|
"MAILER_TEMPLATES_RECOVERY",
|
|
"MAILER_TEMPLATES_RECOVERY_CONTENT",
|
|
"MAILER_TEMPLATES_EMAIL_CHANGE",
|
|
"MAILER_TEMPLATES_EMAIL_CHANGE_CONTENT",
|
|
"MAILER_SUBJECTS_MAGIC_LINK",
|
|
"MAILER_TEMPLATES_MAGIC_LINK",
|
|
"MAILER_TEMPLATES_MAGIC_LINK_CONTENT",
|
|
"EXTERNAL_AZURE_ENABLED",
|
|
"EXTERNAL_AZURE_CLIENT_ID",
|
|
"EXTERNAL_AZURE_SECRET",
|
|
"EXTERNAL_FACEBOOK_ENABLED",
|
|
"EXTERNAL_FACEBOOK_CLIENT_ID",
|
|
"EXTERNAL_FACEBOOK_SECRET",
|
|
"URI_ALLOW_LIST",
|
|
"EXTERNAL_TWITTER_ENABLED",
|
|
"EXTERNAL_TWITTER_CLIENT_ID",
|
|
"EXTERNAL_TWITTER_SECRET",
|
|
"EXTERNAL_APPLE_ENABLED",
|
|
"EXTERNAL_APPLE_CLIENT_ID",
|
|
"EXTERNAL_APPLE_SECRET",
|
|
"EXTERNAL_DISCORD_ENABLED",
|
|
"EXTERNAL_DISCORD_CLIENT_ID",
|
|
"EXTERNAL_DISCORD_SECRET",
|
|
"EXTERNAL_TWITCH_ENABLED",
|
|
"EXTERNAL_TWITCH_CLIENT_ID",
|
|
"EXTERNAL_TWITCH_SECRET",
|
|
"SMTP_SENDER_NAME",
|
|
"EXTERNAL_EMAIL_ENABLED",
|
|
"EXTERNAL_PHONE_ENABLED",
|
|
"SMS_AUTOCONFIRM",
|
|
"SMS_MAX_FREQUENCY",
|
|
"SMS_OTP_EXP",
|
|
"SMS_OTP_LENGTH",
|
|
"SMS_PROVIDER",
|
|
"SMS_TWILIO_ACCOUNT_SID",
|
|
"SMS_TWILIO_AUTH_TOKEN",
|
|
"SMS_TWILIO_MESSAGE_SERVICE_SID",
|
|
"SMS_TEMPLATE",
|
|
"SECURITY_CAPTCHA_ENABLED",
|
|
"SECURITY_CAPTCHA_PROVIDER",
|
|
"SECURITY_CAPTCHA_SECRET",
|
|
"RATE_LIMIT_EMAIL_SENT",
|
|
"MAILER_SECURE_EMAIL_CHANGE_ENABLED",
|
|
"EXTERNAL_SPOTIFY_ENABLED",
|
|
"EXTERNAL_SPOTIFY_CLIENT_ID",
|
|
"EXTERNAL_SPOTIFY_SECRET",
|
|
"EXTERNAL_SLACK_ENABLED",
|
|
"EXTERNAL_SLACK_CLIENT_ID",
|
|
"EXTERNAL_SLACK_SECRET",
|
|
"SMS_MESSAGEBIRD_ACCESS_KEY",
|
|
"SMS_MESSAGEBIRD_ORIGINATOR",
|
|
"SMTP_PASS_ENCRYPTED",
|
|
"REFRESH_TOKEN_ROTATION_ENABLED",
|
|
"EXTERNAL_LINKEDIN_ENABLED",
|
|
"EXTERNAL_LINKEDIN_CLIENT_ID",
|
|
"EXTERNAL_LINKEDIN_SECRET",
|
|
"EXTERNAL_NOTION_ENABLED",
|
|
"EXTERNAL_NOTION_CLIENT_ID",
|
|
"EXTERNAL_NOTION_SECRET",
|
|
"SMS_VONAGE_API_KEY",
|
|
"SMS_VONAGE_API_SECRET",
|
|
"SMS_VONAGE_FROM",
|
|
"SMS_TEXTLOCAL_API_KEY",
|
|
"SMS_TEXTLOCAL_SENDER",
|
|
"EXTERNAL_ZOOM_ENABLED",
|
|
"EXTERNAL_ZOOM_CLIENT_ID",
|
|
"EXTERNAL_ZOOM_SECRET",
|
|
"EXTERNAL_AZURE_URL",
|
|
"PASSWORD_MIN_LENGTH",
|
|
"EXTERNAL_KEYCLOAK_ENABLED",
|
|
"EXTERNAL_KEYCLOAK_CLIENT_ID",
|
|
"EXTERNAL_KEYCLOAK_SECRET",
|
|
"EXTERNAL_KEYCLOAK_URL",
|
|
"EXTERNAL_WORKOS_ENABLED",
|
|
"EXTERNAL_WORKOS_CLIENT_ID",
|
|
"EXTERNAL_WORKOS_SECRET",
|
|
"EXTERNAL_WORKOS_URL",
|
|
"SECURITY_UPDATE_PASSWORD_REQUIRE_REAUTHENTICATION",
|
|
"SECURITY_REFRESH_TOKEN_REUSE_INTERVAL",
|
|
"MAILER_OTP_EXP",
|
|
"RATE_LIMIT_VERIFY",
|
|
"RATE_LIMIT_TOKEN_REFRESH"
|
|
]
|
|
},
|
|
"UpdateGoTrueConfigBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"SITE_URL": { "type": "string" },
|
|
"OPERATOR_TOKEN": { "type": "string" },
|
|
"DISABLE_SIGNUP": { "type": "boolean" },
|
|
"RATE_LIMIT_HEADER": { "type": "string" },
|
|
"JWT_EXP": { "type": "number" },
|
|
"JWT_AUD": { "type": "string" },
|
|
"JWT_DEFAULT_GROUP_NAME": { "type": "string" },
|
|
"EXTERNAL_GITHUB_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_GITHUB_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_GITHUB_SECRET": { "type": "string" },
|
|
"EXTERNAL_BITBUCKET_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_BITBUCKET_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_BITBUCKET_SECRET": { "type": "string" },
|
|
"EXTERNAL_GOOGLE_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_GOOGLE_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_GOOGLE_SECRET": { "type": "string" },
|
|
"EXTERNAL_GITLAB_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_GITLAB_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_GITLAB_SECRET": { "type": "string" },
|
|
"EXTERNAL_GITLAB_REDIRECT_URI": { "type": "string" },
|
|
"EXTERNAL_GITLAB_URL": { "type": "string" },
|
|
"SMTP_ADMIN_EMAIL": { "type": "string" },
|
|
"SMTP_HOST": { "type": "string" },
|
|
"SMTP_PORT": { "type": "string" },
|
|
"SMTP_USER": { "type": "string" },
|
|
"SMTP_PASS": { "type": "string" },
|
|
"SMTP_MAX_FREQUENCY": { "type": "number" },
|
|
"MAILER_AUTOCONFIRM": { "type": "boolean" },
|
|
"MAILER_URLPATHS_INVITE": { "type": "string" },
|
|
"MAILER_URLPATHS_CONFIRMATION": { "type": "string" },
|
|
"MAILER_URLPATHS_RECOVERY": { "type": "string" },
|
|
"MAILER_URLPATHS_EMAIL_CHANGE": { "type": "string" },
|
|
"MAILER_SUBJECTS_INVITE": { "type": "string" },
|
|
"MAILER_SUBJECTS_CONFIRMATION": { "type": "string" },
|
|
"MAILER_SUBJECTS_RECOVERY": { "type": "string" },
|
|
"MAILER_SUBJECTS_EMAIL_CHANGE": { "type": "string" },
|
|
"MAILER_TEMPLATES_INVITE": { "type": "string" },
|
|
"MAILER_TEMPLATES_INVITE_CONTENT": { "type": "string" },
|
|
"MAILER_TEMPLATES_CONFIRMATION": { "type": "string" },
|
|
"MAILER_TEMPLATES_CONFIRMATION_CONTENT": { "type": "string" },
|
|
"MAILER_TEMPLATES_RECOVERY": { "type": "string" },
|
|
"MAILER_TEMPLATES_RECOVERY_CONTENT": { "type": "string" },
|
|
"MAILER_TEMPLATES_EMAIL_CHANGE": { "type": "string" },
|
|
"MAILER_TEMPLATES_EMAIL_CHANGE_CONTENT": { "type": "string" },
|
|
"MAILER_SUBJECTS_MAGIC_LINK": { "type": "string" },
|
|
"MAILER_TEMPLATES_MAGIC_LINK": { "type": "string" },
|
|
"MAILER_TEMPLATES_MAGIC_LINK_CONTENT": { "type": "string" },
|
|
"EXTERNAL_AZURE_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_AZURE_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_AZURE_SECRET": { "type": "string" },
|
|
"EXTERNAL_FACEBOOK_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_FACEBOOK_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_FACEBOOK_SECRET": { "type": "string" },
|
|
"URI_ALLOW_LIST": { "type": "string" },
|
|
"EXTERNAL_TWITTER_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_TWITTER_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_TWITTER_SECRET": { "type": "string" },
|
|
"EXTERNAL_APPLE_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_APPLE_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_APPLE_SECRET": { "type": "string" },
|
|
"EXTERNAL_DISCORD_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_DISCORD_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_DISCORD_SECRET": { "type": "string" },
|
|
"EXTERNAL_TWITCH_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_TWITCH_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_TWITCH_SECRET": { "type": "string" },
|
|
"SMTP_SENDER_NAME": { "type": "string" },
|
|
"EXTERNAL_EMAIL_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_PHONE_ENABLED": { "type": "boolean" },
|
|
"SMS_AUTOCONFIRM": { "type": "boolean" },
|
|
"SMS_MAX_FREQUENCY": { "type": "number" },
|
|
"SMS_OTP_EXP": { "type": "number" },
|
|
"SMS_OTP_LENGTH": { "type": "number" },
|
|
"SMS_PROVIDER": { "type": "string" },
|
|
"SMS_TWILIO_ACCOUNT_SID": { "type": "string" },
|
|
"SMS_TWILIO_AUTH_TOKEN": { "type": "string" },
|
|
"SMS_TWILIO_MESSAGE_SERVICE_SID": { "type": "string" },
|
|
"SMS_TEMPLATE": { "type": "string" },
|
|
"SECURITY_CAPTCHA_ENABLED": { "type": "boolean" },
|
|
"SECURITY_CAPTCHA_PROVIDER": { "type": "string" },
|
|
"SECURITY_CAPTCHA_SECRET": { "type": "string" },
|
|
"RATE_LIMIT_EMAIL_SENT": { "type": "number" },
|
|
"MAILER_SECURE_EMAIL_CHANGE_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_SPOTIFY_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_SPOTIFY_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_SPOTIFY_SECRET": { "type": "string" },
|
|
"EXTERNAL_SLACK_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_SLACK_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_SLACK_SECRET": { "type": "string" },
|
|
"SMS_MESSAGEBIRD_ACCESS_KEY": { "type": "string" },
|
|
"SMS_MESSAGEBIRD_ORIGINATOR": { "type": "string" },
|
|
"SMTP_PASS_ENCRYPTED": { "type": "string" },
|
|
"REFRESH_TOKEN_ROTATION_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_LINKEDIN_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_LINKEDIN_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_LINKEDIN_SECRET": { "type": "string" },
|
|
"EXTERNAL_NOTION_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_NOTION_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_NOTION_SECRET": { "type": "string" },
|
|
"SMS_VONAGE_API_KEY": { "type": "string" },
|
|
"SMS_VONAGE_API_SECRET": { "type": "string" },
|
|
"SMS_VONAGE_FROM": { "type": "string" },
|
|
"SMS_TEXTLOCAL_API_KEY": { "type": "string" },
|
|
"SMS_TEXTLOCAL_SENDER": { "type": "string" },
|
|
"EXTERNAL_ZOOM_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_ZOOM_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_ZOOM_SECRET": { "type": "string" },
|
|
"EXTERNAL_AZURE_URL": { "type": "string" },
|
|
"PASSWORD_MIN_LENGTH": { "type": "number" },
|
|
"EXTERNAL_KEYCLOAK_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_KEYCLOAK_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_KEYCLOAK_SECRET": { "type": "string" },
|
|
"EXTERNAL_KEYCLOAK_URL": { "type": "string" },
|
|
"EXTERNAL_WORKOS_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_WORKOS_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_WORKOS_SECRET": { "type": "string" },
|
|
"EXTERNAL_WORKOS_URL": { "type": "string" },
|
|
"SECURITY_UPDATE_PASSWORD_REQUIRE_REAUTHENTICATION": {
|
|
"type": "boolean"
|
|
},
|
|
"SECURITY_REFRESH_TOKEN_REUSE_INTERVAL": { "type": "number" },
|
|
"MAILER_OTP_EXP": { "type": "number" },
|
|
"RATE_LIMIT_VERIFY": { "type": "number" },
|
|
"RATE_LIMIT_TOKEN_REFRESH": { "type": "number" }
|
|
},
|
|
"required": [
|
|
"SITE_URL",
|
|
"OPERATOR_TOKEN",
|
|
"DISABLE_SIGNUP",
|
|
"RATE_LIMIT_HEADER",
|
|
"JWT_EXP",
|
|
"JWT_AUD",
|
|
"JWT_DEFAULT_GROUP_NAME",
|
|
"EXTERNAL_GITHUB_ENABLED",
|
|
"EXTERNAL_GITHUB_CLIENT_ID",
|
|
"EXTERNAL_GITHUB_SECRET",
|
|
"EXTERNAL_BITBUCKET_ENABLED",
|
|
"EXTERNAL_BITBUCKET_CLIENT_ID",
|
|
"EXTERNAL_BITBUCKET_SECRET",
|
|
"EXTERNAL_GOOGLE_ENABLED",
|
|
"EXTERNAL_GOOGLE_CLIENT_ID",
|
|
"EXTERNAL_GOOGLE_SECRET",
|
|
"EXTERNAL_GITLAB_ENABLED",
|
|
"EXTERNAL_GITLAB_CLIENT_ID",
|
|
"EXTERNAL_GITLAB_SECRET",
|
|
"EXTERNAL_GITLAB_REDIRECT_URI",
|
|
"EXTERNAL_GITLAB_URL",
|
|
"SMTP_ADMIN_EMAIL",
|
|
"SMTP_HOST",
|
|
"SMTP_PORT",
|
|
"SMTP_USER",
|
|
"SMTP_PASS",
|
|
"SMTP_MAX_FREQUENCY",
|
|
"MAILER_AUTOCONFIRM",
|
|
"MAILER_URLPATHS_INVITE",
|
|
"MAILER_URLPATHS_CONFIRMATION",
|
|
"MAILER_URLPATHS_RECOVERY",
|
|
"MAILER_URLPATHS_EMAIL_CHANGE",
|
|
"MAILER_SUBJECTS_INVITE",
|
|
"MAILER_SUBJECTS_CONFIRMATION",
|
|
"MAILER_SUBJECTS_RECOVERY",
|
|
"MAILER_SUBJECTS_EMAIL_CHANGE",
|
|
"MAILER_TEMPLATES_INVITE",
|
|
"MAILER_TEMPLATES_INVITE_CONTENT",
|
|
"MAILER_TEMPLATES_CONFIRMATION",
|
|
"MAILER_TEMPLATES_CONFIRMATION_CONTENT",
|
|
"MAILER_TEMPLATES_RECOVERY",
|
|
"MAILER_TEMPLATES_RECOVERY_CONTENT",
|
|
"MAILER_TEMPLATES_EMAIL_CHANGE",
|
|
"MAILER_TEMPLATES_EMAIL_CHANGE_CONTENT",
|
|
"MAILER_SUBJECTS_MAGIC_LINK",
|
|
"MAILER_TEMPLATES_MAGIC_LINK",
|
|
"MAILER_TEMPLATES_MAGIC_LINK_CONTENT",
|
|
"EXTERNAL_AZURE_ENABLED",
|
|
"EXTERNAL_AZURE_CLIENT_ID",
|
|
"EXTERNAL_AZURE_SECRET",
|
|
"EXTERNAL_FACEBOOK_ENABLED",
|
|
"EXTERNAL_FACEBOOK_CLIENT_ID",
|
|
"EXTERNAL_FACEBOOK_SECRET",
|
|
"URI_ALLOW_LIST",
|
|
"EXTERNAL_TWITTER_ENABLED",
|
|
"EXTERNAL_TWITTER_CLIENT_ID",
|
|
"EXTERNAL_TWITTER_SECRET",
|
|
"EXTERNAL_APPLE_ENABLED",
|
|
"EXTERNAL_APPLE_CLIENT_ID",
|
|
"EXTERNAL_APPLE_SECRET",
|
|
"EXTERNAL_DISCORD_ENABLED",
|
|
"EXTERNAL_DISCORD_CLIENT_ID",
|
|
"EXTERNAL_DISCORD_SECRET",
|
|
"EXTERNAL_TWITCH_ENABLED",
|
|
"EXTERNAL_TWITCH_CLIENT_ID",
|
|
"EXTERNAL_TWITCH_SECRET",
|
|
"SMTP_SENDER_NAME",
|
|
"EXTERNAL_EMAIL_ENABLED",
|
|
"EXTERNAL_PHONE_ENABLED",
|
|
"SMS_AUTOCONFIRM",
|
|
"SMS_MAX_FREQUENCY",
|
|
"SMS_OTP_EXP",
|
|
"SMS_OTP_LENGTH",
|
|
"SMS_PROVIDER",
|
|
"SMS_TWILIO_ACCOUNT_SID",
|
|
"SMS_TWILIO_AUTH_TOKEN",
|
|
"SMS_TWILIO_MESSAGE_SERVICE_SID",
|
|
"SMS_TEMPLATE",
|
|
"SECURITY_CAPTCHA_ENABLED",
|
|
"SECURITY_CAPTCHA_PROVIDER",
|
|
"SECURITY_CAPTCHA_SECRET",
|
|
"RATE_LIMIT_EMAIL_SENT",
|
|
"MAILER_SECURE_EMAIL_CHANGE_ENABLED",
|
|
"EXTERNAL_SPOTIFY_ENABLED",
|
|
"EXTERNAL_SPOTIFY_CLIENT_ID",
|
|
"EXTERNAL_SPOTIFY_SECRET",
|
|
"EXTERNAL_SLACK_ENABLED",
|
|
"EXTERNAL_SLACK_CLIENT_ID",
|
|
"EXTERNAL_SLACK_SECRET",
|
|
"SMS_MESSAGEBIRD_ACCESS_KEY",
|
|
"SMS_MESSAGEBIRD_ORIGINATOR",
|
|
"SMTP_PASS_ENCRYPTED",
|
|
"REFRESH_TOKEN_ROTATION_ENABLED",
|
|
"EXTERNAL_LINKEDIN_ENABLED",
|
|
"EXTERNAL_LINKEDIN_CLIENT_ID",
|
|
"EXTERNAL_LINKEDIN_SECRET",
|
|
"EXTERNAL_NOTION_ENABLED",
|
|
"EXTERNAL_NOTION_CLIENT_ID",
|
|
"EXTERNAL_NOTION_SECRET",
|
|
"SMS_VONAGE_API_KEY",
|
|
"SMS_VONAGE_API_SECRET",
|
|
"SMS_VONAGE_FROM",
|
|
"SMS_TEXTLOCAL_API_KEY",
|
|
"SMS_TEXTLOCAL_SENDER",
|
|
"EXTERNAL_ZOOM_ENABLED",
|
|
"EXTERNAL_ZOOM_CLIENT_ID",
|
|
"EXTERNAL_ZOOM_SECRET",
|
|
"EXTERNAL_AZURE_URL",
|
|
"PASSWORD_MIN_LENGTH",
|
|
"EXTERNAL_KEYCLOAK_ENABLED",
|
|
"EXTERNAL_KEYCLOAK_CLIENT_ID",
|
|
"EXTERNAL_KEYCLOAK_SECRET",
|
|
"EXTERNAL_KEYCLOAK_URL",
|
|
"EXTERNAL_WORKOS_ENABLED",
|
|
"EXTERNAL_WORKOS_CLIENT_ID",
|
|
"EXTERNAL_WORKOS_SECRET",
|
|
"EXTERNAL_WORKOS_URL",
|
|
"SECURITY_UPDATE_PASSWORD_REQUIRE_REAUTHENTICATION",
|
|
"SECURITY_REFRESH_TOKEN_REUSE_INTERVAL",
|
|
"MAILER_OTP_EXP",
|
|
"RATE_LIMIT_VERIFY",
|
|
"RATE_LIMIT_TOKEN_REFRESH"
|
|
]
|
|
},
|
|
"GoTrueConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"SITE_URL": { "type": "string" },
|
|
"OPERATOR_TOKEN": { "type": "string" },
|
|
"DISABLE_SIGNUP": { "type": "boolean" },
|
|
"RATE_LIMIT_HEADER": { "type": "string" },
|
|
"JWT_EXP": { "type": "number" },
|
|
"JWT_AUD": { "type": "string" },
|
|
"JWT_DEFAULT_GROUP_NAME": { "type": "string" },
|
|
"EXTERNAL_GITHUB_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_GITHUB_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_GITHUB_SECRET": { "type": "string" },
|
|
"EXTERNAL_BITBUCKET_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_BITBUCKET_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_BITBUCKET_SECRET": { "type": "string" },
|
|
"EXTERNAL_GOOGLE_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_GOOGLE_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_GOOGLE_SECRET": { "type": "string" },
|
|
"EXTERNAL_GITLAB_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_GITLAB_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_GITLAB_SECRET": { "type": "string" },
|
|
"EXTERNAL_GITLAB_REDIRECT_URI": { "type": "string" },
|
|
"EXTERNAL_GITLAB_URL": { "type": "string" },
|
|
"SMTP_ADMIN_EMAIL": { "type": "string" },
|
|
"SMTP_HOST": { "type": "string" },
|
|
"SMTP_PORT": { "type": "string" },
|
|
"SMTP_USER": { "type": "string" },
|
|
"SMTP_PASS": { "type": "string" },
|
|
"SMTP_MAX_FREQUENCY": { "type": "number" },
|
|
"MAILER_AUTOCONFIRM": { "type": "boolean" },
|
|
"MAILER_URLPATHS_INVITE": { "type": "string" },
|
|
"MAILER_URLPATHS_CONFIRMATION": { "type": "string" },
|
|
"MAILER_URLPATHS_RECOVERY": { "type": "string" },
|
|
"MAILER_URLPATHS_EMAIL_CHANGE": { "type": "string" },
|
|
"MAILER_SUBJECTS_INVITE": { "type": "string" },
|
|
"MAILER_SUBJECTS_CONFIRMATION": { "type": "string" },
|
|
"MAILER_SUBJECTS_RECOVERY": { "type": "string" },
|
|
"MAILER_SUBJECTS_EMAIL_CHANGE": { "type": "string" },
|
|
"MAILER_TEMPLATES_INVITE": { "type": "string" },
|
|
"MAILER_TEMPLATES_INVITE_CONTENT": { "type": "string" },
|
|
"MAILER_TEMPLATES_CONFIRMATION": { "type": "string" },
|
|
"MAILER_TEMPLATES_CONFIRMATION_CONTENT": { "type": "string" },
|
|
"MAILER_TEMPLATES_RECOVERY": { "type": "string" },
|
|
"MAILER_TEMPLATES_RECOVERY_CONTENT": { "type": "string" },
|
|
"MAILER_TEMPLATES_EMAIL_CHANGE": { "type": "string" },
|
|
"MAILER_TEMPLATES_EMAIL_CHANGE_CONTENT": { "type": "string" },
|
|
"MAILER_SUBJECTS_MAGIC_LINK": { "type": "string" },
|
|
"MAILER_TEMPLATES_MAGIC_LINK": { "type": "string" },
|
|
"MAILER_TEMPLATES_MAGIC_LINK_CONTENT": { "type": "string" },
|
|
"EXTERNAL_AZURE_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_AZURE_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_AZURE_SECRET": { "type": "string" },
|
|
"EXTERNAL_FACEBOOK_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_FACEBOOK_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_FACEBOOK_SECRET": { "type": "string" },
|
|
"URI_ALLOW_LIST": { "type": "string" },
|
|
"EXTERNAL_TWITTER_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_TWITTER_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_TWITTER_SECRET": { "type": "string" },
|
|
"EXTERNAL_APPLE_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_APPLE_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_APPLE_SECRET": { "type": "string" },
|
|
"EXTERNAL_DISCORD_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_DISCORD_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_DISCORD_SECRET": { "type": "string" },
|
|
"EXTERNAL_TWITCH_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_TWITCH_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_TWITCH_SECRET": { "type": "string" },
|
|
"SMTP_SENDER_NAME": { "type": "string" },
|
|
"EXTERNAL_EMAIL_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_PHONE_ENABLED": { "type": "boolean" },
|
|
"SMS_AUTOCONFIRM": { "type": "boolean" },
|
|
"SMS_MAX_FREQUENCY": { "type": "number" },
|
|
"SMS_OTP_EXP": { "type": "number" },
|
|
"SMS_OTP_LENGTH": { "type": "number" },
|
|
"SMS_PROVIDER": { "type": "string" },
|
|
"SMS_TWILIO_ACCOUNT_SID": { "type": "string" },
|
|
"SMS_TWILIO_AUTH_TOKEN": { "type": "string" },
|
|
"SMS_TWILIO_MESSAGE_SERVICE_SID": { "type": "string" },
|
|
"SMS_TEMPLATE": { "type": "string" },
|
|
"SECURITY_CAPTCHA_ENABLED": { "type": "boolean" },
|
|
"SECURITY_CAPTCHA_PROVIDER": { "type": "string" },
|
|
"SECURITY_CAPTCHA_SECRET": { "type": "string" },
|
|
"RATE_LIMIT_EMAIL_SENT": { "type": "number" },
|
|
"MAILER_SECURE_EMAIL_CHANGE_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_SPOTIFY_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_SPOTIFY_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_SPOTIFY_SECRET": { "type": "string" },
|
|
"EXTERNAL_SLACK_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_SLACK_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_SLACK_SECRET": { "type": "string" },
|
|
"SMS_MESSAGEBIRD_ACCESS_KEY": { "type": "string" },
|
|
"SMS_MESSAGEBIRD_ORIGINATOR": { "type": "string" },
|
|
"SMTP_PASS_ENCRYPTED": { "type": "string" },
|
|
"REFRESH_TOKEN_ROTATION_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_LINKEDIN_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_LINKEDIN_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_LINKEDIN_SECRET": { "type": "string" },
|
|
"EXTERNAL_NOTION_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_NOTION_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_NOTION_SECRET": { "type": "string" },
|
|
"SMS_VONAGE_API_KEY": { "type": "string" },
|
|
"SMS_VONAGE_API_SECRET": { "type": "string" },
|
|
"SMS_VONAGE_FROM": { "type": "string" },
|
|
"SMS_TEXTLOCAL_API_KEY": { "type": "string" },
|
|
"SMS_TEXTLOCAL_SENDER": { "type": "string" },
|
|
"EXTERNAL_ZOOM_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_ZOOM_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_ZOOM_SECRET": { "type": "string" },
|
|
"EXTERNAL_AZURE_URL": { "type": "string" },
|
|
"PASSWORD_MIN_LENGTH": { "type": "number" },
|
|
"EXTERNAL_KEYCLOAK_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_KEYCLOAK_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_KEYCLOAK_SECRET": { "type": "string" },
|
|
"EXTERNAL_KEYCLOAK_URL": { "type": "string" },
|
|
"EXTERNAL_WORKOS_ENABLED": { "type": "boolean" },
|
|
"EXTERNAL_WORKOS_CLIENT_ID": { "type": "string" },
|
|
"EXTERNAL_WORKOS_SECRET": { "type": "string" },
|
|
"EXTERNAL_WORKOS_URL": { "type": "string" },
|
|
"SECURITY_UPDATE_PASSWORD_REQUIRE_REAUTHENTICATION": {
|
|
"type": "boolean"
|
|
},
|
|
"SECURITY_REFRESH_TOKEN_REUSE_INTERVAL": { "type": "number" },
|
|
"MAILER_OTP_EXP": { "type": "number" },
|
|
"RATE_LIMIT_VERIFY": { "type": "number" },
|
|
"RATE_LIMIT_TOKEN_REFRESH": { "type": "number" },
|
|
"id": { "type": "number" },
|
|
"project_id": { "type": "number" },
|
|
"updated_at": { "type": "string" }
|
|
},
|
|
"required": [
|
|
"SITE_URL",
|
|
"OPERATOR_TOKEN",
|
|
"DISABLE_SIGNUP",
|
|
"RATE_LIMIT_HEADER",
|
|
"JWT_EXP",
|
|
"JWT_AUD",
|
|
"JWT_DEFAULT_GROUP_NAME",
|
|
"EXTERNAL_GITHUB_ENABLED",
|
|
"EXTERNAL_GITHUB_CLIENT_ID",
|
|
"EXTERNAL_GITHUB_SECRET",
|
|
"EXTERNAL_BITBUCKET_ENABLED",
|
|
"EXTERNAL_BITBUCKET_CLIENT_ID",
|
|
"EXTERNAL_BITBUCKET_SECRET",
|
|
"EXTERNAL_GOOGLE_ENABLED",
|
|
"EXTERNAL_GOOGLE_CLIENT_ID",
|
|
"EXTERNAL_GOOGLE_SECRET",
|
|
"EXTERNAL_GITLAB_ENABLED",
|
|
"EXTERNAL_GITLAB_CLIENT_ID",
|
|
"EXTERNAL_GITLAB_SECRET",
|
|
"EXTERNAL_GITLAB_REDIRECT_URI",
|
|
"EXTERNAL_GITLAB_URL",
|
|
"SMTP_ADMIN_EMAIL",
|
|
"SMTP_HOST",
|
|
"SMTP_PORT",
|
|
"SMTP_USER",
|
|
"SMTP_PASS",
|
|
"SMTP_MAX_FREQUENCY",
|
|
"MAILER_AUTOCONFIRM",
|
|
"MAILER_URLPATHS_INVITE",
|
|
"MAILER_URLPATHS_CONFIRMATION",
|
|
"MAILER_URLPATHS_RECOVERY",
|
|
"MAILER_URLPATHS_EMAIL_CHANGE",
|
|
"MAILER_SUBJECTS_INVITE",
|
|
"MAILER_SUBJECTS_CONFIRMATION",
|
|
"MAILER_SUBJECTS_RECOVERY",
|
|
"MAILER_SUBJECTS_EMAIL_CHANGE",
|
|
"MAILER_TEMPLATES_INVITE",
|
|
"MAILER_TEMPLATES_INVITE_CONTENT",
|
|
"MAILER_TEMPLATES_CONFIRMATION",
|
|
"MAILER_TEMPLATES_CONFIRMATION_CONTENT",
|
|
"MAILER_TEMPLATES_RECOVERY",
|
|
"MAILER_TEMPLATES_RECOVERY_CONTENT",
|
|
"MAILER_TEMPLATES_EMAIL_CHANGE",
|
|
"MAILER_TEMPLATES_EMAIL_CHANGE_CONTENT",
|
|
"MAILER_SUBJECTS_MAGIC_LINK",
|
|
"MAILER_TEMPLATES_MAGIC_LINK",
|
|
"MAILER_TEMPLATES_MAGIC_LINK_CONTENT",
|
|
"EXTERNAL_AZURE_ENABLED",
|
|
"EXTERNAL_AZURE_CLIENT_ID",
|
|
"EXTERNAL_AZURE_SECRET",
|
|
"EXTERNAL_FACEBOOK_ENABLED",
|
|
"EXTERNAL_FACEBOOK_CLIENT_ID",
|
|
"EXTERNAL_FACEBOOK_SECRET",
|
|
"URI_ALLOW_LIST",
|
|
"EXTERNAL_TWITTER_ENABLED",
|
|
"EXTERNAL_TWITTER_CLIENT_ID",
|
|
"EXTERNAL_TWITTER_SECRET",
|
|
"EXTERNAL_APPLE_ENABLED",
|
|
"EXTERNAL_APPLE_CLIENT_ID",
|
|
"EXTERNAL_APPLE_SECRET",
|
|
"EXTERNAL_DISCORD_ENABLED",
|
|
"EXTERNAL_DISCORD_CLIENT_ID",
|
|
"EXTERNAL_DISCORD_SECRET",
|
|
"EXTERNAL_TWITCH_ENABLED",
|
|
"EXTERNAL_TWITCH_CLIENT_ID",
|
|
"EXTERNAL_TWITCH_SECRET",
|
|
"SMTP_SENDER_NAME",
|
|
"EXTERNAL_EMAIL_ENABLED",
|
|
"EXTERNAL_PHONE_ENABLED",
|
|
"SMS_AUTOCONFIRM",
|
|
"SMS_MAX_FREQUENCY",
|
|
"SMS_OTP_EXP",
|
|
"SMS_OTP_LENGTH",
|
|
"SMS_PROVIDER",
|
|
"SMS_TWILIO_ACCOUNT_SID",
|
|
"SMS_TWILIO_AUTH_TOKEN",
|
|
"SMS_TWILIO_MESSAGE_SERVICE_SID",
|
|
"SMS_TEMPLATE",
|
|
"SECURITY_CAPTCHA_ENABLED",
|
|
"SECURITY_CAPTCHA_PROVIDER",
|
|
"SECURITY_CAPTCHA_SECRET",
|
|
"RATE_LIMIT_EMAIL_SENT",
|
|
"MAILER_SECURE_EMAIL_CHANGE_ENABLED",
|
|
"EXTERNAL_SPOTIFY_ENABLED",
|
|
"EXTERNAL_SPOTIFY_CLIENT_ID",
|
|
"EXTERNAL_SPOTIFY_SECRET",
|
|
"EXTERNAL_SLACK_ENABLED",
|
|
"EXTERNAL_SLACK_CLIENT_ID",
|
|
"EXTERNAL_SLACK_SECRET",
|
|
"SMS_MESSAGEBIRD_ACCESS_KEY",
|
|
"SMS_MESSAGEBIRD_ORIGINATOR",
|
|
"SMTP_PASS_ENCRYPTED",
|
|
"REFRESH_TOKEN_ROTATION_ENABLED",
|
|
"EXTERNAL_LINKEDIN_ENABLED",
|
|
"EXTERNAL_LINKEDIN_CLIENT_ID",
|
|
"EXTERNAL_LINKEDIN_SECRET",
|
|
"EXTERNAL_NOTION_ENABLED",
|
|
"EXTERNAL_NOTION_CLIENT_ID",
|
|
"EXTERNAL_NOTION_SECRET",
|
|
"SMS_VONAGE_API_KEY",
|
|
"SMS_VONAGE_API_SECRET",
|
|
"SMS_VONAGE_FROM",
|
|
"SMS_TEXTLOCAL_API_KEY",
|
|
"SMS_TEXTLOCAL_SENDER",
|
|
"EXTERNAL_ZOOM_ENABLED",
|
|
"EXTERNAL_ZOOM_CLIENT_ID",
|
|
"EXTERNAL_ZOOM_SECRET",
|
|
"EXTERNAL_AZURE_URL",
|
|
"PASSWORD_MIN_LENGTH",
|
|
"EXTERNAL_KEYCLOAK_ENABLED",
|
|
"EXTERNAL_KEYCLOAK_CLIENT_ID",
|
|
"EXTERNAL_KEYCLOAK_SECRET",
|
|
"EXTERNAL_KEYCLOAK_URL",
|
|
"EXTERNAL_WORKOS_ENABLED",
|
|
"EXTERNAL_WORKOS_CLIENT_ID",
|
|
"EXTERNAL_WORKOS_SECRET",
|
|
"EXTERNAL_WORKOS_URL",
|
|
"SECURITY_UPDATE_PASSWORD_REQUIRE_REAUTHENTICATION",
|
|
"SECURITY_REFRESH_TOKEN_REUSE_INTERVAL",
|
|
"MAILER_OTP_EXP",
|
|
"RATE_LIMIT_VERIFY",
|
|
"RATE_LIMIT_TOKEN_REFRESH",
|
|
"id",
|
|
"project_id",
|
|
"updated_at"
|
|
]
|
|
},
|
|
"UserBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"aud": { "type": "string" },
|
|
"banned_until": { "type": "string" },
|
|
"confirmation_sent_at": { "type": "string" },
|
|
"confirmation_token": { "type": "string" },
|
|
"confirmed_at": { "type": "string" },
|
|
"created_at": { "type": "string" },
|
|
"email": { "type": "string" },
|
|
"email_change": { "type": "string" },
|
|
"email_change_confirm_status": { "type": "number" },
|
|
"email_change_sent_at": { "type": "string" },
|
|
"email_change_token_current": { "type": "string" },
|
|
"email_change_token_new": { "type": "string" },
|
|
"email_confirmed_at": { "type": "string" },
|
|
"encrypted_password": { "type": "string" },
|
|
"instance_id": { "type": "string" },
|
|
"invited_at": { "type": "string" },
|
|
"is_super_admin": { "type": "boolean" },
|
|
"last_sign_in_at": { "type": "string" },
|
|
"phone": { "type": "string" },
|
|
"phone_change": { "type": "string" },
|
|
"phone_change_sent_at": { "type": "string" },
|
|
"phone_change_token": { "type": "string" },
|
|
"phone_confirmed_at": { "type": "string" },
|
|
"raw_app_meta_data": { "type": "object" },
|
|
"raw_user_meta_data": { "type": "object" },
|
|
"reauthentication_sent_at": { "type": "string" },
|
|
"reauthentication_token": { "type": "string" },
|
|
"recovery_sent_at": { "type": "string" },
|
|
"recovery_token": { "type": "string" },
|
|
"role": { "type": "string" },
|
|
"updated_at": { "type": "string" }
|
|
},
|
|
"required": [
|
|
"id",
|
|
"aud",
|
|
"banned_until",
|
|
"confirmation_sent_at",
|
|
"confirmation_token",
|
|
"confirmed_at",
|
|
"created_at",
|
|
"email",
|
|
"email_change",
|
|
"email_change_confirm_status",
|
|
"email_change_sent_at",
|
|
"email_change_token_current",
|
|
"email_change_token_new",
|
|
"email_confirmed_at",
|
|
"encrypted_password",
|
|
"instance_id",
|
|
"invited_at",
|
|
"is_super_admin",
|
|
"last_sign_in_at",
|
|
"phone",
|
|
"phone_change",
|
|
"phone_change_sent_at",
|
|
"phone_change_token",
|
|
"phone_confirmed_at",
|
|
"raw_app_meta_data",
|
|
"raw_user_meta_data",
|
|
"reauthentication_sent_at",
|
|
"reauthentication_token",
|
|
"recovery_sent_at",
|
|
"recovery_token",
|
|
"role",
|
|
"updated_at"
|
|
]
|
|
},
|
|
"Backup": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "number" },
|
|
"data": { "type": "object" },
|
|
"project_id": { "type": "number" },
|
|
"status": { "type": "object" },
|
|
"s3_path": { "type": "string" },
|
|
"s3_bucket": { "type": "string" },
|
|
"inserted_at": { "type": "string" }
|
|
},
|
|
"required": [
|
|
"id",
|
|
"data",
|
|
"project_id",
|
|
"status",
|
|
"s3_path",
|
|
"s3_bucket",
|
|
"inserted_at"
|
|
]
|
|
},
|
|
"BackupsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"tierId": { "type": "string" },
|
|
"tierKey": { "type": "string" },
|
|
"region": { "type": "string" },
|
|
"walg_enabled": { "type": "boolean" },
|
|
"backups": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/Backup" }
|
|
},
|
|
"physicalBackupData": {
|
|
"type": "object",
|
|
"properties": {
|
|
"earliestPhysicalBackupDateUnix": {
|
|
"required": true,
|
|
"type": "number"
|
|
},
|
|
"latestPhysicalBackupDateUnix": {
|
|
"required": true,
|
|
"type": "number"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"required": [
|
|
"tierId",
|
|
"tierKey",
|
|
"region",
|
|
"walg_enabled",
|
|
"backups",
|
|
"physicalBackupData"
|
|
]
|
|
},
|
|
"DownloadBackupBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "number" },
|
|
"data": { "type": "object" },
|
|
"inserted_at": { "type": "string" },
|
|
"project_id": { "type": "number" },
|
|
"s3_bucket": { "type": "string" },
|
|
"s3_path": { "type": "string" },
|
|
"status": { "type": "string" }
|
|
},
|
|
"required": [
|
|
"id",
|
|
"data",
|
|
"inserted_at",
|
|
"project_id",
|
|
"s3_bucket",
|
|
"s3_path",
|
|
"status"
|
|
]
|
|
},
|
|
"DownloadBackupResponse": {
|
|
"type": "object",
|
|
"properties": { "fileUrl": { "type": "string" } },
|
|
"required": ["fileUrl"]
|
|
},
|
|
"RestoreBackupBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "number" },
|
|
"data": { "type": "object" },
|
|
"inserted_at": { "type": "string" },
|
|
"project_id": { "type": "number" },
|
|
"s3_bucket": { "type": "string" },
|
|
"s3_path": { "type": "string" },
|
|
"status": { "type": "string" }
|
|
},
|
|
"required": [
|
|
"id",
|
|
"data",
|
|
"inserted_at",
|
|
"project_id",
|
|
"s3_bucket",
|
|
"s3_path",
|
|
"status"
|
|
]
|
|
},
|
|
"PointInTimeRestoreBody": {
|
|
"type": "object",
|
|
"properties": { "recovery_time_target_unix": { "type": "number" } },
|
|
"required": ["recovery_time_target_unix"]
|
|
},
|
|
"Organization": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "number" },
|
|
"slug": { "type": "string" },
|
|
"name": { "type": "string" },
|
|
"billing_email": { "type": "string" },
|
|
"stripe_customer_id": { "type": "string" }
|
|
},
|
|
"required": [
|
|
"id",
|
|
"slug",
|
|
"name",
|
|
"billing_email",
|
|
"stripe_customer_id"
|
|
]
|
|
},
|
|
"CreateOrganizationBody": {
|
|
"type": "object",
|
|
"properties": { "name": { "type": "string" } },
|
|
"required": ["name"]
|
|
},
|
|
"UpdateOrganizationBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"billing_email": { "type": "string" }
|
|
},
|
|
"required": ["name", "billing_email"]
|
|
},
|
|
"RemovedOrganization": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "number" },
|
|
"slug": { "type": "string" },
|
|
"name": { "type": "string" },
|
|
"billing_email": { "type": "string" },
|
|
"stripe_customer_id": { "type": "string" },
|
|
"status": { "type": "string", "enum": ["ACTIVE", "REMOVED"] }
|
|
},
|
|
"required": [
|
|
"id",
|
|
"slug",
|
|
"name",
|
|
"billing_email",
|
|
"stripe_customer_id",
|
|
"status"
|
|
]
|
|
},
|
|
"Member": {
|
|
"type": "object",
|
|
"properties": {
|
|
"gotrue_id": { "type": "string" },
|
|
"primary_email": { "type": "string" },
|
|
"role_ids": { "type": "array", "items": { "type": "number" } },
|
|
"username": { "type": "string" }
|
|
},
|
|
"required": ["gotrue_id", "primary_email", "role_ids", "username"]
|
|
},
|
|
"AddMemberBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"gotrue_id": { "type": "string" },
|
|
"org_id": { "type": "number" },
|
|
"user_id": { "type": "number" }
|
|
},
|
|
"required": ["gotrue_id", "user_id"]
|
|
},
|
|
"RemoveMemberBody": {
|
|
"type": "object",
|
|
"properties": { "member_id": { "type": "number" } },
|
|
"required": ["member_id"]
|
|
},
|
|
"CreateTaxIdBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"type": { "type": "object" },
|
|
"value": { "type": "string" }
|
|
},
|
|
"required": ["type", "value"]
|
|
},
|
|
"DeleteTaxIdBody": {
|
|
"type": "object",
|
|
"properties": { "id": { "type": "string" } },
|
|
"required": ["id"]
|
|
},
|
|
"TransferOrganizationBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"member_id": { "type": "number" },
|
|
"org_id": { "type": "number" }
|
|
},
|
|
"required": ["member_id", "org_id"]
|
|
},
|
|
"InviteUserBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"invited_email": { "type": "string" },
|
|
"owner_id": { "type": "number" }
|
|
},
|
|
"required": ["invited_email", "owner_id"]
|
|
},
|
|
"DetachPaymentMethodBody": {
|
|
"type": "object",
|
|
"properties": { "card_id": { "type": "string" } },
|
|
"required": ["card_id"]
|
|
},
|
|
"CreateColumnBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"tableId": { "type": "number" },
|
|
"name": { "type": "string" },
|
|
"type": { "type": "string" },
|
|
"check": { "type": "string" },
|
|
"comment": { "type": "string" },
|
|
"defaultValue": { "type": "object" },
|
|
"defaultValueFormat": {
|
|
"type": "string",
|
|
"enum": ["expression", "literal"]
|
|
},
|
|
"identityGeneration": {
|
|
"type": "string",
|
|
"enum": ["BY DEFAULT", "ALWAYS"]
|
|
},
|
|
"isIdentity": { "type": "boolean" },
|
|
"isNullable": { "type": "boolean" },
|
|
"isPrimaryKey": { "type": "boolean" },
|
|
"isUnique": { "type": "boolean" }
|
|
},
|
|
"required": ["tableId", "name", "type"]
|
|
},
|
|
"UpdateColumnBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"dropDefault": { "type": "boolean" },
|
|
"id": { "type": "number", "pattern": {} },
|
|
"name": { "type": "string" },
|
|
"comment": { "type": "string" },
|
|
"type": { "type": "string" },
|
|
"defaultValue": { "type": "object" },
|
|
"defaultValueFormat": {
|
|
"type": "string",
|
|
"enum": ["expression", "literal"]
|
|
},
|
|
"identityGeneration": {
|
|
"type": "string",
|
|
"enum": ["BY DEFAULT", "ALWAYS"]
|
|
},
|
|
"isIdentity": { "type": "boolean" },
|
|
"isNullable": { "type": "boolean" },
|
|
"isUnique": { "type": "boolean" }
|
|
}
|
|
},
|
|
"CreateExtensionBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"cascade": { "type": "boolean" },
|
|
"name": { "type": "string" },
|
|
"schema": { "type": "string" },
|
|
"version": { "type": "string" }
|
|
},
|
|
"required": ["cascade", "name", "schema", "version"]
|
|
},
|
|
"CreateFunctionBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"args": { "type": "array", "items": { "type": "string" } },
|
|
"behavior": {
|
|
"type": "string",
|
|
"enum": ["VOLATILE", "STABLE", "IMMUTABLE"]
|
|
},
|
|
"config_params": { "type": "object" },
|
|
"definition": { "type": "string" },
|
|
"language": { "type": "string" },
|
|
"name": { "type": "string" },
|
|
"return_type": { "type": "string" },
|
|
"schema": { "type": "string" },
|
|
"security_definer": { "type": "boolean" }
|
|
},
|
|
"required": [
|
|
"args",
|
|
"behavior",
|
|
"definition",
|
|
"language",
|
|
"name",
|
|
"return_type",
|
|
"schema",
|
|
"security_definer"
|
|
]
|
|
},
|
|
"UpdateFunctionBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "number" },
|
|
"args": { "type": "array", "items": { "type": "string" } },
|
|
"behavior": {
|
|
"type": "string",
|
|
"enum": ["VOLATILE", "STABLE", "IMMUTABLE"]
|
|
},
|
|
"config_params": { "type": "object" },
|
|
"definition": { "type": "string" },
|
|
"language": { "type": "string" },
|
|
"name": { "type": "string" },
|
|
"return_type": { "type": "string" },
|
|
"schema": { "type": "string" },
|
|
"security_definer": { "type": "boolean" }
|
|
}
|
|
},
|
|
"CreatePolicyBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"table": { "type": "string" },
|
|
"schema": { "type": "string" },
|
|
"definition": { "type": "string" },
|
|
"check": { "type": "string" },
|
|
"action": { "type": "string", "enum": ["PERMISSIVE", "RESTRICTIVE"] },
|
|
"command": {
|
|
"type": "string",
|
|
"enum": ["SELECT", "INSERT", "UPDATE", "DELETE", "ALL"]
|
|
},
|
|
"roles": { "type": "array", "items": { "type": "string" } }
|
|
},
|
|
"required": ["name", "table"]
|
|
},
|
|
"UpdatePolicyBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "number" },
|
|
"name": { "type": "string" },
|
|
"definition": { "type": "string" },
|
|
"check": { "type": "string" },
|
|
"roles": { "type": "array", "items": { "type": "string" } }
|
|
}
|
|
},
|
|
"CreatePublicationBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"owner": { "type": "string" },
|
|
"tables": { "type": "array", "items": { "type": "string" } },
|
|
"publish_insert": { "type": "boolean" },
|
|
"publish_update": { "type": "boolean" },
|
|
"publish_delete": { "type": "boolean" },
|
|
"publish_truncate": { "type": "boolean" }
|
|
},
|
|
"required": [
|
|
"name",
|
|
"owner",
|
|
"tables",
|
|
"publish_insert",
|
|
"publish_update",
|
|
"publish_delete",
|
|
"publish_truncate"
|
|
]
|
|
},
|
|
"UpdatePublicationBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "number" },
|
|
"name": { "type": "string" },
|
|
"tables": { "type": "array", "items": { "type": "string" } },
|
|
"publish_insert": { "type": "boolean" },
|
|
"publish_update": { "type": "boolean" },
|
|
"publish_delete": { "type": "boolean" },
|
|
"publish_truncate": { "type": "boolean" }
|
|
}
|
|
},
|
|
"RunQueryBody": {
|
|
"type": "object",
|
|
"properties": { "query": { "type": "string" } },
|
|
"required": ["query"]
|
|
},
|
|
"FormatQueryBody": {
|
|
"type": "object",
|
|
"properties": { "query": { "type": "string" } },
|
|
"required": ["query"]
|
|
},
|
|
"ValidateQueryBody": {
|
|
"type": "object",
|
|
"properties": { "query": { "type": "string" } },
|
|
"required": ["query"]
|
|
},
|
|
"SearchTableBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"schema": { "type": "string" }
|
|
},
|
|
"required": ["name", "schema"]
|
|
},
|
|
"SearchColumnBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"schema": { "type": "string" }
|
|
},
|
|
"required": ["name", "schema"]
|
|
},
|
|
"CreateSchemaBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"owner": { "type": "string" }
|
|
},
|
|
"required": ["name", "owner"]
|
|
},
|
|
"UpdateSchemaBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"owner": { "type": "string" }
|
|
}
|
|
},
|
|
"CreateTableBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": { "type": "string" },
|
|
"schema": { "type": "string" },
|
|
"comment": { "type": "string" }
|
|
},
|
|
"required": ["name"]
|
|
},
|
|
"UpdateTableBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "number" },
|
|
"rls_enabled": { "type": "boolean" },
|
|
"rls_forced": { "type": "boolean" },
|
|
"replica_identity": {
|
|
"type": "string",
|
|
"enum": ["DEFAULT", "INDEX", "FULL", "NOTHING"]
|
|
},
|
|
"replica_identity_index": { "type": "string" },
|
|
"name": { "type": "string" },
|
|
"schema": { "type": "string" },
|
|
"comment": { "type": "string" }
|
|
}
|
|
},
|
|
"CreateTriggerBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"activation": { "type": "string", "enum": ["AFTER", "BEFORE"] },
|
|
"enabled_mode": {
|
|
"type": "string",
|
|
"enum": ["ORIGIN", "REPLICA", "ALWAYS", "DISABLED"]
|
|
},
|
|
"events": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string",
|
|
"enum": ["INSERT", "UPDATE", "DELETE"]
|
|
}
|
|
},
|
|
"function_args": { "type": "array", "items": { "type": "string" } },
|
|
"function_name": { "type": "string" },
|
|
"function_schema": { "type": "string" },
|
|
"name": { "type": "string" },
|
|
"orientation": { "type": "string", "enum": ["ROW", "STATEMENT"] },
|
|
"schema": { "type": "string" },
|
|
"table": { "type": "string" },
|
|
"table_id": { "type": "number" }
|
|
},
|
|
"required": [
|
|
"activation",
|
|
"enabled_mode",
|
|
"events",
|
|
"function_args",
|
|
"function_name",
|
|
"function_schema",
|
|
"name",
|
|
"orientation",
|
|
"schema",
|
|
"table"
|
|
]
|
|
},
|
|
"UpdateTriggerBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "number" },
|
|
"activation": { "type": "string", "enum": ["AFTER", "BEFORE"] },
|
|
"enabled_mode": {
|
|
"type": "string",
|
|
"enum": ["ORIGIN", "REPLICA", "ALWAYS", "DISABLED"]
|
|
},
|
|
"events": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string",
|
|
"enum": ["INSERT", "UPDATE", "DELETE"]
|
|
}
|
|
},
|
|
"function_args": { "type": "array", "items": { "type": "string" } },
|
|
"function_name": { "type": "string" },
|
|
"function_schema": { "type": "string" },
|
|
"name": { "type": "string" },
|
|
"orientation": { "type": "string", "enum": ["ROW", "STATEMENT"] },
|
|
"schema": { "type": "string" },
|
|
"table": { "type": "string" },
|
|
"table_id": { "type": "number" }
|
|
}
|
|
},
|
|
"AccessToken": {
|
|
"type": "object",
|
|
"properties": {
|
|
"created_at": { "type": "string" },
|
|
"id": { "type": "number" },
|
|
"token_alias": { "type": "string" },
|
|
"name": { "type": "string" }
|
|
},
|
|
"required": ["created_at", "id", "token_alias", "name"]
|
|
},
|
|
"CreateAccessTokenBody": {
|
|
"type": "object",
|
|
"properties": { "name": { "type": "string" } },
|
|
"required": ["name"]
|
|
},
|
|
"CreateAccessTokenResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"created_at": { "type": "string" },
|
|
"id": { "type": "number" },
|
|
"token_alias": { "type": "string" },
|
|
"name": { "type": "string" },
|
|
"token": { "type": "string" }
|
|
},
|
|
"required": ["created_at", "id", "token_alias", "name", "token"]
|
|
},
|
|
"SearchProfileBody": {
|
|
"type": "object",
|
|
"properties": { "keywords": { "type": "string" } },
|
|
"required": ["keywords"]
|
|
},
|
|
"Profile": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first_name": { "type": "string" },
|
|
"gotrue_id": { "type": "string" },
|
|
"id": { "type": "number" },
|
|
"last_name": { "type": "string" },
|
|
"username": { "type": "string" }
|
|
},
|
|
"required": ["first_name", "gotrue_id", "id", "last_name", "username"]
|
|
},
|
|
"SubscriptionStatisticsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"total_paid_projects": { "type": "number" },
|
|
"total_free_projects": { "type": "number" },
|
|
"total_active_free_projects": { "type": "number" },
|
|
"total_paused_free_projects": { "type": "number" },
|
|
"total_pro_projects": { "type": "number" },
|
|
"total_payg_projects": { "type": "number" },
|
|
"total_enterprise_projects": { "type": "number" }
|
|
},
|
|
"required": [
|
|
"total_paid_projects",
|
|
"total_free_projects",
|
|
"total_active_free_projects",
|
|
"total_paused_free_projects",
|
|
"total_pro_projects",
|
|
"total_payg_projects",
|
|
"total_enterprise_projects"
|
|
]
|
|
},
|
|
"PasswordCheckBody": {
|
|
"type": "object",
|
|
"properties": { "password": { "type": "string" } },
|
|
"required": ["password"]
|
|
},
|
|
"PasswordCheckResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"result": {
|
|
"type": "object",
|
|
"properties": {
|
|
"feedback": {
|
|
"type": "object",
|
|
"properties": {
|
|
"warning": { "required": true, "type": "string" },
|
|
"suggestions": {
|
|
"required": true,
|
|
"type": "array",
|
|
"items": { "type": "string" }
|
|
}
|
|
}
|
|
},
|
|
"score": { "required": true, "type": "number" }
|
|
}
|
|
}
|
|
},
|
|
"required": ["result"]
|
|
},
|
|
"Permission": {
|
|
"type": "object",
|
|
"properties": {
|
|
"actions": {
|
|
"type": "array",
|
|
"items": {
|
|
"type": "string",
|
|
"enum": [
|
|
"analytics:Read",
|
|
"auth:Execute",
|
|
"billing:Read",
|
|
"billing:Write",
|
|
"functions:Read",
|
|
"functions:Write",
|
|
"infra:Execute",
|
|
"sql:Read:Select",
|
|
"sql:Write:Delete",
|
|
"sql:Write:Insert",
|
|
"sql:Write:Update",
|
|
"storage:Admin:Read",
|
|
"storage:Admin:Write",
|
|
"tenant:Sql:Admin:Read",
|
|
"tenant:Sql:Admin:Write",
|
|
"tenant:Sql:CreateTable",
|
|
"tenant:Sql:Write:Delete",
|
|
"tenant:Sql:Write:Insert",
|
|
"tenant:Sql:Query",
|
|
"tenant:Sql:Read:Select",
|
|
"tenant:Sql:Write:Update"
|
|
]
|
|
}
|
|
},
|
|
"condition": { "type": "object", "nullable": true },
|
|
"organization_id": { "type": "number" },
|
|
"resources": { "type": "array", "items": { "type": "string" } }
|
|
},
|
|
"required": ["actions", "condition", "organization_id", "resources"]
|
|
},
|
|
"ProfileResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "number" },
|
|
"auth0_id": { "type": "string" },
|
|
"primary_email": { "type": "string" },
|
|
"username": { "type": "string" },
|
|
"first_name": { "type": "string" },
|
|
"last_name": { "type": "string" },
|
|
"mobile": { "type": "string" },
|
|
"is_alpha_user": { "type": "boolean" },
|
|
"gotrue_id": { "type": "string" },
|
|
"free_project_limit": { "type": "number" }
|
|
},
|
|
"required": [
|
|
"id",
|
|
"auth0_id",
|
|
"primary_email",
|
|
"username",
|
|
"first_name",
|
|
"last_name",
|
|
"mobile",
|
|
"is_alpha_user",
|
|
"gotrue_id",
|
|
"free_project_limit"
|
|
]
|
|
},
|
|
"UpdateProfileBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"first_name": { "type": "string" },
|
|
"last_name": { "type": "string" }
|
|
},
|
|
"required": ["first_name", "last_name"]
|
|
},
|
|
"CreateProjectBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"db_pass": { "type": "string" },
|
|
"name": { "type": "string" },
|
|
"organization_id": { "type": "string" },
|
|
"plan": { "type": "string", "enum": ["free", "pro"] },
|
|
"region": {
|
|
"type": "string",
|
|
"enum": [
|
|
"us-east-1",
|
|
"us-west-1",
|
|
"ap-southeast-1",
|
|
"ap-northeast-1",
|
|
"ap-northeast-2",
|
|
"ap-southeast-2",
|
|
"eu-west-1",
|
|
"eu-west-2",
|
|
"eu-central-1",
|
|
"ca-central-1",
|
|
"ap-south-1",
|
|
"sa-east-1"
|
|
]
|
|
}
|
|
},
|
|
"required": ["db_pass", "name", "organization_id", "plan", "region"]
|
|
},
|
|
"UpdatePasswordBody": {
|
|
"type": "object",
|
|
"properties": { "password": { "type": "string" } },
|
|
"required": ["password"]
|
|
},
|
|
"PoolingConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"db_dns_name": { "type": "string" },
|
|
"db_host": { "type": "string" },
|
|
"db_name": { "type": "string" },
|
|
"db_port": { "type": "number" },
|
|
"db_ssl": { "type": "boolean" },
|
|
"db_user": { "type": "string" },
|
|
"default_pool_size": { "type": "number" },
|
|
"ignore_startup_parameters": { "type": "string" },
|
|
"inserted_at": { "type": "string" },
|
|
"pgbouncer_enabled": { "type": "boolean" },
|
|
"pgbouncer_status": { "type": "string" },
|
|
"pool_mode": { "type": "string" }
|
|
},
|
|
"required": [
|
|
"db_dns_name",
|
|
"db_host",
|
|
"db_name",
|
|
"db_port",
|
|
"db_ssl",
|
|
"db_user",
|
|
"default_pool_size",
|
|
"ignore_startup_parameters",
|
|
"inserted_at",
|
|
"pgbouncer_enabled",
|
|
"pgbouncer_status",
|
|
"pool_mode"
|
|
]
|
|
},
|
|
"UpdatePoolingConfigBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"default_pool_size": { "type": "number" },
|
|
"ignore_startup_parameters": { "type": "string" },
|
|
"pgbouncer_enabled": { "type": "boolean" },
|
|
"pool_mode": {
|
|
"type": "string",
|
|
"enum": ["transaction", "session", "statement"]
|
|
}
|
|
},
|
|
"required": [
|
|
"default_pool_size",
|
|
"ignore_startup_parameters",
|
|
"pgbouncer_enabled",
|
|
"pool_mode"
|
|
]
|
|
},
|
|
"UpdatePoolingConfigResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"default_pool_size": { "type": "number" },
|
|
"ignore_startup_parameters": { "type": "string" },
|
|
"pgbouncer_enabled": { "type": "boolean" },
|
|
"pool_mode": {
|
|
"enum": ["transaction", "session", "statement"],
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"default_pool_size",
|
|
"ignore_startup_parameters",
|
|
"pgbouncer_enabled",
|
|
"pool_mode"
|
|
]
|
|
},
|
|
"UpdateProjectBody": {
|
|
"type": "object",
|
|
"properties": { "name": { "type": "string" } },
|
|
"required": ["name"]
|
|
},
|
|
"Project": { "type": "object", "properties": {} },
|
|
"RestartRequest": {
|
|
"type": "object",
|
|
"properties": {
|
|
"services": { "type": "array", "items": { "type": "string" } },
|
|
"source_notification_id": { "type": "string" },
|
|
"region": { "type": "string" }
|
|
},
|
|
"required": ["services", "region"]
|
|
},
|
|
"RestartServicesBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"restartRequest": { "$ref": "#/components/schemas/RestartRequest" }
|
|
},
|
|
"required": ["restartRequest"]
|
|
},
|
|
"UsageStatusResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"database": {
|
|
"type": "string",
|
|
"enum": ["fine", "approaching", "over"]
|
|
},
|
|
"storage": {
|
|
"type": "string",
|
|
"enum": ["fine", "approaching", "over"]
|
|
},
|
|
"database_bandwidth": {
|
|
"type": "string",
|
|
"enum": ["fine", "approaching", "over"]
|
|
},
|
|
"storage_bandwidth": {
|
|
"type": "string",
|
|
"enum": ["fine", "approaching", "over"]
|
|
},
|
|
"active_users": {
|
|
"type": "string",
|
|
"enum": ["fine", "approaching", "over"]
|
|
}
|
|
},
|
|
"required": [
|
|
"database",
|
|
"storage",
|
|
"database_bandwidth",
|
|
"storage_bandwidth",
|
|
"active_users"
|
|
]
|
|
},
|
|
"SendEnterpriseRequestBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"company": { "type": "string" },
|
|
"email": { "type": "string" },
|
|
"message": { "type": "string" },
|
|
"name": { "type": "string" }
|
|
},
|
|
"required": ["company", "email", "message", "name"]
|
|
},
|
|
"PreviewSubscriptionBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"addons": { "type": "array", "items": { "type": "string" } },
|
|
"payment_method": { "type": "string" },
|
|
"proration_date": { "type": "number" },
|
|
"tier": { "type": "string" }
|
|
},
|
|
"required": ["addons", "payment_method", "proration_date", "tier"]
|
|
},
|
|
"UpdateSubscriptionBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"addons": { "type": "array", "items": { "type": "string" } },
|
|
"payment_method": { "type": "string" },
|
|
"proration_date": { "type": "number" },
|
|
"tier": { "type": "string" }
|
|
},
|
|
"required": ["addons", "payment_method", "proration_date", "tier"]
|
|
},
|
|
"UpdatePostgrestConfigBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"db_extra_search_path": { "type": "string" },
|
|
"db_schema": { "type": "string" },
|
|
"max_rows": { "type": "number" }
|
|
},
|
|
"required": ["db_extra_search_path", "db_schema", "max_rows"]
|
|
},
|
|
"UpdateSecretsConfigBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"jwt_secret": { "type": "string" },
|
|
"change_tracking_id": { "type": "string" }
|
|
},
|
|
"required": ["jwt_secret", "change_tracking_id"]
|
|
},
|
|
"UpdateStorageConfigBody": {
|
|
"type": "object",
|
|
"properties": { "fileSizeLimit": { "type": "number" } },
|
|
"required": ["fileSizeLimit"]
|
|
},
|
|
"OrganizationMembersResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"members": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/Member" }
|
|
}
|
|
},
|
|
"required": ["members"]
|
|
},
|
|
"PoolingRefConfig": {
|
|
"type": "object",
|
|
"properties": {
|
|
"db_dns_name": { "type": "string" },
|
|
"db_host": { "type": "string" },
|
|
"db_name": { "type": "string" },
|
|
"db_port": { "type": "number" },
|
|
"db_ssl": { "type": "boolean" },
|
|
"db_user": { "type": "string" },
|
|
"default_pool_size": { "type": "number" },
|
|
"ignore_startup_parameters": { "type": "string" },
|
|
"inserted_at": { "type": "string" },
|
|
"pgbouncer_enabled": { "type": "boolean" },
|
|
"pgbouncer_status": { "type": "string" },
|
|
"pool_mode": { "type": "string" }
|
|
},
|
|
"required": [
|
|
"db_dns_name",
|
|
"db_host",
|
|
"db_name",
|
|
"db_port",
|
|
"db_ssl",
|
|
"db_user",
|
|
"default_pool_size",
|
|
"ignore_startup_parameters",
|
|
"inserted_at",
|
|
"pgbouncer_enabled",
|
|
"pgbouncer_status",
|
|
"pool_mode"
|
|
]
|
|
},
|
|
"PoolingRefConfigResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"project": { "$ref": "#/components/schemas/PoolingRefConfig" }
|
|
},
|
|
"required": ["project"]
|
|
},
|
|
"UpdatePoolingRefConfigBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"default_pool_size": { "type": "number" },
|
|
"ignore_startup_parameters": { "type": "string" },
|
|
"pgbouncer_enabled": { "type": "boolean" },
|
|
"pool_mode": {
|
|
"type": "string",
|
|
"enum": ["transaction", "session", "statement"]
|
|
}
|
|
},
|
|
"required": [
|
|
"default_pool_size",
|
|
"ignore_startup_parameters",
|
|
"pgbouncer_enabled",
|
|
"pool_mode"
|
|
]
|
|
},
|
|
"UpdatePoolingRefConfigResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"project": {
|
|
"$ref": "#/components/schemas/UpdatePoolingRefConfigBody"
|
|
}
|
|
},
|
|
"required": ["project"]
|
|
},
|
|
"ServiceApiKey": {
|
|
"type": "object",
|
|
"properties": {
|
|
"api_key_encrypted": { "type": "string" },
|
|
"tags": { "type": "string" },
|
|
"name": { "type": "string" }
|
|
},
|
|
"required": ["api_key_encrypted", "tags", "name"]
|
|
},
|
|
"AutoApiService": {
|
|
"type": "object",
|
|
"properties": {
|
|
"endpoint": { "type": "string" },
|
|
"restUrl": { "type": "string" },
|
|
"project": {
|
|
"type": "object",
|
|
"properties": { "ref": { "required": true, "type": "string" } }
|
|
},
|
|
"defaultApiKey": { "type": "string" },
|
|
"serviceApiKey": { "type": "string" },
|
|
"id": { "type": "number" },
|
|
"name": { "type": "string" },
|
|
"app_config": { "type": "object" },
|
|
"app": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "required": true, "type": "number" },
|
|
"name": { "required": true, "type": "string" }
|
|
}
|
|
},
|
|
"service_api_keys": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/ServiceApiKey" }
|
|
}
|
|
},
|
|
"required": [
|
|
"endpoint",
|
|
"restUrl",
|
|
"project",
|
|
"defaultApiKey",
|
|
"serviceApiKey",
|
|
"id",
|
|
"name",
|
|
"app_config",
|
|
"app",
|
|
"service_api_keys"
|
|
]
|
|
},
|
|
"ApiResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"project": { "$ref": "#/components/schemas/Project" },
|
|
"autoApiService": { "$ref": "#/components/schemas/AutoApiService" }
|
|
},
|
|
"required": ["project", "autoApiService"]
|
|
},
|
|
"JwtSecretUpdateStatus": {
|
|
"type": "object",
|
|
"properties": {
|
|
"jwtSecretUpdateStatus": {
|
|
"type": "object",
|
|
"properties": {
|
|
"change_tracking_id": { "required": true, "type": "string" },
|
|
"error": {
|
|
"required": false,
|
|
"enum": [
|
|
"PostgreSQLRestartFailed",
|
|
"APIServicesConfigurationUpdateFailed",
|
|
"APIServicesRestartFailed",
|
|
"DatabaseAdminAPIConfigurationUpdateFailed",
|
|
"SupabaseAPIKeyUpdateFailed",
|
|
"APIGatewayUpdateFailed"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"progress": {
|
|
"required": false,
|
|
"enum": [
|
|
"Started",
|
|
"RestartedPostgreSQL",
|
|
"UpdatedAPIServicesConfiguration",
|
|
"RestartedAPIServices",
|
|
"UpdatedDatabaseAdminAPIConfiguration",
|
|
"UpdatedAPIGatewayConfiguration"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"status": {
|
|
"required": true,
|
|
"enum": ["Updating", "Updated", "Failed"],
|
|
"type": "string"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"required": ["jwtSecretUpdateStatus"]
|
|
},
|
|
"ServiceApiKeyResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"api_key": { "type": "string" },
|
|
"api_key_encrypted": { "type": "string" },
|
|
"tags": { "type": "string" },
|
|
"name": { "type": "string" }
|
|
},
|
|
"required": ["api_key", "api_key_encrypted", "tags", "name"]
|
|
},
|
|
"ServiceResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"service_api_keys": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/ServiceApiKeyResponse" }
|
|
},
|
|
"id": { "type": "number" },
|
|
"name": { "type": "string" },
|
|
"app_config": { "type": "object" },
|
|
"app": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "required": true, "type": "number" },
|
|
"name": { "required": true, "type": "string" }
|
|
}
|
|
}
|
|
},
|
|
"required": ["service_api_keys", "id", "name", "app_config", "app"]
|
|
},
|
|
"ProjectResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"organization_id": { "type": "string" },
|
|
"name": { "type": "string" },
|
|
"region": { "type": "string" },
|
|
"created_at": { "type": "string" }
|
|
},
|
|
"required": ["id", "organization_id", "name", "region", "created_at"]
|
|
},
|
|
"SettingsResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"project": { "$ref": "#/components/schemas/ProjectResponse" },
|
|
"services": {
|
|
"type": "array",
|
|
"items": { "$ref": "#/components/schemas/ServiceResponse" }
|
|
}
|
|
},
|
|
"required": ["project", "services"]
|
|
},
|
|
"GetCustomerBody": {
|
|
"type": "object",
|
|
"properties": { "stripe_customer_id": { "type": "string" } },
|
|
"required": ["stripe_customer_id"]
|
|
},
|
|
"CreateCustomerPortalSessionBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"projectRef": { "type": "string", "minLength": 20, "maxLength": 20 },
|
|
"returnTo": { "type": "string" }
|
|
},
|
|
"required": ["projectRef", "returnTo"]
|
|
},
|
|
"TelemetryEventBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"category": { "type": "string" },
|
|
"action": { "type": "string" },
|
|
"label": { "type": "object" },
|
|
"value": { "type": "string" }
|
|
},
|
|
"required": ["category", "action"]
|
|
},
|
|
"CreateVercelEnvironmentVariableBody": {
|
|
"type": "object",
|
|
"properties": {
|
|
"key": { "type": "string" },
|
|
"target": { "type": "array", "items": { "type": "string" } },
|
|
"type": { "type": "string" },
|
|
"value": { "type": "string" }
|
|
},
|
|
"required": ["key", "target", "type", "value"]
|
|
},
|
|
"CreateSubscriptionBody": {
|
|
"type": "object",
|
|
"properties": { "projectId": { "type": "number" } },
|
|
"required": ["projectId"]
|
|
},
|
|
"StripeSyncBody": {
|
|
"type": "object",
|
|
"properties": { "organizationId": { "type": "number" } },
|
|
"required": ["organizationId"]
|
|
},
|
|
"Buffer": { "type": "object", "properties": {} },
|
|
"OrganizationResponse": {
|
|
"type": "object",
|
|
"properties": {
|
|
"id": { "type": "string" },
|
|
"name": { "type": "string" }
|
|
},
|
|
"required": ["id", "name"]
|
|
}
|
|
}
|
|
}
|
|
}
|