Skip to main content
Interview scheduling is a coordination bottleneck. Recruiters spend hours cross-referencing calendars, emailing back and forth with candidates, and rebooking when conflicts arise. Every day a candidate waits for a scheduled interview is a day they might accept another offer. Wayak connects your ATS and calendar API so an agent can check real-time availability, find optimal slots, send invitations, and flag conflicts — all without manual intervention. A weekly playbook ensures no candidate sits in limbo.

What you need

Data sources

  • ATS database — Candidates table with interview stage, assigned panel, and recruiter. Job requisitions table with role and department
  • Calendar API — Interviewer availability, room bookings, and existing meeting blocks (Google Calendar or Outlook)

Knowledge spaces

  • Interview guides — Structured interview templates by role type (technical, behavioral, case study) with suggested durations
  • Scheduling policies — Rules for buffer time between interviews, maximum interviews per day per interviewer, and blackout periods
Semantic layer: Define these in your ontology before setting up the agent.
ComponentNameDefinition
ObjectInterviewMaps to the ATS interviews table. Represents a scheduled or pending interview with its participants, time, and format
ObjectInterviewerMaps to the HRIS employees table filtered by interview panel membership. Represents someone available to conduct interviews
MetricTimeToScheduleAverage number of business days between a candidate reaching the interview stage and the interview being confirmed
DimensionInterviewStageCategorization: phone screen, technical interview, hiring manager interview, panel interview, final round
See building a semantic layer for a step-by-step guide.

Agent setup

1

Create the agent

Go to Agent SpaceNew agent.
FieldValue
NameRecruiting Coordinator
RoleTalent acquisition specialist
GoalMove candidates through the pipeline efficiently and fairly
2

Set the description

You coordinate interviews for the recruiting team. When scheduling, always respect interviewer preferences and buffer times. Propose three time options to candidates whenever possible. Be warm and responsive in candidate-facing communications. Always include the interview format, duration, interviewer names, and any preparation instructions. Flag scheduling conflicts or candidates who have been waiting more than 3 business days proactively.
3

Scope data access

Grant access to:
  • ATS database (candidates, job requisitions, interview stages)
  • Calendar API (interviewer availability, room bookings)
  • Interview guides knowledge space
  • Scheduling policies knowledge space
  • Interview, Interviewer objects and TimeToSchedule metric
4

Add skills

Trigger: Candidate moves to an interview stage or recruiter requests scheduling
  1. Retrieve the candidate’s assigned interview panel and the required interview format from the ATS.
  2. Check the scheduling policies for buffer time, daily limits, and blackout periods.
  3. Query the calendar API for each panel member’s availability over the next 5 business days.
  4. Identify overlapping available windows that meet the duration requirement (e.g., 60 minutes for technical, 45 minutes for phone screen).
  5. Rank slots by earliest available date, then by time of day (morning preferred).
  6. Return the top 3 options with date, time, duration, room (if in-person), and video link (if remote).
Trigger: Recruiter confirms a selected slot
  1. Create a calendar event with the confirmed date, time, duration, and participants.
  2. Include in the invite: interviewer names and titles, interview format, preparation instructions from the interview guide, and a link to any take-home materials.
  3. Send a confirmation email to the candidate with the details and a point of contact for questions.
  4. Update the ATS record to reflect the scheduled interview and expected date.
  5. Set a reminder for the recruiter 24 hours before the interview.

Automation

Playbook: Weekly scheduling digest

1

Set the trigger

Schedule: Every Monday at 7:00 AM.
2

Build the workflow

  1. Query the ATS for all candidates currently in an interview stage who do not have a confirmed interview date.
  2. Loop through each unscheduled candidate:
    • Calculate how many business days they have been waiting since reaching the interview stage.
    • Check interviewer panel availability for the current week.
  3. Condition: If a candidate has waited more than 3 business days, flag them as “at risk” and note the blocking reason (no panel availability, candidate unresponsive, or scheduling conflict).
  4. Aggregate into a summary: total unscheduled interviews, at-risk candidates, and suggested slots for the week.
3

Configure delivery

Send an email to the recruiting team with the subject line: “Weekly scheduling digest — [date]”. Include the at-risk candidates at the top. Post a summary to the #recruiting Slack channel.
4

Test and activate

Click Run now to test with live data, then toggle to Active.

What’s next

Resume screening

Automate the step before scheduling — screen candidates and identify who should advance to interviews.

All HR use cases

See the full list.