Job data model
Every job object returned by the API contains the following fields:string
required
Unique identifier for the job.
string
required
Job title for the open role (e.g.,
Senior Backend Engineer).string
required
Full job description. Markdown formatting is supported — use it to structure responsibilities, requirements, and company context clearly.
array of strings
required
Technical skills that candidates must have for this role (e.g.,
["Go", "Kubernetes", "PostgreSQL"]).array of strings
Nice-to-have technical skills that are not strictly required but improve a candidate’s fit score.
integer
required
Minimum years of professional experience required for the role.
integer
Maximum years of professional experience. Candidates above this ceiling are treated as overqualified and may be filtered from shortlists.
string
Job location. Pass a city name (e.g.,
Bangalore) or Remote for fully distributed roles.string
Work arrangement for the role. One of
onsite, remote, or hybrid.integer
Minimum annual salary offered for this role, in INR.
integer
Maximum annual salary offered for this role, in INR.
string
Current lifecycle state of the job. One of
active, paused, or closed.string
ISO 8601 timestamp recording when the job was created (e.g.,
2024-08-15T09:30:00Z).integer
Number of candidates currently in the AI-generated shortlist for this job.
How jobs power AI matching
Once you create a job, Cutshort’s Role Matcher semantically maps it to the 4M+ candidate pool — no manual keyword searching required. The AI reads the full job description to extract and reason about:- Required tech stack — specific languages, frameworks, databases, and cloud platforms
- Seniority level — inferred from experience range, title, and responsibilities
- Company stage fit — startup-ready vs. enterprise-scale engineering environments
- Domain expertise — product verticals like fintech, B2C, SaaS, and deep tech