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.
  • To send any RCS messages, 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

https://rcs-api.<pod>.kaleyra.io/v1/<sid>

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:

ParameterData TypeUpdate PermissionDescriptionExampleMandatory?
band_nameStringAllowedThe official name of the brand provided by the user. Note: Brand name can be modified after creation.Basket GroceryYes
brand_numberStringRestrictedAuto generated brand number sent back as response from the server once the brand is created.48400Yes
display_nameStringAllowedThe name that will appears for the end-users.Tata ComYes
brand_descriptionStringAllowedDescription of the brand as mentioned by the you.Basket Grocery DescriptionYes
provider_brand_noStringRestrictedUnique number provided by platform after successful creation of brand.brands/a1xxxxfa-1xxa-4xx6-bxx9-bexxxxxx6ecYes
org_idStringRestrictedUUID of selected Organization. The details will be provided by Kaleyra Support team.
Note: Organization ID cannot be changed.
03xxxx40-4xxd-4xx9-bxx4-91xxxxxx09Yes
partner_nameStringAllowedName of the partner organization.Basket PartnerYes
partner_emailStringAllowedEmail of the Partner. Must be a valid email format.[email protected]Yes
contact_nameStringAllowedPrimary contact person name.Basket NameYes
contact_emailStringAllowedEmail of the contact.[email protected]Yes
website_urlURLAllowedBrand website URL (must be valid URL format).https://www.tatacommunications.comYes
image_idStringAllowedBrand logo image URL (must be valid image URL).https://i.pinimg.com/736x/1a/c3/da/86xx3c.jpgYes
thumbnail_imageidStringAllowedThumbnail image URL (must be valid image URL).https://i.pinimg.com/736x/e0/30/81/67xxa1.jpgYes
statusStringRestrictedStatus of the brand. Possible values are active or inactive.ACTIVEYes
created_dateStringRestrictedCreation timestamp, immutable.Jun 12, 2025, 5:31:25 AMYes
modified_dateStringRestrictedLast modification timestamp, system managed.Jun 12, 2025, 5:31:27 AMYes
idIntegerRestrictedUnique brand ID, immutable.ffxxxx7c-7xx4-4xx0-bxxf-06xxxxxxa5Yes

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.