Schedule interview

Schedule an interview for an application with interviewers, time, video link and invite settings.

POST https://cotlet.dev/api/v1/ashby/applications/{application_id}/interview/schedule

write Confirm

Creates an interview the way Manual Schedule does: interview type, start time, length and interviewers, with a Google Meet, Zoom or Microsoft Teams link or custom location text. The candidate and interviewers get calendar invites only if you set notify_candidate and notify_interviewers; the confirmation email is off unless you turn it on. Needs Elevated Access as Hiring Manager or Admin, or Organization Admin. By default you confirm each call; you can switch that off for this tool.

Parameters

Parameters: schedule_interview
NameTypeDescription
application_id string required string Application ID from list_applications or get_candidate.
interview string required string Interview type name from the job's interview plan, for example Technical screen.
start string required string ISO 8601 start time with offset.
duration_minutes integer required integer Length of the interview.
interviewers array required array Interviewer emails, one slot each.
location_type string string 'google_meet', 'zoom', 'microsoft_teams' or 'custom'. Default: custom.
location string string Location text, only with location_type 'custom'.
notify_candidate boolean boolean Send the calendar invite to the candidate. Default: false.
notify_interviewers boolean boolean Send the calendar invite to interviewers. Default: false.
confirmation_email boolean boolean Send the Candidate Confirmation Email. Default: false.

Request

cURL
curl -X POST https://cotlet.dev/api/v1/ashby/applications/2b9f6e04-1c7d-4a35-b8e2-5d0a93c47f16/interview/schedule \
  -H "Authorization: Bearer $COTLET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"interview":"Technical screen","start":"2026-10-22T14:00:00+02:00","duration_minutes":45,"interviewers":["priya.nair@example.com"],"location_type":"google_meet","notify_candidate":true,"notify_interviewers":true,"confirmation_email":false}'
Python
result = client.call("ashby", "schedule_interview", {"application_id":"2b9f6e04-1c7d-4a35-b8e2-5d0a93c47f16","interview":"Technical screen","start":"2026-10-22T14:00:00+02:00","duration_minutes":45,"interviewers":["priya.nair@example.com"],"location_type":"google_meet","notify_candidate":True,"notify_interviewers":True,"confirmation_email":False})
Node.js
const result = await cotlet.call('ashby', 'schedule_interview', {"application_id":"2b9f6e04-1c7d-4a35-b8e2-5d0a93c47f16","interview":"Technical screen","start":"2026-10-22T14:00:00+02:00","duration_minutes":45,"interviewers":["priya.nair@example.com"],"location_type":"google_meet","notify_candidate":true,"notify_interviewers":true,"confirmation_email":false});
CLI
cotlet call ashby schedule_interview --data '{"application_id":"2b9f6e04-1c7d-4a35-b8e2-5d0a93c47f16","interview":"Technical screen","start":"2026-10-22T14:00:00+02:00","duration_minutes":45,"interviewers":["priya.nair@example.com"],"location_type":"google_meet","notify_candidate":true,"notify_interviewers":true,"confirmation_email":false}'

Example response

JSON

{
  "interview_id": "f4a1c096-3d78-4e25-8b9c-0a6e57d2b813",
  "interview": "Technical screen",
  "start": "2026-10-22T14:00:00+02:00",
  "duration_minutes": 45,
  "interviewers": [
    "priya.nair@example.com"
  ],
  "location": "Google Meet",
  "candidate_invited": true,
  "confirmation_email_sent": false
}

Sign in once. Your agent does the rest.

Sign up and add the apps you need. Free 7-day trial with 2,000 credits, no card needed.