Skip to content
Last updated

Incremental Activation Parameters

Incremental Activation is a Beta release. For more information, contact your Customer Success Representative.

This reference document describes all parameters used in the Incremental Activation workflow template. Parameters are defined in the _export.params block of the workflow configuration.

Parameter Overview

ParameterRequiredAuto-PopulatedDescription
api_endpointYesNoAPI endpoint to fetch the Incremental Activation workflow
id_keyYesNoUnique identifier column in the source table
delta_keysYesNoArray of columns to check for changes
activation_mappingsYesNoArray of delta record to connector mappings
activation_actions_dbConditionalYes (when running as Activation Action)Source TD database
activation_actions_tableConditionalYes (when running as Activation Action)Source table name
result_connection_settingsConditionalYes (when running as Activation Action)Result connector configuration object
result_connection_nameConditionalYes (when running as Activation Action)Connector authentication name

Parameters marked "Yes" under "Auto-Populated" are automatically set when running as an Activation Action within Audience Studio. When running as a standalone workflow, all conditional parameters must be manually configured.

api_endpoint

TypeRequiredAuto-Populated
StringYesNo

The API endpoint URL for fetching the Incremental Activation workflow. The value depends on your Treasure Data site location.

Values by TD Site

TD SiteEndpoint URL
US (us01)https://integrations-gateway.us01.treasuredata.com
EU (eu01)https://integrations-gateway.eu01.treasuredata.com
Asia Pacific (ap02)https://integrations-gateway.ap02.treasuredata.com
Japan (co.jp)https://integrations-gateway.treasuredata.co.jp

Example

_export:
  params:
    api_endpoint: "https://integrations-gateway.us01.treasuredata.com"

Validation

  • Must be a valid HTTPS URL
  • Must match your Treasure Data site location
  • Incorrect endpoints will cause workflow failures

id_key

TypeRequiredAuto-Populated
StringYesNo

The column name that serves as the unique identifier (primary key) for profiles in your source table. This column's data must be unique across all rows.

Purpose

The id_key column is used to:

  • Identify new profiles added to the segment
  • Identify profiles removed from the segment
  • Match profiles between activation runs for delta calculation

Common Values

  • td_customer_id - Treasure Data's unified customer ID
  • email - Email address
  • phone_number - Phone number
  • mobile_ad_id - Mobile advertising ID (IDFA, MAID)
  • customer_id - Custom customer identifier

Example

_export:
  params:
    id_key: "email"

Requirements

The id_key column must contain unique values. Duplicate values will cause errors in delta calculation and may produce incorrect results.

  • Column must exist in the source table
  • Values must be unique (no duplicates)
  • Values should not be null
  • Data type should be consistent (all strings or all numbers)

Best Practices

  1. Choose a stable identifier: Select a column that rarely changes. If the ID changes, the profile will appear as "deleted" and "new" rather than "unchanged."
  2. Verify uniqueness: Run a query to confirm no duplicate values exist:
    SELECT id_key, COUNT(*)
    FROM your_table
    GROUP BY id_key
    HAVING COUNT(*) > 1
  3. Match destination requirements: If your destination platform requires a specific identifier (e.g., email hash for Meta), ensure your id_key matches.

delta_keys

TypeRequiredAuto-Populated
Array of StringsYesNo

An array of column names to check for changes when determining if a profile is "updated" or "unchanged." These columns define which attributes trigger an update status.

Purpose

The delta_keys array determines:

  • Whether a profile is marked as "updated" (when any delta key value changes)
  • Whether a profile is marked as "unchanged" (when all delta key values remain the same)
  • Which attribute changes trigger re-activation

Examples

Track job and organization changes:

delta_keys: ["job_title", "organization"]

Track subscription status changes:

delta_keys: ["subscription_status", "tier_level"]

Track location changes:

delta_keys: ["city", "country", "postal_code"]

Track multiple attributes:

delta_keys: ["status", "tier", "email", "phone_number"]

Default Behavior

If delta_keys is empty or not specified, it defaults to the value of id_key:

# These two configurations are equivalent if id_key is "email"
delta_keys: []
# becomes
delta_keys: ["email"]

How Delta Keys Work

The workflow calculates a hash of the delta_keys columns for each profile:

  1. Current Run: Hash of current delta_keys values
  2. Previous Run: Hash of previous delta_keys values
  3. Comparison: If hashes differ, profile is marked "updated"

Example:

Runemailjob_titleorganizationDelta Keys HashStatus
1john@example.comEngineerAcme Corpabc123new
2john@example.comSenior EngineerAcme Corpdef456updated
3john@example.comSenior EngineerAcme Corpdef456unchanged

Best Practices

  1. Include relevant attributes only: Don't include columns that change frequently but don't require re-activation (e.g., last_login_timestamp).
  2. Consider downstream impact: If your destination charges per data point update, minimize unnecessary delta keys.
  3. Test with representative data: Verify that your delta keys capture the changes you care about without over-triggering.
  4. Document your choices: Record why specific columns were chosen as delta keys for future reference.

Common Patterns

E-commerce - Loyalty tier changes:

