Программный интерфейс

/web_api/mcp_server_oauth/create

/web_api/mcp_server_oauth/create ​

Страница собрана из снимка JSON Schema в репозитории документации. Снимок обновляется отдельной командой из каталога основного приложения и при сборке сайта не переписывается.

Запрос ​

main-app://schemas/api_mcp_testing/mcp_server_oauth/create.request.json

REQUEST /web_api/mcp_server_oauth/create

ИмяТипОбязательноеОграничение
project_idintegerДаminimum 1
mcp_server_titlestringДаmaxLength 500
mcp_server_urlstringДаmaxLength 2048
client_idstringДа-
oauth_scopestringНет-

Другие поля верхнего уровня запрещены.

Ответ ​

main-app://schemas/api_mcp_testing/mcp_server_oauth/create.response.json

RESPONSE /web_api/mcp_server_oauth/create

ИмяТипОбязательноеОграничение
api_codeintegerДаconst 200
api_resultobjectДадругие поля допустимы
emptybooleanНет-

Другие поля верхнего уровня запрещены.

api_result ​

ИмяТипОбязательноеОграничение
mcp_server_oauth_idintegerНетminimum 0
mcp_server_idintegerНетminimum 0
team_idintegerНетminimum 0
project_idintegerНетminimum 0
authorization_server_urlstringНетmaxLength 2048
resource_urlstringНетmaxLength 2048
client_idstringНетmaxLength 512
oauth_statusenumНет"PENDING", "ACTIVE", "REVOKED"
access_token_expires_atstringНет-
credential_generationintegerНетminimum 0
encryption_key_idstringНетmaxLength 64
encryption_key_versionintegerНетminimum 0
consent_started_by_user_idinteger | nullНетminimum 0
created_by_user_idintegerНетminimum 0
created_atstringНет-
updated_atstringНет-

Исходная схема ​

Файлы ниже скопированы из снимка без изменений. Фрагмент по $ref приведён отдельным блоком, схемы не сливаются.

Запрос: main-app://schemas/api_mcp_testing/mcp_server_oauth/create.request.json
json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "main-app://schemas/api_mcp_testing/mcp_server_oauth/create.request.json",
  "title": "REQUEST /web_api/mcp_server_oauth/create",
  "$comment": "OAuth create body. team_id comes from the session. oauth_scope is a space-separated list.",
  "type": "object",
  "additionalProperties": false,
  "required": ["project_id", "mcp_server_title", "mcp_server_url", "client_id"],
  "properties": {
    "project_id": { "type": "integer", "minimum": 1 },
    "mcp_server_title": { "type": "string", "maxLength": 500 },
    "mcp_server_url": { "type": "string", "maxLength": 2048 },
    "client_id": { "type": "string" },
    "oauth_scope": { "type": "string" }
  }
}
Ответ: main-app://schemas/api_mcp_testing/mcp_server_oauth/create.response.json
json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "main-app://schemas/api_mcp_testing/mcp_server_oauth/create.response.json",
  "title": "RESPONSE /web_api/mcp_server_oauth/create",
  "$comment": "Generated from the DB model structure_scheme. Edit the model, then run node fill-from-structure-scheme.mjs.",
  "allOf": [
    {
      "$ref": "main-app://schemas/_shared/envelope-success.json"
    },
    {
      "type": "object",
      "properties": {
        "api_result": {
          "$ref": "main-app://schemas/api_mcp_testing/mcp_server_oauth/row.json"
        }
      }
    }
  ]
}
Фрагмент: main-app://schemas/_shared/envelope-success.json
json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "main-app://schemas/_shared/envelope-success.json",
  "title": "Canonical success envelope",
  "type": "object",
  "required": ["api_code", "api_result"],
  "properties": {
    "api_code": { "const": 200 },
    "api_result": true,
    "empty": { "type": "boolean" }
  },
  "additionalProperties": false
}
Фрагмент: main-app://schemas/api_mcp_testing/mcp_server_oauth/row.json
json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "main-app://schemas/api_mcp_testing/mcp_server_oauth/row.json",
  "title": "Row mcp_server_oauth",
  "$comment": "Generated from the DB model structure_scheme. Edit the model, then run node fill-from-structure-scheme.mjs.",
  "type": "object",
  "additionalProperties": true,
  "properties": {
    "mcp_server_oauth_id": {
      "type": "integer",
      "minimum": 0
    },
    "mcp_server_id": {
      "type": "integer",
      "minimum": 0
    },
    "team_id": {
      "type": "integer",
      "minimum": 0
    },
    "project_id": {
      "type": "integer",
      "minimum": 0
    },
    "authorization_server_url": {
      "type": "string",
      "maxLength": 2048
    },
    "resource_url": {
      "type": "string",
      "maxLength": 2048
    },
    "client_id": {
      "type": "string",
      "maxLength": 512
    },
    "oauth_status": {
      "type": "string",
      "enum": [
        "PENDING",
        "ACTIVE",
        "REVOKED"
      ]
    },
    "access_token_expires_at": {
      "type": "string",
      "description": "timestamp Y-m-d H:i:s"
    },
    "credential_generation": {
      "type": "integer",
      "minimum": 0
    },
    "encryption_key_id": {
      "type": "string",
      "maxLength": 64
    },
    "encryption_key_version": {
      "type": "integer",
      "minimum": 0
    },
    "consent_started_by_user_id": {
      "type": [
        "integer",
        "null"
      ],
      "minimum": 0
    },
    "created_by_user_id": {
      "type": "integer",
      "minimum": 0
    },
    "created_at": {
      "type": "string",
      "description": "timestamp Y-m-d H:i:s"
    },
    "updated_at": {
      "type": "string",
      "description": "timestamp Y-m-d H:i:s"
    }
  }
}

Версия 1.0.0 · Последнее изменение 2026-10-07

Страница не помогла?