Update Customer's Custom Attributes

Updates the custom attributes of a given customer. Attribute must first be created using the POST call.

Examples
curl -X PUT "https://api.chartmogul.com/v1/customers/cus_de305d54-75b4-431b-adb2-eb6b9e546012/attributes/custom" \
     -u YOUR_API_KEY: \
     -H "Content-Type: application/json" \
     -d '{
          "custom":{
            "pro": true,
            "channel": {"value": "Twitter", "source": "integration2"}
          }
         }'
customer = ChartMogul::Customer.retrieve('cus_de305d54-75b4-431b-adb2-eb6b9e546012')
customer.update_custom_attributes!(
  pro: true, 
  channel: {value: 'Twitter', source: 'integration2'}
)
ChartMogul.CustomAttribute.update(config, "cus_de305d54-75b4-431b-adb2-eb6b9e546012", {
   "custom": {
    "pro": true,
    "channel": {"value": "Twitter", "source": "integration2"}
   }
});
<?php

$customer = ChartMogul\Customer::retrieve(
                "cus_de305d54-75b4-431b-adb2-eb6b9e546012");
$customer->updateCustomAttributes(
        ["channel" => ["value" => "Twitter", "source" => "integration2"]],
        ["pro" => true]
);
?>
api.UpdateCustomAttributesOfCustomer(
    "cus_de305d54-75b4-431b-adb2-eb6b9e546012",
        map[string]interface{}{
            "channel": cm.AttributeWithSource{
                Value: "Twitter",
                Source: "integration2",
            },
            "pro": true,
        })
chartmogul.CustomAttributes.update(
    config,
    uuid="cus_de305d54-75b4-431b-adb2-eb6b9e546012",
    data={"custom": {
            "channel": {"value": "Twitter", "source": "integration2"},
            "pro": True
        }
    }
)
Result Format
{
  "custom": {
    "CAC": 213,
    "utmCampaign": "social media 1",
    "convertedAt": "2022-09-08 00:00:00",
    "pro": true,
    "channel": "Twitter"
  }
}
{
  :CAC=> 213,
  :utmCampaign=> "social media 1",
  :convertedAt=> "2022-09-08 00:00:00",
  :pro=> true,
  :salesRep=> "Gabi",
  :channel=> "Twitter",
  :age=> 8
}
{
  "custom": {
    "CAC": 213,
    "utmCampaign": "social media 1",
    "convertedAt": "2022-09-08 00:00:00",
    "pro": true,
    "channel": "Twitter"
  }
}
<?php

array (
  "CAC" => 213,
  "utmCampaign" => "social media 1",
  "convertedAt" => "2022-09-08 00:00:00",
  "pro" => true,
  "channel" => "Twitter"
)
?>
(*chartmogul.CustomAttributes)(0xc04206e030)({
 Custom: (map[string]interface {}) (len=5) {
  (string) (len=3) "CAC": (float64) 213,
  (string) (len=11) "utmCampaign": (string) (len=14) "social media 1",
  (string) (len=11) "convertedAt": (string) (len=19) "2022-09-08 00:00:00",
  (string) (len=3) "pro": (string) (bool) true,
  (string) (len=7) "channel": (string) (len=7) "Twitter"
 }
})
<CustomAttributes{
    custom={
        'CAC': 213,
        'utmCampaign': 'social media 1',
        'convertedAt': '2022-09-08 00:00:00',
        'pro': True, 
        'channel': 'Twitter'}}>

Note that each attribute has to be already present, non-existent attributes will result in Bad request.

📘

Supported data types and their accepted formats

String - Accepts alphanumeric characters. Maximum of 255 characters allowed.
Integer - Accepts only numeric characters .
Decimal - Accepts floating point numbers.
Timestamp - In the ISO 8601 format.
Boolean - Can be one of TRUE, true, t, 1, FALSE, false, f, or 0.

In the response, custom contains all the custom attributes now on this customer.

Language
Authorization
Basic
base64
: