# CollectionPredicate

object type

THE DYNAMIC-COLLECTION PREDICATE. Semantics: AND across supplied axes, OR within an axis, categoryIds match SUBTREES, exclusions subtract, pins union first. At least one axis is required.

## Fields

| Field | Type | Notes |
| --- | --- | --- |
| `categoryIds` | [ID](/types/#scalars) `[ID!]` | Category refs — SUBTREE semantics at evaluation (at most 32, unique). |
| `tagIds` | [ID](/types/#scalars) `[ID!]` | Tag refs (at most 64, unique). |
| `brandIds` | [ID](/types/#scalars) `[ID!]` | Brand refs (at most 32, unique). |
| `seasonIds` | [ID](/types/#scalars) `[ID!]` | Season refs (at most 32, unique). |
| `divisionIds` | [ID](/types/#scalars) `[ID!]` | Division refs (at most 32, unique). |
| `price` | [CollectionPriceBound](/types/CollectionPriceBound/) | The price axis — bounds over ONE currency. |
| `characteristics` | [CollectionCharacteristicPredicate](/types/CollectionCharacteristicPredicate/) `[CollectionCharacteristicPredicate!]` | The characteristic axis (at most 64, unique pairs). |
