Filters

Filters are provided as a list of keys and filter specifications. The keys are names of fields that can be returned in the response. Not all fields support filtering.

Multiple filters are combined using “AND” logic. For example, to find orders that were created after 2023-01-01 and are not completed the filters could be specified like so:

{
  "created_at": {"from": "2023-01-01"},
  "status": {"neq": "complete"}
}
eq
{ "status" : { "eq" : 1 } }
The value is equal to the given value.
neq
{ "sku" : { "neq" : "product1" } }
The value is not equal to the given value.
starts
{ "sku" : { "starts" : "abc-" } }
The value starts with the given value (prefix match).
gt
{ "order_id" : { "gt" : 5 } }
The value is greater than the given value.
lt
{ "order_id" : { "lt" : 5 } }
The value is less than the given value.
gteq
{ "order_id" : { "gteq" : 5 } }
The value is greater than or equal to the given value.
lteq
{ "order_id" : { "lteq" : 5 } }
The value is less than or equal to the given value.
from
{ "created_at" : { "from" : "2014-07-12 14:12:47", "datetime" : true } }
{ "created_at" : { "from" : "2014-07-12" } }
The value is greater than or equal to the given value. If the "datetime" flag is specified the value is compared with the exact timestamp given, otherwise the value is compared with the first second on the given date. The timezone is the merchant's configured timezone.
to
{ "created_at" : { "to" : "2014-07-12 14:12:47", "datetime" : true } }
{ "created_at" : { "to" : "2014-07-12" } }
The value is less than or equal to the given value. If the "datetime" flag is specified the value is compared with the exact timestamp given, otherwise the value is compared with the last second on the given date. The timezone is the merchant's configured timezone.
in
{ "order_id" : { "in" : [ "114", "115" ] } }
The value is equal to one of the given values. This can be used to locate multiple records with one query.
nin
{ "status" : { "nin" : [ "new", "complete" ] } }
The value is not equal to any of the given values.
null
{ "target_ship_date" : { "null" : 1 } }
The field's value is null (has no value).
notnull
{ "target_ship_date" : { "notnull" : 1 } }
The field has a value that is not null.