Enhance Privacy with Nylas Free-Busy for Calendars

Enhance privacy while streamlining scheduling with Nylas free-busy.

calendar api

It’s often a challenge to find time to meet with someone these days.  Our working schedules get filled up quickly and making time for a meeting is ever more complicated.  Trying to find an open time slot that works for a group of people, all of whom have busy schedules, has become a difficult task.  We rely on our calendars to figure this out, but it usually involves a type of negotiation. “I’m available after 3 on Monday, but I’m busy all of Tuesday, and can probably squeeze in a meeting after lunch on Wednesday”.  Everyone involved would bandy about similar communications back and forth until a consensus is found. This all takes time and effort…wouldn’t it be great if your users could just find that one slot of time with one inquiry?

The main calendaring solutions (Microsoft Exchange Calendar and Google G Suite Calendar) have tried to address this issue by making it possible for people managed by the same organization to peer into each other’s calendars and make hard suggestions for open time slots which may or may not be accepted by all the other meeting participants. 

In an effort to allow for programmatic solutions, both offer API endpoints that you can poll to reveal the common open time slots across calendars.  Integrating directly with Exchange and Google requires a heavy upfront investment cost, not to mention ongoing maintenance costs. This time could be much better spent building other core features to your platform — which is why we built the Nylas Universal Calendar API.

Today, we’re excited to announce our free-busy support for cloud and on-prem – see how it works on our docs.

The Calendar API that Bridges the Scheduling Gap

Nylas makes it easy to deal with these scheduling complexities. We built multiple API integrations with third-party providers and normalized their data to return it in a single, standardized response. Since embarking on this journey, we’ve encountered quite a few challenges and solved them so our customers don’t have to. 

One notable challenge is that every provider has a different way of handling free-busy information. For example, Google and Microsoft Exchange vary distinctly in the way they handle statuses, time frame visibility, and the number of results that are returned. 

 Status Options
Time Frame Visibility
free, busy
3-month window
Unlimited results
Exchangefree, busy, tentative, working elsewhere, away
2-month window
Maximum of 1000 results

Anyone who wants to build integrations with each of these providers will need to account for these differences. This is where Nylas steps in.

Free-Busy Access Across Organizations

We’ve created an endpoint that abstracts these differences and gives developers a user-friendly proxied endpoint that works for Google and Microsoft calendars in exactly the same way.

The free-busy endpoint we’ve built at Nylas helps developers focus on building their products and not on managing those differences across providers. Our solution makes it easier to search for availability across multiple organizations.

Our solution allows for finding free/busy time slots across organizations. For example, if you are building a platform that brokers the schedules between two different customers who belong to two different organizations, you would be able to determine open time slots for individuals tied to either organization.  If you are setting up virtual meetings between two different parties in two different locations, you can use the Nylas free-busy endpoint in conjunction with the Nylas resources endpoint to identify which two rooms at either location are available at a time that works for all those invited to the meeting. You can also use the free-busy endpoint to keep track of how busy any particular calendar is so you can plan ahead and dedicate company resources accordingly.

Another plus for our free-busy endpoint is that not all the calendars need to be synced to Nylas in order for the free/busy information to be available.  As long as the account that is synced to Nylas has access to other calendars in the same organization as configured by their company’s admin, then the free-busy endpoint would also have access to the timeslots of the synced account’s colleagues/resources.  This makes it much easier to schedule and reschedule meetings across participants without having to do any additional authentication or negotiation. You simply see which slots are open across all the calendars and schedule the meeting.

How Free-Busy Improves Security

With free-busy support, your users can keep information about sensitive events hidden. Rather than seeing a description of the event, meeting requesters would only see other meeting participant’s schedules with all existing meetings blocked off and labeled “Busy” while keeping the event details private.

Oftentimes, executives, finance managers, and HR representatives will opt to keep their calendars on a free/busy-only view. This helps keep details about sensitive meetings private, like performance reviews, sensitive financial review meetings that contain salary data, or even pre-IPO or M&A discussions that need to be kept private before they’re announced.

With the Nylas free-busy endpoint, any user with the setting turned on can still easily schedule meetings without compromising the privacy and security of their sensitive meeting data, including the location, names and email addresses of attendees, and event details. 

You only need to pass three bits of information to request free busy information for a given calendar:

  • The account’s access_token
  • The start and end time of the range you’re checking availability
  • The email address to check freebusy times for

Here’s an example cURL request showing how you can query free busy information for a single calendar:

curl -X POST -G \
"https://api.nylas.com/calendar/free-busy" \
-d "start_time"="1409594400" \
-d "end_time"="1409598000" \
-d "emails"= [“sarah@nylas.com”]

And the example response:

  "object": "free_busy",
  "calendar_id": "bbbb1234cccc1234",
  "time_slots": [
       "object": "time_slot",
       "status": "busy",
       "start_time": 1409594400,
       "end_time": 1409598000
       "object": "time_slot",
       "status": "busy",
       "start_time": 1409598000,
       "end_time": 1409599000


We look forward to seeing the amazing things developers build with our new free-busy endpoint.  We know it will not only save a lot of time for developers who want to focus on building new calendar functionality, but it will also save time for businesses who need to regularly schedule meetings amongst their own employees, along with their customers, and their customers’ colleagues.  Building out this functionality has never been easier and we can’t wait for you to get started!

Build Your Free-Busy Integration Today

Get Started – Build your first integration with Nylas in 15 minutes.

Quickstart GuidesGet up to speed quickly with our SDKs for Python, Node.js, and Ruby or explore the Nylas Email, Calendar, and Contacts APIs.

How Nylas WorksTake a look at the Nylas architecture to see how we sync billions of emails.

Nylas free-busy API reference – Take a look at the Nylas free-busy endpoint under the hood.

TutorialsCheck out our tutorials to learn how to carry out common functionality like creating, reading and RSVP-ing to calendar events.

Integration Guides Ready to start building your integration? Our integration guides cover what it takes to incorporate email functionality into your app. They cover best practices for using the Nylas Communications Platform and provider-specific advice for Google, Microsoft, IMAP, and more.

Set up PostmanPostman makes it easy to explore the Nylas Email API.


You May Also Like

Safeguard Your Users’ Data With a Secure Email API
How to Safeguard Your Users’ Data With a Secure Email API
the importance of cybersecurity
Why Skirting on Cybersecurity Will Be Your Costliest Mistake in 2023
How We Secure APIs at Nylas Using JSON Web Tokens

Subscribe for our updates

Please enter your email address and receive the latest updates.