# Delighted

Delighted uses the Net Promoter System® to gather real feedback from your customers – in minutes, not weeks. No technical knowledge required.

- **Category:** forms & surveys
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 13
- **Triggers:** 0
- **Slug:** `DELIGHTED`
- **Version:** 20260227_00

## Tools

### Add Person to Autopilot Email

**Slug:** `DELIGHTED_ADD_PERSON_TO_AUTOPILOT_EMAIL`

Add a person to Autopilot email or update their properties. Autopilot automatically schedules and sends recurring email surveys at the frequency configured in your Delighted account settings. Use this to enroll new people in automated email surveys or update custom properties for existing members. Note: Autopilot must be configured in your Delighted account before using this API.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `person_id` | string | No | Unique identifier for the person. |
| `properties` | object | No | Custom key-value pairs to attach to Autopilot surveys. Supports custom fields for segmentation and special properties: question_product_name (customizes survey question, max 150 chars), delighted_email_subject (custom subject line, max 150 chars), delighted_intro_message (custom opening message, max 300 chars), locale (language/region like 'en', 'de', 'zh-CN'), thank_you_message, thank_you_link_text, thank_you_link_url (post-survey customization). |
| `person_name` | string | No | Person's name. |
| `person_email` | string | Yes | Email address of the person being added or updated. Required for email-based Autopilot surveys. |
| `person_phone_number` | string | No | Phone number in E.164 format (e.g., +17132746524). |

#### 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 |

### Add Person to Autopilot SMS

**Slug:** `DELIGHTED_ADD_PERSON_TO_AUTOPILOT_SMS`

Tool to add a person to Autopilot or update their properties for SMS-based surveys. Use when you need to schedule automated survey delivery via SMS. Prerequisites: SMS Autopilot must be configured in your Delighted account before using this API endpoint. If not configured, the API returns a 422 error.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `person_id` | string | No | Unique identifier for the person. |
| `properties` | object | No | Custom properties for surveys. Can include special properties like question_product_name, delighted_email_subject, delighted_intro_message, locale, thank_you_message, thank_you_link_text, and thank_you_link_url. |
| `person_name` | string | No | Person's name. |
| `person_email` | string | No | Email address of the person. |
| `person_phone_number` | string | Yes | Phone number in E.164 format (e.g., +17132746524). Must start with +, contain country code, and use only + and digits. |

#### 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 |

### Create or Update Person

**Slug:** `DELIGHTED_CREATE_PERSON`

Tool to create or update a person and schedule a survey email. Use when you need to add a new person to Delighted, update existing person details, or schedule a survey with custom properties for segmentation.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Name of the person. |
| `send` | boolean | No | Whether to send the survey. Set to false to create/update person without scheduling survey delivery. Default is true. |
| `delay` | integer | No | Number of seconds to wait before sending the survey. Default is 0 (send immediately). |
| `email` | string | No | Email address of the person. Required if phone_number is not provided. |
| `channel` | string ("email" | "sms") | No | Communication channel for sending survey. Use 'sms' for SMS surveys or 'email' for email surveys (default). |
| `properties` | object | No | Custom key-value pairs for segmentation and customization. Used for filtering and personalizing surveys. |
| `email_update` | string | No | New email address when updating an existing contact. |
| `last_sent_at` | integer | No | Unix timestamp indicating when a survey was last sent to this person. Used to set previous survey send time. |
| `phone_number` | string | No | Phone number in E.164 format (e.g., +17132746524). Required if channel is 'sms' or email is not provided. |
| `phone_number_update` | string | No | New phone number in E.164 format when updating an existing contact. |

#### 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 |

### Delete Pending Survey Requests

**Slug:** `DELIGHTED_DELETE_PENDING_SURVEY_REQUESTS`

Tool to remove all pending (scheduled but not yet sent) survey requests for a person. Use when you need to cancel all future surveys for a specific email address.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `person_email` | string | Yes | The email address of the person whose pending survey requests should be deleted |

#### 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 |

### Delete Person

**Slug:** `DELIGHTED_DELETE_PERSON`

Tool to remove a person and all associated data from Delighted. Use when you need to permanently delete a person's information. Deletion includes surveys, responses, properties, Autopilot membership, survey history, and unsubscribe/bounce status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `person_identifier` | string | Yes | Identifies the person to delete. Accepts three formats: 1) By ID: '24248363', 2) By Email: 'email:jony@appleseed.com', 3) By Phone Number: 'phone_number:+17132746524' (E.164 format) |

#### 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 Autopilot Email Configuration

**Slug:** `DELIGHTED_GET_AUTOPILOT_EMAIL_CONFIGURATION`

Tool to retrieve the current Autopilot configuration for email distribution. Returns configuration details including whether Autopilot is active, survey frequency, and timestamps.

