Skip to main content
API Preview
Developers

REST API/Contexts

Contexts

Context management, ATS synchronisation, and indexing.

7 endpoints

Endpoints

MethodPathAuth
POST/orgs/me/jobs

Create a job requirement

JWT
GET/orgs/me/jobs

List contexts

JWT
GET/orgs/me/jobs/{job_id}

Get job details

JWT
PATCH/orgs/me/jobs/{job_id}

Update job requirement

JWT
DELETE/orgs/me/jobs/{job_id}

Close a job

JWT
GET/orgs/me/jobs/{job_id}/matches

Get job matches

JWT
POST/orgs/me/jobs/{job_id}/recompute-matches

Recompute matches

JWT

Endpoint Details

POST /orgs/me/jobs

POST/orgs/me/jobsJWT

Create a new job requirement with trait priorities, clearance level, and compensation. Validates trait codes against MVP-20 taxonomy.

Request Example

json
{
  "title": "Senior Platform Engineer",
  "outcome_description": "Build and scale the core identity infrastructure",
  "clearance_required": "none",
  "remote_policy": "hybrid",
  "trait_priorities": {
    "pressure_response": 0.8,
    "ambiguity_tolerance": 0.7,
    "collaborative_orientation": 0.6
  },
  "salary_min": 150000,
  "salary_max": 190000,
  "salary_currency": "AUD"
}

Response

json
{
  "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
  "external_id": "JOB-A1B2C3D4",
  "org_id": "e1f2a3b4-c5d6-7890-efab-cdef12345678",
  "title": "Senior Platform Engineer",
  "status": "active",
  "clearance_required": "none",
  "remote_policy": "hybrid",
  "trait_priorities": {
    "pressure_response": 0.8,
    "ambiguity_tolerance": 0.7,
    "collaborative_orientation": 0.6
  },
  "salary_min": 150000,
  "salary_max": 190000,
  "salary_currency": "AUD",
  "created_at": "2026-03-10T09:00:00Z"
}

GET /orgs/me/jobs

GET/orgs/me/jobsJWT

List the organisation's contexts. Cursor-paginated with optional status filter.

Query Parameters

NameTypeDescription
statusstringFilter by job status (active, closed, draft)
limitintegerPage size (max 100)
cursorstringPagination cursor

GET /orgs/me/jobs/{job_id}

GET/orgs/me/jobs/{job_id}JWT

Returns full job requirement details.

Path Parameters

NameTypeDescription
job_id*stringJob UUID

PATCH /orgs/me/jobs/{job_id}

PATCH/orgs/me/jobs/{job_id}JWT

Partial update of job fields including title, status, trait priorities, and constraints.

Path Parameters

NameTypeDescription
job_id*stringJob UUID

DELETE /orgs/me/jobs/{job_id}

DELETE/orgs/me/jobs/{job_id}JWT

Close a job (marks as closed, does not delete). Returns 204 No Content.

Path Parameters

NameTypeDescription
job_id*stringJob UUID

GET /orgs/me/jobs/{job_id}/matches

GET/orgs/me/jobs/{job_id}/matchesJWT

List matches for a specific job. Cursor-paginated with quality and status filters.

Path Parameters

NameTypeDescription
job_id*stringJob UUID

Query Parameters

NameTypeDescription
qualitystringFilter by match quality tier
statusstringFilter by match status
limitintegerPage size (max 100)
cursorstringPagination cursor

POST /orgs/me/jobs/{job_id}/recompute-matches

POST/orgs/me/jobs/{job_id}/recompute-matchesJWT

Trigger asynchronous recomputation of all matches for a job. Returns 202 Accepted with task ID.

Path Parameters

NameTypeDescription
job_id*stringJob UUID

Response

json
{
  "task_id": "celery-task-abc123",
  "status": "queued"
}