Unified.to
All articles

How to Build Scheduling Into Your Product Across Google Calendar, Outlook, and Zoom


March 4, 2026

Embedded scheduling is a feature inside a SaaS product that allows users to create meetings using their existing calendar tools, without leaving the product. It typically includes availability checking, time selection, and automatic calendar event creation.

To build this, your product needs access to calendar data across providers like Google Calendar, Microsoft Outlook, and Zoom. Each platform has different APIs and data models for events, availability, and conferencing.

Unified provides a consistent Calendar & Meetings API that lets your product retrieve availability, create events, and attach conferencing details across integrations.

Why SaaS Products Build Scheduling Features

Many B2B SaaS products include scheduling functionality for their customers.

Examples include:

  • Sales demo booking tools
  • Customer onboarding platforms
  • Interview scheduling tools
  • Customer success platforms
  • Support scheduling tools

These products allow users to book meetings without switching to external tools.

Typical requirements include:

  • Checking availability across one or more calendars
  • Creating meetings directly inside the product
  • Adding video conferencing links automatically
  • Handling rescheduling and cancellations
  • Coordinating multiple participants

Common Scheduling Use Cases

Scheduling features usually support several workflows.

Booking flows

Users select a time slot based on availability.

Sales demos

Prospects schedule meetings with sales teams.

Onboarding sessions

Customers book implementation or onboarding calls.

Support calls

Users schedule time with support teams.

Internal coordination

Teams schedule meetings across multiple participants.

Unified Category Used

Scheduling relies on the Calendar & Meetings category.

CategoryDescriptionKey Objects
Calendar & MeetingsCalendar events and availability across platforms like Google Calendar and Outlookcalendar_event

This category provides consistent access to events and availability across integrations.

Unified Calendar Event Object

The calendar_event object represents a scheduled meeting.

Key fields include:

FieldPurpose
idUnique event identifier
title / subjectMeeting title
start_atStart time
end_atEnd time
timezoneTime zone
attendeesList of participants
organizerEvent creator
conferenceVideo conferencing details
locationPhysical or virtual location
web_urlLink to the event

Events can be retrieved using:

GET /calendar/{connection_id}/event
GET /calendar/{connection_id}/event/{id}

Connecting Customer Calendars

Customers authorize their calendars using Unified Connect.

Typical flow:

  1. Your application launches the authorization flow.
  2. The user selects Google Calendar, Outlook, or another provider.
  3. The user authorizes access.
  4. Unified returns a connection_id.

Your application stores:

user_id → connection_id

All subsequent API calls reference this identifier.

Checking Availability (Free/Busy)

Scheduling requires checking calendar availability before creating events.

Unified provides a busy endpoint:

GET /calendar/{connection_id}/busy

Key query parameters

ParameterPurpose
start_gteStart of the time window
end_ltEnd of the time window
calendar_idFilter by calendar
user_idFilter by user

Response structure

The API returns busy time blocks:

  • start_at – beginning of busy interval
  • end_at – end of busy interval
  • time_zone – time zone of the interval
  • busy[] – list of unavailable time slots

How to compute availability

  1. Request busy intervals within a time window
  2. Identify all busy slots
  3. Compute the gaps between them
  4. Use those gaps as available time slots

For multi-participant scheduling:

  • retrieve busy intervals for each participant
  • intersect available slots
  • return mutually available times

This allows your product to generate booking options across multiple calendars.

Creating Calendar Events

Once a time slot is selected, create a meeting using:

POST /calendar/{connection_id}/event

Key fields for scheduling

FieldPurpose
titleMeeting subject
start_atStart time
end_atEnd time
attendeesParticipants
conferenceVideo meeting details
locationPhysical location
descriptionNotes or agenda

Example title:

Product Demo – Acme Corp

The attendees field ensures all participants receive invites.

Adding Video Conferencing

The conference field allows you to include meeting links.

Typical values include:

  • Zoom
  • Google Meet
  • Microsoft Teams

The API returns:

  • join_url
  • meeting_id
  • dial-in details (when supported)

This allows meetings to be scheduled with conferencing automatically attached.

Handling Rescheduling and Cancellations

Scheduling features must respond to changes.

Unified provides webhook events for calendar updates:

  • event.created
  • event.updated
  • event.deleted

Additional lifecycle events may include:

  • event.started
  • event.ended

These events allow your product to:

  • update meeting times
  • notify participants
  • cancel meetings
  • synchronize UI state

Supported Platforms

Unified supports a wide range of calendar and meeting integrations.

Examples include:

  • Google Calendar
  • Microsoft Outlook
  • Zoom
  • Microsoft Teams
  • Calendly
  • Apple iCloud

In total, the Calendar & Meetings category supports 27 integrations, allowing your product to support many customer environments.

Why This Matters

Scheduling features require coordination across multiple platforms.

Without a unified approach, developers must build separate integrations for each calendar provider and manage differences in availability, events, and conferencing.

Unified provides:

  • consistent calendar event models
  • availability retrieval across providers
  • unified event creation
  • real-time updates via webhooks

This allows product teams to build scheduling features quickly while avoiding integration complexity.

Start building scheduling features across Google Calendar, Outlook, Zoom, and many other platforms today.

→ Start your 30-day free trial

→ Book a demo

All articles