dimensions filter on POST /v1/search narrows results by an offer’s physical size — length, width, height, and weight. Each field is optional; pass only the ones you care about.
Every field you include takes a min, a max (both optional and inclusive), and a required unit. A product matches when at least one of its offers satisfies every range you provide, alongside any locale, price, and availability filters on the same request.
Basic dimension filter
Find products that fit within a size and weight envelope. Length units aremm, cm, m, in, ft; weight units are mg, g, kg, oz, lb.
Units
Each field carries its ownunit, so you can mix systems in one request — filter length in cm and weight in lb if that’s what your UI collects. Values are compared with a small relative tolerance, so a listing measured in another unit still matches after conversion.
The unit you filter in also controls the response: offer dimensions are returned in the unit used by that field’s filter. When you don’t filter on a field, its response unit falls back to the length_unit / weight_unit config (per-request or a client default), and when neither is set, to the unit the merchant stated.
Channel3 standardizes dimensions to the supported unit sets above. A merchant-stated value whose unit falls outside those sets is omitted rather than shown — so a field can be
null in the response even when the merchant published something.Reading dimensions off an offer
Every offer in a search or product-detail response now carries adimensions object. Each member is either { number, unit } or null when unknown.
TypeScript
An offer with no dimension data for a filtered field never matches. Note that when one merchant on a product reports a dimension, that value is shared across the product’s offers — so the specific offer that matched your filter may not itself surface that dimension in the response.