Prerequisites
- A valid API key from the organizer panel, sent in the
API-KEYheader - At least one roadmap with
status: 2(ready) available in your account
Two authentication paths
Every roadmap payload (and each nested item intest_records) includes an organizer-level flag named tests_auth_required that controls how authentication works:
Read
tests_auth_required from the roadmap before choosing the next step.
1
List your roadmaps
Fetch your available roadmaps and filter for unfinished packages.Look for a roadmap with
status: 2 (ready). The response includes the token you need and tests_auth_required which tells you whether SMS verification is on.2
Inspect the roadmap
Retrieve the full roadmap details to understand its structure, roles, and test records.Key fields to review:
roles: array of role definitions, each with anid,title,min_age,max_age, andgendertest_records: array of individual test records included in the package (each also carriestests_auth_required)status: must be2(ready)auth_required: indicates whether profiles still need to be linkedtests_auth_required: selects the auth path
3
Start authentication for all roles
Post every role profile in a single call. This registers all participants across every test in the package.Single-role roadmap exampleTwo-role roadmap example (couple)An SMS code is sent to the shared mobile. Keep the All profiles are created and linked to every record in the package. Skip the next step.
mobile: shared contact number for the roadmap. When SMS verification is on, the code is sent here.roles: array where each object contains the roleidand aprofileobject with the same fields used in standalone tests.
tests_auth_required. Branch on it to decide the next step.SMS path (tests_auth_required: true)draft_token for the verify step. It expires after 5 minutes.Instant path (tests_auth_required: false)4
Verify the SMS code (SMS path only)
Ask for the code sent to the shared mobile and submit it with the Success responseCommon errors
draft_token.Skip this step entirely when
tests_auth_required is false.5
Complete each test record
For every test record inside the roadmap, fetch its questions and submit answers. The order does not matter, but all records must be finished before you can generate the AI analysis.Pseudocode for looping through recordsExample curl for one record
6
Request AI generation
Once every test record in the roadmap is finished, queue the AI analysis.The roadmap status changes to
4 (AI processing). Generation typically takes 5 to 10 minutes.7
Poll for generation status
Check the generation status periodically until it completes or fails.Polling logic exampleStop polling when the response returns
state: "completed" or state: "failed".8
Retrieve the results
After the AI analysis completes, fetch the combined report.The JSON response contains structured AI analysis, scores from all tests, and combined interpretations. The HTML response is a ready-to-render report page.
Flow summary
SMS enabled (tests_auth_required: true, default)
tests_auth_required: false)
What to do next
- Review the standalone test guide for single-test workflows
- Check the status code reference to understand roadmap lifecycle states
- See the error reference for handling common issues like incomplete roadmaps or duplicate profiles

