Update Brands

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…

This API lets you update product brands in bulk. You can update multiple brands in a single request, subject to per-request and hierarchy constraints.

Bulk update behaviour

  • Update multiple product brands in one API request.
  • You can update up to 100 brands per request by default.
  • The per-request limit is controlled by the CONF_PRODUCT_CREATE_UPDATE_BATCH_SIZE configuration.

To change this limit, raise a JIRA ticket to the Capillary Product Support team.

Brand hierarchy constraints

When updating brands, the system validates hierarchy rules to ensure consistency.

  • Maximum hierarchy depth: 5 levels
  • Maximum child brands per parent: 50

These limits are controlled by the following configurations:

ConfigurationDefaultDescription
org_brand_max_children_limit50Maximum number of child brands allowed under a parent brand
org_brand_max_depth_limit5Maximum allowed depth of the brand hierarchy

To modify these limits for your organization, raise a JIRA ticket to the Capillary Product Support team.

Example request

curl --location --request PUT 'https://{Host}/v2/product/brands' \
--data '[
  {
    "code": "BRAND002",
    "name": "Brand-abibas",
    "description": "Shoes"
  },
  {
    "code": "BRAND003",
    "name": "Brand-noke",
    "ouCode": "krishna.ou1"
  }
]'

Prerequisites

  • Authentication: Basic or OAuth authentication
  • To enable OU support for product entities, you need to create a JIRA ticket and enable the config CONF_OU_LEVEL_PRODUCTS_ENABLED.

Body parameters

The request body should be a JSON array of brand update objects.

FieldTypeRequiredDescriptionUpdatable
codestringYesSpecifies a unique identifier of the brand. This field identifies which brand to update and cannot be changed.No
namestringOptionalDefines a display name of the brand. There is no strict character limit.Yes
descriptionstringOptionalDefines a summary of the brand. There is no strict character limit.Yes
ouCodestringNoSpecifies the organization concept code to identify the scope of the brand. Required if the brand was created at the OU level.No

API Quick Reference

 {{host_/v2/product/brands/{brandid}}}
   └─ {{RequestBody}} (Batch Array)
      ├─ {{code}} (string)
      ├─ {{name}} (string)
      ├─ {{description}} (string)
      ├─ {{ouCode}} (string)
      └─ {{ResponseBody}}
          ├─ {{updated}} []
          │   ├─ {{responseId}} (integer)
          │   ├─ {{responseOuId}} (integer)
          │   └─ {{responseCode}} (string)
          ├─ {{summary}}
          │   ├─ {{totalRequested}} (integer)
          │   ├─ {{successCount}} (integer)
          │   └─ {{failureCount}} (integer)
          ├─ {{warnings}} []
          └─ {{errors}} []

Example response

{
    "updated": [
        {
            "id": 1243080,
            "ouId": -1,
            "code": "BRAND002"
        },
        {
            "ouCode": "krishna.ou1",
            "id": 1243081,
            "ouId": 50025951,
            "code": "BRAND003"
        }
    ],
    "summary": {
        "totalRequested": 2,
        "successCount": 2,
        "failureCount": 0
    },
    "warnings": [],
    "errors": []
}

Response parameters

FieldTypeDescription
updatedarrayIndicates the array of successfully updated ProductBrand objects containing id, ouId, and code.
.idlongSpecifies the unique identifier for the brand.
.ouIdlongIndicates the Organization unit ID. Returns -1 for organization-level brands.
.codestringSpecifies the brand code (unchanged).
summaryobjectDefines the summary statistics for the bulk operation.
.totalRequestedintegerIndicates the total number of brands in the request.
.successCountintegerIndicates the number of brands successfully updated.
.failureCountintegerIndicates the number of brands that failed validation.
warningsarraySpecifies the array of warning status codes.
errorsarraySpecifies the array of error status codes for brands that failed validation.

Error codes

CodeDescription
9170Brand code exceeds the maximum allowed length. Shorten the brand code.
10001Invalid ouCode provided. Use a valid concept code.
10002OU level product filtering is disabled for your organization, but an ouCode was provided.
10051The request body cannot be empty.
10052Maximum 100 brands allowed per request.
10053Brand code is required and cannot be empty.
10055The brand name cannot be empty if provided.
10056Duplicate brand codes found within the same request payload. Codes are checked case-insensitively.
10060The brand's parentCode cannot be changed after creation.
10125Brand with the specified code not found.
Body Params
Headers
string
Response
200

Successful response

Language
Credentials
Basic
base64
:
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here!