List

Note

Keep in mind: the items in the list are returned according to the access level of the token owner.

Full list with pagination

POST https://do.workzeal.com/common/list/paging/4?columns=id,number,sum

Query Parameters

Name Type Description
columns* String List of columns
records_onpage Int Records per page, but no more than 500
page Int Page number
sorting_column String Sorting column
sorting_direction Int Sorting: 0 Asc, 1 Desc
curl --location --request POST 'https://do.workzeal.com/common/list/paging/4?columns=id,number,date,sum,type_id,company_id&records_onpage=50&page=1' \
--header 'Authorization: Bearer XXXX-XXXXXXX-XXXXXXX' \
--header 'Content-Type: application/json' \
--data-raw 'null'

Columns

Name Description
id Document ID
number Document number
date Document date
sum Document amount
type_id Document type ID
type Document type as text
status_id Flag/status ID
status Flag/status as text
note Note
user_id Responsible person ID
user_name Responsible person
company_id Client ID
company_name Client name
deal_id Deal ID
deal Deal as text
contact_id Contact person ID
date_expire Expiration date
external_code External code (from your accounting system)
tags Tags

Filtering

Filters are added to the request as query parameters and can be combined with each other:

  • company_id, client ID, only documents of one company: ?company_id=368132
  • deal_id, deal ID, only documents of one deal: ?deal_id=12345
  • user_ids, IDs of responsible persons, one or several: ?user_ids=37 or ?user_ids=1,3,5
  • date1, from date (format YYYY-MM-DD): ?date1=2026-08-01
  • date2, to date (format YYYY-MM-DD): ?date2=2026-08-31
  • tags, comma-separated tags: ?tags=contract

Example: documents of one client for August:

curl --location --request POST 'https://do.workzeal.com/common/list/paging/4?columns=id,number,sum&company_id=368132&date1=2026-08-01&date2=2026-08-31' \
--header 'Authorization: Bearer XXXX-XXXXXXX-XXXXXXX' \
--header 'Content-Type: application/json' \
--data-raw 'null'

Note

This is a common pattern: pagination and filters work the same way in all modules of the universal list common/list/paging/{module}; see the detailed description on the list of deals page.

Quick list by client or deal

GET https://do.workzeal.com/document/list?company_id=368132

A simplified method without pagination: returns the documents of one client, newest first. Instead of a client, you can request the documents of one deal:

GET https://do.workzeal.com/document/list?deal_id=12345

Query Parameters

Name Type Description
company_id Int Client ID. Required if deal_id is not passed
deal_id Int Deal ID. Required if company_id is not passed
curl --location --request GET 'https://do.workzeal.com/document/list?company_id=368132' \
--header 'Authorization: Bearer XXXX-XXXXXXX-XXXXXXX'

Response

{
  "status": "success",
  "error": "",
  "code": null,
  "rows": 0,
  "pages": 0,
  "page": 0,
  "value": "[ { ...document... }, { ...document... } ]"
}
// value - JSON array of documents
Previous
Next