#### 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 Autopilot SMS Configuration

**Slug:** `DELIGHTED_GET_AUTOPILOT_SMS_CONFIGURATION`

Tool to retrieve the current Autopilot configuration for SMS distribution. Use when you need to check whether Autopilot is enabled, review survey frequency settings, or examine configuration timestamps for SMS surveys.

#### 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 Autopilot SMS Memberships

**Slug:** `DELIGHTED_LIST_AUTOPILOT_SMS_MEMBERSHIPS`

Tool to retrieve all Autopilot memberships for SMS distribution platform. Use when you need to list people enrolled in Autopilot SMS or filter by specific person details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `per_page` | integer | No | Number of results per page. Default is 20, maximum is 100. |
| `person_id` | string | No | Filter results to a specific person by ID. |
| `person_email` | string | No | Filter results to a specific person by email address. |
| `person_phone_number` | string | No | Filter results to a specific person by phone number in E.164 format (e.g., +17132746524). |

#### 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 Bounced People

**Slug:** `DELIGHTED_LIST_BOUNCED_PEOPLE`

Tool to retrieve all bounced people for your account, ordered by bounce time (oldest first). Use when you need to identify email addresses that have bounced. Supports pagination via per_page and page parameters, and optional Unix timestamp filters (since, until) to restrict results to specific time ranges.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number to retrieve (default: 1). |
| `since` | integer | No | Unix timestamp filtering bounces on or after this date. |
| `until` | integer | No | Unix timestamp filtering bounces on or before this date. |
| `per_page` | integer | No | Number of results per page (default: 20, max: 100). |

#### 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 People

**Slug:** `DELIGHTED_LIST_PEOPLE`

Tool to retrieve all people for your account in creation order. Use when you need to list contacts, filter by email or phone number, or paginate through your people database. Supports cursor-based pagination via Link header and optional time-based filtering. Note: email and phone_number filters are mutually exclusive.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `email` | string | No | Filter results to a specific person by email address. Mutually exclusive with phone_number. |
| `since` | integer | No | Unix timestamp to filter people created on or after this time. |
| `until` | integer | No | Unix timestamp to filter people created on or before this time. |
| `per_page` | integer | No | Number of results per page. Default is 20, maximum is 100. |
| `phone_number` | string | No | Filter results by phone number in E.164 format (e.g., '+17132746524'). Mutually exclusive with email. |

#### 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 Survey Responses

**Slug:** `DELIGHTED_LIST_SURVEY_RESPONSES`

Tool to retrieve all survey responses for your account with pagination support and optional filtering. Use when you need to access survey feedback data, filter by date range, trend, person, or sort by creation/update time. Supports expanding person details and notes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number to retrieve (default: 1). |
| `order` | string | No | Sort order for responses based on creation or update time. Accepts 'asc' (default), 'desc', 'asc:updated_at', or 'desc:updated_at'. |
| `since` | integer | No | Unix timestamp restricting responses to those created on or after this time. |
| `trend` | string | No | ID of a trend to filter responses by that specific trend. |
| `until` | integer | No | Unix timestamp restricting responses to those created on or before this time. |
| `expand` | array | No | Array specifying objects to expand. Supports 'person' and 'notes'. |
| `per_page` | integer | No | Number of results per page (default: 20, max: 100). |
| `person_id` | string | No | ID restricting responses to a specific person. |
| `person_email` | string | No | Email address restricting responses to a specific person. |
| `updated_since` | integer | No | Unix timestamp restricting responses to those updated on or after this time. |
| `updated_until` | integer | No | Unix timestamp restricting responses to those updated on or before this time. |

#### 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 Unsubscribed People

**Slug:** `DELIGHTED_LIST_UNSUBSCRIBED_PEOPLE`

Tool to retrieve all unsubscribed people for your account, ordered by unsubscribe time (oldest first). Use when you need to identify people who have unsubscribed. Supports pagination via per_page and page parameters, and optional Unix timestamp filters (since, until) to restrict results to specific time ranges.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number to retrieve (default: 1). |
| `since` | integer | No | Unix timestamp filtering unsubscribes on or after this date. |
| `until` | integer | No | Unix timestamp filtering unsubscribes on or before this date. |
| `per_page` | integer | No | Number of results per page (default: 20, max: 100). |

#### 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 |

### Unsubscribe Person

**Slug:** `DELIGHTED_UNSUBSCRIBE_PERSON`

Tool to add a person to your unsubscribe list, preventing them from receiving any future surveys via email. Use when you need to permanently unsubscribe someone from all email surveys. This is functionally equivalent to the person clicking Unsubscribe within a survey.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `person_email` | string | Yes | The email address of the person to unsubscribe from surveys |

#### 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 |
