Customer Surveys
Handle data related to ImBox Customer Surveys.
grabSurvey
Get a single survey with ticketId or callId.
Parameters
| Name | Type | Description |
|---|---|---|
| apiKey* | String | Your API key |
Query parameters
| Name | Type | Description |
|---|---|---|
| ticketId* | String | Id for ticket |
| callId* | String | Id for call |
Usage
curl -X GET "https://apiv2.imbox.io/api/grabSurvey/:apiKey?ticketId=123
Response
{
"agentId": 12,
"ticketId": 123, // If fetched with callId, ticketId will be replaced with callId.
"surveySetupId": 1,
"ratingScale": "1-10",
"rating": 8,
"createdAt": "2025-03-25T19:01:33.000Z",
"completedAt": "2025-03-26T13:01:55.000Z",
"versionId": 45,
"data": [
{ "question": "Please rate your customer experience", "answer": "8" },
{
"question": "Anything else?",
"answer": "Yes it was a very nice woman I talked to!"
}
]
}
API key scope access
Configure API key access in ImBox Admin dashboard.
| Scope | Access |
|---|---|
| Customer Survey | Read |
grabSurveyList
Get a list of surveys.
Parameters
| Name | Type | Description |
|---|---|---|
| apiKey* | String | Your API key |
Query parameters
| Name | Type | Description |
|---|---|---|
| startAt* | Date string | returns surveys sent out (createdAt) >= startAt |
| stopAt* | Date string | returns surveys sent out (createdAt) <= stopAt |
| agentId | String | Id for agent |
| surveySetupId | String | Id of survey setup |
| type | String | ”email” -Default | ”sms” |
| label | String | surveys with label. For ”sms” surveys with label, add type=”sms” |
| limit | Integer | Number of surveys to return. Default: 50. Max: 100 |
| after | Integer | Cursor for next result set by id |
Usage
curl -X GET "https://apiv2.imbox.io/api/grabSurveyList/:apiKey?startAt=2023-10-01&stopAt=2024-10-01&limit=2"
Response
{
"surveys": [
{
"id": 100,
"agentId": 1,
"rating": null, // Will be null, when using a form for rating questions.
"ratingScale": null,
"completedAt": "2025-06-01T13:33:37.000Z",
"formData": [
{
"question": "Fullname",
"answer": "Christina Wedin"
},
{
"question": "Country",
"answer": "Denmark"
},
{
"question": "How would you rate the help you got?",
"answer": "4"
},
{
"question": "Please fill out the form below so that we can improve the content of the response. We read your comments carefully and make sure to supplement our information, but are not able to respond to you personally.",
"answer": "I think the response could be nicer."
}
],
"ticketId": 1337,
"surveySetupId": 37,
"versionId": 124
},
{
"id": 120,
"agentId": null,
"rating": 7, // Rating shows when using quick response.
"ratingScale": "1-10",
"completedAt": "2023-01-01T13:33:37.000Z",
"ticketId": 1338,
"surveySetupId": 38,
"versionId": 125
}
],
"paging": {
"cursor": {
"after": 120
},
"next": "https://apiv2.imbox.io/api/grabSurveyList/apiKey?startAt=2023-10-01&stopAt=2024-10-01&limit=2&after=120"
}
}
API key scope access
Configure API key access in ImBox Admin dashboard.
| Scope | Access |
|---|---|
| Customer Survey | Read |
surveyAnalytics
Get basic analytic data from surveys.
Parameters
| Name | Type | Description |
|---|---|---|
| apiKey* | String | Your API key |
Query parameters
| Name | Type | Description |
|---|---|---|
| startAt* | Date string | |
| stopAt* | Date string | |
| agentId | String | Id for agent |
| surveySetupId | String | Id of survey setup |
| type | String | ”email” -Default | ”sms” |
| label | String | surveys with label. For ”sms” surveys with label, add type=”sms” |
Usage
curl -X GET "https://apiv2.imbox.io/api/surveyAnalytics/:apiKey?startAt=2023-10-01&stopAt=2024-10-01"
Response
{
"activeSurveys": 142,
"completedSurveys": 511,
"directMailRating": 8, // 1-10, Quick Response average rating, this can be null if quick response is not used.
"seenSurveys": 80,
"surveysSent": 733
}
API key scope access
Configure API key access in ImBox Admin dashboard.
| Scope | Access |
|---|---|
| Customer Survey | Read |