Record a Client's request
Record what a Client asked for: more candidates, a requirement change, a pause or a new role. The intake agent drafts the change, the account owner approves it and the Client confirms it; a Client never edits a Job.
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?replay?actionId*stringcurl -X POST 'https://www.invyte.ai/api/recruiter/v1/operations/client.request' \ -H 'Content-Type: application/json' \ -d '{ "input": { "clientId": "string", "kind": "more_candidates", "text": "string" }}'{ "status": "done", "output": { "requestId": "string", "clientId": "string" }, "replay": { "requestId": "string" }, "actionId": "string"}Record a Client's decision on a candidate POST
Record that the Client approved or passed on a candidate they were sent, as they told you by email, Slack or on a call. It stops the candidate's response clock and never moves the candidate; the Client gets a short note confirming it, with how to change or undo it. A later decision replaces it.
Read a Client's requests POST
What a Client asked for, in their words: one request by id (the `requestId` a `client.requested` signal carries), or the latest 20, newest first, optionally about one Job.