curl --request POST \
--url https://api.tidyhire.app/api/public/v1/interview/invite \
--header 'Content-Type: application/json' \
--header 'x-tidyhire-api-key: <api-key>' \
--data '
{
"ats_job_id": "ats-job-12345",
"job_title": "Senior Software Engineer",
"job_description": "We are looking for a Senior Software Engineer to join our team and build scalable backend services.",
"experience_level": "5-8 Years",
"seniority_level": "Senior",
"work_type": "Remote",
"employment_type": "Full Time",
"location": "New York, NY",
"skills_required": [
"JavaScript",
"Node.js",
"MongoDB"
],
"skills_good_to_have": [
"TypeScript",
"Redis",
"Docker"
],
"candidates": [
{
"id": "ats-candidate-001",
"name": "John Doe",
"email": "john.doe@example.com",
"phone": "+1234567890",
"metadata": {
"source": "linkedin",
"ats_candidate_id": "12345"
}
}
],
"interview_questions": [
{
"id": "a1b2c3d4e5f60123456789abcdef0123",
"question": "Tell me about a production application you led. What architecture choices did you make?",
"task": null,
"type": "verbal"
}
],
"interview_settings": {
"cutoff_score": 50,
"interview_duration": "30 Minutes"
},
"metadata": {}
}
'{
"success": true,
"data": {
"project_id": "64a1b2c3d4e5f6a7b8c9d0e1",
"job_url": "https://jobs.tidyhire.app/company/acme/job/64a1b2c3d4e5f6a7b8c9d0e2",
"project_login_url": "https://beta.tidyhire.app/app/projects/64a1b2c3d4e5f6a7b8c9d0e1",
"interviews": [
{
"id": "64a1b2c3d4e5f6a7b8c9d0e3",
"name": "John Doe",
"email": "john.doe@example.com",
"phone": "+1234567890",
"metadata": {
"source": "linkedin"
}
}
]
}
}Invite candidates to an AI-powered interview. Pass the ATS job ID and candidate details — we’ll send interview invitations and reminders via email.
ats_job_id doesn’t exist yet, a new project and job are automatically created.id within a project) are skipped and returned alongside new entries.curl --request POST \
--url https://api.tidyhire.app/api/public/v1/interview/invite \
--header 'Content-Type: application/json' \
--header 'x-tidyhire-api-key: <api-key>' \
--data '
{
"ats_job_id": "ats-job-12345",
"job_title": "Senior Software Engineer",
"job_description": "We are looking for a Senior Software Engineer to join our team and build scalable backend services.",
"experience_level": "5-8 Years",
"seniority_level": "Senior",
"work_type": "Remote",
"employment_type": "Full Time",
"location": "New York, NY",
"skills_required": [
"JavaScript",
"Node.js",
"MongoDB"
],
"skills_good_to_have": [
"TypeScript",
"Redis",
"Docker"
],
"candidates": [
{
"id": "ats-candidate-001",
"name": "John Doe",
"email": "john.doe@example.com",
"phone": "+1234567890",
"metadata": {
"source": "linkedin",
"ats_candidate_id": "12345"
}
}
],
"interview_questions": [
{
"id": "a1b2c3d4e5f60123456789abcdef0123",
"question": "Tell me about a production application you led. What architecture choices did you make?",
"task": null,
"type": "verbal"
}
],
"interview_settings": {
"cutoff_score": 50,
"interview_duration": "30 Minutes"
},
"metadata": {}
}
'{
"success": true,
"data": {
"project_id": "64a1b2c3d4e5f6a7b8c9d0e1",
"job_url": "https://jobs.tidyhire.app/company/acme/job/64a1b2c3d4e5f6a7b8c9d0e2",
"project_login_url": "https://beta.tidyhire.app/app/projects/64a1b2c3d4e5f6a7b8c9d0e1",
"interviews": [
{
"id": "64a1b2c3d4e5f6a7b8c9d0e3",
"name": "John Doe",
"email": "john.doe@example.com",
"phone": "+1234567890",
"metadata": {
"source": "linkedin"
}
}
]
}
}ats_job_id across multiple requests to invite candidates to an existing job.Your Tidyhire API key
A unique job identifier from your ATS to link this job. If a project with this ats_job_id already exists, candidates are added to it. Otherwise a new project and job are created.
1"ats-job-12345"
The title of the job position.
1"Senior Software Engineer"
A detailed description of the job role and responsibilities.
1"We are looking for a Senior Software Engineer to join our team and build scalable backend services."
Required experience level.
Fresher, 1-2 Years, 2-5 Years, 5-8 Years, 8-12 Years, Above 12 Years "5-8 Years"
Seniority level for the role.
Entry, Mid, Senior, Lead, Principal, Staff "Senior"
Work arrangement type.
Remote, On Site, Hybrid "Remote"
Type of employment.
Full Time, Part Time, Contract, Freelance "Full Time"
Job location.
1"New York, NY"
List of required skills. Minimum 3 skills.
3["JavaScript", "Node.js", "MongoDB"]List of preferred skills. Minimum 3 skills.
3["TypeScript", "Redis", "Docker"]List of candidates to invite. Minimum 1 candidate. Duplicate emails (already invited to this project) are skipped and returned in the response.
1Show child attributes
Pre-generated interview questions. If provided, AI question generation is skipped. We recommend keeping this empty — the Generate Interview Questions API is used internally by default.
Show child attributes
Show child attributes
Custom key-value data to attach to the project.
{}