Catalogus
Categorieën
De volledige categorieboom van de tenant ophalen als geneste JSON.
Bekijk als MarkdownCategorieën vormen per tenant een zelfrefererende boom. Elke categorie heeft een slug die uniek is binnen de tenant en automatisch wordt gegenereerd uit de naam. Categorieslugs zijn de waarden die de queryparameter filter[category] van de productlijst accepteert; die matcht een categorie en al haar actieve afstammelingen.
Categorieën vormen per tenant een zelfrefererende boom. Elke categorie heeft een slug die uniek is binnen de tenant en automatisch wordt gegenereerd uit de naam. Categorieslugs zijn de waarden die de queryparameter filter[category] van de productlijst accepteert; die matcht een categorie en al haar actieve afstammelingen.
GET /v1/api/commerce/categories
Geeft de volledige categorieboom van de tenant terug als geneste JSON. Alleen actieve categorieën worden opgenomen, op elk niveau geordend op position. Een inactieve parent verbergt zijn hele subboom: kinderen van een inactieve parent vallen buiten het resultaat, ook als ze zelf actief zijn. De response is niet gepagineerd.
Parameters
Geen. Geen pad-, query- of bodyparameters.
Responsevelden
Elke node in de data-array (en recursief in elke children-array):
| Naam | Type | Verplicht | Beschrijving |
|---|---|---|---|
| id | string (uuid) | altijd | Categorie-ID. |
| name | string | altijd | Categorienaam. |
| slug | string | altijd | URL-slug, uniek per tenant. Gebruik hem als filter[category]-waarde op het productlijst-endpoint. |
| description | string of null | altijd | Categoriebeschrijving. |
| children | array | altijd | Kindcategorieën, zelfde nodevorm, geordend op positie. Lege array voor bladcategorieën. |
Errors
| Status | Body | Oorzaak |
|---|---|---|
| 401 | {"message":"Unauthenticated."} | Ontbrekende of ongeldige API-key. |
| 403 | {"message":"Invalid ability provided."} | Key heeft noch de scope catalog:read noch commerce:read. |
| 403 | {"error":"Module not enabled: catalog"} | Tenant heeft de catalog-module niet ingeschakeld. Let op de error-key in plaats van message. |
| 403 | {"message":"Tenant suspended.","code":"tenant_suspended"} | Tenant-account is geschorst. |
| 429 | {"message":"Too Many Attempts."} | Rate limit van 120 requests per minuut overschreden. |
curl "https://api.borkol.com/v1/api/commerce/categories" \
-H "Authorization: Bearer {api_key}" \
-H "Accept: application/json"const res = await fetch("https://api.borkol.com/v1/api/commerce/categories", {
headers: {
Authorization: `Bearer ${apiKey}`,
Accept: "application/json",
},
});
const { data } = await res.json();{
"data": [
{
"id": "7a1b3c5d-2e4f-4a6b-8c0d-1e2f3a4b5c6d",
"name": "Furniture",
"slug": "furniture",
"description": "All furniture",
"children": [
{
"id": "8b2c4d6e-3f5a-4b7c-9d1e-2f3a4b5c6d7e",
"name": "Chairs",
"slug": "chairs",
"description": null,
"children": []
}
]
},
{
"id": "1f2e3d4c-5b6a-4978-8695-a4b3c2d1e0f9",
"name": "Verandas",
"slug": "verandas",
"description": null,
"children": []
}
]
}GET /v1/api/commerce/categories
Geeft de volledige categorieboom van de tenant terug als geneste JSON. Alleen actieve categorieën worden opgenomen, op elk niveau geordend op position. Een inactieve parent verbergt zijn hele subboom: kinderen van een inactieve parent vallen buiten het resultaat, ook als ze zelf actief zijn. De response is niet gepagineerd.
Parameters
Geen. Geen pad-, query- of bodyparameters.
Responsevelden
Elke node in de data-array (en recursief in elke children-array):
| Naam | Type | Verplicht | Beschrijving |
|---|---|---|---|
| id | string (uuid) | altijd | Categorie-ID. |
| name | string | altijd | Categorienaam. |
| slug | string | altijd | URL-slug, uniek per tenant. Gebruik hem als filter[category]-waarde op het productlijst-endpoint. |
| description | string of null | altijd | Categoriebeschrijving. |
| children | array | altijd | Kindcategorieën, zelfde nodevorm, geordend op positie. Lege array voor bladcategorieën. |
curl "https://api.borkol.com/v1/api/commerce/categories" \
-H "Authorization: Bearer {api_key}" \
-H "Accept: application/json"const res = await fetch("https://api.borkol.com/v1/api/commerce/categories", {
headers: {
Authorization: `Bearer ${apiKey}`,
Accept: "application/json",
},
});
const { data } = await res.json();{
"data": [
{
"id": "7a1b3c5d-2e4f-4a6b-8c0d-1e2f3a4b5c6d",
"name": "Furniture",
"slug": "furniture",
"description": "All furniture",
"children": [
{
"id": "8b2c4d6e-3f5a-4b7c-9d1e-2f3a4b5c6d7e",
"name": "Chairs",
"slug": "chairs",
"description": null,
"children": []
}
]
},
{
"id": "1f2e3d4c-5b6a-4978-8695-a4b3c2d1e0f9",
"name": "Verandas",
"slug": "verandas",
"description": null,
"children": []
}
]
}Errors
| Status | Body | Oorzaak |
|---|---|---|
| 401 | {"message":"Unauthenticated."} | Ontbrekende of ongeldige API-key. |
| 403 | {"message":"Invalid ability provided."} | Key heeft noch de scope catalog:read noch commerce:read. |
| 403 | {"error":"Module not enabled: catalog"} | Tenant heeft de catalog-module niet ingeschakeld. Let op de error-key in plaats van message. |
| 403 | {"message":"Tenant suspended.","code":"tenant_suspended"} | Tenant-account is geschorst. |
| 429 | {"message":"Too Many Attempts."} | Rate limit van 120 requests per minuut overschreden. |