Skip to main content

REST API: Custom Surveys

Ray avatar
Written by Ray
Updated this week

Endpoints to retrieve custom survey information from within Vitally using the REST API.

The Custom Survey object

Attributes

Description

Editable?

id

Vitally's unique ID for the custom survey response

No

surveyId

Vitally's unique ID for the survey

No

organizationId

Vitally ID for the organization this Survey belongs to (if applicable)

No

userID

The ID for the User that has responded to the survey

No

title

The title for the question

No

body

The description given to the survey

createdAt

The date/time when the custom survey was created

No

updatedAt

The date/time when the custom survey was updated

No

respondedAt

When the response to the survey was captured

No

Replace {subdomain} in the endpoints below with your Vitally subdomain.

You can find your subdomain in the URL used to log into Vitally (i.e., https://yoursubdomain.vitally.io

The Survey Questions Object

Attributes

Description

Editable?

id

The ID for the survey response to the question

No

questionId

The ID for the survey question

No

data.type

The type of survey question (e.g., string, number, array, etc.)

No

data.value

The value that has been submitted for the survey question

No

Get Survey Responses for a Survey GET

Get all survey responses for a specific survey

US Data Center (default):

https://{subdomain}.rest.vitally.io/resources/surveys/{surveyId}/responses

EU Data Center:

https://rest.vitally-eu.io/resources/surveys/{surveyId}/responses

The survey ID can be obtained from within the URL in-app when opening the survey in Vitally under Settings > Surveys > Custom Surveys > select the desired survey

https://{subdomain}.vitally.io/settings/surveys/{surveyId}

Example Request

GET https://{subdomain}.rest.vitally.io/resources/surveys/209a9512-8b27-4d29-b2d3-082588519940/responses

Example Response

{
"next": null,
"data": [
{
"id": "b72e4b4a-f443-42f0-9264-c3e6f6fb9def",
"surveyId": "209a9512-8b27-4d29-b2d3-082588519940",
"createdAt": "2025-08-18T20:47:30.186Z",
"updatedAt": "2025-08-18T20:47:30.186Z",
"respondedAt": "2025-08-18T20:47:30.186Z",
"userId": "f3d7b6d5-5058-405e-bba5-8da83bdf2276",
"questionResponses": [
{
"id": "82d76f8d-aaa4-48f8-9ca2-fb66e6ad4d1f",
"questionId": "9d90b9d1-6751-4bd7-90cb-fc3166556aba",
"data": {
"type": "number",
"value": 10
}
},
{
"id": "7ad4ef7d-ea3e-4955-a179-d4684362bc3d",
"questionId": "38237727-b6af-42e2-9d87-f0f0f28926e1",
"data": {
"type": "string",
"value": "d68f2f78-8eeb-4bde-9319-2bc49d4538d5"
}
},
{
"id": "eec8b34e-98d3-4cc2-a5cc-cd34861c9af3",
"questionId": "c7399db1-2b05-4b4e-8194-38fdb1c27d41",
"data": {
"type": "string",
"value": "Love it!"
}
}
]
},
...
]
}

Get Survey Response by Response ID GET

Retrieve a specific survey response with its associated answers.

US Data Center (default):

https://{subdomain}.rest.vitally.io/resources/surveyResponses/{responseId}

EU Data Center:

https://rest.vitally-eu.io/resources/surveyResponses/{responseId}

The responseId used in this request is the survey response’s unique identifier. Each survey response has a unique ID. You can retrieve it from the id property in the results returned by the Get Survey Responses for a Survey endpoint.

Example Request

GET https://{subdomain].rest.vitally.io/resources/surveyResponses/b72e4b4a-f443-42f0-9264-c3e6f6fb9def

Example Response

{
"data": {
"id": "b72e4b4a-f443-42f0-9264-c3e6f6fb9def",
"surveyId": "209a9512-8b27-4d29-b2d3-082588519940",
"createdAt": "2025-08-18T20:47:30.186Z",
"updatedAt": "2025-08-18T20:47:30.186Z",
"respondedAt": "2025-08-18T20:47:30.186Z",
"userId": "f3d7b6d5-5058-405e-bba5-8da83bdf2276",
"questionResponses": [
{
"id": "82d76f8d-aaa4-48f8-9ca2-fb66e6ad4d1f",
"questionId": "9d90b9d1-6751-4bd7-90cb-fc3166556aba",
"data": {
"type": "number",
"value": 10
}
},
{
"id": "7ad4ef7d-ea3e-4955-a179-d4684362bc3d",
"questionId": "38237727-b6af-42e2-9d87-f0f0f28926e1",
"data": {
"type": "string",
"value": "d68f2f78-8eeb-4bde-9319-2bc49d4538d5"
}
},
{
"id": "eec8b34e-98d3-4cc2-a5cc-cd34861c9af3",
"questionId": "c7399db1-2b05-4b4e-8194-38fdb1c27d41",
"data": {
"type": "string",
"value": "Love it!"
}
}
]
}
}

Survey Question Details GET

Retrieve metadata about a specific survey question.

US Data Center (default):

https://{subdomain}.rest.vitally.io/resources/surveyQuestions/{questionId}

EU Data Center:

https://rest.vitally-eu.io/resources/surveyQuestions/{questionId}

Question IDs can be obtained in the questionId property within the returned response when running the GET Survey Responses endpoint.

Example Request

GET https://{subdomain].rest.vitally.io/resources/surveyQuestion/f129305b-f9b7-4bb9-8c22-9cd3762a7c8a

Example Response

{
"data": {
"id": "c7399db1-2b05-4b4e-8194-38fdb1c27d41",
"surveyId": "209a9512-8b27-4d29-b2d3-082588519940",
"title": "Platform Feedback",
"body": "How are you liking the platform?",
"isRequired": false,
"createdAt": "2024-04-25T14:06:08.089Z",
"updatedAt": "2024-08-16T08:22:32.774Z",
"type": "textLong",
}
}

Did this answer your question?