Skip to Content
InvyteDocs

Record a Client's decision on a candidate

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.

POST
/operations/client.decide

Authorization

bearer
headerAuthorizationBearer <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.

Header Parameters

Idempotency-Key?string

Makes a write safe to repeat: the same key and input return the first result. Required for agents' writes and for anything a person confirms.

Match^[A-Za-z0-9._:-]+$
Length8 <= length <= 128

Request Body

application/json
  1. body
input*
confirmation?string

The id from a confirm or awaiting_approval Outcome, sent with the same input and key to go ahead.

Response Body

Done. A replay of the same key and input omits output.

application/json
  1. response
status*unknown
output?
replay?
actionId*string
Example Request
curl -X POST 'https://www.invyte.ai/api/recruiter/v1/operations/client.decide' \  -H 'Content-Type: application/json' \  -d '{  "input": {    "applicationId": "string",    "decision": "approve"  }}'
Example Response
{  "status": "done",  "output": {    "decisionId": "string",    "applicationId": "string",    "decision": "approve",    "source": "client",    "decidedAt": "2019-08-24T14:15:22Z",    "responseSeconds": -9007199254740991,    "echo": "queued"  },  "replay": {    "decisionId": "string"  },  "actionId": "string"}