delta_keys: ["loyalty_tier", "points_balance"]

B2B - Lead scoring updates:

delta_keys: ["lead_score", "engagement_level", "company_size"]

Marketing - Preference management:

delta_keys: ["email_opt_in", "sms_opt_in", "preferred_channel"]

activation_mappings

TypeRequiredAuto-Populated
Array of ObjectsYesNo

An array of mapping objects that define how delta records are sent to the destination connector. Each mapping connects a delta status to a connector configuration.

For detailed information, see Incremental Activation Mappings.

Structure

Each mapping object contains:

FieldTypeRequiredDescription
delta_statusStringYesOne of: new, updated, deleted, unchanged
connector_fieldStringYesConnector config field name (e.g., mode, operation)
connector_field_valueStringYesValue to set (e.g., append, delete, replace)

Example

activation_mappings: [
  {
    "delta_status": "new",
    "connector_field": "mode",
    "connector_field_value": "append"
  },
  {
    "delta_status": "updated",
    "connector_field": "mode",
    "connector_field_value": "append"
  },
  {
    "delta_status": "deleted",
    "connector_field": "mode",
    "connector_field_value": "delete"
  }
]

Limits

  • Maximum of 4 mapping elements (one per delta status type)
  • Each delta_status value should appear only once

activation_actions_db

TypeRequiredAuto-Populated
StringConditionalYes (when running as Activation Action)

The name of the source TD database containing the table to process.

When Auto-Populated

When running as an Activation Action within Audience Studio, this parameter is automatically set to the syndication database (e.g., cdp_syndication_123).

When Required

When running as a standalone workflow, you must specify this parameter manually:

_export:
  params:
    activation_actions_db: "my_customer_database"

Validation

  • Database must exist in your Treasure account
  • User must have appropriate permissions on the database

activation_actions_table

TypeRequiredAuto-Populated
StringConditionalYes (when running as Activation Action)

The name of the source table within the database that contains the data to process.

When Auto-Populated

When running as an Activation Action within Audience Studio, this parameter is automatically set to the segment syndication table (e.g., segment_12345).

When Required

When running as a standalone workflow, you must specify this parameter manually:

_export:
  params:
    activation_actions_table: "customer_profiles"

Validation

  • Table must exist in the specified database
  • Table must contain the columns specified in id_key and delta_keys
  • User must have read permissions on the table

result_connection_settings

TypeRequiredAuto-Populated
ObjectConditionalYes (when running as Activation Action)

The configuration object for the result export connector. The structure varies depending on the destination connector type.

When Auto-Populated

When running as an Activation Action within Audience Studio, this parameter is automatically populated based on your activation configuration.

When Required

When running as a standalone workflow, you must specify the connector configuration manually.

Example - Snowflake

result_connection_settings:
  type: "snowflake"
  database: "MARKETING_DB"
  schema: "PUBLIC"
  table: "CUSTOMER_SEGMENTS"
  mode: "append"

Example - Google Sheets

result_connection_settings:
  type: "google_sheets"
  spreadsheet_id: "1ABC...xyz"
  sheet_name: "Customer List"
  mode: "replace"

Connector-Specific Requirements

Refer to your destination connector's documentation for required fields and supported values.

result_connection_name

TypeRequiredAuto-Populated
StringConditionalYes (when running as Activation Action)

The name of the connector authentication configured in Treasure Data.

When Auto-Populated

When running as an Activation Action within Audience Studio, this parameter is automatically populated based on your activation's selected authentication.

When Required

When running as a standalone workflow, you must specify the authentication name manually:

_export:
  params:
    result_connection_name: "my_snowflake_connection"

Validation

  • Authentication must exist in your Treasure account
  • Authentication must be valid and not expired
  • User must have permission to use the authentication

Complete Parameter Examples

Activation Action Mode

Only configure user-specified parameters:

timezone: "UTC"
_export:
  params:
    api_endpoint: "https://integrations-gateway.us01.treasuredata.com"
    id_key: "email"
    delta_keys: ["subscription_status", "tier"]
    activation_mappings: [
      {
        "delta_status": "new",
        "connector_field": "mode",
        "connector_field_value": "append"
      },
      {
        "delta_status": "deleted",
        "connector_field": "mode",
        "connector_field_value": "delete"
      }
    ]

Standalone Mode

Configure all parameters:

timezone: "UTC"
_export:
  params:
    api_endpoint: "https://integrations-gateway.us01.treasuredata.com"
    id_key: "email"
    delta_keys: ["subscription_status", "tier"]
    activation_mappings: [
      {
        "delta_status": "new",
        "connector_field": "mode",
        "connector_field_value": "append"
      },
      {
        "delta_status": "updated",
        "connector_field": "mode",
        "connector_field_value": "append"
      }
    ]
    activation_actions_db: "customer_data"
    activation_actions_table: "unified_profiles"
    result_connection_name: "snowflake_production"
    result_connection_settings:
      type: "snowflake"
      database: "MARKETING"
      schema: "SEGMENTS"
      table: "ACTIVE_SUBSCRIBERS"
      mode: "append"

Next Steps