Assess API · v1
Pipelines
Automate multi-stage hiring flows. Pipelines group multiple assessments into ordered stages.
GET
https://praxicraft.com/api/v1/public/pipelines/pipelines:readAuth: Bearer ct_live_…
List Pipelines
Returns all hiring pipelines for your organisation.
Query / Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| cursor | string | optional | Opaque pagination cursor — pass the value from `next` to fetch the next page |
| page_size | integer | optional | Results per page, max 100 (default: 20) |
Response Fields
| Field | Type | Description |
|---|---|---|
| id | uuid | Pipeline UUID |
| title | string | Pipeline title |
| slug | string | Pipeline slug |
| description | string | Internal description |
| stage_count | integer | Number of assessment stages |
| created_at | ISO 8601 | When the pipeline was created |
| updated_at | ISO 8601 | Last modified timestamp |
Example Response
JSON
{
"next": null,
"previous": null,
"results": [
{
"id": "p1...",
"title": "Grad Program 2025",
"slug": "grad-2025",
"description": "Two-stage screen for graduate intake.",
"stage_count": 3,
"created_at": "2025-01-15T09:00:00Z",
"updated_at": "2025-03-01T11:00:00Z"
}
]
}GET
https://praxicraft.com/api/v1/public/pipelines/:slug/pipelines:readAuth: Bearer ct_live_…
Get Pipeline Detail
Retrieves the full configuration of a hiring pipeline, including the ordered list of assessment stages.
Query / Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| slug | string | required | Pipeline slug |
Response Fields
| Field | Type | Description |
|---|---|---|
| id | uuid | Pipeline UUID |
| title | string | Pipeline title |
| description | string | Internal description |
| stages | array | List of stages: { order, assessment_id, assessment_title, assessment_slug } |
Example Response
JSON
{
"id": "p1...",
"title": "Grad Program 2025",
"stages": [
{ "order": 0, "assessment_title": "Initial Screen", "assessment_slug": "initial-screen" },
{ "order": 1, "assessment_title": "Technical Deep Dive", "assessment_slug": "tech-deep-dive" }
]
}POST
https://praxicraft.com/api/v1/public/pipelines/:slug/enroll/pipelines:writeAuth: Bearer ct_live_…
Enroll Candidate
Enrolls a candidate into a pipeline and triggers the first stage invitation.
Request Body
| Name | Type | Required | Description |
|---|---|---|---|
| string | required | Candidate email | |
| name | string | optional | Candidate name |
Response Fields
| Field | Type | Description |
|---|---|---|
| message | string | Confirmation message |
| enrollment_id | uuid | New enrollment UUID |
| status | string | Hiring status |
| current_stage | integer | Zero-indexed stage |
Example Response
JSON
{
"message": "Candidate enrolled successfully.",
"enrollment_id": "e1...",
"status": "active",
"current_stage": 0
}GET
https://praxicraft.com/api/v1/public/pipelines/enrollments/:id/pipelines:readAuth: Bearer ct_live_…
Get Enrollment Status
Retrieves the current progress and history of a candidate within a specific pipeline enrollment.
Query / Path Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| id | uuid | required | Enrollment ID from the enrollment response |
Response Fields
| Field | Type | Description |
|---|---|---|
| id | uuid | Enrollment UUID |
| status | string | active | completed | rejected |
| current_stage | integer | Index of the candidate's current stage |
| history | array | Chronological log of stage transitions and assessment results |
Example Response
JSON
{
"id": "e1...",
"status": "active",
"current_stage": 1,
"history": [
{ "event": "enrolled", "timestamp": "..." },
{ "event": "stage_completed", "stage": 0, "score": 95 }
]
}