Delighted Survey Responses API
Create and retrieve survey responses
Create and retrieve survey responses
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/delighted-survey-responses-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Delighted Autopilot Survey Responses API
description: REST API for the Delighted customer satisfaction platform. Enables sending surveys, retrieving and adding survey responses, accessing NPS and CSAT metrics, managing Autopilot drip campaigns, handling webhooks for real-time events, and managing people records including unsubscribes and bounces. Authentication is via HTTP Basic Auth using per-project API keys.
version: v1
contact:
name: Delighted Support
url: https://app.delighted.com/docs/api
termsOfService: https://delighted.com/terms
license:
name: Proprietary
url: https://delighted.com/terms
servers:
- url: https://api.delighted.com/v1
description: Delighted API v1
security:
- basicAuth: []
tags:
- name: Survey Responses
description: Create and retrieve survey responses
paths:
/survey_responses.json:
get:
operationId: listSurveyResponses
summary: List survey responses
description: Returns a paginated list of survey responses for the project.
tags:
- Survey Responses
parameters:
- name: per_page
in: query
description: Results per page. Default is 20, maximum is 100.
schema:
type: integer
default: 20
maximum: 100
- name: page
in: query
description: Page number to retrieve. Default is 1.
schema:
type: integer
default: 1
- name: since
in: query
description: Unix timestamp filtering responses created on or after this time.
schema:
type: integer
- name: until
in: query
description: Unix timestamp filtering responses created on or before this time.
schema:
type: integer
- name: updated_since
in: query
description: Unix timestamp filtering responses updated on or after this time.
schema:
type: integer
- name: updated_until
in: query
description: Unix timestamp filtering responses updated on or before this time.
schema:
type: integer
- name: trend
in: query
description: Trend ID to restrict responses to a specific trend.
schema:
type: string
- name: person_id
in: query
description: Person ID to filter responses for a specific individual.
schema:
type: string
- name: person_email
in: query
description: Email address to filter responses for a specific person.
schema:
type: string
format: email
- name: order
in: query
description: 'Sort order. One of: asc (chronological), desc (reverse), asc:updated_at, or desc:updated_at.'
schema:
type: string
enum:
- asc
- desc
- asc:updated_at
- desc:updated_at
- name: expand[]
in: query
description: Objects to expand in response. Can be 'person' and/or 'notes'.
schema:
type: array
items:
type: string
enum:
- person
- notes
style: form
explode: true
responses:
'200':
description: List of survey responses
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/SurveyResponse'
'401':
description: Unauthorized
'429':
description: Rate limit exceeded
post:
operationId: addSurveyResponse
summary: Add survey response
description: Manually adds a survey response for an existing person.
tags:
- Survey Responses
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddSurveyResponseRequest'
responses:
'200':
description: Survey response created
content:
application/json:
schema:
$ref: '#/components/schemas/SurveyResponse'
'401':
description: Unauthorized
'422':
description: Unprocessable entity - validation error
'429':
description: Rate limit exceeded
components:
schemas:
Note:
type: object
description: A note attached to a survey response.
properties:
id:
type: string
description: Note identifier.
text:
type: string
description: Note content.
user_email:
type: string
format: email
description: Email of the team member who added the note.
created_at:
type: integer
description: Unix timestamp when the note was created.
AddSurveyResponseRequest:
type: object
required:
- person
- score
description: Request body for manually adding a survey response.
properties:
person:
type: string
description: The ID of the person providing the response.
score:
type: integer
minimum: 0
maximum: 10
description: Rating from 0-10.
comment:
type: string
description: Optional feedback text from the respondent.
person_properties:
type: object
additionalProperties:
type: string
description: Custom key-value pairs to attach to the response.
created_at:
type: integer
description: Unix timestamp when the response was collected. Defaults to current time if omitted.
SurveyResponse:
type: object
description: A survey response record.
properties:
id:
type: string
description: Unique response identifier.
person:
type: string
description: Person ID associated with this response.
survey_type:
type: string
description: Type of survey (e.g. nps, csat, ces).
score:
type: integer
description: Survey score given by the respondent.
comment:
type:
- string
- 'null'
description: Optional comment provided by the respondent.
permalink:
type: string
format: uri
description: Shareable URL to the survey response.
created_at:
type: integer
description: Unix timestamp when the response was created.
updated_at:
type: integer
description: Unix timestamp when the response was last updated.
person_properties:
type: object
additionalProperties:
type: string
description: Custom properties associated with the person at time of response.
notes:
type: array
items:
$ref: '#/components/schemas/Note'
description: Notes attached to this response.
tags:
type: array
items:
type: string
description: Tags applied to this response.
additional_answers:
type: array
items:
$ref: '#/components/schemas/AdditionalAnswer'
description: Responses to additional survey questions.
AdditionalAnswer:
type: object
description: Response to an additional survey question.
properties:
question:
type: object
properties:
id:
type: string
description: Question identifier.
type:
type: string
enum:
- free_response
- scale
- select_one
- select_many
description: Question type.
text:
type: string
description: Question text.
answer:
description: Answer value; type varies based on question type.
oneOf:
- type: string
- type: integer
- type: array
items:
type: string
securitySchemes:
basicAuth:
type: http
scheme: basic
description: Use your Delighted API key as the username. Leave the password empty. The API key is found in your project settings.