View a Job draft
See a Job that is still being written: everything it says so far, its revision for `jobs.saveDraft`, the step of Job creation its author reached, and the workflow being prepared for it.
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/jobs.getDraft' \ -H 'Content-Type: application/json' \ -d '{ "input": { "jobId": "string" }}'{ "status": "done", "output": { "job": { "id": "string", "title": "string", "department": "string", "location": "string", "status": "string", "client": { "id": "string", "name": "string" }, "applicationCount": 0, "agentModes": { "write": "string", "outside": "string" }, "description": "string", "clientConfidential": true, "employmentType": "string", "workMode": "string", "locations": [ "string" ], "skillsRequired": [ "string" ], "criteria": [ { "kind": "RESPONSIBILITY", "text": "string", "dealbreaker": true } ], "experienceRequired": "string", "experienceMinYears": -9007199254740991, "experienceMaxYears": -9007199254740991, "educationRequired": "string", "companyName": "string", "companyDescription": "string", "companyWebsite": "string", "salaryMin": -9007199254740991, "salaryMax": -9007199254740991, "salaryCurrency": "string", "salaryPeriod": "string", "hideSalary": true, "jobAiPersona": "ai_builder", "featured": true, "urgent": true, "createdAt": "2019-08-24T14:15:22Z", "publishedAt": "2019-08-24T14:15:22Z", "applicationDeadline": "2019-08-24T14:15:22Z", "publication": { "publishedAt": "2019-08-24T14:15:22Z", "expiresAt": "2019-08-24T14:15:22Z", "applicationDeadline": "2019-08-24T14:15:22Z", "acceptingApplications": true, "listOnGoogle": true }, "sourcing": { "revision": -9007199254740991, "externalDiscoveryEnabled": true, "yourTalentHubEnabled": true, "globalTalentHubEnabled": true, "invitationMode": "string", "criteria": [ { "text": "string", "required": true } ], "enrichments": [ "EMAIL" ] } }, "draftRevision": 0, "progress": { "lastActiveStep": "string", "furthestReachedStep": "string", "updatedAt": "2019-08-24T14:15:22Z" }, "workflowDraft": { "id": "string", "name": "string", "description": "string", "revision": -9007199254740991, "sourceTemplateId": "string", "sourceTemplateName": "string", "updatedAt": "2019-08-24T14:15:22Z" } }, "actionId": "string"}Delete a Job POST
Delete a Job for good. A draft that was never published is removed; a published Job disappears from every list with its candidates, its sourcing stops and candidates' scheduled reminders are cancelled. To keep its history, use jobs.archive instead.
View a Job POST
See one Job: its description, requirements, criteria and skills, company, salary band, AI Persona, Client and publication state, applicationCount (every stage), and, where you have access, its Sourcing setup, its workflow steps (each one a candidate can be placed at is marked) and how many candidates are in each Review Board column.