filter, sort, limit, and offset query parameters to any Omneo list endpoint to narrow and order the records it returns. Every endpoint that supports them has a Filtering section on its API Reference page listing the attributes it accepts.
Filter syntax
A filter is an attribute, an optional operator, and a value.Operators
Omneo ignores attribute filters it does not recognise. An attribute that is not listed on the endpoint page, or an operator that is not in the table above, is dropped from the query rather than returning an error, so a typo returns unfiltered results. The same is true of an unrecognised
sort key.
Two of the shared filters below behave differently:
filter[search_with] and filter[json_contains] pass the attribute you name straight to the query, so a typo there fails the request rather than being ignored.Combining filters
Filters combine with AND. A record must satisfy every filter to appear in the response.Filtering on related records
Attributes containing a dot filter on a related record instead of the record itself. The endpoint page lists these separately under Related attributes.handle of vip or member. Use not_has for the inverse.
not_has applies only to related attributes. On an attribute of the record itself it is ignored.Sorting
Passsort with an attribute name. Prefix it with - for descending order, and separate multiple keys with commas.
Paging
On paginated endpoints,
page[size] and page[number] set the window. limit and offset apply to endpoints that return the full list in one response.Shared filters
Four filters are not attribute lookups. They take their own value shape and are available on the same endpoints.filter[search]
Pass a single term. Omneo runs a partial match against the endpoint’s search attributes and returns records where any one of them contains the term. Search attributes are a separate, shorter list than filter attributes: each record type declares which of its attributes are searchable, andfilter[search] reads only that list. The endpoint page shows it under Search attributes. An attribute you can filter on is not searchable unless it appears there.
first_name, last_name, email, mobile_phone, or profile_type contains chen.
filter[search] has no effect on endpoints with no Search attributes section. Use filter[search_with] there instead.filter[search_with]
Pass attribute and term pairs. Each pair is a partial match, and the pairs are combined with OR, so a record matches when any one pair matches.first_name contains alex or whose email contains example.com. Dot notation searches a related record.
filter[custom_field]
Key the filter with the custom field’s namespace and handle, separated by a colon, and pass the value you want to match. The operators in the table above apply here too.value. A record matches when it has a custom field with that namespace and handle whose value satisfies the operator. Endpoints whose records carry custom fields show a Custom field filters section on their API Reference page.
filter[json_contains]
Pass a column name and a value separated by a colon to match inside a JSON column such asmeta. Everything after the first colon is the value. Omneo parses it as JSON when it is valid JSON, and treats it as a plain string otherwise.
Match a key and value inside a JSON object:
Worked example
Find non-void Transactions over $100 in January 2026, at either of two locations, taggedonline, newest first, 50 per page.