Version:
Only show these results:

Scheduler v2 automatic email messages

Nylas by default automatically sends emails to all parties for confirming and cancelling bookings.

Confirmation emails to organizers use the same language as the organizer's browser configuration. For attendees, the emails use English as the default language.

Deactivate automantic emails using the confirmation_emails_to_host and confirmation_emails_to_guests booking configuration options. This guide goes over building custom email workflows on top of Scheduler after deactivating default email notifications.

Deactivating Automatic Emails

Use Scheduler configurations as well as the API to deactivate automatic emails. These apply to any connected Scheduling Page. The configuration options for confirmation_emails_to_host and confirmation_emails_to_guests are boolean data types. These default to true.

Scheduler Configuration Method

The configuration options in the code below within the booking object display the deactivated confirmation emails.

nylas.scheduler.show({
auth: {
accessToken: "<ACCESS_TOKEN>"
},
style: {
tintColor: "#32325d",
backgroundColor: "white"
},
defaults: {
event: {
title: "30-min Coffee Meeting",
duration: 30
}
},
booking: {
confirmation_emails_to_host: false,
confirmation_emails_to_guests: false
},
reminders: [{
delivery_method: "webhook",
delivery_recipient: "both",
webhook_url: "https://your-server.com/webhook",
time_before_event: 20160
}]
});

API Method

In this curl request, the example shows the deactivated confirmation emails in the two configuration options.

curl --location --request PUT 'https://api.schedule.nylas.com/manage/pages/{page_id}' \
--header 'Authorization: Bearer <ACCESS_TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"access_tokens": [
"<ACCESS_TOKEN>"
],
"config": {
"booking": {
"confirmation_emails_to_guests": false,
"confirmation_emails_to_host": false,
"confirmation_method": "automatic",
"scheduling_method": "round-robin-maximize-fairness"
},
"calendar_ids": {
"<ACCOUNT_ID>": {
"availability": [
"<CALENDAR_ID>"
],
"booking": "<CALENDAR_ID>"
}
},
"event": {
"duration": 30,
"location": "Virtual",
"title": "30 Minute Coffee Meeting"
}
}
}'

Custom Thank You Page Booking Flow

After configuring a Scheduling Page with a custom thank you page, the query string parameters from the booking flow help to customize, build, and send your own booking confirmation email.

In the link example below, the reschedule and cancel booking links use the same formatting.

https://{domain}/{page_slug}/reschedule/{edit_hash}
https://{domain}/{page_slug}/cancel/{edit_hash}

Best Practices

Save the Nylas Event ID (event_id) associated with the booking in addition to sending your own configuration email using the data from a custom thank you redirect.

Webhooks

In the Nylas Dashboard, you can configure your application to receive event.updated and event.deleted Webhook events. When you receive an event change, follow the steps below.

  1. Match the modified event_id to an existing booking. Ignore it if it's not the same.
  2. Retrieve the most recent copy of the event object using the Nylas GET /events/{id} API.
  3. Send a cancellation email for the booking if the event status is cancelled or if each event.participants[].status is no.

Keep in Mind

Check for cancellations using the Nylas API as bookings can be cancelled using the Scheduling Page as well as the booking's cancellation URL.

Participants can also remove the events from their calendars to cancel. In this case, there is no delivery notification using the thank_you_redirect booking configuration. See the Managing Cancellations section for more.

Custom Confirmation Emails

With automatic emails set to false, use a Custom Thank You Page Booking Flow or Sending Notifications to Participants Webhooks to configure notifications for Scheduler events.

If both the organizer and participants have automatic confirmation emails set to false, only the organizer will have the event booked in their calendar. Participants must receive an ICS file for information about the event.

The thank_you_redirect configuration creates a booking flow for your users. Users are redirected to your configured URL with additional query parameters included.

Scheduler webhook reminders trigger at a set time after a booking. Use a time_before_event value greater than the available_days_in_future to trigger as soon as the booking occurs.

Confirmation emails must contain the two items below. Use these in custom emails to notify participants with your own solutions and needs.

ICS Files

Use the Generate ICS File endpoint to share event information to participants. For rescheduled events, Nylas creates a new event on the organizer's calendar and removes the former event. The two strategies below are for notifying participants.

  • Generate two separate ICS files
    • One creates new event information, one cancels the former event
  • Update the original ICS file
    • Display updated information
      • Nylas API currently doesn't support incrementing sequence numbers, so the recipient's provider may not be able to process the update

Using a thank_you_redirect includes query string parameters. The booking flow help you send your own booking confirmation email. The example below shows cancel and reschedule booking links with the same formatting.

https://schedule.nylas.com/{page_slug}/reschedule/{edit_hash}
https://schedule.nylas.com/{page_slug}/cancel/{edit_hash}

You can render iframe content with a location pointing to the appropriate Scheduling Page as needed.

The thank_you_redirect links are included in the description of created events; however, modifying the description for an already created event is currently not supported.

Managing Cancellations

If an event is cancelled, the Custom Thank You Page Booking Flow and Scheduler Webhook configurations don't trigger. Use the solutions below to monitor and manage cancelled events.

  • Custom Cancellation Page
    • Use the Delete an Event endpoint to trigger the notification workflow
    • Send an ICS file with the cancelled event information
  • Use event.updated Nylas webhooks
    • Check internal data store to match for correct <EVENT_ID> values
    • Check the status of the event with the Return An Event endpoint
    • Trigger the cancellation workflow if the event status is cancelled or the response is 404 Not Found