لوكلاء 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
ParameteruserId (query) Typeinteger Requiredyes Default— DescriptionID of the employee whose reports you need. List: GET /v1/users
ParameteractiveOnly (query) Typeboolean Requiredno Default— Descriptiontrue returns submitted reports only
ParameterdateFrom (query) Typestring Requiredno Default— DescriptionPeriod start in ISO 8601 format with a time zone. Reports whose period overlaps the given one are returned; the boundaries are inclusive
ParameterdateTo (query) Typestring Requiredno Default— DescriptionPeriod end in the same format
Parameterlimit (query) Typeinteger Requiredno Default50 DescriptionHow many reports to return, from 1 to 50
Parameteroffset (query) Typeinteger Requiredno Default0 DescriptionHow many reports to skip. Cannot be combined with page
Parameterpage (query) Typeinteger Requiredno Default1 DescriptionPage number, with limit reports per page. Cannot be combined with offset
Parameterorder (query) Typestring Requiredno Default{"id":"desc"} DescriptionSort order — a JSON object with asc or desc directions, for example {"id":"asc"}
Parameterselect (query) Typestring Requiredno Default— DescriptionComma-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
Fieldsuccess Typeboolean Descriptiontrue when the request succeeds
Fielddata Typearray DescriptionArray of reports. For the fields of each report, see Report fields
Fieldmeta.limit Typeinteger DescriptionPage size
Fieldmeta.offset Typeinteger DescriptionHow many reports were skipped
Fieldmeta.hasMore Typeboolean Descriptiontrue 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
HTTP400 CodeWORKDAY_REPORT_LIMIT_EXCEEDED Descriptionlimit is greater than 50
HTTP400 CodeINVALID_PARAMS DescriptionuserId is missing, offset and page are both passed, select has an unknown field, a date is invalid, or an unknown parameter is passed
HTTP403 CodeBITRIX_ACCESS_DENIED DescriptionThe 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.

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