Для AI-агентов: markdown этой страницы — /docs-content/infra/jobs/run.md индекс документации — /llms.txt

Запустить вручную

POST /v1/infra/servers/:id/jobs/:jobId/run

Принимает один ручной запуск и сразу возвращает runId. Разрешён и при enabled=false, но требует доступности функции и расписаний. HTTP 202 не означает доставку или завершение работы. Каждый повтор этого POST создаёт новый runId: не повторяйте вслепую после потери ответа. Наблюдайте журнал.

Нужен ключ с vibe:infra и существующие права на сервер. Для записи — управляющий ключ или роль команды с правом управления жизненным циклом. Общие правила; проверка подписи.

Параметры

Параметр Где Тип Обязателен Описание
id path string yes ID сервера из списка серверов
jobId path string yes ID задачи из списка

Тело запроса и query-параметры не нужны. Для POST без тела не передавайте Content-Type: application/json; пустое JSON-тело отвергается до обработчика.

Примеры

curl — личный ключ

Terminal
curl --max-time 20 -X POST "https://vibecode.bitrix24.tech/v1/infra/servers/SERVER_ID/jobs/JOB_ID/run" \
  -H "X-Api-Key: YOUR_API_KEY"

curl — OAuth-приложение

Terminal
curl --max-time 20 -X POST "https://vibecode.bitrix24.tech/v1/infra/servers/SERVER_ID/jobs/JOB_ID/run" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

JavaScript — личный ключ

javascript
const serverId = 'SERVER_ID';
const jobId = 'JOB_ID';
const res = await fetch(`https://vibecode.bitrix24.tech/v1/infra/servers/${encodeURIComponent(serverId)}/jobs/${encodeURIComponent(jobId)}/run`, {
  method: 'POST',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
  },
});
const result = await res.json();
if (!res.ok || !result.success) throw new Error(result.error?.code ?? `HTTP_${res.status}`);
console.log(result);

JavaScript — OAuth-приложение

javascript
const serverId = 'SERVER_ID';
const jobId = 'JOB_ID';
const res = await fetch(`https://vibecode.bitrix24.tech/v1/infra/servers/${encodeURIComponent(serverId)}/jobs/${encodeURIComponent(jobId)}/run`, {
  method: 'POST',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
  },
});
const result = await res.json();
if (!res.ok || !result.success) throw new Error(result.error?.code ?? `HTTP_${res.status}`);
console.log(result);

Ответ

HTTP 202. Пример формы ответа с вымышленными идентификаторами, не результат живого запроса.

JSON
{
  "success": true,
  "data": {
    "runId": "run_example"
  }
}

Поля ответа

Поле Тип Описание
success boolean Всегда true при успехе.
data object Объект с идентификатором нового запуска runId.

Секрет подписи в ответе отсутствует.

Поля объекта data:

Поле Тип Описание
runId string Новый ID запуска для журнала

Ошибки

HTTP Код Причина
401 MISSING_API_KEY Не передан ключ
403 INFRA_FORBIDDEN_FOR_COWORK_KEY Ключ Коворка не допускает запись в инфраструктуру; используйте ключ для развёртывания
403 INFRA_SCOPE_REQUIRED Нужен scope vibe:infra
403 WRITE_BLOCKED_READONLY_KEY Ключ только для чтения не допускает запись
403 SERVER_ROLE_FORBIDDEN Роль участника команды не допускает это действие
404 NOT_FOUND Сервер не найден или недоступен вызывающему
404 NOT_FOUND Задача отсутствует, удалена или принадлежит другому серверу
404 FEATURE_DISABLED Функция недоступна порталу
403 WAKE_SCHEDULE_DISABLED Порталу недоступны расписания
400 BLACKHOLE_ONLY Нужен сервер Black Hole
400 GALAXY_NOT_SUPPORTED Хост галактики не поддерживается
403 WAKE_SCHEDULE_GALAXY_DISABLED Расписания приложений галактики недоступны
429 RATE_LIMITED Слишком много запросов; настройка мутаций 10 в минуту, общие ограничения также действуют

Полный список общих ошибок API — Ошибки.

JSON
{
  "success": false,
  "error": {
    "code": "NOT_FOUND",
    "message": "Job not found"
  }
}

Смотрите также