Pipeline health
One Job's to-dos as the Command Centre lists them, and the candidates who stopped moving, each with why, since when and who moves them: an operation you can run, or in words when someone else must (another recruiter, or Invyte, which handles it). Candidates come a page at a time.
bearerAuthorizationBearer <API key or OAuth token>An organization API key (ink_live_…, ADR-0124), or the OAuth access token a person's AI client gets from the Recruiter MCP sign-in. Only the Authorization header is accepted.
Idempotency-Key?stringMakes a write safe to repeat: the same key and input return the first result. Required for agents' writes and for anything a person confirms.
^[A-Za-z0-9._:-]+$8 <= length <= 128application/json- body
input*confirmation?stringThe id from a confirm or awaiting_approval Outcome, sent with the same input and key to go ahead.
Done. A replay of the same key and input omits output.
application/json- response
status*unknownoutput?actionId*stringcurl -X POST 'https://www.invyte.ai/api/recruiter/v1/operations/pipeline.health' \ -H 'Content-Type: application/json' \ -d '{ "input": { "jobId": "string" }}'{ "status": "done", "output": { "tasks": [ { "id": "string", "kind": "review", "lane": "now", "title": "string", "description": "string", "candidateCount": 0, "oldest": { "days": 0, "label": "string" }, "actions": [ { "kind": "decision", "label": "string", "decision": "string", "status": "string", "rejects": true } ] } ], "candidates": [ { "taskId": "string", "applicationId": "string", "reviewTaskId": "string" } ], "stuckCount": 0, "stuck": [ { "applicationId": "string", "class": "mechanical", "reason": "invite_unopened", "detail": "string", "since": "2019-08-24T14:15:22Z", "suggested": { "name": "string", "input": { "property1": "string", "property2": "string" } }, "handledBy": "you", "nextStep": "string" } ], "next": "string", "agentModes": { "write": "string", "outside": "string" } }, "actionId": "string"}Give candidates more time POST
Extend the Pitch Room deadline by 1, 3, 7 or 14 days for up to 25 candidates whose deadline passed with steps still to do. Every candidate named must be due for it; anyone who isn't is named in the refusal, to leave out. Invyte emails each their new deadline, except candidates who haven't signed in yet, whose remaining steps wait on a check or review, or who have nothing left to do: the review and the result say per candidate who is emailed, and why not.
Invite an applicant to the next step POST
Move an Applied candidate to Invyted. Invyte emails them an invitation to continue their application, with your own message if you write one. The result says whether the email is queued, sent, failed or unconfirmed, and what to do next.