Skip to main content

Scenario

Before deploying a new survey, you want to know: Are the questions clear? Are they biased? Will respondents drop off? This job pulls your existing survey structure from SurveyMonkey, creates personas that represent your target respondents, then runs a Focus Group where personas “take” the survey synthetically. They flag confusing questions, suggest rephrasing, and identify where respondent fatigue is likely. The result is an optimized survey before a single real respondent sees it. Flow: SurveyMonkey GET /v3/surveys/{id}/details → Extract question structure → Mavera POST /api/v1/focus-groups with personas “taking” the survey → “Was this confusing? How would you rephrase?” → Optimized question list

Architecture

Code

Example Output

Error Handling

SurveyMonkey nests questions in pages. Matrix questions have rows, columns, and choices. The code extracts all levels but limits choices to 10 per question to keep the focus group prompt manageable.
The /details endpoint is a single call. Cache the survey structure locally — it rarely changes. This preserves daily quota for response-heavy jobs.
Surveys with 30+ questions produce very long context strings. Truncate to the most important 15-20 questions, or split into multiple focus groups by survey page.