List tests
Page through assessment tests in a stable, curated shape. Scope: tests:read.
/api/v1/tests
🔒 API keyLists assessment tests in the stable v1 shape. The question content is never included — only metadata. Scope: tests:read. Visibility: admins all; everyone else sees their org’s tests plus platform-global (public) tests.
Query parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
page | integer | No | 0-indexed page. Default 0. |
pageSize | integer | No | Rows per page (max 100). Default 20. |
type | string | No | Filter by test type. |
analysisCategory | string | No | Filter by analysis category. |
language | string | No | Filter by language (ISO 639-1). |
Example request
curl "https://app.talent-ray.com/api/v1/tests?analysisCategory=hard_skill" \
-H "Authorization: Bearer tr_YOUR_KEY"
Response
200 OK
{
"data": [
{
"id": "test_js",
"name": "JavaScript Fundamentals",
"type": "multiple_choice",
"description": "Core JS assessment.",
"duration": 30,
"targetPersona": "Backend Engineer",
"analysisCategory": "hard_skill",
"language": "en",
"isPublic": false,
"organizationIds": ["org_acme"],
"createdAt": "2026-04-01T09:00:00Z",
"updatedAt": "2026-04-10T09:00:00Z"
}
],
"pagination": { "page": 0, "pageSize": 20, "totalCount": 48, "totalPages": 3 }
}
isPublic is true when the test has no linked organization (a platform-global template). duration is in minutes.
Status codes
| Status | Meaning |
|---|---|
200 | Success. |
401 | No valid API key. |
403 | insufficient_scope — the key lacks tests:read. |
429 | Rate limit exceeded. |