สำหรับเอเจนต์ AI: markdown ของหน้านี้ — /docs-content-en/workday/work-reports.md ดัชนีเอกสาร — /llms.txt

บทความในเอกสารมีให้บริการเป็นภาษาอังกฤษในขณะนี้

Work reports

An employee's work report for a period: the employee creates and submits the report, and the manager reads their subordinates' reports and marks them.

Report contents — Report fields.

Scope: timeman | Base URL: https://vibecode.bitrix24.com/v1 | Authorization: X-Api-Key

List work reports

GET /v1/workday/work-reports

Returns an employee's work reports, filtered by period and paginated.

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
userId (query) integer yes — ID of the employee whose reports you need. List: GET /v1/users
activeOnly (query) boolean no — true returns submitted reports only
dateFrom (query) string no — Period start in ISO 8601 format with a time zone. Reports whose period overlaps the given one are returned; the boundaries are inclusive
dateTo (query) string no — Period end in the same format
limit (query) integer no 50 How many reports to return, from 1 to 50
offset (query) integer no 0 How many reports to skip. Cannot be combined with page
page (query) integer no 1 Page number, with limit reports per page. Cannot be combined with offset
order (query) string no {"id":"desc"} Sort order — a JSON object with asc or desc directions, for example {"id":"asc"}
select (query) string no — Comma-separated report fields. For the list, see Report fields

Examples

curl — personal key

Terminal
curl "https://vibecode.bitrix24.com/v1/workday/work-reports?userId=101" \
  -H "X-Api-Key: YOUR_API_KEY"

curl — OAuth application

Terminal
curl "https://vibecode.bitrix24.com/v1/workday/work-reports?userId=101" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

JavaScript — personal key

javascript
const res = await fetch('https://vibecode.bitrix24.com/v1/workday/work-reports?userId=101', {
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
  },
})
const { data, meta } = await res.json()

JavaScript — OAuth application

javascript
const res = await fetch('https://vibecode.bitrix24.com/v1/workday/work-reports?userId=101', {
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
  },
})
const { data, meta } = await res.json()

Response fields

Field Type Description
success boolean true when the request succeeds
data array Array of reports. For the fields of each report, see Report fields
meta.limit integer Page size
meta.offset integer How many reports were skipped
meta.hasMore boolean true when the page holds limit reports and more may follow

Response example

The main report fields are shown. For the full list, see Report fields:

JSON
{
  "success": true,
  "data": [
    {
      "id": 145,
      "userId": 101,
      "active": false,
      "reportType": "day",
      "reportDate": "2026-10-06T18:33:06.000Z",
      "dateFrom": "2026-10-06T21:00:00.000Z",
      "dateTo": "2026-10-06T21:00:00.000Z",
      "report": "Sprint summary",
      "type": "REPORT",
      "mark": "N",
      "approve": "N"
    },
    {
      "id": 143,
      "userId": 101,
      "active": false,
      "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": "N"
    }
  ],
  "meta": {
    "limit": 50,
    "offset": 0,
    "hasMore": false
  }
}

Error response example

400 — userId is missing:

JSON
{
  "success": false,
  "error": {
    "code": "INVALID_PARAMS",
    "message": "Expected a positive integer"
  }
}

Errors

HTTP Code Description
400 WORKDAY_REPORT_LIMIT_EXCEEDED limit is greater than 50
400 INVALID_PARAMS userId is missing, offset and page are both passed, select has an unknown field, a date is invalid, or an unknown parameter is passed
403 BITRIX_ACCESS_DENIED The credential owner lacks Bitrix24 permissions for this employee's reports
409 TIMEMAN_MODULE_NOT_ENABLED Time Management is not available on this portal
422 BITRIX_ERROR Bitrix24 refused the operation
502 BITRIX_UNAVAILABLE Bitrix24 is unavailable or returned a response of an unexpected shape
401 MISSING_API_KEY The X-Api-Key header was not passed
401 TOKEN_MISSING An app key was sent without a session token in Authorization: Bearer
401 INVALID_SESSION The session token is invalid or has expired
403 SCOPE_DENIED The key lacks the timeman scope
429 RATE_LIMITED The report read limit or the general request limit was exceeded

The full list of common API errors — Errors.

Known specifics

  • select keeps only the listed fields in each report. id is always returned, even when it is not in the list.
  • Only id sets the order. Other fields in order apply after id, so they do not change the order of the results.
  • dateFrom and dateTo must be strictly later than 1970-01-01T00:00:00Z. An earlier date, or that exact timestamp, returns 400 INVALID_PARAMS.

See also