POST /v1/{entity}/list) accept a JSON request body that controls pagination, sorting, and filtering.
Pagination
Every list response includes a
pagination object:
Iterating through pages
To fetch all records, incrementpage until page >= total_pages:
Sorting
Pass a field key insort. Prefix with - for descending order. The default is -created_at (newest first) for most objects.
422 error. Use the field schemas endpoint to discover sortable fields.
Filtering
Filters are provided as either a flat array of rules (implicitly ANDed) or a recursive filter expression for complex AND/OR logic.Simple filters
Pass an array of rules. All rules are implicitly ANDed together. Each rule has three properties:Complex filters (AND / OR)
For OR logic or nested conditions, pass a filter expression object instead of an array. An expression has:
Expressions can be nested to arbitrary depth, letting you build trees of AND/OR logic.
Example — OR across two conditions:
Common conditions
The exact set of conditions available depends on the field type. Use the Field Schemas endpoint to discover them.
Enum field values
For enum fields (e.g., status, stage), use the field’s key value when filtering or sorting — not the human-readable display name. You can find the valid keys in the enum_field_settings.allowed_values array returned by the Field Schemas endpoint.Date values
Date filter values should be ISO 8601 strings. TrailingZ (UTC) is supported:
Custom fields in sorting and filtering
Custom fields (prefixed withcustom_field_ in responses) can be used in sort and filters using their full key:
Discovering sortable and filterable fields
Use the Field Schemas endpoint to discover which fields support sorting and filtering, and which conditions each field accepts:{entity} is one of: accounts, contacts, opportunities, tasks, or meetings.