Survey rollup: response funnel, per-question distributions, CSAT/NPS aggregates
const url = 'https://api.vocapable.com/v1/campaigns/example/survey-rollup';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://api.vocapable.com/v1/campaigns/example/survey-rollup \ --header 'Authorization: Bearer <token>'Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Query Parameters
Section titled “Query Parameters”Responses
Section titled “Responses”Successful Response
object
The window actually aggregated - the request’s, clamped to the campaign’s lifetime.
object
Contacts, not attempts.
response_rate is completed surveys over contacts dialed and completion_rate is
completed over started (docs/04-api.md §2 step 8c), so the three funnel counts above
them are per-contact too - a contact dialed three times is one dialed contact, and the
funnel stays monotone.
object
One scored question of the pinned version.
scale is the complete enum csat|nps|ordinal|boolean and points is the separate
choice count - the count is never folded into the scale name (CANON fact 63). An
objective carrying no scoring block is unscored and never appears here, though its
answers still count toward the funnel’s completion states.
object
Scoring scales for survey objectives (CANON fact 63).
The number of points is a separate points field, never part of the scale name; a
question with no scoring block at all is simply unscored.
object
Example
{ "questions": [ { "scale": "csat" } ]}Validation Error
object
object
object
Examplegenerated
{ "detail": [ { "loc": [ "example" ], "msg": "example", "type": "example", "input": "example", "ctx": {} } ]}