Get a survey by ID
client.surveys.retrieve(stringid, SurveyRetrieveParams { featurebaseVersion } params?, RequestOptionsoptions?): Survey { id, createdAt, isActive, 8 more }
GET/v2/surveys/{id}
Retrieves a single survey by its unique identifier.
Returns the survey object if found in your organization.
Response
Returns a survey object with:
id- Unique identifiertitle- Survey titledescription- Survey descriptionisActive- Whether the survey is activeresponseCount- Number of responses receivedtargeting- Targeting configurationpages- Array of survey pages/questionscreatedAt- ISO 8601 timestamp when createdupdatedAt- ISO 8601 timestamp when last updated
Survey Pages
Each page represents a question or screen in the survey:
type- Page type (text, link, rating, multiple-choice)title- Question titledescription- Optional descriptionlogic- Conditional logic rulesdefaultAction- Default action when no logic matches
Errors
404- Survey not found in your organization
Get a survey by ID
import Featurebase from 'featurebase-node';
const client = new Featurebase({
apiKey: process.env['FEATUREBASE_API_KEY'], // This is the default and can be omitted
});
const survey = await client.surveys.retrieve('6743752ca81ae59d25cf834b');
console.log(survey.id);{
"id": "6743752ca81ae59d25cf834b",
"createdAt": "2024-11-24T18:49:16.755Z",
"isActive": true,
"object": "survey",
"organization": "5febde12dc56d60012d47db6",
"pages": [
{
"id": "6743752ca81ae59d25cf834c",
"title": "How happy are you with our product?",
"type": "rating",
"allowSelectMultiple": false,
"choices": [
{
"id": "66dc54128b989696d050008b",
"choice": "Very satisfied"
}
],
"defaultAction": {
"type": "page",
"pageId": "6743754dd8bf964ec2562cda"
},
"description": "We really want to hear from you.",
"highLabel": "It's awesome!",
"linkButtonText": "Visit our website",
"linkRedirectUrl": "https://example.com",
"linkTarget": "_blank",
"logic": [
{
"comparator": "less than",
"next": {
"type": "page",
"pageId": "6743754dd8bf964ec2562cda"
},
"value": 4,
"id": "6743755fd8bf964ec2562cdb"
}
],
"lowLabel": "Could be improved",
"placeholder": "Type your answer here",
"scale": 5,
"subType": "emoji"
}
],
"responseCount": 85,
"title": "Get feedback for Feedback module",
"updatedAt": "2025-04-10T08:58:51.148Z",
"description": "Measure what we can improve",
"targeting": {
"css": [
{
"value": ".feedback-button"
}
],
"loginRequired": false,
"segmentIds": [
"6636438b7fcdc515999042eb"
],
"url": [
{
"matchType": "contains",
"value": "/dashboard/posts",
"id": "674375cfd8bf964ec2562cdc"
}
]
}
}Returns Examples
{
"id": "6743752ca81ae59d25cf834b",
"createdAt": "2024-11-24T18:49:16.755Z",
"isActive": true,
"object": "survey",
"organization": "5febde12dc56d60012d47db6",
"pages": [
{
"id": "6743752ca81ae59d25cf834c",
"title": "How happy are you with our product?",
"type": "rating",
"allowSelectMultiple": false,
"choices": [
{
"id": "66dc54128b989696d050008b",
"choice": "Very satisfied"
}
],
"defaultAction": {
"type": "page",
"pageId": "6743754dd8bf964ec2562cda"
},
"description": "We really want to hear from you.",
"highLabel": "It's awesome!",
"linkButtonText": "Visit our website",
"linkRedirectUrl": "https://example.com",
"linkTarget": "_blank",
"logic": [
{
"comparator": "less than",
"next": {
"type": "page",
"pageId": "6743754dd8bf964ec2562cda"
},
"value": 4,
"id": "6743755fd8bf964ec2562cdb"
}
],
"lowLabel": "Could be improved",
"placeholder": "Type your answer here",
"scale": 5,
"subType": "emoji"
}
],
"responseCount": 85,
"title": "Get feedback for Feedback module",
"updatedAt": "2025-04-10T08:58:51.148Z",
"description": "Measure what we can improve",
"targeting": {
"css": [
{
"value": ".feedback-button"
}
],
"loginRequired": false,
"segmentIds": [
"6636438b7fcdc515999042eb"
],
"url": [
{
"matchType": "contains",
"value": "/dashboard/posts",
"id": "674375cfd8bf964ec2562cdc"
}
]
}
}