Skip to main content
You can create, update, and close job postings entirely through the Cutshort API. Each job you create is automatically fed into Cutshort’s AI matching engine, which begins generating candidate shortlists based on the job’s requirements.
1

Create the job

Send a POST request to /v1/jobs with your job details. Include required skills, preferred skills, experience range, location, work model, and salary band to give the AI matching engine the richest possible signal.
2

Check the response

A successful 201 Created response returns the new job object. Save the id — you will use it to update the job, fetch shortlists, and correlate webhook events.
The shortlist_count starts at 0 and increases as Cutshort’s AI engine identifies matching candidates. Subscribe to the candidate.shortlisted webhook event to receive real-time notifications.
3

Update the job

Send a PATCH request to /v1/jobs/{job_id} to update any fields on an existing job. You can revise the salary range, adjust experience requirements, or pause the role.
Only the fields you include in the request body are updated — all other fields remain unchanged.
4

Close the job

When a role is filled or cancelled, set status to "closed". Closing a job stops all new AI matching and outreach for that role. Existing shortlisted candidates remain visible in your dashboard for reference.

Job status lifecycle

A job moves through the following statuses during its lifetime: The typical flow for a filled role is:
You can move a job from paused back to active at any time by sending { "status": "active" } in a PATCH request.

Writing better job descriptions

Include the product domain, team size, and specific technical challenges in your description. AI matching improves significantly with richer descriptions — for example, mentioning “distributed systems at 10M users” attracts stronger candidates than generic language like “scalable backend work”.