Brand Management
5 API calls in this section.
List Brands
/storefront/brandsList brands for the tenant's market with pagination, AdvancedDataGrid sorting/filtering, per-brand products_count, and market-wide stats.
Query parameters
| Parameter | Type | Description |
|---|---|---|
page | string | Page number (default: 1) Example: |
limit | string | Items per page (default: 20) Example: |
is_activeOptional | string | Filter by active state (optional) Example: |
searchOptional | string | Search by name/description (optional) |
sort_by | string | Sort by one of: name, slug, Example: |
sort_order | string | Sort order: asc or desc Example: |
column_filters | string | JSON-encoded column filters for AdvancedDataGrid. Supported keys: name, Example: |
Headers
| Parameter | Type | Description |
|---|---|---|
Authorization | string | Example: |
1curl --globoff --request GET "https://staging-api.ondi.io/functions/v1/storefront/brands?page=1&limit=20&is_active=true&search=&sort_by=products_count&sort_order=desc&column_filters=%7B%22name%22%3A%22adi%22%2C%22is_active%22%3A%22true%22%2C%22created_at%22%3A%222025-01-01..2025-12-31%22%7D" \2 --header "Authorization: Bearer ${ONDI_ACCESS_TOKEN}"Response examples
1{2 "success": true,3 "brands": [4 {5 "id": "24b931dc-0000-0000-0000-000000000001",6 "market_id": "market-uuid",7 "name": {8 "en": "adidas"9 },10 "slug": "adidas",11 "description": {},12 "logo_url": "https://example.com/logo.png",13 "is_active": true,14 "products_count": 452,15 "created_at": "2026-04-01T10:00:00Z",16 "updated_at": "2026-04-05T10:00:00Z"17 }18 ],19 "pagination": {20 "page": 1,21 "limit": 20,22 "total": 1284,23 "totalPages": 6524 },25 "stats": {26 "totalBrands": 1284,27 "activeBrands": 1202,28 "topBrand": {29 "name": "Lumina Global",30 "productsCount": 45231 },32 "recentlyAdded": [33 {34 "name": "BrandA",35 "logo_url": "https://example.com/a.png"36 },37 {38 "name": "BrandB",39 "logo_url": "https://example.com/b.png"40 },41 {42 "name": "BrandC",43 "logo_url": "https://example.com/c.png"44 }45 ]46 }47}Create Brand
/storefront/brandsCreate a new brand in the tenant's market. Required: name (multilingual), slug.
Headers
| Parameter | Type | Description |
|---|---|---|
Authorization | string | Example: |
Content-Type | string | Example: |
Body parameters
| Parameter | Type | Description |
|---|---|---|
name | object | — |
name.en | string | — |
slug | string | — |
description | object | — |
logo_url | string | — |
is_active | boolean | — |
1curl --globoff --request POST "https://staging-api.ondi.io/functions/v1/storefront/brands" \2 --header "Authorization: Bearer ${ONDI_ACCESS_TOKEN}" \3 --header "Content-Type: application/json" \4 --data-raw '{5 "name": {6 "en": ""7 },8 "slug": "",9 "description": {},10 "logo_url": "",11 "is_active": true12}'Response examples
No saved response example. Use Try it to inspect a staging response.
Get Brand
/storefront/brands/:brand_idFetch a brand by ID.
Path parameters
| Parameter | Type | Description |
|---|---|---|
brand_idRequired | string | Example: |
Headers
| Parameter | Type | Description |
|---|---|---|
Authorization | string | Example: |
1curl --globoff --request GET "https://staging-api.ondi.io/functions/v1/storefront/brands/${BRAND_ID}" \2 --header "Authorization: Bearer ${ONDI_ACCESS_TOKEN}"Response examples
No saved response example. Use Try it to inspect a staging response.
Update Brand
/storefront/brands/:brand_idUpdate brand fields (all optional).
Path parameters
| Parameter | Type | Description |
|---|---|---|
brand_idRequired | string | Example: |
Headers
| Parameter | Type | Description |
|---|---|---|
Authorization | string | Example: |
Content-Type | string | Example: |
Body parameters
| Parameter | Type | Description |
|---|---|---|
name | object | — |
name.en | string | — |
slug | string | — |
description | object | — |
logo_url | string | — |
is_active | boolean | — |
1curl --globoff --request PUT "https://staging-api.ondi.io/functions/v1/storefront/brands/${BRAND_ID}" \2 --header "Authorization: Bearer ${ONDI_ACCESS_TOKEN}" \3 --header "Content-Type: application/json" \4 --data-raw '{5 "name": {6 "en": ""7 },8 "slug": "",9 "description": {},10 "logo_url": "",11 "is_active": true12}'Response examples
No saved response example. Use Try it to inspect a staging response.
Delete Brand
/storefront/brands/:brand_idDelete a brand by ID.
Path parameters
| Parameter | Type | Description |
|---|---|---|
brand_idRequired | string | Example: |
Headers
| Parameter | Type | Description |
|---|---|---|
Authorization | string | Example: |
1curl --globoff --request DELETE "https://staging-api.ondi.io/functions/v1/storefront/brands/${BRAND_ID}" \2 --header "Authorization: Bearer ${ONDI_ACCESS_TOKEN}"Response examples
No saved response example. Use Try it to inspect a staging response.