Update a Brand

PUT Method

The Update a BrandAPI allows you to modify specific brand fields. Updates that depend on brand status are not handled by go-cloud.

📘

Note:

Before submitting any update, you must first retrieve the current brand details. The go-cloud API compares the existing brand data with the update request to determine which field changes are allowed.

Prerequisites

  • After you sign up, your account will be on the trial version. You must complete the KYC to access all the features in kaleyra.io.
  • Before you get started, Create an API Key. To view the API Key and the SID, see View API Key and SID.
  • Before sending the RCS, you must configure the RCS channel in the Kaleyra platform. To configure the RCS channel in your account, please contact your local Kaleyra representative.

Base URL

URLRegion
https://rcs-api.<pod>.kaleyra.ioFor North America (NA).
https://rcs-api.<pod>.kaleyra.ioFor the rest of the world.

API Domain and Value

api_domainValue
IN podhttps://rcs-api.in.kaleyra.io
NA podhttps://rcs-api.na.kaleyra.io

API Request to Update a Brand

To update a brand, use the https://rcs-api.<pod>.kaleyra.io/v1/<sid>/rcs/brand/{{brand_number}} endpoint with the following request method:

Request Format

The following is the request format to update a brand.

curl --location 'https://<api_domain>/v1/<sid>/rcs/brand/{{brand_number}}'\
--header 'Content-Type:<Content-Type>' \
--header 'api-key: <api-key>' \
--data '{
    "brand_name": "<brand_name>",
    "brand_number": "<brand_number>",
    "display_name": "<display_name>",
    "brand_description": "<brand_description>",
    "provider_brand_no": "<provider_brand_no>",
    "org_id": "<org_id>",
    "partner_name": "<partner_name>",
    "partner_email": "<partner_email>",
    "contact_name": "<contact_name>",
    "contact_email": "<contact_email>",
    "website_url": "<website_url>",
    "image_id": "<image_id>",
    "thumbnail_imageid": "<thumbnail_imageid>",
    "status": "<status>",
    "created_date": "<created_date>",
    "modified_date": "<modified_date>",
    "id": "<id>"
}'

Sample Request Format

The following is the sample request format to update a brand:

curl --location --request PUT 'https://rcs-api.na.kaleyra.io/v1/xxxxx6913850xxxx/rcs/brand/48400'\
--header 'Content-Type: application/json' \ 
--header 'api-key: xxxxx3b8497f58a94e84b671aca43xxxx' \ 
--data '{
    "brand_name": "Basket Grocery",
    "brand_number": "48400",
    "display_name": "Tata Com",
    "brand_description": "Basket Grocery Updated Description",
    "provider_brand_no": "brands/a1xxxxfa-1xxa-4xx6-bxx9-bexxxxxx6ec",
    "org_id": "03xxxx40-4xxd-4xx9-bxx4-91xxxxxx09",
    "partner_name": "Basket Partner",
    "partner_email": "[email protected]",
    "contact_name": "Basket Name",
    "contact_email": "[email protected]",
    "website_url": "https://www.tatacommunications.com",
    "image_id": "https://i.pinimg.com/736x/1a/c3/da/86xx3c.jpg",
    "thumbnail_imageid": "https://i.pinimg.com/736x/e0/30/81/67xxa1.jpg",
    "status": "ACTIVE",
    "created_date": "Jun 12, 2025, 5:31:25 AM",
    "modified_date": "Jun 12, 2025, 5:31:27 AM",
    "id": "ffxxxx7c-7xx4-4xx0-bxxf-06xxxxxxa5"
}'

URL Parameters and Headers

The following is the list of parameters and headers to send the outgoing message request:

Parameter/HeadersData TypeDescriptionExampleMandatory?
sidStringAccount SID (Security Identifier).XXXXX6913850XXXXYes
Content-TypeStringIndicates the format of the content the API will be processing.The only allowed value is application/JSONYes
api-keyStringAPI key generated from kaleyra.io account.XXXXX3b8497f58a94e84b671aca43XXXXYes

The following is the list of attributes to be used in the payload to update a brand:

Parameter

Data Type

Update Permission

Description

Example

Mandatory?

band_name

String

Allowed

The official name of the brand provided by the user. Note: Brand name can be modified after creation.

Basket Grocery

Yes

brand_number

String

Restricted

Auto generated brand number sent back as response from the server once the brand is created.

48400

Yes

display_name

String

Allowed

The name that will appears for the end-users.

Tata Com

Yes

brand_description

String

Allowed

Description of the brand as mentioned by the you.

Basket Grocery Description

Yes

provider_brand_no

String

Restricted

Unique number provided by platform after successful creation of brand.

brands/a1xxxxfa-1xxa-4xx6-bxx9-bexxxxxx6ec

Yes

org_id

String

Restricted

UUID of selected Organization. The details will be provided by Kaleyra Support team.
Note: Organization ID cannot be changed.

03xxxx40-4xxd-4xx9-bxx4-91xxxxxx09

Yes

partner_name

String

Allowed

Name of the partner organization.

Basket Partner

Yes

partner_email

String

