API Documentation
The QuantScorePro REST API gives programmatic access to assessments, items, participants, responses and computed scores. Every request is organisation-scoped and returns JSON.
Authentication
Create a key in API & Integrations inside your workspace. Keys are shown once; only a SHA-256 hash is stored. Send the key as a bearer token:
curl https://quantscorepro.com/api/public/v1/assessments \ -H "Authorization: Bearer pk_live_xxxxxxxxxxxxxxxx"
The header x-api-key is accepted as an alternative.
Rate limits
120 requests per minute per key. Exceeding the limit returns 429 with a Retry-After header. Every call is recorded in API monitoring.
Endpoints
| Method | Path | Description | Query / body |
|---|---|---|---|
| GET | /api/public/v1/assessments | List assessments in your organisation. | limit (max 200) |
| GET | /api/public/v1/assessments/:id/items | List items of one assessment, ordered by position. | — |
| GET | /api/public/v1/participants | List participant records. | limit (max 500) |
| POST | /api/public/v1/participants | Create a participant record. Body must include participant_code. | JSON body |
| GET | /api/public/v1/responses | List response sessions with status and timings. | assessment_id, limit (max 500) |
| GET | /api/public/v1/scores | List computed scores: raw, weighted, percentage, z, T, stanine, percentile. | assessment_id, limit (max 500) |
Create a participant
curl -X POST https://quantscorepro.com/api/public/v1/participants \
-H "Authorization: Bearer pk_live_xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"participant_code": "P-2041",
"full_name": "Sample Participant",
"group_name": "Cohort A",
"age": 24
}'Responses and errors
{ "data": [ ... ], "count": 25 }
401 Missing, invalid or revoked API key
404 Resource not found in your organisation
422 Invalid payload (validation issues included)
429 Rate limit exceeded
500 Unexpected server error