---
canonical_url: "https://docs.composio.dev/toolkits/chameleon"
markdown_url: "https://docs.composio.dev/toolkits/chameleon.md"
product: "platform"
version: null
last_updated: null
---

# Chameleon

Chameleon is a product adoption platform for building in-app experiences, managing customer data, and analyzing user engagement.

- **Category:** marketing automation
- **Auth:** API_KEY
- **Composio-managed OAuth available?** N/A
- **Tools:** 14
- **Triggers:** 0
- **Slug:** `CHAMELEON`
- **Version:** 00000000_00

## Tools

### Count Customer Records

**Slug:** `CHAMELEON_COUNT_CUSTOMER_RECORDS`

Count Chameleon profiles or companies matching structured filters without retrieving the matching records.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filters` | array | No | Structured Chameleon filter expressions. Profiles require filters or segment_id; companies may be counted without filters. |
| `filters_op` | string ("and" | "or") | No | How to combine multiple filters. |
| `segment_id` | string | No | Count profiles in this Chameleon segment; valid only for profiles. |
| `record_type` | string ("profile" | "company") | Yes | Customer record type to count. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Account Identity

**Slug:** `CHAMELEON_GET_ACCOUNT_IDENTITY`

Return the Chameleon account ID and admin user ID associated with the connected Account Secret.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Delivery

**Slug:** `CHAMELEON_GET_DELIVERY`

Retrieve one Chameleon experience delivery by ID without triggering, changing, or cancelling it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `delivery_id` | string | Yes | Chameleon's internal delivery ID, usually obtained from LIST_DELIVERIES. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Experience

**Slug:** `CHAMELEON_GET_EXPERIENCE`

Retrieve one Chameleon tour, microsurvey, launcher, embed, or tooltip by ID without modifying or publishing it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `experience_id` | string | Yes | Chameleon's internal experience ID. |
| `experience_type` | string ("tour" | "survey" | "launcher" | "embed" | "tooltip") | Yes | Type of Chameleon experience to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Changes

**Slug:** `CHAMELEON_LIST_CHANGES`

List one page of Chameleon change history across the account or for one supported experience.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum changes to return in this page (1-500). |
| `cursor` | string | No | Opaque continuation cursor from a previous response. Pass it unchanged to continue the same history listing. |
| `filter` | string | No | Change property to filter by for account-wide history. Omit for experience-specific history. |
| `experience_id` | string | No | Chameleon experience ID whose history to list. Supply with experience_type, or omit both for account-wide history. |
| `experience_type` | string ("tour" | "survey" | "launcher" | "embed" | "tooltip") | No | Experience type whose history to list. Supply with experience_id, or omit both for account-wide history. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Deliveries

**Slug:** `CHAMELEON_LIST_DELIVERIES`

List one page of scheduled Chameleon experience deliveries, optionally filtered by experience or profile, without triggering a new delivery.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum deliveries to return in this page (1-500). |
| `cursor` | string | No | Continuation cursor from a previous response. Pass it unchanged to fetch the next page. |
| `profile_id` | string | No | Chameleon profile ID used to filter deliveries. |
| `experience_id` | string | No | Chameleon Tour or Microsurvey ID used to filter deliveries. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Domains or Environments

**Slug:** `CHAMELEON_LIST_DOMAINS_OR_ENVIRONMENTS`

List one page of configured Chameleon domains or environments without changing account routing configuration.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum resources to return in this page (1-500). |
| `cursor` | string | No | Opaque continuation cursor from a previous call. Pass it unchanged to continue the same resource listing. |
| `domain` | string | No | Host used to filter domains; valid only when resource_type is domain. |
| `resource_type` | string ("domain" | "environment") | Yes | Configuration resource to list; Chameleon calls environments URL groups. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Experience Analytics

**Slug:** `CHAMELEON_LIST_EXPERIENCE_ANALYTICS`

List one page of tour interactions or microsurvey responses for a specific Chameleon experience.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum analytics records in this page (1-500). |
| `order` | string ("created_at" | "updated_at") | No | Result order supported by the analytics endpoint. |
| `cursor` | string | No | Opaque continuation cursor from a previous call. Pass it unchanged to continue the original analytics listing. |
| `expand` | object | No | Provider expansion options for related profile and company analytics data. |
| `experience_id` | string | Yes | Tour ID for interactions or microsurvey ID for responses; analytics cannot be listed account-wide. |
| `analytics_type` | string ("tour_interactions" | "survey_responses") | Yes | Analytics records to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Experiences

**Slug:** `CHAMELEON_LIST_EXPERIENCES`

List one page of Chameleon tours, microsurveys, launchers, embeds, or tooltips without modifying or publishing them.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum experiences to return in this page (1-500). |
| `cursor` | string | No | Opaque continuation cursor from a previous call. Pass it unchanged to continue listing the same experience type. |
| `experience_type` | string ("tour" | "survey" | "launcher" | "embed" | "tooltip") | Yes | Type of Chameleon experience to list. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Targeting Metadata

**Slug:** `CHAMELEON_LIST_TARGETING_METADATA`

List one page of Chameleon segments, tags, themes, tracked event names, or profile/company property definitions used to interpret targeting and analytics data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum metadata records to return in this page (1-500). |
| `cursor` | string | No | Opaque continuation cursor from a previous call. Pass it unchanged to continue the same metadata listing. |
| `integration` | string | No | Optional integration filter for property definitions only. |
| `metadata_type` | string ("segment" | "tag" | "theme" | "event_name" | "property") | Yes | Metadata collection to list. |
| `property_kind` | string ("profile" | "company") | No | Profile or company property definitions to list. Required only when metadata_type is property. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Lookup Customer Record

**Slug:** `CHAMELEON_LOOKUP_CUSTOMER_RECORD`

Retrieve one Chameleon profile or company by its Chameleon ID or external identifier. Profiles can also be looked up by email address; provide exactly one identifier.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `uid` | string | No | External profile or company identifier supplied by your application. Use this as the sole record selector; do not combine it with another selector. |
| `email` | string | No | Profile email address. Valid only when record_type is profile. Use this as the sole record selector; do not combine it with another selector. |
| `record_type` | string ("profile" | "company") | Yes | Customer record type to retrieve. |
| `chameleon_id` | string | No | Chameleon's internal profile or company ID. Use this as the sole record selector; do not combine it with another selector. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Search Customer Records

**Slug:** `CHAMELEON_SEARCH_CUSTOMER_RECORDS`

Search Chameleon profiles or companies with structured filters and return one offset-paginated page of matching records.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `limit` | integer | No | Maximum records to request for this page (10-500). |
| `cursor` | string | No | Opaque continuation cursor from a previous call. Pass it unchanged to continue the original search. |
| `expand` | object | No | Chameleon expansion options for related profile or company data. |
| `filters` | array | No | Structured Chameleon filter expressions. Required for companies and for profiles without segment_id. |
| `sort_by` | string | No | Company field to sort by. Valid only for companies. |
| `filters_op` | string ("and" | "or") | No | How Chameleon combines multiple filters. |
| `segment_id` | string | No | Chameleon segment ID used to limit profile results. Valid only for profiles. |
| `record_type` | string ("profile" | "company") | Yes | Customer record type to search. |
| `sort_direction` | string ("asc" | "desc") | No | Company sort direction. Valid only for companies. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Track Event

**Slug:** `CHAMELEON_TRACK_EVENT`

Irreversibly record one named event for a Chameleon profile identified by ID or external UID; provide exactly one identifier. The event cannot be deleted, and a new event name also creates a persistent event-name definition that cannot be deleted.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `event_name` | string | Yes | Stable event name to track. The recorded event cannot be deleted, and a new name creates a persistent event-name definition that also cannot be deleted. |
| `profile_id` | string | No | Chameleon's internal profile ID. Use this as the sole profile selector; do not combine it with another selector. |
| `properties` | object | No | Event properties to store with the event. |
| `profile_uid` | string | No | External profile identifier. Use this as the sole profile selector; do not combine it with another selector. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Upsert Customer Record

**Slug:** `CHAMELEON_UPSERT_CUSTOMER_RECORD`

Create or update one Chameleon profile or company by external UID and return its Chameleon ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `uid` | string | Yes | Stable string or integer external identifier used as the upsert key. |
| `name` | string | No | Company name; valid only for companies. |
| `email` | string | No | Profile email address; valid only for profiles. |
| `last_name` | string | No | Profile last name; valid only for profiles. |
| `first_name` | string | No | Profile first name; valid only for profiles. |
| `properties` | object | No | Additional top-level custom properties to persist on the record. Keys must not replace canonical fields. |
| `company_uid` | string | No | External company UID to associate with a profile; valid only for profiles. |
| `record_type` | string ("profile" | "company") | Yes | Customer record type to create or update. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
