Аишка и ваш ИИ

Подключение ChatGPT и внешних приложений на OpenAI API. Модели работают только с разрешёнными данными и действиями.

Выберите результат

Готовые рецепты

Ключи и подключения

Публикация с фотографиями

Три готовых примера. Фото и тексты уже внутри архива.

Скачать пример с фото
Обложка, текст, подписи и код
Светлая керамическая ваза с узким горлышком на бежевом фоне
Демо: светлая керамическая ваза на нейтральном бежевом фоне.

Демо · Предмет на нейтральном фоне и в интерьере

Нейтральный фон помогает рассмотреть форму предмета, а интерьерный кадр показывает его в окружении. Это учебный материал с готовыми демонстрационными изображениями, а не реальный клиентский проект.

Как читать предметный кадр

Сохраните исходный файл, рассмотрите фактуру и силуэт. Файл studio.jpg показывает светлую вазу на спокойном бежевом фоне: окружение не отвлекает от формы.

Проверка перед загрузкой
  • Назовите предмет, который действительно виден на изображении.
  • Не выдавайте демонстрацию за работу для клиента.

Описание работы с файлами.

Все блоки примера 5

Предмет в интерьере

На втором изображении ваза стоит на деревянной тумбе. Ветка и солнечный свет добавляют контекст; этот кадр не подтверждает размеры или характеристики изделия.

Керамическая ваза с оливковой веткой на деревянной тумбе у светлой стены
Демо: светлая ваза с оливковой веткой на деревянной тумбе в солнечном свете.

Два варианта подачи

Откройте изображения, чтобы рассмотреть нейтральную и интерьерную композиции. Под каждым кадром сохранена собственная подпись.

Светлая керамическая ваза с узким горлышком на бежевом фоне
Демо: светлая керамическая ваза на нейтральном бежевом фоне.
Керамическая ваза с оливковой веткой на деревянной тумбе у светлой стены
Демо: светлая ваза с оливковой веткой на деревянной тумбе в солнечном свете.

Что переносить в собственную статью

  • Свои изображения, которые относятся к тексту.
  • Подпись с контекстом и alt с кратким описанием видимого.
  • Факты из исходных материалов; неизвестные даты, сроки и показатели не добавляйте.

Пример проверки результата

JavaScript
if (file.status !== 'ready') {
  throw new Error('Файл ещё не готов');
}
Статья со своего сайтаHTML → блоки редактора, фотографии, подписи и обложкаNode.js 22+

Для своих материалов или тех, которые вы имеете право переносить. Укажите адрес статьи, при необходимости — селектор её текста. Исходный сайт остаётся без изменений.

  1. Распакуйте пример и подготовьте статью

    Команды выполняются из папки с распакованным архивом. Замените адрес ниже на свою статью. Подготовка скачивает текст и изображения локально, без записи в Аишку.

    Команда
    npm ci --prefix examples/integrations/site-import
    node examples/integrations/site-import/import-article.mjs prepare \
      https://example.com/my-article ./article-review

    По умолчанию выбирается единственный article. Если текст выбран неточно, добавьте --selector .article-body, а для лишних блоков — --exclude .author-card. Для отдельного домена изображений явно укажите --allow-origin https://cdn.example.com. Выгрузку HTML можно передать через --html ./article.html.

  2. Проверьте содержание

    Откройте article-review/article.json и локальные фотографии. Проверьте автора, обложку, разделы и код. Добавьте фактическое описание alt, уберите лишние изображения. Подписи переносите из источника или добавляйте по содержимому. Если подтверждённой подписи нет, оставьте её пустой: приватный черновик можно сохранить, а оформление проверить перед отправкой на модерацию.

    Команда
    node examples/integrations/site-import/import-article.mjs preview \
      ./article-review/article.json
  3. Выберите профиль и доступ

    В настройках ключа нужны profiles:read, files:read, files:write, articles:read, articles:write. Передайте ключ в переменной окружения AISHKA_ACCESS_TOKEN на своём компьютере или сервере. В файл статьи и командную строку его не вставляйте.

  4. Сохраните черновик
    Команда
    node examples/integrations/site-import/import-article.mjs save \
      ./article-review/article.json

    Скрипт загружает выбранные файлы, проверяет готовность и читает сохранённую запись. Для следующей статьи используйте новую рабочую папку.

Проверка результата. Откройте webUrl из ответа и проверьте текст, фотографии, подписи и статус черновика. Повторите ту же команду с теми же файлами и журналом article.state.json: UUID остаётся прежним, ручные правки не перезаписываются. Отправка на проверку — отдельное действие.

Заявки и отклики в TelegramВебхук Аишки → ваш обработчик → ваш ботNode.js 22.13+

Получайте уведомления о новых откликах, предложениях и сообщениях в выбранном чате. Бот и адрес принимающего сервера принадлежат вам.

  1. Подготовьте бота и чат

    Создайте бота через BotFather, откройте с ним диалог или добавьте его в нужную группу. В папке обработчика скопируйте пример настроек:

    Команда
    cd examples/integrations/telegram
    cp .env.example .env
    chmod 600 .env

    В .env укажите TELEGRAM_BOT_TOKEN и числовой TELEGRAM_CHAT_ID. Не передавайте токен в поле адреса вебхука и не публикуйте файл настроек.

  2. Узнайте точный ID получателя
    Команда
    npm run chats

    После заполнения токена команда покажет чаты из последних событий бота. Скопируйте нужный chatId в TELEGRAM_CHAT_ID, включая минус для группы. Сообщения эта команда не отправляет. Для работы нужен Node.js 22.13 или новее; дополнительные зависимости не требуются.

  3. Подключите события в Аишке

    Откройте настройки вебхука. Укажите HTTPS-адрес обработчика и выберите «Новый отклик», «Новое предложение» или «Отклик на вакансию». Сохраните выданный секрет подписи на принимающем сервере.

    response.receivedoffer.receivedjob_response.received

    Режим «Все доступные данные записи» добавит данные, которые разрешены выбранному профилю. В режиме ссылки обработчик получает идентификатор события и записи.

    Нужны webhooks:read, webhooks:write, events:read, responses:read и offers:read. Для других событий измените также AISHKA_EVENTS в .env и проверьте права чтения.

  4. Запустите обработчик и подключите доставку

    Запишите секрет подписи в AISHKA_WEBHOOK_SECRET файла .env. Сначала проверьте доступность бота и чата без отправки сообщения, затем запустите обработчик. Разместите его путь /webhooks/aishka за указанным публичным HTTPS-адресом.

    Команда
    npm run check
    npm start

    В Аишке нажмите «Подключить и проверить». Проверка отправит сообщение вашему боту. Для проверки реального отклика используйте свой тестовый заказ и другого участника, который согласился откликнуться.

    Проверить сохранённый результат
    npm run status

Проверка результата. В истории Аишки проверьте успешный ответ обработчика, а в Telegram — само сообщение. Ответ вебхука ещё не доказывает доставку боту. При ошибке сначала выполните npm run status. Для failed или uncertain сверьте UUID в Telegram и используйте локальные --retry или --ack по инструкции. Повтор из Аишки нужен, только если событие не попало в очередь обработчика: уже сохранённый UUID повторной отправки боту не вызовет.

Подключить своего ИИ к АишкеГотовый адаптер: права, инструменты и подтвержденияNode.js · Python

В готовом примере есть два способа: remote MCP и function calling. Распакуйте архив и подготовьте закрытый файл настроек; у ключа Аишки включите нужный способ подключения.

Команда
cd examples/integrations/openai
cp .env.example .env
chmod 600 .env

В .env заполните OPENAI_API_KEY, OPENAI_MODEL и AISHKA_ACCESS_TOKEN. Оставьте два стартовых инструмента listProfiles,getMyCapabilities. Ключи не вставляйте в команды или промпты. Параметр --env-file=.env ниже загружает этот файл в окружение процесса.

  1. Начните с чтения профиля

    Из папки examples/integrations/openai установите зависимости и запустите пример с двумя разрешёнными инструментами.

    Команда
    npm ci
    AISHKA_ALLOWED_TOOLS=listProfiles,getMyCapabilities node --env-file=.env remote-mcp.mjs
  2. Сверьте профиль и права

    Пример спрашивает подтверждение обращения к инструментам. Проверьте фактический аккаунт и выбранный профиль в ответе Аишки, прежде чем добавлять изменяющие действия.

  3. Добавьте конкретную задачу

    Выберите запрос для статьи, портфолио или услуги. Передайте свои материалы и разрешите только необходимые действия. Загрузка файлов выполняется приложением, а не передачей ключа модели.

Проверка результата. Результат изменения подтверждается UUID, статусом и повторным чтением записи. Вызов OpenAI использует ваш платный API-аккаунт; совместимость конкретного клиента проверяется при подключении.

Загрузка фотографий и файлов

Файл проходит четыре шага. В публикацию попадает его UUID из Аишки, а не ID файла OpenAI, ссылка на скачивание или текст в Base64.

  1. Подготовитьfiles.prepare

    Имя, MIME, размер в байтах, SHA-256 и назначение: article, portfolio или service.

  2. Передать файлPUT uploadUrl

    Приложение отправляет исходные байты с ключом Аишки. Этот шаг выполняет HTTP-клиент, не текстовое сообщение модели.

  3. Проверитьfiles.complete → ready

    Проверка размера, типа и контрольной суммы. Привязывайте файл только после status: ready.

  4. Оформитьcontent.assets[].id

    Добавьте подпись и alt. Используйте тот же ID в обложке, галерее и превью — повторная загрузка не нужна.

