For AI agents: markdown of this page — /docs-content-en/workday/work-reports/get.md documentation index — /llms.txt
Read a work report
GET /v1/workday/work-reports/:id
Returns a single work report by the report ID and the ID of the employee it belongs to.
Requires the timeman scope. Bitrix24 checks the credential owner’s permissions. READONLY keys can read reports and cannot write them.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
Parameterid (path) |
Typeinteger | Requiredyes | Default— | DescriptionReport ID. List: GET /v1/workday/work-reports |
ParameteruserId (query) |
Typeinteger | Requiredyes | Default— | DescriptionID of the employee the report belongs to — the userId field of the report. List: GET /v1/users. Any other ID returns 403 BITRIX_ACCESS_DENIED |
Examples
curl — personal key
curl "https://vibecode.bitrix24.com/v1/workday/work-reports/143?userId=101" \
-H "X-Api-Key: YOUR_API_KEY"
curl — OAuth application
curl "https://vibecode.bitrix24.com/v1/workday/work-reports/143?userId=101" \
-H "X-Api-Key: YOUR_APP_KEY" \
-H "Authorization: Bearer USER_SESSION_TOKEN"
JavaScript — personal key
const res = await fetch('https://vibecode.bitrix24.com/v1/workday/work-reports/143?userId=101', {
headers: {
'X-Api-Key': 'YOUR_API_KEY',
},
})
const { data } = await res.json()
JavaScript — OAuth application
const res = await fetch('https://vibecode.bitrix24.com/v1/workday/work-reports/143?userId=101', {
headers: {
'X-Api-Key': 'YOUR_APP_KEY',
'Authorization': 'Bearer USER_SESSION_TOKEN',
},
})
const { data } = await res.json()
Response fields
| Field | Type | Description |
|---|---|---|
Fieldsuccess |
Typeboolean | Descriptiontrue when the request succeeds |
Fielddata |
Typeobject | DescriptionThe report. All fields — Report fields |
Response example
The main report fields are shown. For the full list, see Report fields:
{
"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"
}
}
Error response example
404 — no report with this id exists:
{
"success": false,
"error": {
"code": "ENTITY_NOT_FOUND",
"message": "Report not found."
}
}
Errors
| HTTP | Code | Description |
|---|---|---|
| HTTP400 | CodeINVALID_PARAMS |
DescriptionuserId is missing, id or userId is not a positive integer, an unknown parameter is passed, or a parameter is passed twice |
| HTTP404 | CodeENTITY_NOT_FOUND |
DescriptionNo report with this id exists |
| HTTP403 | CodeBITRIX_ACCESS_DENIED |
DescriptionuserId does not match the employee the report belongs to, or the credential owner lacks Bitrix24 permissions for this employee's reports |
| HTTP409 | CodeTIMEMAN_MODULE_NOT_ENABLED |
DescriptionTime Management is not available on this portal |
| HTTP422 | CodeBITRIX_ERROR |
DescriptionBitrix24 refused the operation |
| HTTP502 | CodeBITRIX_UNAVAILABLE |
DescriptionBitrix24 is unavailable or returned a response of an unexpected shape |
| HTTP401 | CodeMISSING_API_KEY |
DescriptionThe X-Api-Key header was not passed |
| HTTP401 | CodeTOKEN_MISSING |
DescriptionAn app key was sent without a session token in Authorization: Bearer |
| HTTP401 | CodeINVALID_SESSION |
DescriptionThe session token is invalid or has expired |
| HTTP403 | CodeSCOPE_DENIED |
DescriptionThe key lacks the timeman scope |
| HTTP429 | CodeRATE_LIMITED |
DescriptionThe report read limit or the general request limit was exceeded |
The full list of common API errors — Errors.