Docs
List screens
GET
/api/jobs/:jobId/interviewsReturns every preliminary screen for a job. A "screen" is one candidate's asynchronous interview, with score, recommendation, and summary. Use the filter params to narrow the list before pulling individual screens with Get screen.
Path parameters
| Name | Type | Required | Description |
|---|---|---|---|
jobId | uuid | yes | UUID of the job. |
Query parameters
| Name | Type | Required | Description |
|---|---|---|---|
recommendation | string | no | Filter by recommendation. One of advance, hold, reject. |
min_score | number | no | Minimum overall_score (0 - 10). |
max_score | number | no | Maximum overall_score (0 - 10). |
sort_by | string | no | Sort key. One of date (default, newest first), score (highest first), name (alphabetical). |
Headers
Authorization header required. See Authentication.
Response
Returns a bare array of screen summaries. Incomplete screens (status in_progress or expired) appear with overall_score, recommendation, and summary set to null.
200 OK
json
[
{
"id": "7b1d3c0e-4f5a-4f2b-9e8c-5a6b1c2d3e4f",
"candidate_name": "Jordan Rivera",
"candidate_email": "jordan@example.com",
"status": "completed",
"overall_score": 8.6,
"recommendation": "advance",
"summary": "Strong communicator with 3 years of memory care experience...",
"notes": null,
"status_tag": null,
"started_at": "2026-05-18T17:42:11.001Z",
"completed_at": "2026-05-18T17:51:38.220Z",
"duration_seconds": 567
}
]Example request
curl
curl "https://api.prelim.chat/api/jobs/f4c2a1d8-9b3e-4d6a-b25f-1c0e8a7b3d52/interviews?recommendation=advance&sort_by=score" \
-H "Authorization: Bearer prelim_8s4kZxQv3p2nLw1HfYBgRmTcEsK9aJdN0iUyXoVbPeWzCqA"