curl example. Swap in your own credentials and IDs as you go.
Log in and get your access token
Send your credentials to the login endpoint. You’ll receive an The response includes an
access_token that authenticates every subsequent request.access_token. Save it — you’ll pass it as a Bearer token in the Authorization header for all authenticated calls.Create a project
A project is the top-level container for all your persona groups, briefings, and simulations. Give it a name that reflects the research initiative.Save the
id from the response as PROJECT_ID.Create a persona group
A persona group defines the demographic profile of the target segment you want to simulate. Set the age range, gender, location, income level, occupation, and how many personas to generate.Save the
id as GROUP_ID.Generate personas
This kicks off a background task that generates your personas — complete with names, backstories, psychographic profiles, digital habits, and AI-generated avatar photos.The endpoint returns immediately with Generation typically takes 20–40 seconds for a group of 5 personas. The status progresses:
{"status": "generating"}. Poll the persona group until generation_status is "complete":pending → generating → complete.Upload a briefing (optional)
A briefing is the stimulus material your personas will respond to — a product brief, campaign concept, creative deck, or any document that describes what you’re testing. It’s optional for concept tests, but a richer briefing produces richer responses.Save the
id from the response as BRIEFING_ID.Supported file types: PDF, JPG, PNG, plain text (.txt), and Word documents (.docx). Text is automatically extracted and injected into the simulation prompt.Run a concept test
Create a simulation of type The simulation starts immediately as a background task. Save the
concept_test. Attach the persona group, your briefing (if you uploaded one), and a prompt question that frames what you want feedback on.id as SIM_ID.Poll for completion
Check the simulation status by fetching the simulation object. The Keep polling until you see
status field progresses through: pending → running → generating_report → complete."status": "complete". The progress field shows live per-persona progress during longer runs.What’s next
Now that you’ve run your first simulation, you can go deeper with other simulation types or validate your results.Persona groups
Learn how to define segments and use the parse-prompt endpoint.
Briefings
Find out what to include in a briefing for the richest responses.
Reading results
Understand per-persona and aggregate result structures.
Convergence & reliability
Validate your results before presenting to stakeholders.
