Skip to main content
GET
List records
In the Heliyos MCP server: heliyos_records_list, heliyos_watchlist_get.

Authorizations

Authorization
string
header
required

A workspace API key, sent as Authorization: Bearer heliyos_.... Create one in Heliyos under Settings → API keys. A key acts as a workspace admin in the one workspace it was created in.

Path Parameters

id
string
required

The object's id.

Pattern: ^[0-9a-fA-F]{24}$

Query Parameters

limit
integer
default:20

Records per page, 1 to 100. Defaults to 20. In page-number mode it is the page size when filters.pageSize is not sent.

Required range: 1 <= x <= 100
cursor
string

The next_cursor from the previous page. Only valid in cursor mode: no sort and no board in filters. next_cursor from the previous page; only valid with the default sort.

Maximum string length: 200
page
integer

A page number, starting at 1. Switches to page-number paging. filters.page takes precedence when both are sent.

Required range: x >= 1
filters
string

A JSON object, URL-encoded, at most 20,000 characters. No key may start with $ or contain a dot. Keys:

  • search (string): matches records where any field value contains the text, ignoring case. Text, numbers and booleans are searched; lists, objects and values longer than 100 characters are not. Results are not ranked by relevance; they keep the mode's order or your sort.
  • filters (array, at most 500): conditions { "field", "operator", "value", "conjunction" }.
    • field: a field key, or createdAt, updatedAt or isAgentAssigned (watched). Anything from the first - on is ignored. <objectType>.<fieldKey> (for example company.company_name) compares values stored on the record's links, not the linked record itself.
    • operator: equals, notEquals (exact match; text ignores case); contains, notContains, startsWith, endsWith (text, ignoring case; value must be a string, and a comma in a contains or notContains value means any or none of the parts); empty, notEmpty (missing, null or ""; no value); greaterThan, greaterThanOrEqual, lessThan, lessThanOrEqual (numbers); after, before (dates, the same as greaterThan and lessThan). Any other operator is treated as an exact match on the raw value.
    • value: a string, number or boolean. A string that looks like a number is compared as a number. Date fields are stored as text, so send ISO 8601 dates (2026-12-31). For createdAt and updatedAt the value is read as a date, and equals matches the whole day.
    • conjunction: and (default) or or. The first condition's is ignored; every other condition must use the same one. Mixing and and or is a 400.
  • sort (array): { "field", "direction" }, with the same field names as conditions and direction asc or desc. Text sorts ignore case. Sorting by <objectType>.<fieldKey> leaves out records without a link of that type.
  • page (integer, at least 1) and pageSize (integer, at least 1): page-number paging.
  • bypassPageSizeCap (boolean): raises the page size cap from 100 to 5000.
  • isAgentAssigned (boolean): true for watched records only, false for the others.
  • enrich (boolean, default true): false leaves out linked records' values and returns 0 for the activity counts. Faster for pickers.
  • viewType (kanban) with kanbanConfig.groupByField (a field key, default status): return a board grouped by that field. JSON-encoded filter object (search, filters, sort, page, pageSize, bypassPageSizeCap). Optional. pageSize above its bound is clamped: 200, or 5000 with bypassPageSizeCap: true.
Maximum string length: 20000

Response

A page of records, or a board when filters.viewType is kanban.

meta
object
required
data
object[]
required

The records. With "viewType": "kanban", an array of RecordKanbanColumn instead.