UUID of the project/questionnaire
- Create Participant or Retake Questionnaire
Clearspeed Integration API
The Clearspeed Integration API enables you to programmatically manage participants within your questionnaires — create new participants, initiate retakes, and update outcome tracking. Additionally, Clearspeed delivers assessment results directly to your system via webhooks, eliminating the need to poll for results.
All requests must include your API key in the Authorization header:
Authorization: <your-api-key>API keys are scoped to a specific questionnaire and carry explicit permissions. Your first key must be created from the Clearspeed web application by a questionnaire Admin. Once you have a key with the apikey:write scope you can create additional keys via the API.
See the API Keys & Authentication guide for a step-by-step walkthrough and a full description of all available scopes.
Request
Create a new participant or retake a questionnaire for an existing participant.
Behavior is determined by request body:
- If
participant_uuidis not provided, a new participant is created. - If
participant_uuidis provided, retake flow is used for that participant.
- US Production serverhttps://api.us.clearspeed.com/questionnaire/v1/participant
- UK Production serverhttps://api.uk.clearspeed.com/questionnaire/v1/participant
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
- Create new participant
- Retake questionnaire for existing participant
curl -i -X POST \
https://api.us.clearspeed.com/questionnaire/v1/participant \
-H 'Authorization: YOUR_API_KEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"project_uuid": "fd9690b0-9050-4acd-ad74-7f906c07fe93",
"phone_number1": "+916263877039",
"phone_number2": "",
"interview_ref_num": "7858934895810",
"external_ref_id": "12345-46b5-464d-a8e4-afecc",
"email": "participant@gmail.com",
"language": "English"
}'- Create participant response
- Retake participant response
{ "project_uuid": "fd9690b0-9050-4acd-ad74-7f906c07fe93", "phone_number1": "+916263877039", "phone_number2": "", "interview_ref_num": "7858934895810", "external_ref_id": "12345-46b5-464d-a8e4-afecc", "participant_uuid": "01977df0-57c1-7dcf-8916-df741aa66691", "email": "participant@gmail.com", "language": "English", "particpant_guide_link": "https://guide.example.com?id=01977df0-57c1-7dcf-8916-df741aa66691", "is_participant_allowed": true, "outcome": null, "outcome_ts": null }
Request
Update the outcome tracking fields for an existing participant using the v1 external API format.
- Authenticated using the
authorizationheader. - Validates that the API key is associated with the participant's questionnaire tenant.
- Updates the participant's outcome and optional outcome timestamp.
- US Production serverhttps://api.us.clearspeed.com/questionnaire/v1/participant/{participant_id}
- UK Production serverhttps://api.uk.clearspeed.com/questionnaire/v1/participant/{participant_id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X PUT \
'https://api.us.clearspeed.com/questionnaire/v1/participant/{participant_id}' \
-H 'Authorization: YOUR_API_KEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"outcome": "$10,Reviewed and Mitigated",
"outcome_ts": "2025-12-12T06:06:29Z"
}'{ "project_uuid": "fd9690b0-9050-4acd-ad74-7f906c07fe93", "phone_number1": "+916263877039", "phone_number2": "", "interview_ref_num": "7858934895810", "external_ref_id": "12345-46b5-464d-a8e4-afecc", "participant_uuid": "01977df0-57c1-7dcf-8916-df741aa66691", "email": "participant@gmail.com", "language": "English", "particpant_guide_link": "https://guide.example.com?id=01977df0-57c1-7dcf-8916-df741aa66691", "is_participant_allowed": true, "outcome": "$10,Reviewed and Mitigated", "outcome_ts": "2025-12-12T06:06:29Z" }
Request
Create a new API key for the specified questionnaire.
Requires a key with the apikey:write scope. The full key value is returned only in this response — store it securely immediately. Subsequent list calls return a masked version.
List of scopes to grant this key. Valid values:
participant:read— read participant recordsparticipant:write— create participants and initiate retakesparticipant:delete— delete participant recordsapikey:write— create API keys for the same questionnaireapikey:delete— delete API keys for the same questionnaire
- US Production serverhttps://api.us.clearspeed.com/questionnaire/v1/tenants/{tenant_id}/questionnaires/{questionnaire_id}/apikeys
- UK Production serverhttps://api.uk.clearspeed.com/questionnaire/v1/tenants/{tenant_id}/questionnaires/{questionnaire_id}/apikeys
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
- Key for creating participants
- Key with all participant and key management scopes
curl -i -X POST \
'https://api.us.clearspeed.com/questionnaire/v1/tenants/{tenant_id}/questionnaires/{questionnaire_id}/apikeys' \
-H 'Authorization: YOUR_API_KEY_HERE' \
-H 'Content-Type: application/json' \
-d '{
"key_name": "ci-participant-writer",
"permissions": [
"participant:write"
]
}'API key created. The api_key value is shown only once — save it now.
The API key value. Returned in full only on creation — masked in all subsequent responses.
UUID of the questionnaire this key is scoped to
{ "id": "a1b2c3d4-0000-0000-0000-000000000001", "api_key": "cs_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxx", "key_name": "ci-participant-writer", "permissions": [ "participant:write" ], "questionnaire_id": "fd9690b0-9050-4acd-ad74-7f906c07fe93", "create_ts": "2026-04-10T10:00:00Z", "update_ts": "2026-04-10T10:00:00Z" }
- US Production serverhttps://api.us.clearspeed.com/questionnaire/v1/tenants/{tenant_id}/questionnaires/{questionnaire_id}/apikeys
- UK Production serverhttps://api.uk.clearspeed.com/questionnaire/v1/tenants/{tenant_id}/questionnaires/{questionnaire_id}/apikeys
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://api.us.clearspeed.com/questionnaire/v1/tenants/{tenant_id}/questionnaires/{questionnaire_id}/apikeys' \
-H 'Authorization: YOUR_API_KEY_HERE'[ { "id": "a1b2c3d4-0000-0000-0000-000000000001", "api_key": "cs_live_xxxx...xxxx", "key_name": "ci-participant-writer", "permissions": [ … ], "questionnaire_id": "fd9690b0-9050-4acd-ad74-7f906c07fe93", "create_ts": "2026-04-10T10:00:00Z", "update_ts": "2026-04-10T10:00:00Z" } ]
- US Production serverhttps://api.us.clearspeed.com/questionnaire/v1/tenants/{tenant_id}/questionnaires/{questionnaire_id}/apikeys/{key_id}
- UK Production serverhttps://api.uk.clearspeed.com/questionnaire/v1/tenants/{tenant_id}/questionnaires/{questionnaire_id}/apikeys/{key_id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X DELETE \
'https://api.us.clearspeed.com/questionnaire/v1/tenants/{tenant_id}/questionnaires/{questionnaire_id}/apikeys/{key_id}' \
-H 'Authorization: YOUR_API_KEY_HERE'- https://www.customerapi.com/v1/result_update
- Overall evaluation with AR
- Attempted - Incomplete
- Attempted - Partial
- Overall evaluation with HR
- Overall evaluation with LR
- Overall evaluation with G
- Overall evaluation with LR/AD
- Overall evaluation with Precision R/G -> G
- Overall evaluation with Precision R/G -> R
- Under_Review
{ "project_uuid": "XXXXXXXX-ef1f-4d91-a2e2-7b33132b00f1", "callback_type": "Result Update", "access_code": "7136XXXX59", "interview_ref_num": "456XXXX642", "status": "Result Published", "questions_risk_rating": [ { … }, { … }, { … }, { … }, { … }, { … }, { … } ], "overall_evaluation": "HR", "is_admission": false, "is_counter_measure": false, "is_not_complete": false, "participant_language": "English", "summary": "AR", "summary_bgcolor": "#dc3545", "clear": true }