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

/web_api/project/get/test_structure

/web_api/project/get/test_structure ​

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

Запрос ​

main-app://schemas/api_elements/project/get-test_structure.request.json

POST /web_api/project/get/test_structure body

ИмяТипОбязательноеОграничение
project_idintegerДаminimum 1

Другие поля верхнего уровня допустимы.

Ответ ​

main-app://schemas/api_elements/project/get-test_structure.response.json

POST /web_api/project/get/test_structure success

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

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

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

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

Запрос: main-app://schemas/api_elements/project/get-test_structure.request.json
json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "main-app://schemas/api_elements/project/get-test_structure.request.json",
  "title": "POST /web_api/project/get/test_structure body",
  "type": "object",
  "required": [
    "project_id"
  ],
  "additionalProperties": true,
  "properties": {
    "project_id": {
      "type": "integer",
      "minimum": 1
    }
  }
}
Ответ: main-app://schemas/api_elements/project/get-test_structure.response.json
json
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "main-app://schemas/api_elements/project/get-test_structure.response.json",
  "title": "POST /web_api/project/get/test_structure success",
  "allOf": [
    {
      "$ref": "main-app://schemas/_shared/envelope-success.json"
    },
    {
      "type": "object",
      "properties": {
        "api_result": {
          "anyOf": [
            {
              "type": "object",
              "additionalProperties": true
            },
            {
              "const": false
            }
          ]
        }
      }
    }
  ]
}
Фрагмент: 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
}

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

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