Фото и документы — до 25 МиБ; видео в портфолио — до 100 МиБ; файлы задания — до 1 МиБ. Назначение загрузки должно совпадать с видом публикации, а профиль — с её автором.

Если ваш AI-клиент не умеет передавать файл по HTTP, загрузите его через редактор Аишки и продолжите с готовым UUID. Для статьи со своего сайта используйте рецепт импорта: он скачивает выбранные иллюстрации локально и загружает их через API файлов.

Форматирование, которое сохранится

Статьи, услуги и новые работы используют data.content версии 1. Обычный текст, изображения, галереи и код — отдельные блоки. HTML и произвольный Markdown не заменяют этот формат.

Текст блока richtext

**Главная мысль** и *важная деталь*.

Поле `category` и [ссылка](https://eval.su/).

- Первый пункт
- Второй пункт
Как выглядит текст

Главная мысль и важная деталь.

Поле category и ссылка.

  • Первый пункт
  • Второй пункт

Подпись и описание фото

{
  "id": "READY_FILE_UUID",
  "kind": "image",
  "caption": "Предметный кадр: форма и фактура керамики.",
  "alt": "Светлая керамическая ваза на нейтральном фоне."
}

caption видна под фото. alt описывает изображение для доступности. Имя файла не заменяет подпись.

Пример подписиСветлая керамическая ваза на нейтральном фоне.
Предметный кадр: форма и фактура керамики.

Готовые структуры публикаций

Шаблоны содержат все поля блоков. Замените текст примера и UUID файлов своими данными. Сгенерируйте requestUuid один раз на команду и сохраните его для повторов.

Статья с фотографиямиJSON

Аргументы MCP-инструмента articles_save. При HTTP-запросе к POST /api/v1/publications добавьте верхние поля kind: "article" и requestUuid.

Шаблон аргументов
{
  "data": {
    "title": "Демо · Предмет на нейтральном фоне и в интерьере",
    "category": "Картинки и видео",
    "description": "Два изображения керамической вазы показывают, как собрать статью с обложкой, подписями, галереей и форматированным текстом.",
    "content": {
      "version": 1,
      "preview": {
        "kind": "image",
        "assetIds": [
          "00000000-0000-4000-8000-000000000101"
        ],
        "title": "",
        "summary": "Демо: два кадра, подписи и структура статьи",
        "fit": "contain",
        "focalPoint": {
          "x": 50,
          "y": 50
        }
      },
      "article": {
        "lead": "Нейтральный фон помогает рассмотреть форму предмета, а интерьерный кадр показывает его в окружении. Это учебный материал с готовыми демонстрационными изображениями, а не реальный клиентский проект.",
        "coverId": "00000000-0000-4000-8000-000000000101",
        "readingMinutes": "",
        "tags": [
          "Демо",
          "Фотографии",
          "Подготовка материалов"
        ],
        "sources": []
      },
      "blocks": [
        {
          "id": "preparation",
          "type": "richtext",
          "title": "Как читать предметный кадр",
          "lead": "",
          "text": "Сохраните **исходный файл**, рассмотрите *фактуру* и силуэт. Файл `studio.jpg` показывает светлую вазу на спокойном бежевом фоне: окружение не отвлекает от формы.\n\n## Проверка перед загрузкой\n\n- Назовите предмет, который действительно виден на изображении.\n- Не выдавайте демонстрацию за работу для клиента.\n\n[Описание работы с файлами](https://eval.su/docs/examples/media-publications.md).",
          "mediaIds": [],
          "items": [],
          "layout": "wide",
          "tone": "plain",
          "author": "",
          "role": "",
          "language": ""
        },
        {
          "id": "details",
          "type": "image",
          "title": "Предмет в интерьере",
          "lead": "На втором изображении ваза стоит на деревянной тумбе. Ветка и солнечный свет добавляют контекст; этот кадр не подтверждает размеры или характеристики изделия.",
          "text": "",
          "mediaIds": [
            "00000000-0000-4000-8000-000000000102"
          ],
          "items": [],
          "layout": "wide",
          "tone": "plain",
          "author": "",
          "role": "",
          "language": ""
        },
        {
          "id": "comparison-gallery",
          "type": "gallery",
          "title": "Два варианта подачи",
          "lead": "Откройте изображения, чтобы рассмотреть нейтральную и интерьерную композиции. Под каждым кадром сохранена собственная подпись.",
          "text": "",
          "mediaIds": [
            "00000000-0000-4000-8000-000000000101",
            "00000000-0000-4000-8000-000000000102"
          ],
          "items": [],
          "layout": "wide",
          "tone": "plain",
          "author": "",
          "role": "",
          "language": ""
        },
        {
          "id": "checklist",
          "type": "list",
          "title": "Что переносить в собственную статью",
          "lead": "",
          "text": "",
          "mediaIds": [],
          "items": [
            "Свои изображения, которые относятся к тексту.",
            "Подпись с контекстом и alt с кратким описанием видимого.",
            "Факты из исходных материалов; неизвестные даты, сроки и показатели не добавляйте."
          ],
          "layout": "wide",
          "tone": "plain",
          "author": "",
          "role": "",
          "language": ""
        },
        {
          "id": "upload-code",
          "type": "code",
          "title": "Пример проверки результата",
          "lead": "",
          "text": "if (file.status !== 'ready') {\n  throw new Error('Файл ещё не готов');\n}",
          "mediaIds": [],
          "items": [],
          "layout": "wide",
          "tone": "plain",
          "author": "",
          "role": "",
          "language": "javascript"
        }
      ],
      "assets": [
        {
          "id": "00000000-0000-4000-8000-000000000101",
          "kind": "image",
          "caption": "Демо: светлая керамическая ваза на нейтральном бежевом фоне.",
          "alt": "Светлая керамическая ваза с узким горлышком на бежевом фоне"
        },
        {
          "id": "00000000-0000-4000-8000-000000000102",
          "kind": "image",
          "caption": "Демо: светлая ваза с оливковой веткой на деревянной тумбе в солнечном свете.",
          "alt": "Керамическая ваза с оливковой веткой на деревянной тумбе у светлой стены"
        }
      ]
    },
    "files": []
  }
}
Работа в портфолиоJSON

Аргументы MCP-инструмента portfolio_save. При HTTP-запросе к POST /api/v1/publications добавьте верхние поля kind: "portfolio" и requestUuid.

Шаблон аргументов
{
  "data": {
    "title": "Демо · Визуальная подача керамической вазы",
    "category": "Картинки и видео",
    "description": "Учебная работа о двух способах показать предмет: отдельно на нейтральном фоне и в жилом окружении. Это демонстрация оформления портфолио, а не клиентский кейс.",
    "result": "Демонстрационный комплект из двух изображений: предметная композиция и интерьерная сцена с отдельными подписями.",
    "contribution": "Пример структуры кейса: задача, этапы, визуальные материалы и результат. Реальные исполнители и заказчики не заявлены.",
    "content": {
      "version": 1,
      "preview": {
        "kind": "gallery",
        "assetIds": [
          "00000000-0000-4000-8000-000000000101",
          "00000000-0000-4000-8000-000000000102"
        ],
        "title": "",
        "summary": "Демо: предметная и интерьерная композиции",
        "fit": "contain",
        "focalPoint": {
          "x": 50,
          "y": 50
        }
      },
      "blocks": [
        {
          "id": "objective",
          "type": "richtext",
          "title": "Задача демонстрации",
          "lead": "",
          "text": "Показать, как **собрать кейс из изображений**, не теряя контекст каждого кадра. Нейтральный фон выделяет форму вазы, интерьер добавляет окружение.\n\nВ примере нет сведений о клиенте, реальной съёмке или коммерческих результатах.",
          "mediaIds": [],
          "items": [],
          "layout": "wide",
          "tone": "plain",
          "author": "",
          "role": "",
          "language": ""
        },
        {
          "id": "process",
          "type": "steps",
          "title": "Порядок сборки кейса",
          "lead": "",
          "text": "",
          "mediaIds": [],
          "items": [
            "Выбрать предметный кадр для первого экрана и превью.",
            "Добавить интерьерный кадр, объяснив его роль в подаче.",
            "Заполнить подписи и alt отдельно для каждого изображения.",
            "Проверить галерею и превью перед сохранением черновика."
          ],
          "layout": "wide",
          "tone": "plain",
          "author": "",
          "role": "",
          "language": ""
        },
        {
          "id": "visuals",
          "type": "gallery",
          "title": "Визуальные материалы",
          "lead": "Галерея объединяет два демонстрационных изображения. Это разные композиции, а не сравнение «до и после».",
          "text": "",
          "mediaIds": [
            "00000000-0000-4000-8000-000000000101",
            "00000000-0000-4000-8000-000000000102"
          ],
          "items": [],
          "layout": "wide",
          "tone": "plain",
          "author": "",
          "role": "",
          "language": ""
        },
        {
          "id": "result",
          "type": "callout",
          "title": "Результат примера",
          "lead": "",
          "text": "Готова структура портфолио с двумя изображениями, галереей и подписями. Для настоящей работы замените материалы и укажите только подтверждённый результат.",
          "mediaIds": [],
          "items": [],
          "layout": "wide",
          "tone": "soft",
          "author": "",
          "role": "",
          "language": ""
        }
      ],
      "assets": [
        {
          "id": "00000000-0000-4000-8000-000000000101",
          "kind": "image",
          "caption": "Демо: светлая керамическая ваза на нейтральном бежевом фоне.",
          "alt": "Светлая керамическая ваза с узким горлышком на бежевом фоне"
        },
        {
          "id": "00000000-0000-4000-8000-000000000102",
          "kind": "image",
          "caption": "Демо: светлая ваза с оливковой веткой на деревянной тумбе в солнечном свете.",
          "alt": "Керамическая ваза с оливковой веткой на деревянной тумбе у светлой стены"
        }
      ]
    },
    "files": []
  }
}
Услуга с примерамиJSON

Аргументы MCP-инструмента services_save. При HTTP-запросе к POST /api/v1/publications добавьте верхние поля kind: "service" и requestUuid.

Шаблон аргументов
{
  "data": {
    "title": "Демо · Подготовка изображений товара к публикации",
    "category": "Картинки и видео",
    "description": "Пример оформления услуги: превью, визуальные примеры, состав работ и ограничения. Демонстрационные изображения не подтверждают выполнение заказов и не являются предложением реального исполнителя.",
    "result": "Ожидаемый результат услуги: согласованный комплект изображений с подписями и выбранным превью для карточки товара.",
    "service": {
      "stages": [
        "Разобрать задачу и исходные изображения товара.",
        "Согласовать состав кадров и формат размещения.",
        "Подготовить изображения и проверить подписи.",
        "Передать согласованный комплект для публикации."
      ],
      "deliverables": [
        "Изображения в согласованных форматах.",
        "Подписи и alt для каждого кадра.",
        "Выбранное превью и порядок изображений."
      ],
      "limitations": [
        "Пример не устанавливает цену, срок или число правок: их согласуют после изучения задачи.",
        "Для реальной услуги нужны собственные материалы и право на их использование.",
        "Демонстрационные изображения не являются доказательством клиентских результатов."
      ],
      "relatedWorkIds": []
    },
    "content": {
      "version": 1,
      "preview": {
        "kind": "gallery",
        "assetIds": [
          "00000000-0000-4000-8000-000000000101",
          "00000000-0000-4000-8000-000000000102"
        ],
        "title": "",
        "summary": "Демо: состав услуги с визуальными примерами",
        "fit": "contain",
        "focalPoint": {
          "x": 50,
          "y": 50
        }
      },
      "blocks": [
        {
          "id": "scope",
          "type": "richtext",
          "title": "Что входит в услугу",
          "lead": "",
          "text": "Этот **учебный пример** показывает, как описать подготовку изображений товара. Будущий заказчик должен понимать, какие материалы передать и что получить на выходе.\n\nДля настоящей услуги замените описание на свой процесс и свои условия.",
          "mediaIds": [],
          "items": [],
          "layout": "wide",
          "tone": "plain",
          "author": "",
          "role": "",
          "language": ""
        },
        {
          "id": "examples",
          "type": "gallery",
          "title": "Примеры визуальной подачи",
          "lead": "Нейтральный фон помогает рассмотреть предмет, интерьерная сцена показывает окружение. Оба изображения демонстрационные.",
          "text": "",
          "mediaIds": [
            "00000000-0000-4000-8000-000000000101",
            "00000000-0000-4000-8000-000000000102"
          ],
          "items": [],
          "layout": "wide",
          "tone": "plain",
          "author": "",
          "role": "",
          "language": ""
        },
        {
          "id": "inputs",
          "type": "list",
          "title": "Что понадобится от заказчика",
          "lead": "",
          "text": "",
          "mediaIds": [],
          "items": [
            "Исходные изображения и сведения о товаре.",
            "Площадка размещения и требования к размерам файлов.",
            "Пожелания к подаче и примеры подходящего стиля."
          ],
          "layout": "wide",
          "tone": "plain",
          "author": "",
          "role": "",
          "language": ""
        },
        {
          "id": "result",
          "type": "callout",
          "title": "Что получает заказчик",
          "lead": "",
          "text": "Согласованный комплект изображений, подписи и выбранное превью. Точный объём и условия определяют по исходным материалам до начала работы.",
          "mediaIds": [],
          "items": [],
          "layout": "wide",
          "tone": "soft",
          "author": "",
          "role": "",
          "language": ""
        }
      ],
      "assets": [
        {
          "id": "00000000-0000-4000-8000-000000000101",
          "kind": "image",
          "caption": "Демо: светлая керамическая ваза на нейтральном бежевом фоне.",
          "alt": "Светлая керамическая ваза с узким горлышком на бежевом фоне"
        },
        {
          "id": "00000000-0000-4000-8000-000000000102",
          "kind": "image",
          "caption": "Демо: светлая ваза с оливковой веткой на деревянной тумбе в солнечном свете.",
          "alt": "Керамическая ваза с оливковой веткой на деревянной тумбе у светлой стены"
        }
      ]
    },
    "files": []
  }
}

После сохранения проверьте uuid, revision, status и validationErrors, затем повторно прочитайте черновик. Отправка на проверку — отдельное действие.

Кнопка AI на странице готовит промпт. Она не запускает модель, не отправляет сообщение и не запрашивает ключ OpenAI. Готовность конкретного клиента проверяется отдельно от готовности сервера.

Подключить ChatGPT

  1. Проверьте, что ваш клиент допускает собственное MCP-подключение. Возможность и интерфейс зависят от аккаунта.
  2. Укажите MCP сервера: https://eval.su/mcp. Используйте OAuth, если клиент поддерживает этот способ.
  3. На странице Аишки войдите, проверьте название приложения, профиль и список прав. Только после вашего решения приложение получает доступ.
  4. Попросите клиента проверить аккаунт и доступные инструменты. Скопируйте контекст кнопкой AI на нужной странице Аишки.

Если клиент не поддерживает согласованную авторизацию или показывает ошибку подключения, не заменяйте OAuth браузерными cookies. Проверьте конфигурацию клиента и живую матрицу совместимости. Ключ OpenAI в Аишке для такого подключения не требуется.

Официальная инструкция OpenAI ↗

Использовать OpenAI API

Внешнее приложение хранит два разных секрета: OpenAI key для модели и ограниченный ключ Аишки для действий площадки. Не меняйте их местами. Используйте Responses API с remote MCP либо function-calling adapter, который вызывает тот же HTTP API.

Remote MCP получает только разрешённые инструменты. Приложение обрабатывает подтверждения, ошибки, тайм-ауты и повторы. Подтверждение со стороны OpenAI не отменяет владение, ревизии и модерацию Аишки. Не отключайте подтверждения изменяющих действий для удобства.

Для function calling используйте JSON Schema из актуального контракта. Не выполняйте неизвестные функции, неполные потоковые аргументы или результат, не прошедший проверку. После исполнения верните модели фактический JSON сервера.

Remote MCP в Responses API ↗ · Function calling ↗

События для вашего ИИ-помощника

В настройках ключа выберите нужные разрешения или все доступные и включите «MCP для ИИ». Для получения событий укажите адрес своего приложения в форме вебхука: события и состав данных выбираются здесь же.

Вебхук отправляет JSON вашему приложению. Оно решает, когда вызывать модель. Открытый диалог ChatGPT сам по себе не является адресом приёма событий.

Что считать проверенным

Сервер объявляет реализованные операции через capabilities. Совместимость с конкретной версией ChatGPT, Responses API и файловым механизмом подтверждается отдельным реальным прогоном. Наличие адреса MCP не является доказательством такого прогона.

СценарийСтатус клиентской приёмки
ChatGPT + OAuthНе проверено в реальном клиенте
Responses API + remote MCPНе проверено реальным вызовом модели
Function-calling adapterПроверять по конкретному приложению и версии

Отключить приложение

В «Интеграциях» отзовите ключ или OAuth-подключение. Новые действия запрещаются сервером. Уже сохранённые записи и история не исчезают.

Границы текущего интерфейса

Внутренняя генерация моделей и её оплата не включены. ChatGPT не работает в фоне после закрытия диалога. Возможности, отсутствующие в активном контракте, нельзя выполнять по предполагаемому адресу.

Операции этого сервера

Список соответствует опубликованному контракту сервера. Доступ к вашим данным дополнительно ограничивается правами аккаунта и ключа.

Версия контракта: 2026-10-15 · Открыть JSON без JavaScript

GETНайти специалистов
/api/v1/profiles

Найти специалистов

Права: публичное чтение

MCP: listProfiles

GETОткрыть профиль
/api/v1/profiles/{uuid}

Открыть профиль

Права: публичное чтение

MCP: getProfile

GETНайти публикации
/api/v1/publications

Найти публикации

Права: публичное чтение

MCP: listPublications

GETОткрыть публикацию
/api/v1/publications/{uuid}

Открыть публикацию

Права: публичное чтение

MCP: getPublication

GETМои права и профили
/api/v1/me/capabilities

Мои права и профили

Права: profiles:read

MCP: getMyCapabilities

GETЗаказы: мои публикации
/api/v1/commands/tasks.list

Заказы: мои публикации

Права: tasks:read

MCP: tasks_list

GETЗаказы: открыть редакцию
/api/v1/commands/tasks.get

Заказы: открыть редакцию

Права: tasks:read

MCP: tasks_get

POSTЗаказы: сохранить черновик
/api/v1/commands/tasks.save

Сохранить частный черновик; data заменяет весь черновик. Для правки сначала прочитайте текущий draft, сохраните поля и передайте publicationUuid/expectedRevision. Фото: files.prepare → HTTP PUT uploadUrl → files.complete → ready; UUID того же профиля/назначения в content.assets[].id, подпись caption, alt, content.version=1. Форматирование, обложки и полные примеры: /docs/examples/media-publications.md и .json (также MCP resources).

Права: tasks:write

MCP: tasks_save

События: publication.draft_saved

POSTЗаказы: отправить на проверку
/api/v1/commands/tasks.submit

Заказы: отправить на проверку

Права: tasks:submit

MCP: tasks_submit

События: publication.submitted

POSTЗаказы: скрыть
/api/v1/commands/tasks.hide

Заказы: скрыть

Права: tasks:write

MCP: tasks_hide

POSTЗаказы: восстановить
/api/v1/commands/tasks.restore

Заказы: восстановить

Права: tasks:write

MCP: tasks_restore

POSTЗаказы: удалить
/api/v1/commands/tasks.delete

Заказы: удалить

Права: tasks:write

MCP: tasks_delete

GETПортфолио: мои публикации
/api/v1/commands/portfolio.list

Портфолио: мои публикации

Права: portfolio:read

MCP: portfolio_list

GETПортфолио: открыть редакцию
/api/v1/commands/portfolio.get

Портфолио: открыть редакцию

Права: portfolio:read

MCP: portfolio_get

POSTПортфолио: сохранить черновик
/api/v1/commands/portfolio.save

Сохранить частный черновик; data заменяет весь черновик. Для правки сначала прочитайте текущий draft, сохраните поля и передайте publicationUuid/expectedRevision. Фото: files.prepare → HTTP PUT uploadUrl → files.complete → ready; UUID того же профиля/назначения в content.assets[].id, подпись caption, alt, content.version=1. Форматирование, обложки и полные примеры: /docs/examples/media-publications.md и .json (также MCP resources).

Права: portfolio:write

MCP: portfolio_save

События: publication.draft_saved

POSTПортфолио: отправить на проверку
/api/v1/commands/portfolio.submit

Портфолио: отправить на проверку

Права: portfolio:submit

MCP: portfolio_submit

События: publication.submitted

POSTПортфолио: скрыть
/api/v1/commands/portfolio.hide

Портфолио: скрыть

Права: portfolio:write

MCP: portfolio_hide

POSTПортфолио: восстановить
/api/v1/commands/portfolio.restore

Портфолио: восстановить

Права: portfolio:write

MCP: portfolio_restore

POSTПортфолио: удалить
/api/v1/commands/portfolio.delete

Портфолио: удалить

Права: portfolio:write

MCP: portfolio_delete

GETУслуги: мои публикации
/api/v1/commands/services.list

Услуги: мои публикации

Права: services:read

MCP: services_list

GETУслуги: открыть редакцию
/api/v1/commands/services.get

Услуги: открыть редакцию

Права: services:read

MCP: services_get

POSTУслуги: сохранить черновик
/api/v1/commands/services.save

Сохранить частный черновик; data заменяет весь черновик. Для правки сначала прочитайте текущий draft, сохраните поля и передайте publicationUuid/expectedRevision. Фото: files.prepare → HTTP PUT uploadUrl → files.complete → ready; UUID того же профиля/назначения в content.assets[].id, подпись caption, alt, content.version=1. Форматирование, обложки и полные примеры: /docs/examples/media-publications.md и .json (также MCP resources).

Права: services:write

MCP: services_save

События: publication.draft_saved

POSTУслуги: отправить на проверку
/api/v1/commands/services.submit

Услуги: отправить на проверку

Права: services:submit

MCP: services_submit

События: publication.submitted

POSTУслуги: скрыть
/api/v1/commands/services.hide

Услуги: скрыть

Права: services:write

MCP: services_hide

POSTУслуги: восстановить
/api/v1/commands/services.restore

Услуги: восстановить

Права: services:write

MCP: services_restore

POSTУслуги: удалить
/api/v1/commands/services.delete

Услуги: удалить

Права: services:write

MCP: services_delete

GETСтатьи: мои публикации
/api/v1/commands/articles.list

Статьи: мои публикации

Права: articles:read

MCP: articles_list

GETСтатьи: открыть редакцию
/api/v1/commands/articles.get

Статьи: открыть редакцию

Права: articles:read

MCP: articles_get

POSTСтатьи: сохранить черновик
/api/v1/commands/articles.save

Сохранить частный черновик; data заменяет весь черновик. Для правки сначала прочитайте текущий draft, сохраните поля и передайте publicationUuid/expectedRevision. Фото: files.prepare → HTTP PUT uploadUrl → files.complete → ready; UUID того же профиля/назначения в content.assets[].id, подпись caption, alt, content.version=1. Форматирование, обложки и полные примеры: /docs/examples/media-publications.md и .json (также MCP resources).

Права: articles:write

MCP: articles_save

События: publication.draft_saved

POSTСтатьи: отправить на проверку
/api/v1/commands/articles.submit

Статьи: отправить на проверку

Права: articles:submit

MCP: articles_submit

События: publication.submitted

POSTСтатьи: скрыть
/api/v1/commands/articles.hide

Статьи: скрыть

Права: articles:write

MCP: articles_hide

POSTСтатьи: восстановить
/api/v1/commands/articles.restore

Статьи: восстановить

Права: articles:write

MCP: articles_restore

POSTСтатьи: удалить
/api/v1/commands/articles.delete

Статьи: удалить

Права: articles:write

MCP: articles_delete

GETВакансии: мои публикации
/api/v1/commands/jobs.list

Вакансии: мои публикации

Права: jobs:read

MCP: jobs_list

GETВакансии: открыть редакцию
/api/v1/commands/jobs.get

Вакансии: открыть редакцию

Права: jobs:read

MCP: jobs_get

POSTВакансии: сохранить черновик
/api/v1/commands/jobs.save

Сохранить частный черновик; data заменяет весь черновик. Для правки сначала прочитайте текущий draft, сохраните поля и передайте publicationUuid/expectedRevision. Фото: files.prepare → HTTP PUT uploadUrl → files.complete → ready; UUID того же профиля/назначения в content.assets[].id, подпись caption, alt, content.version=1. Форматирование, обложки и полные примеры: /docs/examples/media-publications.md и .json (также MCP resources).

Права: jobs:write

MCP: jobs_save

События: publication.draft_saved

POSTВакансии: отправить на проверку
/api/v1/commands/jobs.submit

Вакансии: отправить на проверку

Права: jobs:submit

MCP: jobs_submit

События: publication.submitted

POSTВакансии: скрыть
/api/v1/commands/jobs.hide

Вакансии: скрыть

Права: jobs:write

MCP: jobs_hide

POSTВакансии: восстановить
/api/v1/commands/jobs.restore

Вакансии: восстановить

Права: jobs:write

MCP: jobs_restore

POSTВакансии: удалить
/api/v1/commands/jobs.delete

Вакансии: удалить

Права: jobs:write

MCP: jobs_delete

GETРезюме: мои публикации
/api/v1/commands/resumes.list

Резюме: мои публикации

Права: resumes:read

MCP: resumes_list

GETРезюме: открыть редакцию
/api/v1/commands/resumes.get

Резюме: открыть редакцию

Права: resumes:read

MCP: resumes_get

POSTРезюме: сохранить черновик
/api/v1/commands/resumes.save

Сохранить частный черновик; data заменяет весь черновик. Для правки сначала прочитайте текущий draft, сохраните поля и передайте publicationUuid/expectedRevision. Фото: files.prepare → HTTP PUT uploadUrl → files.complete → ready; UUID того же профиля/назначения в content.assets[].id, подпись caption, alt, content.version=1. Форматирование, обложки и полные примеры: /docs/examples/media-publications.md и .json (также MCP resources).

Права: resumes:write

MCP: resumes_save

События: publication.draft_saved

POSTРезюме: отправить на проверку
/api/v1/commands/resumes.submit

Резюме: отправить на проверку

Права: resumes:submit

MCP: resumes_submit

События: publication.submitted

POSTРезюме: скрыть
/api/v1/commands/resumes.hide

Резюме: скрыть

Права: resumes:write

MCP: resumes_hide

POSTРезюме: восстановить
/api/v1/commands/resumes.restore

Резюме: восстановить

Права: resumes:write

MCP: resumes_restore

POSTРезюме: удалить
/api/v1/commands/resumes.delete

Резюме: удалить

Права: resumes:write

MCP: resumes_delete

GETОбучение: мои публикации
/api/v1/commands/learning.list

Обучение: мои публикации

Права: learning:read

MCP: learning_list

GETОбучение: открыть редакцию
/api/v1/commands/learning.get

Обучение: открыть редакцию

Права: learning:read

MCP: learning_get

POSTОбучение: сохранить черновик
/api/v1/commands/learning.save

Сохранить частный черновик; data заменяет весь черновик. Для правки сначала прочитайте текущий draft, сохраните поля и передайте publicationUuid/expectedRevision. Фото: files.prepare → HTTP PUT uploadUrl → files.complete → ready; UUID того же профиля/назначения в content.assets[].id, подпись caption, alt, content.version=1. Форматирование, обложки и полные примеры: /docs/examples/media-publications.md и .json (также MCP resources).

Права: learning:write

MCP: learning_save

События: publication.draft_saved

POSTОбучение: отправить на проверку
/api/v1/commands/learning.submit

Обучение: отправить на проверку

Права: learning:submit

MCP: learning_submit

События: publication.submitted

POSTОбучение: скрыть
/api/v1/commands/learning.hide

Обучение: скрыть

Права: learning:write

MCP: learning_hide

POSTОбучение: восстановить
/api/v1/commands/learning.restore

Обучение: восстановить

Права: learning:write

MCP: learning_restore

POSTОбучение: удалить
/api/v1/commands/learning.delete

Обучение: удалить

Права: learning:write

MCP: learning_delete

POSTПодготовить загрузку файла
/api/v1/files/uploads

Подготовить загрузку: фактические name/mimeType/size/SHA-256 и purpose, равный виду публикации. Ответ после исполнения содержит uuid/uploadUrl/expiresAt. Передайте исходные байты HTTP PUT на uploadUrl, затем files.complete. MCP не передаёт бинарные байты; не вставляйте Base64 или OpenAI file ID. Пример: /docs/examples/media-publications.md (MCP resource).

Права: files:write

MCP: files_prepare

GETПроверить файл
/api/v1/files/{uuid}

Проверить файл

Права: files:read

MCP: files_status

POSTЗавершить загрузку
/api/v1/files/uploads/{uuid}/complete

После успешного HTTP PUT завершить загрузку и проверить status=ready. Только готовый UUID того же профиля и purpose можно использовать в assets. При неизвестном исходе повторите ту же команду или files.status. Пример: /docs/examples/media-publications.md.

Права: files:write

MCP: files_complete

POSTОткликнуться на заказ
/api/v1/commands/responses.create

Откликнуться на заказ

Права: responses:write

MCP: responses_create

GETМои отклики
/api/v1/commands/responses.list

Мои отклики

Права: responses:read

MCP: responses_list

GETОткрыть отклик
/api/v1/commands/responses.get

Открыть отклик

Права: responses:read

MCP: responses_get

POSTОтозвать отклик
/api/v1/commands/responses.withdraw

Отозвать отклик

Права: responses:write

MCP: responses_withdraw

POSTИзменить статус отклика
/api/v1/commands/responses.status

Изменить статус отклика

Права: responses:write

MCP: responses_status

POSTПредложить заказ
/api/v1/commands/offers.create

Предложить заказ

Права: offers:write

MCP: offers_create

GETПредложения заказов
/api/v1/commands/offers.list

Предложения заказов

Права: offers:read

MCP: offers_list

GETОткрыть предложение
/api/v1/commands/offers.get

Открыть предложение

Права: offers:read

MCP: offers_get

POSTПринять предложение
/api/v1/commands/offers.accept

Принять предложение

Права: offers:write

MCP: offers_accept

POSTОтклонить предложение
/api/v1/commands/offers.decline

Отклонить предложение

Права: offers:write

MCP: offers_decline

POSTОтозвать предложение
/api/v1/commands/offers.withdraw

Отозвать предложение

Права: offers:write

MCP: offers_withdraw

GETМои сделки
/api/v1/commands/deals.list

Мои сделки

Права: deals:read

MCP: deals_list

GETОткрыть сделку
/api/v1/commands/deals.get

Открыть сделку

Права: deals:read

MCP: deals_get

POSTПередать результат работы
/api/v1/commands/deals.results

Передать результат работы

Права: deals:write

MCP: deals_results

POSTПринять работу
/api/v1/commands/deals.complete

Принять работу

Права: deals:write

MCP: deals_complete

POSTЗавершить сотрудничество
/api/v1/commands/deals.terminate

Завершить сотрудничество

Права: deals:write

MCP: deals_terminate

POSTОткликнуться на вакансию
/api/v1/commands/job_responses.create

Откликнуться на вакансию

Права: responses:write

MCP: job_responses_create

POSTПригласить по резюме
/api/v1/commands/job_invitations.create

Пригласить по резюме

Права: responses:write

MCP: job_invitations_create

GETОбращения по работе
/api/v1/commands/job_contacts.list

Обращения по работе

Права: responses:read

MCP: job_contacts_list

GETОткрыть обращение по работе
/api/v1/commands/job_contacts.get

Открыть обращение по работе

Права: responses:read

MCP: job_contacts_get

POSTИзменить статус обращения
/api/v1/commands/job_contacts.status

Изменить статус обращения

Права: responses:write

MCP: job_contacts_status

POSTОткрыть диалог
/api/v1/commands/threads.open

Открыть диалог

Права: messages:write

MCP: threads_open

GETМои диалоги
/api/v1/commands/threads.list

Мои диалоги

Права: messages:read

MCP: threads_list

GETОткрыть существующий диалог
/api/v1/commands/threads.get

Открыть существующий диалог

Права: messages:read

MCP: threads_get

GETСообщения диалога
/api/v1/commands/threads.messages

Сообщения диалога

Права: messages:read

MCP: threads_messages

POSTОтправить сообщение
/api/v1/commands/messages.send

Отправить сообщение

Права: messages:write

MCP: messages_send

GETТипы событий
/api/v1/event-types

Only types with committed domain producers are advertised.

Права: events:read

MCP: events_types

GETДанные и примеры событий
/api/v1/event-catalog

Every produced event: label, group, read scopes, domain retrieval, reference/current examples, fields and delivery headers. Examples are synthetic and do not read user data.

Права: events:read

MCP: events_catalog

GETПолучить события
/api/v1/events

Cursor is opaque, profile/filter-bound and expires after 30 days; now returns a cursor without events. Domain read scopes and current visibility are rechecked.

Права: events:read

MCP: events_list

GETПрочитать событие
/api/v1/events/{uuid}

Minimal event IDs and status; private object bodies are not embedded.

Права: events:read

MCP: events_get

GETПолучить вебхуки
/api/v1/webhook-endpoints

Secrets are never returned by list.

Права: webhooks:read

MCP: webhooks_list

POSTПодготовить вебхук
/api/v1/webhook-endpoints

Creates pending_approval; idempotent by requestUuid and argument hash. Signing secret is revealed only once to a browser session, never to an agent. payloadMode defaults to reference; current adds the current domain record after a fresh ACL check at each attempt, never file bytes or credentials.

Права: webhooks:write

PATCHИзменить вебхук
/api/v1/webhook-endpoints/{uuid}

Compare revision before changing. Destination, events or payload mode changes invalidate approval; state can only pause. A successful retry with an old revision returns conflict.

Права: webhooks:write

DELETEУдалить вебхук
/api/v1/webhook-endpoints/{uuid}

Soft deletion cancels outstanding deliveries.

Права: webhooks:write

POSTПодтвердить адрес вебхука
/api/v1/webhook-endpoints/{uuid}/approve

Human browser approval of exact revision; queues a minimal signed test. Endpoint activates only after successful test delivery.

Права: webhooks:write

Доступно в настройках Аишки после повторного входа. API-ключ не заменяет это подтверждение.

POSTПроверить вебхук
/api/v1/webhook-endpoints/{uuid}/test

Queues a new minimal test only for an already approved endpoint. This is not delivery confirmation and retries may create distinct tests.

Права: webhooks:write

Доступно в настройках Аишки после повторного входа. API-ключ не заменяет это подтверждение.

POSTЗаменить секрет вебхука
/api/v1/webhook-endpoints/{uuid}/rotate

Reveals the new signing secret once; old key remains valid for 24 hours. Do not retry blindly.

Права: webhooks:write

Доступно в настройках Аишки после повторного входа. API-ключ не заменяет это подтверждение.

GETДоставки вебхука
/api/v1/webhook-endpoints/{uuid}/deliveries

Latest 100 deliveries with attempt count and sanitized status/error.

Права: webhooks:read

MCP: webhooks_deliveries

POSTПовторить доставку
/api/v1/webhook-endpoints/deliveries/{uuid}/replay

uuid is a delivery UUID, not endpoint UUID. Only failed/cancelled delivery of a currently visible event to an active endpoint can be queued again.

Права: webhooks:write

GETПолучить правила
/api/v1/automations

Only rules of the acting profile.

Права: automations:read

MCP: automations_list

POSTСоздать правило
/api/v1/automations

Idempotent requestUuid; at most 100 rules per profile. Typed filter depth <=6. One allowed action, bounded daily executions; credentials and membership are rechecked at execution.

Права: automations:write

PATCHИзменить правило
/api/v1/automations/{uuid}

Full replacement with expectedRevision; cancels pending executions of the old revision.

Права: automations:write

DELETEУдалить правило
/api/v1/automations/{uuid}

Soft deletion cancels pending executions; history is retained.

Права: automations:write

POSTПроверить правило
/api/v1/automations/dry-run

No effects or execution rows. Supply a visible eventUuid or a synthetic event, never both.

Права: automations:write

GETИсполнения правила
/api/v1/automations/{uuid}/executions

Latest 100 executions with persistent outcome and attempts.

Права: automations:read

MCP: automations_executions

GETМой профиль
/api/v1/commands/profiles.get_own

Мой профиль

Права: profiles:read

MCP: profiles_get_own

POSTСохранить профиль
/api/v1/commands/profiles.update

Сохранить профиль

Права: profiles:write

MCP: profiles_update

POSTДобавить в избранное
/api/v1/commands/favorites.set

Добавить в избранное

Права: favorites:write

MCP: favorites_set

POSTУдалить из избранного
/api/v1/commands/favorites.remove

Удалить из избранного

Права: favorites:write

MCP: favorites_remove

GETМоё избранное
/api/v1/commands/favorites.list

Моё избранное

Права: favorites:read

MCP: favorites_list

GETМои обращения в поддержку
/api/v1/commands/complaints.list

Мои обращения в поддержку

Права: complaints:read

MCP: complaints_list

GETМои отзывы
/api/v1/commands/reviews.list_own

Мои отзывы

Права: reviews:read

MCP: reviews_list_own

POSTСообщить о нарушении
/api/v1/commands/complaints.create

Сообщить о нарушении

Права: complaints:write

MCP: complaints_create

GETОткрыть обращение
/api/v1/commands/complaints.get

Открыть обращение

Права: complaints:read

MCP: complaints_get

POSTОставить отзыв о завершённой работе
/api/v1/commands/reviews.create

Оставить отзыв о завершённой работе

Права: reviews:write

MCP: reviews_create

GETОтзывы о заказчике
/api/v1/commands/customers.get

Отзывы о заказчике

Права: публичное чтение

MCP: customers_get

GETОтзывы специалиста
/api/v1/commands/reviews.list_public

Отзывы специалиста

Права: публичное чтение

MCP: reviews_list_public

POSTОтветить на полученный отзыв
/api/v1/commands/reviews.reply

Ответить на полученный отзыв

Права: reviews:write

MCP: reviews_reply

POSTУдалить свой ответ на отзыв
/api/v1/commands/reviews.reply_remove

Удалить свой ответ на отзыв

Права: reviews:write

MCP: reviews_reply_remove

GETОбучение: сроки и условия поступления
/api/v1/learning/runs/{run}/admission-preview

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: публичное чтение

MCP: learning_admissions_preview

POSTОбучение: Выгрузить учебные показатели
/api/v1/learning/courses/{course}/analytics/export

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:export

MCP: learning_analytics_export

GETОбучение: Учебные показатели
/api/v1/learning/courses/{course}/analytics

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_analytics_get

POSTОбучение: подать апелляцию
/api/v1/learning/submissions/{submission}/appeals

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:answer

MCP: learning_appeals_create

POSTОбучение: рассмотреть апелляцию
/api/v1/learning/appeals/{appeal}/decision

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:review

MCP: learning_appeals_decide

POSTОбучение: следующая инстанция апелляции
/api/v1/learning/appeals/{appeal}/escalate

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:answer

MCP: learning_appeals_escalate

GETОбучение: апелляции
/api/v1/learning/courses/{course}/appeals

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:review

MCP: learning_appeals_list

GETОбучение: обращения по решению
/api/v1/learning/submissions/{submission}/appeals

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_appeals_list_for_submission

GETОбучение: подтверждённые варианты замены задания
/api/v1/learning/appeals/{appeal}/replacement-options

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:review

MCP: learning_appeals_replacements

GETОбучение: Анкета поступления
/api/v1/learning/enrollments/{enrollment}/application

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: публичное чтение

MCP: learning_applications_get

GETОбучение: Журнал учебных изменений
/api/v1/learning/courses/{course}/audit

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_audit_list

GETОбучение: Работы для явных исключений автопроверки
/api/v1/learning/courses/{course}/automatic-override-candidates

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:review

MCP: learning_automatic_overrides_candidates

POSTОбучение: Подтвердить исключение автопроверки
/api/v1/learning/submissions/{submission}/automatic-overrides

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:grade_override

MCP: learning_automatic_overrides_create

GETОбучение: История ручных исключений автопроверки
/api/v1/learning/submissions/{submission}/automatic-overrides

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:review

MCP: learning_automatic_overrides_list

POSTОбучение: Отменить исключение автопроверки
/api/v1/learning/submissions/{submission}/automatic-overrides/{override}/revoke

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:grade_override

MCP: learning_automatic_overrides_revoke

GETОбучение: мои сроки
/api/v1/learning/enrollments/{enrollment}/calendar

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_calendar_get

POSTОбучение: Создать учебное обращение
/api/v1/learning/enrollments/{enrollment}/threads

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:answer

MCP: learning_community_create

GETОбучение: Открыть обсуждение
/api/v1/learning/threads/{thread}

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_community_get

GETОбучение: Мои учебные обсуждения
/api/v1/learning/enrollments/{enrollment}/threads

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_community_list

GETОбучение: Найти учащегося для обращения
/api/v1/learning/courses/{course}/message-recipients

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_community_recipients

POSTОбучение: Ответить в обсуждении
/api/v1/learning/threads/{thread}/messages

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:answer

MCP: learning_community_reply

POSTОбучение: Завершить обращение
/api/v1/learning/threads/{thread}/resolve

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:answer

MCP: learning_community_resolve

POSTОбучение: Связаться с учащимся
/api/v1/learning/courses/{course}/enrollments/{enrollment}/threads

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_community_staff_create

GETОбучение: Обращения учащихся
/api/v1/learning/courses/{course}/threads

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_community_staff_list

GETОбучение: итоговая запись
/api/v1/learning/enrollments/{enrollment}/completion

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_completion_get

GETОбучение: Отзывы об обучении
/api/v1/learning/courses/{course}/course-reviews

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:read

MCP: learning_course_reviews_list

GETОбучение: Мой отзыв об обучении
/api/v1/learning/enrollments/{enrollment}/course-review

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_course_reviews_own

POSTОбучение: Удалить свой отзыв с сохранением истории
/api/v1/learning/enrollments/{enrollment}/course-review/remove

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:answer

MCP: learning_course_reviews_remove

POSTОбучение: Сохранить отзыв об обучении
/api/v1/learning/enrollments/{enrollment}/course-review

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:answer

MCP: learning_course_reviews_save

POSTОбучение: архивировать курс
/api/v1/learning/courses/{course}/archive

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:author

MCP: learning_courses_archive

GETОбучение: редактор программы
/api/v1/learning/author/courses/{course}

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:author

MCP: learning_courses_author_get

GETОбучение: мои курсы
/api/v1/learning/author/courses

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:author

MCP: learning_courses_author_list

POSTОбучение: Выгрузить авторский пакет
/api/v1/learning/courses/{course}/bundle

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:export

MCP: learning_courses_bundle

POSTОбучение: копировать курс
/api/v1/learning/courses/{course}/copy

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:author

MCP: learning_courses_copy

POSTОбучение: создать курс
/api/v1/learning/courses

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:author

MCP: learning_courses_create

POSTОбучение: создать программу из своей карточки
/api/v1/learning/courses/from-publication

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:author

MCP: learning_courses_from_publication

GETОбучение: карточка и программа
/api/v1/learning/courses/{course}

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: публичное чтение

MCP: learning_courses_get

POSTОбучение: Импортировать приватный курс
/api/v1/learning/import

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:author

MCP: learning_courses_import

GETОбучение: каталог курсов
/api/v1/learning/courses

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: публичное чтение

MCP: learning_courses_list

POSTОбучение: посмотреть глазами ученика
/api/v1/learning/courses/{course}/preview

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:author

MCP: learning_courses_preview

POSTОбучение: опубликовать версию
/api/v1/learning/courses/{course}/publish

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:author

MCP: learning_courses_publish

PATCHОбучение: сохранить программу
/api/v1/learning/courses/{course}

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:author

MCP: learning_courses_update

POSTОбучение: проверить программу
/api/v1/learning/courses/{course}/validate

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:author

MCP: learning_courses_validate

POSTОбучение: learning.demo.apply
/api/v1/learning/enrollments/{enrollment}/steps/{node}/apply-demo

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:answer

MCP: learning_demo_apply

GETОбучение: learning.demo.progress
/api/v1/learning/courses/{course}/demo-progress

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_demo_progress

POSTОбучение: learning.demo.try
/api/v1/learning/courses/{course}/steps/{node}/demo

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: публичное чтение

MCP: learning_demo_try

PUTОбучение: сохранить ответ
/api/v1/learning/enrollments/{enrollment}/steps/{node}/draft

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:answer

MCP: learning_drafts_save

POSTОбучение: принять приглашение
/api/v1/learning/enrollments/{enrollment}/accept-invitation

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:enroll

MCP: learning_enrollments_accept_invitation

GETОбучение: учащиеся потока
/api/v1/learning/courses/{course}/enrollments

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_enrollments_course_list

POSTОбучение: решение по зачислению
/api/v1/learning/enrollments/{enrollment}/decision

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_enrollments_decide

POSTОбучение: записаться
/api/v1/learning/runs/{run}/enroll

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:enroll

MCP: learning_enrollments_enroll

GETОбучение: программа учащегося
/api/v1/learning/enrollments/{enrollment}

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_enrollments_get

POSTОбучение: именное приглашение
/api/v1/learning/runs/{run}/invite

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_enrollments_invite

GETОбучение: мое обучение
/api/v1/learning/enrollments

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_enrollments_list

POSTОбучение: персональные условия
/api/v1/learning/enrollments/{enrollment}/overrides

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_enrollments_override

POSTОбучение: приостановить
/api/v1/learning/enrollments/{enrollment}/pause

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:enroll

MCP: learning_enrollments_pause

GETОбучение: Посмотреть условия паузы
/api/v1/learning/enrollments/{enrollment}/pause-preview

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_enrollments_pause_preview

POSTОбучение: вернуться с сохранением истории
/api/v1/learning/enrollments/{enrollment}/restore

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:enroll

MCP: learning_enrollments_restore

POSTОбучение: продолжить
/api/v1/learning/enrollments/{enrollment}/resume

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:enroll

MCP: learning_enrollments_resume

POSTОбучение: начать
/api/v1/learning/enrollments/{enrollment}/start

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:enroll

MCP: learning_enrollments_start

POSTОбучение: выйти
/api/v1/learning/enrollments/{enrollment}/withdraw

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:enroll

MCP: learning_enrollments_withdraw

POSTОбучение: экспорт программы
/api/v1/learning/courses/{course}/exports

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:export

MCP: learning_exports_course

POSTОбучение: экспорт личной истории
/api/v1/learning/enrollments/{enrollment}/exports

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:export

MCP: learning_exports_enrollment

GETОбучение: состояние и результат экспорта
/api/v1/learning/exports/{export}

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:export

MCP: learning_exports_get

GETОбучение: Запросы продления учащихся
/api/v1/learning/courses/{course}/extension-requests

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_extensions_course_list

POSTОбучение: Попросить продление или попытку
/api/v1/learning/enrollments/{enrollment}/extensions

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:answer

MCP: learning_extensions_create

POSTОбучение: Решить запрос продления
/api/v1/learning/extension-requests/{extension}/decide

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_extensions_decide

GETОбучение: Мои запросы продления
/api/v1/learning/enrollments/{enrollment}/extensions

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_extensions_list

POSTОбучение: Создать учебную группу
/api/v1/learning/runs/{run}/groups

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_groups_create

GETОбучение: Учебные группы
/api/v1/learning/courses/{course}/groups

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_groups_list

POSTОбучение: Изменить участников учебной группы
/api/v1/learning/groups/{group}/members

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_groups_members

POSTОбучение: Назначить команду группы
/api/v1/learning/groups/{group}/staff

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_groups_staff

POSTОбучение: Изменить учебную группу
/api/v1/learning/groups/{group}/update

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_groups_update

POSTОбучение: Применить компенсацию после инцидента
/api/v1/learning/incidents/{incident}/compensation-apply

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_incidents_apply

POSTОбучение: Зарегистрировать учебный инцидент
/api/v1/learning/runs/{run}/incidents

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_incidents_create

GETОбучение: Влияние учебного инцидента
/api/v1/learning/incidents/{incident}

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_incidents_get

GETОбучение: Инциденты учебного потока
/api/v1/learning/runs/{run}/incidents

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_incidents_list

POSTОбучение: Проверить компенсацию сроков
/api/v1/learning/incidents/{incident}/compensation-preview

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_incidents_preview

POSTОбучение: Вставить редакцию из библиотеки
/api/v1/learning/courses/{course}/library/{item}/insert

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:author

MCP: learning_library_insert

GETОбучение: Библиотека заданий
/api/v1/learning/library

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:author

MCP: learning_library_list

POSTОбучение: Сохранить задание в библиотеку
/api/v1/learning/courses/{course}/library

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:author

MCP: learning_library_save

GETОбучение: Позиция учебного видео
/api/v1/learning/enrollments/{enrollment}/media-progress

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_media_get

PUTОбучение: Сохранить позицию учебного видео
/api/v1/learning/enrollments/{enrollment}/steps/{node}/media-progress

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:answer

MCP: learning_media_save

GETОбучение: Настройки учебных уведомлений
/api/v1/learning/notification-preferences

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_notification_preferences_get

PUTОбучение: Сохранить настройки учебных уведомлений
/api/v1/learning/notification-preferences

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_notification_preferences_update

GETОбучение: напоминания
/api/v1/learning/notifications

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_notifications_list

POSTОбучение: прочитать напоминание
/api/v1/learning/notifications/{notification}/read

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_notifications_read

POSTОбучение: принять владение курсом
/api/v1/learning/ownership/{invitation}/accept

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_ownership_accept

POSTОбучение: отменить передачу курса
/api/v1/learning/ownership/{invitation}/cancel

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_ownership_cancel

GETОбучение: найти нового владельца
/api/v1/learning/courses/{course}/ownership/candidates

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_ownership_candidates

GETОбучение: передача владения
/api/v1/learning/ownership/invitations

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_ownership_invitations

POSTОбучение: предложить передачу курса
/api/v1/learning/courses/{course}/ownership/invite

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_ownership_invite

POSTОбучение: отклонить передачу курса
/api/v1/learning/ownership/{invitation}/reject

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_ownership_reject

POSTОбучение: черновик учебного кейса
/api/v1/learning/enrollments/{enrollment}/portfolio-drafts

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_portfolio_create

GETОбучение: ответственный за проверку
/api/v1/learning/submissions/{submission}/review-assignment

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_reviews_assignment

GETОбучение: очередь назначений проверяющих
/api/v1/learning/courses/{course}/review-assignments

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_reviews_assignment_list

POSTОбучение: взять работу на проверку
/api/v1/learning/submissions/{submission}/claim

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:review

MCP: learning_reviews_claim

POSTОбучение: проверить работу
/api/v1/learning/submissions/{submission}/review

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:review

MCP: learning_reviews_decide

PUTОбучение: сохранить черновую рубрику
/api/v1/learning/submissions/{submission}/review-draft

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:review

MCP: learning_reviews_draft

GETОбучение: очередь проверки
/api/v1/learning/courses/{course}/reviews

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:review

MCP: learning_reviews_list

POSTОбучение: переназначить проверяющего
/api/v1/learning/submissions/{submission}/reassign

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_reviews_reassign

POSTОбучение: освободить проверку
/api/v1/learning/submissions/{submission}/release

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:review

MCP: learning_reviews_release

POSTОбучение: ошибка задания куратору
/api/v1/learning/submissions/{submission}/report-issue

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:review

MCP: learning_reviews_report_issue

GETОбучение: рабочая область проверки
/api/v1/learning/submissions/{submission}/review-workspace

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:review

MCP: learning_reviews_workspace

POSTОбучение: Архивировать поток
/api/v1/learning/runs/{run}/archive

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_runs_archive

POSTОбучение: Отменить поток
/api/v1/learning/runs/{run}/cancel

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_runs_cancel

POSTОбучение: открыть поток
/api/v1/learning/courses/{course}/runs

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_runs_create

POSTОбучение: Завершить поток
/api/v1/learning/runs/{run}/finish

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_runs_finish

GETОбучение: потоки курса
/api/v1/learning/courses/{course}/runs

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: публичное чтение

MCP: learning_runs_list

PATCHОбучение: изменить поток
/api/v1/learning/runs/{run}

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_runs_update

POSTОбучение: Применить подтверждённые учебные сроки
/api/v1/learning/schedule-previews/{preview}/apply

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_schedule_apply

POSTОбучение: Проверить изменение учебных сроков
/api/v1/learning/runs/{run}/schedule-preview

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_schedule_preview

POSTОбучение: Принять место на курсе
/api/v1/learning/enrollments/{enrollment}/accept-seat

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:enroll

MCP: learning_seats_accept

POSTОбучение: Отказаться от резервирования места
/api/v1/learning/enrollments/{enrollment}/decline-seat

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:enroll

MCP: learning_seats_decline

POSTОбучение: принять учебную роль
/api/v1/learning/staff/{assignment}/accept

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_staff_accept

POSTОбучение: пригласить преподавателя
/api/v1/learning/courses/{course}/staff

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_staff_assign

GETОбучение: найти участника команды
/api/v1/learning/courses/{course}/staff/candidates

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_staff_candidates

POSTОбучение: принять приглашение команды
/api/v1/learning/staff/email-invitations/{invitation}/accept

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_staff_email_accept

GETОбучение: открыть приглашение команды
/api/v1/learning/staff/email-invitations/{invitation}

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_staff_email_get

GETОбучение: входящие приглашения команды
/api/v1/learning/staff/email-invitations

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_staff_email_invitations

POSTОбучение: пригласить участника команды по почте
/api/v1/learning/courses/{course}/staff/email-invitations

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_staff_email_invite

GETОбучение: отправленные приглашения команды
/api/v1/learning/courses/{course}/staff/email-invitations

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_staff_email_list

POSTОбучение: отклонить приглашение команды
/api/v1/learning/staff/email-invitations/{invitation}/reject

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_staff_email_reject

POSTОбучение: отозвать приглашение команды
/api/v1/learning/staff/email-invitations/{invitation}/revoke

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_staff_email_revoke

GETОбучение: мои приглашения
/api/v1/learning/staff/invitations

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_staff_invitations

GETОбучение: команда курса
/api/v1/learning/courses/{course}/staff

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_staff_list

POSTОбучение: изменить право приглашать преподавателей
/api/v1/learning/courses/{course}/staff/{assignment}/permissions

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_staff_permissions

POSTОбучение: отозвать роль
/api/v1/learning/courses/{course}/staff/revoke

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_staff_revoke

POSTОбучение: отметить ознакомление
/api/v1/learning/enrollments/{enrollment}/steps/{node}/acknowledge

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:answer

MCP: learning_steps_acknowledge

GETОбучение: открыть выбранный шаг
/api/v1/learning/enrollments/{enrollment}/steps/{node}

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_steps_get

POSTОбучение: сдать работу
/api/v1/learning/enrollments/{enrollment}/steps/{node}/submit

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:answer

MCP: learning_submissions_create

GETОбучение: результат попытки
/api/v1/learning/submissions/{submission}

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_submissions_get

GETОбучение: история попыток шага
/api/v1/learning/enrollments/{enrollment}/steps/{node}/submissions

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_submissions_history

GETОбучение: рабочая область преподавателя
/api/v1/learning/teaching/courses/{course}

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_teaching_get

GETОбучение: преподавание
/api/v1/learning/teaching/courses

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:study

MCP: learning_teaching_list

POSTОбучение: Подтвердить перенос обучения
/api/v1/learning/courses/{course}/transfers/{transfer}/apply

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_transfers_apply

POSTОбучение: Сравнить условия переноса обучения
/api/v1/learning/courses/{course}/transfers/preview

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_transfers_preview

POSTОбучение: Получить постоянный вариант задания
/api/v1/learning/enrollments/{enrollment}/steps/{node}/variant

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:answer

MCP: learning_variants_issue

GETОбучение: Версии программы
/api/v1/learning/courses/{course}/versions

Учебная операция с серверными правами, UUID, revision и requestUuid. Опубликованная версия и принятая работа неизменяемы. Прогресс пользователя отделен от компании. Закрытые ответы, материалы и проверки не выдаются без соответствующего доступа. Контракт: /docs/learning/http-contract.md.

Права: learning:manage

MCP: learning_versions_list

GETОбучение: версии Python-проверок
/api/v1/learning/courses/{course}/checkers

Проверяющая программа исполняется только в отдельной изолированной среде. Сохранение версии не запускает Python. Preflight проходит положительные, отрицательные и граничные примеры; без готового runner публикация блокируется.

Права: learning:checkers

MCP: learning_checkers_list

GETОбучение: открыть Python-проверку
/api/v1/learning/courses/{course}/checkers/{checker}

Проверяющая программа исполняется только в отдельной изолированной среде. Сохранение версии не запускает Python. Preflight проходит положительные, отрицательные и граничные примеры; без готового runner публикация блокируется.

Права: learning:checkers

MCP: learning_checkers_get

POSTОбучение: создать Python-проверку
/api/v1/learning/courses/{course}/checkers

Проверяющая программа исполняется только в отдельной изолированной среде. Сохранение версии не запускает Python. Preflight проходит положительные, отрицательные и граничные примеры; без готового runner публикация блокируется.

Права: learning:checkers

MCP: learning_checkers_create

POSTОбучение: тестировать проверку в изоляции
/api/v1/learning/courses/{course}/checkers/{checker}/preflight

Проверяющая программа исполняется только в отдельной изолированной среде. Сохранение версии не запускает Python. Preflight проходит положительные, отрицательные и граничные примеры; без готового runner публикация блокируется.

Права: learning:checkers

MCP: learning_checkers_preflight

GETОбучение: результат предварительной проверки
/api/v1/learning/courses/{course}/preflights/{job}

Проверяющая программа исполняется только в отдельной изолированной среде. Сохранение версии не запускает Python. Preflight проходит положительные, отрицательные и граничные примеры; без готового runner публикация блокируется.

Права: learning:checkers

MCP: learning_preflights_get

GETОбучение: работы для перепроверки
/api/v1/learning/courses/{course}/regrade-candidates

Предварительная перепроверка неизменяемой работы новой версией checker. Только владелец либо разработчик проверки с ролью проверяющего. Применение новой immutable evaluation отдельно подтверждается; прежняя история сохранена.

Права: learning:checkers

MCP: learning_regrades_candidates

POSTОбучение: предварительная перепроверка
/api/v1/learning/courses/{course}/regrades

Предварительная перепроверка неизменяемой работы новой версией checker. Только владелец либо разработчик проверки с ролью проверяющего. Применение новой immutable evaluation отдельно подтверждается; прежняя история сохранена.

Права: learning:checkers

MCP: learning_regrades_create

GETОбучение: влияние перепроверки
/api/v1/learning/courses/{course}/regrades/{regrade}

Предварительная перепроверка неизменяемой работы новой версией checker. Только владелец либо разработчик проверки с ролью проверяющего. Применение новой immutable evaluation отдельно подтверждается; прежняя история сохранена.

Права: learning:checkers

MCP: learning_regrades_get

POSTОбучение: применить перепроверку
/api/v1/learning/courses/{course}/regrades/{regrade}/apply

Предварительная перепроверка неизменяемой работы новой версией checker. Только владелец либо разработчик проверки с ролью проверяющего. Применение новой immutable evaluation отдельно подтверждается; прежняя история сохранена.

Права: learning:checkers

MCP: learning_regrades_apply

GETОбучение: История остановок и возобновлений проверки
/api/v1/learning/courses/{course}/checkers/{checker}/control-history

Изолированная учебная проверка. Сервер повторно проверяет права и requestUuid; пробный запуск не даёт зачёт. Закрытые ответы и диагностика доступны только уполномоченной команде.

Права: learning:checkers

MCP: learning_checkers_control_history

GETОбучение: Приватная диагностика проверяющей программы
/api/v1/learning/courses/{course}/grading-jobs/{job}/diagnostics

Изолированная учебная проверка. Сервер повторно проверяет права и requestUuid; пробный запуск не даёт зачёт. Закрытые ответы и диагностика доступны только уполномоченной команде.

Права: learning:checkers

MCP: learning_grading_diagnostics

GETОбучение: Ресурсы автоматической проверки
/api/v1/learning/courses/{course}/grading-usage

Изолированная учебная проверка. Сервер повторно проверяет права и requestUuid; пробный запуск не даёт зачёт. Закрытые ответы и диагностика доступны только уполномоченной команде.

Права: learning:checkers

MCP: learning_grading_usage

GETОбучение: Результаты массовой перепроверки
/api/v1/learning/courses/{course}/regrade-plans/{plan}

Изолированная учебная проверка. Сервер повторно проверяет права и requestUuid; пробный запуск не даёт зачёт. Закрытые ответы и диагностика доступны только уполномоченной команде.

Права: learning:checkers

MCP: learning_regrade_plans_get

GETОбучение: Состояние варианта
/api/v1/learning/enrollments/{enrollment}/steps/{node}/generated-variants

Изолированная учебная проверка. Сервер повторно проверяет права и requestUuid; пробный запуск не даёт зачёт. Закрытые ответы и диагностика доступны только уполномоченной команде.

Права: learning:answer

MCP: learning_generated_variants_state

GETОбучение: Получить подготовленный вариант
/api/v1/learning/generated-variants/{job}

Изолированная учебная проверка. Сервер повторно проверяет права и requestUuid; пробный запуск не даёт зачёт. Закрытые ответы и диагностика доступны только уполномоченной команде.

Права: learning:answer

MCP: learning_generated_variants_get

GETОбучение: Результат пробного запуска
/api/v1/learning/sample-runs/{job}

Изолированная учебная проверка. Сервер повторно проверяет права и requestUuid; пробный запуск не даёт зачёт. Закрытые ответы и диагностика доступны только уполномоченной команде.

Права: learning:answer

MCP: learning_sample_runs_get

POSTОбучение: Возобновить автоматическую проверку
/api/v1/learning/courses/{course}/checkers/{checker}/resume

Изолированная учебная проверка. Сервер повторно проверяет права и requestUuid; пробный запуск не даёт зачёт. Закрытые ответы и диагностика доступны только уполномоченной команде.

Права: learning:checkers

MCP: learning_checkers_resume

POSTОбучение: Приостановить автоматическую проверку
/api/v1/learning/courses/{course}/checkers/{checker}/suspend

Изолированная учебная проверка. Сервер повторно проверяет права и requestUuid; пробный запуск не даёт зачёт. Закрытые ответы и диагностика доступны только уполномоченной команде.

Права: learning:checkers

MCP: learning_checkers_suspend

POSTОбучение: Подготовить массовую перепроверку
/api/v1/learning/courses/{course}/regrade-plans

Изолированная учебная проверка. Сервер повторно проверяет права и requestUuid; пробный запуск не даёт зачёт. Закрытые ответы и диагностика доступны только уполномоченной команде.

Права: learning:checkers

MCP: learning_regrade_plans_create

POSTОбучение: Подтвердить массовую перепроверку
/api/v1/learning/courses/{course}/regrade-plans/{plan}/commit

Изолированная учебная проверка. Сервер повторно проверяет права и requestUuid; пробный запуск не даёт зачёт. Закрытые ответы и диагностика доступны только уполномоченной команде.

Права: learning:checkers

MCP: learning_regrade_plans_commit

POSTОбучение: Подготовить воспроизводимый вариант
/api/v1/learning/enrollments/{enrollment}/steps/{node}/generated-variants

Изолированная учебная проверка. Сервер повторно проверяет права и requestUuid; пробный запуск не даёт зачёт. Закрытые ответы и диагностика доступны только уполномоченной команде.

Права: learning:answer

MCP: learning_generated_variants_create

POSTОбучение: Пробный запуск кода
/api/v1/learning/enrollments/{enrollment}/steps/{node}/sample-runs

Изолированная учебная проверка. Сервер повторно проверяет права и requestUuid; пробный запуск не даёт зачёт. Закрытые ответы и диагностика доступны только уполномоченной команде.

Права: learning:answer

MCP: learning_sample_runs_create

POSTОбучение: Отменить проверку
/api/v1/learning/submissions/{submission}/cancel

Изолированная учебная проверка. Сервер повторно проверяет права и requestUuid; пробный запуск не даёт зачёт. Закрытые ответы и диагностика доступны только уполномоченной команде.

Права: learning:answer

MCP: learning_submissions_cancel

События