---
title: "Create or Update Product Brands"
method: POST
path: "/v2/product/brands"
---

# Create or Update Product Brands

`POST /v2/product/brands`

Creates new product brands or updates existing ones in bulk.

**Code uniqueness:** Brand codes are validated case-insensitively. For example, "BRAND1" and "brand1" are treated as duplicates. The same code can exist for different organizational units (ouCode).

## Request body

- object[]
  - `code` string — Unique identifier for the brand. Codes are validated case-insensitively—"BRAND1" and "brand1" are treated as duplicates. The same code can exist for different organizational units (ouCode).
  - `name` string — Display name for the brand.
  - `description` string — Optional description for the brand.
  - `ouCode` string — Organizational unit code. When specified, brand code uniqueness is scoped to this organizational unit, allowing the same brand code to exist in different organizational units.

## Response `200`

Successful response

## Other responses

- `400` — Bad request. Possible error codes: - **10054** (ERR_BRAND_CODE_EXISTS): Brand code already exists in the database. Codes are checked case-insensitively. - **10056** (ERR_BRAND_DUPLICATE_CODE_IN_PAYLOAD): Duplicate brand codes found within the same request payload (for the same organizational unit). Codes are checked case-insensitively.

---

[API](https://skmtc.net/capillarytech/apis/sample-api.md) · [All operations](https://skmtc.net/capillarytech/apis/sample-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/capillarytech/sample-api/revisions/de241f2ed9b3/schema)
