katana_public_api_client.models.sales_order_search_request¶
katana_public_api_client.models.sales_order_search_request
¶
Classes¶
SalesOrderSearchRequest
¶
Structured filter body for POST /sales_orders/search. Returns
the same paginated {"data": [...]} shape as
GET /sales_orders plus an X-Pagination header. Beta —
request/response shape may evolve before GA.
Example:
{'filter': {'and': [{'status': {'inq': ['NOT_SHIPPED', 'PACKED']}}, {'created_at': {'gte':
'2026-01-01T00:00:00.000Z'}}, {'custom_fields.0c8f1d6e-3c2a-4f5b-9d77-12ab34cd56ef': 2}]}, 'order': ['created_at
DESC', 'id DESC'], 'limit': 50, 'page': 1}
Attributes:
filter_ (SalesOrderSearchFilter | Unset): ``filter`` clause for ``POST /sales_orders/search``. Only the fields
listed here may appear; unknown fields are rejected with 422.
Custom field values are addressable via additional
``custom_fields.<uuid>`` keys (snake_case, matching the
request/response body), where ``<uuid>`` is the custom field
definition id — its value is a bare value or a ``SearchComparator``
like any other predicate (for ``singleSelect`` the value is the
integer choice ``id``). Compose with ``and`` / ``or`` (max nesting
depth 2).
order (list[str] | str | Unset): Sort directive(s). Each entry is ``<field> ASC|DESC``
(direction defaults to ASC). Only filterable fields may be
used; ``custom_fields.<uuid>`` paths are orderable.
limit (int | Unset): Page size; maximum 200. Omit to let the server apply its
default of 50 (the client omits the key when unset rather than
sending a default, so direct construction and round-tripped
``from_dict`` payloads behave identically).
page (int | Unset): 1-based page number. Omit to let the server default to 1.