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

Сдать рабочий отчёт

POST /v1/workday/work-reports/submit

Сдаёт существующий рабочий отчёт или создаёт новый и сразу сдаёт его.

Требуется скоуп timeman. Битрикс24 проверяет права владельца учётных данных. Ключ READONLY может читать отчёты, запись запрещена.

Поля запроса (body)

Поле Тип Обяз. Описание
reportText string да Текст отчёта. С reportId заменяет текст отчёта, пустая строка его очищает
reportId integer нет ID отчёта. Список: GET /v1/workday/work-reports. Без reportId создаётся и сдаётся новый отчёт владельца учётных данных

Примеры

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

Terminal
curl -X POST https://vibecode.bitrix24.tech/v1/workday/work-reports/submit \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "reportId": 143, "reportText": "Weekly report" }'

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

Terminal
curl -X POST https://vibecode.bitrix24.tech/v1/workday/work-reports/submit \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{ "reportId": 143, "reportText": "Weekly report" }'

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/workday/work-reports/submit', {
  method: 'POST',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    reportId: 143,
    reportText: 'Weekly report',
  }),
})
const { data } = await res.json()

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/workday/work-reports/submit', {
  method: 'POST',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    reportId: 143,
    reportText: 'Weekly report',
  }),
})
const { data } = await res.json()

Поля ответа

Поле Тип Описание
success boolean true при успешной сдаче
data object Сданный отчёт. Все поля — Поля отчёта

Пример ответа

Показаны основные поля отчёта. Полный список — Поля отчёта:

JSON
{
  "success": true,
  "data": {
    "id": 143,
    "userId": 101,
    "active": true,
    "reportType": "day",
    "reportDate": "2026-10-06T18:22:40.000Z",
    "dateFrom": "2026-10-05T21:00:00.000Z",
    "dateTo": "2026-10-05T21:00:00.000Z",
    "report": "Weekly report",
    "type": "REPORT",
    "mark": "N",
    "approve": "Y"
  }
}

Пример ответа при ошибке

400 — не передан reportText:

JSON
{
  "success": false,
  "error": {
    "code": "INVALID_PARAMS",
    "message": "reportText is required and must be a string"
  }
}

Ошибки

HTTP Код Описание
400 INVALID_PARAMS Не передан reportText, в reportId не положительное целое число или в теле есть неизвестное поле
404 ENTITY_NOT_FOUND Отчёта с таким reportId нет
403 BITRIX_ACCESS_DENIED Отчёт другого сотрудника, и у владельца учётных данных нет прав в Битрикс24 менять отчёты этого сотрудника
409 TIMEMAN_MODULE_NOT_ENABLED Учёт рабочего времени недоступен на портале
422 BITRIX_ERROR Битрикс24 отказал в операции
502 BITRIX_UNAVAILABLE Битрикс24 недоступен или вернул ответ неожиданной формы
401 MISSING_API_KEY Не передан заголовок X-Api-Key
401 TOKEN_MISSING Ключ приложения передан без токена сессии в Authorization: Bearer
401 INVALID_SESSION Токен сессии неверный или истёк
403 WRITE_BLOCKED_READONLY_KEY Ключ READONLY, сдавать отчёты нельзя
403 SCOPE_DENIED У ключа нет скоупа timeman
429 RATE_LIMITED Превышен общий лимит запросов

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

Известные особенности

  • Период нового отчёта — как при создании. Без reportId период выбирается так же, как при создании без dateFrom и dateTo: Создать рабочий отчёт.
  • Подтверждение зависит от руководителей сотрудника. Если у сотрудника есть руководители, сданный отчёт ждёт их оценки: approve равен "N". Если руководителей нет, отчёт подтверждается сразу: approve равен "Y".
  • Сданный отчёт можно сдать снова. Текст заменяется, отчёт остаётся сданным, mark и approve не меняются.

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