Every list endpoint shares one filter grammar, so what you learn on search works on offers, events and exports.
GET /v1/search ?q=espresso &seller=bestbuy&seller=target // repeated key = OR &price_minor.gte=10000 &price_minor.lte=50000 // combine for a range &availability=in_stock &confidence.gte=0.9 // only act on strong values &sort=-observed_at
| Suffix | Meaning |
|---|---|
| .gte / .lte | Inclusive bounds. |
| .gt / .lt | Exclusive bounds. |
| .not | Negation. |
| (none) | Exact match. Repeat the key for OR. |
Prefix with `-` for descending. Sort is applied before pagination and is stable — ties break on the object id, so a cursor never revisits or skips a row.
It is the difference between a repricer that acts on anything and one that acts on what it can defend.