Skip to Content

Delighted

Send people and survey responses to Delighted for NPS, CSAT, and customer feedback collection. Zeotap syncs your warehouse data to Delighted via the REST API, enabling you to trigger surveys, manage contacts, and import historical feedback.

Prerequisites

  • A Delighted account on a plan that includes API access
  • Your Delighted API key (found under Settings > API in the Delighted dashboard)
  • Each CX project in Delighted has its own API key — ensure you use the key for the correct project

Authentication

Delighted uses API Key authentication via HTTP Basic Auth.

  1. Log in to your Delighted dashboard at delighted.com 
  2. Navigate to Settings > API
  3. Copy your API key
  4. In Zeotap, when configuring the Delighted destination, paste the API key into the API Key field

Important: Keep your API key private. Do not share it in client-side code or public repositories.

Configuration

Delighted does not require any additional configuration fields. The destination connects directly to the global Delighted API endpoint (api.delighted.com).

Target Settings

FieldTypeRequiredDescription
Object TypeSelectYesType of data to send: People (send surveys / manage contacts) or Survey Responses (import feedback)

Supported Operations

Sync Modes

ModeSupported
InsertYes
UpsertYes
Update
Mirror

For People, Delighted deduplicates by email address or phone number. Sending a person with an existing email updates their properties and optionally schedules a new survey. For Survey Responses, data is always appended (responses are immutable once created).

Audience Sync Modes

Delighted does not have a list or segment membership API, so audience syncs are not supported.

Features

  • Field Mapping: Yes
  • Schema Introspection: No

Required Mapping Fields

Object TypeRequired FieldsDescription
Peopleemail or phone_numberEmail address (default) or phone number in E.164 format for SMS surveys
Survey Responsesperson, scoreDelighted person ID and NPS score (0–10)

Default Destination Fields

People: email, name, phone_number, channel, delay, send, locale, properties

Survey Responses: person, score, comment, created_at, person_properties

How It Works

People

Zeotap sends people to the Delighted People API (POST /v1/people.json). Each person is sent individually. The request body contains:

{ "email": "jane@example.com", "name": "Jane Doe", "channel": "email", "delay": 0, "send": true, "properties": { "plan": "Enterprise", "signup_date": "2024-01-15" } }

When send is true (default), Delighted schedules a survey for the person. Set send to false to create or update the contact without triggering a survey.

Delighted deduplicates by email or phone number. If a person with the same identifier already exists, their properties are updated.

Survey Responses

Zeotap sends survey responses to the Delighted Survey Responses API (POST /v1/survey_responses.json). Each response is sent individually:

{ "person": "12345", "score": 9, "comment": "Great product!", "person_properties": { "plan": "Enterprise" } }

Survey responses are immutable — once created, they cannot be updated or deleted via the API.

Custom Properties

Any fields not matching a known Delighted field are automatically collected into the properties object (for People) or person_properties object (for Survey Responses). This allows you to send arbitrary segmentation data alongside standard fields.

Rate Limits

Delighted applies rate limits in extreme usage scenarios. If rate-limited, the API returns HTTP 429 with a Retry-After header indicating how many seconds to wait. Zeotap automatically retries with exponential backoff when rate limits are encountered.

Under normal usage, rate limits are unlikely to be triggered.

Best Practices

  • Verify your API key: Use the Test Connection button in Zeotap to confirm your API key is valid before running syncs
  • Use the correct project key: Each Delighted CX project has its own API key — ensure you are using the key that corresponds to your target project
  • Set send to false for data backfills: When importing historical contacts, set the send field to false to avoid triggering surveys for every imported person
  • E.164 phone numbers: For SMS surveys, phone numbers must be in E.164 format (e.g., +17132746524)
  • Score validation: Survey response scores must be integers from 0 to 10 (NPS scale)
  • Use properties for segmentation: Attach custom properties to people for filtering and segmentation within Delighted dashboards

Troubleshooting

Authentication failed (401)

Your API key is invalid or expired. Navigate to Settings > API in Delighted to verify your key. Each CX project has its own key — make sure you are using the correct one.

Survey not received by person

Delighted has built-in survey throttling to prevent over-surveying. By default, a person will not receive a new survey if they were recently surveyed. Use the last_sent_at field to override the throttling reference time, or check your sampling and throttling settings in Delighted under Settings > Survey > Sampling.

Person created but survey not sent

If the send field is set to false, the person is created or updated without scheduling a survey. Verify the send field mapping in your sync configuration.

Invalid phone number format (422)

Phone numbers must be in E.164 format (e.g., +17132746524). Ensure your phone number data includes the country code prefix with a + sign.

Survey response rejected — invalid person ID

The person field must contain a valid Delighted person ID (numeric). You can obtain person IDs by first syncing people to Delighted and then referencing the returned IDs, or by using the Delighted API to list existing people.

Properties not appearing in Delighted

Custom properties are case-sensitive in Delighted. Ensure the property keys in your field mapping match exactly what you expect to see in Delighted dashboards. Properties with empty string values are ignored.

Rate limited (429)

Zeotap automatically retries rate-limited requests with exponential backoff. If you consistently hit rate limits, reduce the sync frequency or contact Delighted support to discuss your usage patterns.

Last updated on