/api/public/v1/job-feedback and adaptive Task Checklists at /api/public/v1/job-checklists. Both families require a stored OpenTrain API token and canonical employer access to the exact job.
Authorization and discovery
The write scope implies read. Probe
GET /api/public/v1/capabilities before using either family; its agentSurfaces entry reports the rollout and per-operation authorization state. The feature must also be enabled separately for each job before its tab appears to employers or workers.
All mutations require an Idempotency-Key header. Reuse a stable key only for the same intent and payload. The response’s replayed field reports whether the server returned the original durable outcome.
The TypeScript SDK exposes the same operations in @opentrain-ai/sdk 0.13.0
or later. Reviewer Feedback methods include listJobFeedback,
getJobFeedbackReport, getJobFeedbackSummary, listJobFeedbackRoster,
submitJobFeedback, triageJobFeedbackReport,
linkJobFeedbackSubject, reviewer-access methods, and settings methods. Task
Checklist methods include list/get/create/manage/validate/resolve/publish,
version and submission reads, reorder, settings, capabilities, and
previewJobChecklistGrant.
Reviewer Feedback endpoints
The list endpoint accepts
status, subject, severity, reporter, search, createdFrom, createdTo, and 1-based page filters. Use subject=UNLINKED for legacy rows without a canonical person. hasMore is the only continuation signal; never infer completeness from the returned row count.
Submit a report
subjectContractId is optional. When omitted, OpenTrain stores a deterministic contract reference: the newest active contract, otherwise the newest ended contract. Use the roster endpoint if the caller needs to choose a specific contract.
Triage safely
ACTIONED or DISMISSED, and reopening from a terminal state, require a nonblank note. A stale expectedUpdatedAt returns 409; get the report again and deliberately re-evaluate the transition.
Task Checklist endpoints
Validate a file-first bundle
checklist-validate.json
baselineDefinitionId and expectedDraftVersion to calculate publish impact and detect a stale local base before writing. Use the exact same server validator for create, draft update, and publish readiness—do not reimplement its rules in a client.
Preview and publish exact revisions
Mint a preview grant with one closed source mode:previewUrl whose fragment carries the capability. Open that URL in an authenticated browser. It renders the exact bound snapshot and strips the fragment after exchange.
Publish only after previewing:
Errors and privacy
Use the machine-readable OpenAPI document for the exact schemas served by the current deployment.