Core resources
Brands
Create and manage brands for your products on the Curosa platform
Overview
The Brands endpoint allows you to create and manage the brands associated with your products. When creating a product, you reference a brand by name. Brands can also carry an optional image, such as a logo, that may be displayed alongside your products on the platform.
Authentication
All endpoints require authentication. Include your API token in the Authorization header. For more information on obtaining a token, see the Authentication guide.
List All Brands
Retrieve a list of all brands associated with your account.
Endpoint: GET https://curosa.com/api/v1/brands
Request
curl --location 'https://curosa.com/api/v1/brands' \
--header 'Authorization: Bearer YOUR_API_TOKEN'
Response
Returns a 200 OK with a data array containing all brands:
{
"data": [
{
"id": 1,
"name": "Demo Brand",
"description": "A brand used for demo purposes",
"image": null
}
]
}
Response Fields:
| Field | Type | Description |
|---|---|---|
id |
integer | Unique identifier for the brand |
name |
string | Display name of the brand |
description |
string|null | Optional description of the brand |
image |
string|null | URL of the brand image (e.g. a logo), or null if not set |
Create a Brand
Create a new brand.
Endpoint: POST https://curosa.com/api/v1/brands
Request
curl --location 'https://curosa.com/api/v1/brands' \
--header 'Authorization: Bearer YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"name": "Demo Brand",
"description": "A brand used for demo purposes"
}'
Request Body:
| Field | Type | Required | Description |
|---|---|---|---|
name |
string | Yes | Display name of the brand |
description |
string | No | Optional description of the brand |
Response
Returns a 201 Created on success:
{
"message": "Brand created successfully",
"brand_id": 3,
"name": "Demo Brand",
"description": "A brand used for demo purposes",
"image": null
}
Update a Brand
Update an existing brand by its ID.
Endpoint: PUT https://curosa.com/api/v1/brands/{id}
Request
curl --location --request PUT 'https://curosa.com/api/v1/brands/3' \
--header 'Authorization: Bearer YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"name": "Updated Brand Name",
"description": "Updated description"
}'
Path Parameters:
| Parameter | Type | Description |
|---|---|---|
id |
integer | The ID of the brand to update |
Request Body:
| Field | Type | Required | Description |
|---|---|---|---|
name |
string | Yes | Updated display name of the brand |
description |
string | No | Updated description of the brand |
Delete a Brand
Delete a brand by its ID.
Endpoint: DELETE https://curosa.com/api/v1/brands/{id}
Request
curl --location --request DELETE 'https://curosa.com/api/v1/brands/3' \
--header 'Authorization: Bearer YOUR_API_TOKEN'
Path Parameters:
| Parameter | Type | Description |
|---|---|---|
id |
integer | The ID of the brand to delete |
Using Brands with Products
When creating a product, reference the brand by its name:
{
"sku": "DEMO001",
"name": "Demo Product",
"brand": "Demo Brand"
}
Rate Limiting
All brand endpoints are rate limited to 3,600 requests per hour. The current limit and remaining requests are returned in the response headers as x-ratelimit-limit and x-ratelimit-remaining.