List sourcing runs
A Job's External discovery runs, newest first, with how many people each found: 20 a page by default, older ones through `nextCursor`.
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/sourcing.listRuns' \ -H 'Content-Type: application/json' \ -d '{ "input": { "jobId": "string" }}'{ "status": "done", "output": { "currentRunId": "string", "runs": [ { "id": "string", "reason": "string", "status": "string", "resultCount": 0, "createdAt": "2019-08-24T14:15:22Z", "updatedAt": "2019-08-24T14:15:22Z" } ], "nextCursor": "string", "prospectCount": 0 }, "actionId": "string"}List a Job's prospects POST
Everyone a Job's sourcing found, across runs, and everyone added to it from Talent Hub (their `sourcingRunId` is null), newest first: where they work, how well they matched, and whether they were invited or applied. Each `id` is what `sourcing.setProspectStatus` takes, and each `personKey` what Talent Hub reads take.
Refresh a sourcing run POST
Check a running External discovery search with the partner now instead of at its next scheduled check, as Refresh on the Sourcing tab does. A finished run is returned as it is.