How to Build Interview Coordination Across ATS and Calendar Platforms with ATS and Calendar APIs
March 4, 2026
Recruiting platforms often provide interview coordination tools that help hiring teams schedule, manage, and track candidate interviews. These tools allow recruiters to coordinate availability across interviewers, schedule meetings with candidates, and automatically update hiring systems.
Many SaaS products build these capabilities directly into their platforms. Instead of manually coordinating interviews across email, calendars, and ATS systems, recruiters can manage the entire workflow in one place.
The challenge is that interview data and scheduling systems live in different tools. Applicant tracking systems (ATS) such as Greenhouse or Lever store candidate and application data, while calendar systems like Outlook or Google Calendar manage availability and meeting scheduling.
Unified simplifies this process by providing normalized APIs across ATS and calendar platforms. Developers can retrieve candidate and application data from ATS systems and create interview events in calendar platforms using a consistent API.
Why SaaS Products Build Interview Coordination Features
Interview coordination is a common feature in many recruiting products.
Examples include:
- Recruiting workflow platforms
- Candidate scheduling tools
- Hiring coordination platforms
- Interview management software
- AI recruiting assistants
These products help their customers manage interview workflows more efficiently.
Typical capabilities include:
- Recruiter-scheduled interviews where recruiters choose available time slots
- Candidate self-scheduling links that allow candidates to select interview times
- Panel interview coordination with multiple interviewers
- Automatic rescheduling and cancellations
- Interview feedback collection workflows
By integrating with customer ATS and calendar systems, SaaS products can automate these workflows without requiring recruiters to manage them manually.
Unified Categories Used for Interview Coordination
Interview coordination combines data from two Unified API categories.
| Category | Description | Key Objects |
|---|---|---|
| ATS | Candidate and application workflow data from platforms like Greenhouse or Lever | candidate, application, interview |
| Calendar & Meetings | Calendar events used to schedule interviews | calendar_event |
Using normalized APIs across these categories allows SaaS platforms to coordinate interview scheduling without building separate integrations for each ATS or calendar provider.
Unified ATS Objects and Key Fields
Interview scheduling relies on several ATS objects.
Candidate
The candidate object represents the person being interviewed.
Important fields include:
| Field | Purpose |
|---|---|
| id | Unique identifier for the candidate |
| first_name / last_name | Candidate name |
| emails | Used to send calendar invitations |
| telephones | Candidate contact information |
| created_at / updated_at | Record timestamps |
These fields allow scheduling systems to identify the candidate and send interview notifications.
Application
The application object connects a candidate to a specific job.
Important fields include:
| Field | Purpose |
|---|---|
| id | Unique identifier for the application |
| candidate_id | Candidate associated with the application |
| job_id | Job being applied for |
| status | Current stage in the hiring pipeline |
| original_status | Provider-specific stage label |
| applied_at | Application timestamp |
Application stages often determine when interviews should be scheduled.
For example, interviews may be triggered when a candidate enters stages such as SCREENING, INTERVIEW, or FINAL_INTERVIEW.
Interview
The interview object stores interview scheduling information.
Important fields include:
| Field | Purpose |
|---|---|
| id | Unique interview identifier |
| candidate_id | Candidate being interviewed |
| application_id | Application associated with the interview |
| job_id | Job associated with the interview |
| user_ids | Interviewers participating in the interview |
| status | Interview state (SCHEDULED, COMPLETE, CANCELED, etc.) |
| start_at | Interview start time |
| end_at | Interview end time |
| location | Meeting location or virtual meeting link |
| external_event_xref | ID of the associated calendar event |
| created_at / updated_at | Interview timestamps |
These fields allow interview coordination tools to track interview schedules and participants.
Connecting Customer ATS and Calendars
Customers authorize their ATS and calendar platforms using Unified Connect.
Typical process:
- Your application launches the Unified Connect authorization flow.
- The user selects integrations such as Greenhouse, Outlook, or Google Calendar.
- The user authorizes access to their accounts.
- Unified redirects back with a connection_id.
Your application stores the mapping:
user_id → connection_id
All subsequent API requests reference this identifier.
Retrieving Candidate and Application Data
Interview coordination begins by retrieving candidate and application data from the ATS.
Example endpoints include:
GET /ats/{connection_id}/candidate
GET /ats/{connection_id}/application
GET /ats/{connection_id}/interview
GET /ats/{connection_id}/job
These endpoints allow the application to:
- retrieve candidate contact details
- identify the job associated with the interview
- determine the application stage
- view existing interviews
This data provides the context needed for scheduling.
Scheduling Interviews in Calendars
Once interview details are determined, the system schedules a meeting in the interviewer calendars.
Unified supports creating calendar events using:
POST /calendar/{connection_id}/event
Important writable fields include:
| Field | Purpose |
|---|---|
| title | Descriptive subject for the interview |
| start_at | Interview start time |
| end_at | Interview end time |
| attendees | Candidate and interviewers |
| conference | Video meeting details |
| location | Physical meeting location |
| description | Interview agenda or preparation notes |
Example event title:
Frontend Engineer Interview – Round 2
The attendees field ensures interviewers and candidates receive invitations.
The conference field allows adding Zoom, Google Meet, or Teams meeting links.
Creating and Updating ATS Interview Records
Unified also allows creating or updating interview records in the ATS.
Create an interview:
POST /ats/{connection_id}/interview
Update an interview:
PUT /ats/{connection_id}/interview/{id}
Writable fields include:
candidate_idapplication_iduser_idsstatusstart_atend_atlocation
These endpoints ensure the ATS remains synchronized with scheduled interviews.
Handling Rescheduling and Cancellations
Interview coordination tools must react to scheduling changes.
Unified provides webhook events that notify applications when calendar events change.
Important events include:
event.createdevent.updatedevent.deleted
These events allow scheduling systems to:
- update interview times
- notify participants
- cancel interviews when necessary
Supported Platforms
Unified supports a wide range of hiring and scheduling integrations.
ATS Platforms (73 integrations)
Examples include:
- Greenhouse
- Lever
- Ashby
- SmartRecruiters
- iCIMS
- Workday
- Jobvite
- BambooHR
- Workable
Calendar Platforms (27 integrations)
Examples include:
- Google Calendar
- Microsoft Outlook
- Zoom Calendar
- Calendly
- Apple iCloud
- Webex
This allows recruiting platforms to support many customer environments without building separate integrations.
Why Product Teams Choose Unified
Building interview coordination features typically requires integrating with multiple ATS platforms and calendar systems.
Unified simplifies this by providing:
- normalized ATS objects for candidates, applications, and interviews
- unified calendar APIs for scheduling events
- consistent authentication through Unified Connect
- webhook events for real-time updates
Instead of maintaining dozens of integrations, product teams can focus on building recruiting workflows that help hiring teams schedule and manage interviews efficiently.
Start building interview coordination across Greenhouse, Outlook, Google Calendar, and dozens of other platforms today.