Search brands
const url = 'https://api.example.com/brands/search?size=20&from=0';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.example.com/brands/search?size=20&from=0' \ --header 'Authorization: Bearer <token>'Search brands by query string. Offset-based pagination only — unlike
product search, the response does not include syncToken, hasMore,
or totalIsLowerBound.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Query Parameters
Section titled “Query Parameters ”Search query. Omit to match all brands.
Responses
Section titled “ Responses ”Search results (offset pagination).
Offset-paginated brand search results (no syncToken/hasMore).
object
The external brand representation — what GET /brands,
GET /brands/search, and GET /brands/{id} return. Exhaustive: id,
name, and slug are the only fields ever returned to an M2M caller.
object
object
object
Example generated
{ "data": [ { "id": "example", "name": "example", "slug": "example" } ], "pagination": { "total": 1, "from": 1, "size": 1 }, "meta": { "queryTimeMs": 1, "source": "example" }}Authentication required or failed.
object
Machine-readable code. Best-effort — the generic 500 path carries none.
Unique request ID for tracing.
object
Example
{ "error": "UNAUTHORIZED", "message": "Valid authentication token required."}Insufficient permissions (missing scope or Admin role).
object
Machine-readable code. Best-effort — the generic 500 path carries none.
Unique request ID for tracing.
object
Example
{ "error": "FORBIDDEN", "message": "Insufficient scope for this operation."}