Allowed

Email of the Partner. Must be a valid email format.

[email protected]

Yes

contact_name

String

Allowed

Primary contact person name.

Basket Name

Yes

contact_email

String

Allowed

Email of the contact.

[email protected]

Yes

website_url

URL

Allowed

Brand website URL (must be valid URL format).

https://www.tatacommunications.com

Yes

image_id

String

Allowed

Brand logo image URL (must be valid image URL).

https://i.pinimg.com/736x/1a/c3/da/86xx3c.jpg

Yes

thumbnail_imageid

String

Allowed

Thumbnail image URL (must be valid image URL).

https://i.pinimg.com/736x/e0/30/81/67xxa1.jpg

Yes

status

String

Restricted

Status of the brand. Possible values are active or inactive.

ACTIVE

Yes

created_date

String

Restricted

Creation timestamp, immutable.

Jun 12, 2025, 5:31:25 AM

Yes

modified_date

String

Restricted

Last modification timestamp, system managed.

Jun 12, 2025, 5:31:27 AM

Yes

id

Integer

Restricted

Unique brand ID, immutable.

ffxxxx7c-7xx4-4xx0-bxxf-06xxxxxxa5

Yes

Sample Success Response

The following is a sample success response:

{
    "code": "RCS802",
    "message": "Brand updated successfully",
    "data": {
    "brand_name": "Basket Grocery",
    "brand_number": "48400",
    "display_name": "Tata Com",
    "brand_description": "Basket Grocery Updated Description",
    "provider_brand_no": "brands/a1xxxxfa-1xxa-4xx6-bxx9-bexxxxxx6ec",
    "org_id": "03xxxx40-4xxd-4xx9-bxx4-91xxxxxx09",
    "partner_name": "Basket Partner",
    "partner_email": "[email protected]",
    "contact_name": "Basket Name",
    "contact_email": "[email protected]",
    "website_url": "https://www.tatacommunications.com",
    "image_id": "https://i.pinimg.com/736x/1a/c3/da/86xx3c.jpg",
    "thumbnail_imageid": "https://i.pinimg.com/736x/e0/30/81/67xxa1.jpg",
    "status": "ACTIVE",
    "created_date": "Jun 12, 2025, 5:31:25 AM",
    "modified_date": "Jun 12, 2025, 5:31:27 AM",
    "id": "ffxxxx7c-7xx4-4xx0-bxxf-06xxxxxxa5"
    },
    "error": {}
}

Sample Failure Response

The following are sample failure responses:

400 Bad Request - RCS Not Enabled

{
  "code": "RCS601",
  "message": "RCS Channel is not enabled for this User",
  "data": [],
  "error": {
    "error_code": "RCS_CHANNEL_DISABLED",
    "error_message": "RCS Channel is not enabled for this User"
  }
}

400 Bad Request - Invalid JSON

{
  "code": "RCS701",
  "message": "Invalid Json passed. Please check",
  "data": [],
  "error": {
    "error_code": "INVALID_JSON",
    "error_message": "actual JSON decode error message"
  }
}

400 Bad Request - Missing Required Fields

{
  "code": "RCS804",
  "message": "Required fields are missing",
  "data": [],
  "error": {
    "error_code": "MISSING_REQUIRED_FIELDS",
    "error_message": "missing required fields: display_name, contact_name"
  }
}

400 Bad Request - Invalid Field Formats

{
  "code": "RCS804",
  "message": "Fields with invalid format are passed",
  "data": [],
  "error": {
    "error_code": "INVALID_FIELD_FORMAT",
    "error_message": "invalid email format for field 'contact_email': test@invalid"
  }
}

500 Internal Server Error - Config Missing

{
  "code": "CONFIG_ERROR",
  "message": "Config missing",
  "data": [],
  "error": {
    "error_code": "CONFIG_MISSING",
    "error_message": "Prov_Url not found"
  }
}

500 Internal Server Error - Failed to Fetch Existing Brand

{
  "code": "RCS805",
  "message": "Failed to fetch existing brand before update",
  "data": [],
  "error": {
    "error_code": "PROV_Error",
    "error_message": "raw response body as string"
  }
}

400 Bad Request - Restricted Field Modification

{
    "code": "RCS804",
    "message": "Cannot modify restricted fields during update.",
    "data": [],
    "error": {
        "error_code": "RESTRICTED_FIELDS_MODIFY_ATTEMPT",
        "error_message": "restricted fields cannot be modified: id"
    }
}

500 Internal Server Error - API Call Failed

{
  "code": "RCS805",
  "message": "Failed to call Prov API",
  "data": [],
  "error": {
    "error_code": "API_CALL_ERROR",
    "error_message": "actual API error message"
  }
}

4xx Downstream Error

{
  "code": "RCS804",
  "message": "Failed creating brand update",
  "data": [],
  "error": {
    "error_code": "PROV_ERROR",
    "error_message": "raw downstream response body as string"
  }
}




© 2026 Kaleyra Inc. All rights reserved.
Trademarks, logos and service marks displayed on this site are registered and unregistered trademarks of Kaleyra Inc.