Categories
Our catalogue is two-level: top-level categories (e.g. "Rings") contain subcategories (e.g. "CZ Solitaire Rings") — subcategories are what actually hold products.
Query
Query
query {
partnerCategories {
id
name
catId # null on top-level categories, set on subcategories
isActive
featured
children {
id
name
catId
}
}
}Response
{
"data": {
"partnerCategories": [
{
"id": "cmpxzgcgr000fbufedq4ztrzb",
"name": "RINGS",
"catId": null,
"isActive": true,
"featured": false,
"children": [
{
"id": "cmrls8xhj000110oxvthv93ln",
"name": "CZ Solitaire Rings",
"catId": "GB-RNG01"
}
]
}
]
}
}Fields
| Field | Type | Notes |
|---|---|---|
catId | String | Our internal subcategory code — always null on a top-level category, set on a subcategory. Only subcategories hold products directly. |
children | [PartnerCategory!]! | A top-level category's subcategories. Empty on a subcategory itself. |
productCount / inStockCount | Int! | Total products in this category, and how many currently have stock. |
This endpoint doesn't expose per-gram rates — pricing is per-product, via pprice on Products. Once you have a subcategory's id, fetch its products there.