Skip to content

Update parent segment configuration

Request

Update the specified parent segment configuration by its identifier.

Important: Update Behavior and the master Field

This endpoint supports two different update modes depending on whether the master field is included in the request body:

  1. Partial Update (without master field): When the master field is omitted, only the scalar fields (e.g., name, description, scheduleType) in the request body are updated. The attributes, behaviors, and audienceFilters collections are left untouched, even if they are omitted or set to null or [] in the request.

  2. Full Replacement (with master field): When the master field is included in the request body, the endpoint performs a full replacement of attributes, behaviors, and audienceFilters. All existing entries in these collections are deleted and replaced with exactly what is provided in the request:

    • If attributes, behaviors, or audienceFilters are omitted, set to null, or set to [], those collections will be cleared (all existing entries deleted).
    • Only the items explicitly included in the request body will exist after the update.
    • This is a destructive operation that cannot be undone.

Recommendations:

  • For partial updates of scalar fields only: omit the master field from the request body.
  • For full replacement: include the master field and provide complete definitions for attributes, behaviors, and audienceFilters to avoid unintended data loss.
Security
TdApikeyAuth
Path
audienceIdinteger, (int64)required

ID of Master Segment Config that needs to be updated

Bodyapplication/json
idstring, (integer)
namestringrequired
descriptionstring
scheduleTypestring(ScheduleType)
Enum:"cron""daily""hourly""minutes_interval""monthly""none""weekly"
Example:"daily"
scheduleOptionstring or null
Example:"00:00"
timezonestring
Example:"UTC"
matrixUpdatedAtstring or null, (datetime)
workflowHiveOnlyboolean

Whether the workflow mainly use Hive or not. Default is false

hiveEngineVersionstring

Hive engine version used in audience workflows

Enum:"0.13""cdpaudience"
hivePoolNamestring or null
prestoPoolNamestring or null
allowActivationBehaviorboolean or null
maxActivationBehaviorRowinteger or null

Only null is acceptable when allowActivationBehavior is false.

llmEnabledboolean or null

llmEnabled indicates whether customer has enabled llm (true or false).

llmStatestring

llmState indicates more detailed state including updating.

Enum:"enabling""enabled""disabling""disabled"
populationinteger or null, (int64)

the population of the audience

enrichmentWordTaggingEnabledboolean
enrichmentIpEnabledboolean
enrichmentTdJsSdkEnabledboolean
masterobject(AudienceMaster)
attributesArray of objects(AudienceAttribute)
behaviorsArray of objects(AudienceBehavior)
customerGroupobject(CustomerGroup)

A group of customers within an audience

audienceFiltersArray of objects, <= 2 items(AudienceFilter)
createdAtstring, (date-time)
updatedAtstring, (date-time)
createdByobject(User)
updatedByobject(User)
curl -i -X PUT \
  'https://api-cdp.treasuredata.com/audiences/{audienceId}' \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "id": "string",
    "name": "string",
    "description": "string",
    "scheduleType": "daily",
    "scheduleOption": "00:00",
    "timezone": "UTC",
    "matrixUpdatedAt": "string",
    "workflowHiveOnly": true,
    "hiveEngineVersion": "0.13",
    "hivePoolName": "string",
    "prestoPoolName": "string",
    "allowActivationBehavior": true,
    "maxActivationBehaviorRow": 0,
    "llmEnabled": true,
    "llmState": "enabling",
    "population": 0,
    "enrichmentWordTaggingEnabled": true,
    "enrichmentIpEnabled": true,
    "enrichmentTdJsSdkEnabled": true,
    "master": {
      "parentDatabaseName": "string",
      "parentTableName": "string"
    },
    "attributes": [
      {
        "audienceId": "string",
        "name": "string",
        "type": "string",
        "parentDatabaseName": "string",
        "parentTableName": "string",
        "parentColumn": "string",
        "parentKey": "string",
        "foreignKey": "string",
        "groupingName": "string"
      }
    ],
    "behaviors": [
      {
        "id": "string",
        "name": "string",
        "parentDatabaseName": "string",
        "parentTableName": "string",
        "parentKey": "string",
        "foreignKey": "string",
        "schema": [
          {
            "name": "string",
            "type": "string",
            "parentColumn": "string"
          }
        ],
        "scheduleType": "daily",
        "scheduleOption": "string",
        "defaultTimeFilterEnabled": true,
        "isRealtime": true
      }
    ],
    "customerGroup": {
      "id": "string",
      "audienceId": 0,
      "name": "string",
      "parentDatabaseName": "string",
      "parentTableName": "string",
      "parentKey": "string",
      "foreignKey": "string",
      "customerGroupAttributes": [
        {
          "name": "string",
          "type": "string",
          "parentDatabaseName": "string",
          "parentTableName": "string",
          "parentColumn": "string",
          "parentKey": "string",
          "foreignKey": "string"
        }
      ],
      "customerGroupBehaviors": [
        {
          "name": "string",
          "parentDatabaseName": "string",
          "parentTableName": "string",
          "parentKey": "string",
          "foreignKey": "string",
          "schema": [
            {
              "name": "string",
              "type": "string",
              "parentColumn": "string"
            }
          ]
        }
      ]
    },
    "audienceFilters": [
      {
        "columnName": "Country",
        "rightValues": [
          "Japan"
        ]
      }
    ],
    "createdAt": "2019-08-24T14:15:22Z",
    "updatedAt": "2019-08-24T14:15:22Z",
    "createdBy": {
      "id": "string",
      "td_user_id": "string",
      "name": "string"
    },
    "updatedBy": {
      "id": "string",
      "td_user_id": "string",
      "name": "string"
    }
  }'

Responses

Given parameters are not valid

Bodyapplication/json
codestringrequired
messagestringrequired
Response
{ "code": "string", "message": "string" }