Skip to content
Skip to main content
POST
https://api.us.nylas.com/v3/grants/{grant_id}/scheduling/configurations

Create Configuration

Creates a Configuration object that you use to define settings and preferences for a scheduling session.

Duplicate email notifications

If the organizer in a scheduling session is a Microsoft account user, both the organizer and all attendees might receive duplicate email notifications, including booking confirmations, rescheduling and cancellation notifications, and reminders. This is because of the way Microsoft handles email notifications. If you set notifications in Scheduler, Microsoft also sends its own notifications to the event organizer and attendees. Microsoft doesn't provide a way to disable these notifications.

Metadata as additional fields

You can add metadata fields (type: metadata) to your Configuration to store custom information about a booking. For example, you can add campaign tags, keywords, or a logo URL. Set the value in the field's default. Configurations don't have a top-level metadata object, and a metadata field isn't the same as the metadata object on events and messages. It's a hidden field on the booking form.

The Scheduler UI doesn't display metadata fields. When a guest books through the hosted scheduling page or the nylas-scheduling component, the page sends each metadata field's default with the booking. The component's bookingInfo.additionalFields property overrides the default.

The Bookings API doesn't read default, required, or pattern. If your own code creates bookings with POST /v3/scheduling/bookings, include the values in the request's additional_fields. The API checks only that each key exists in the Configuration, and returns Additional field '<key>' not found in configuration if it doesn't. Values are strings.

Booking webhook notifications (booking.created, booking.rescheduled, booking.cancelled, booking.pending, and booking.reminder) include your metadata fields in booking_info.additional_fields. For group events, booking.reminder sends additional_fields as null. Calendar event webhooks (for example, event.updated) do not include them. Scheduler's own email notifications don't display them, but workflow templates can read them.

Guests can read and change metadata field values in the browser, so don't use them for routing, pricing, or secrets.

To identify Scheduler-related changes in event webhooks instead, use the metadata that Scheduler stamps on the calendar events it creates. For more information, see the event.updated notification schema.

NYLAS API KEY

Parameters

Path parameters

grant_id*string

ID of the grant to access. You can also use the email address associated with the grant, or use /me/ to refer to the grant associated with an access token.

Request body

appearanceany

An object that defines the appearance settings for the Scheduling Page. This field may be null if no appearance customization has been set.

availability*object

The rules that determine the available time slots for the event.

event_booking*object
namestring

The name of the Scheduling Page. If not defined, Nylas defaults to the organizer's name.

participants*array<object>

A list of participants to be included in the scheduled event.

Participants that provide availability (through an availability or booking block) must be associated with a valid Nylas grant, or the request fails. Participants supplied by email only don't require a grant. They're notification-only invitees who receive scheduling emails but don't affect availability calculation and can't be selected as a round-robin host.

This field isn't accepted for group or round-robin configurations, which are anchored to the organizer's own grant and calendar instead.

requires_session_authbooleannullable

When true, the scheduling Availability and Bookings endpoints require a valid session ID to authenticate requests using the specified Configuration. This field may be null if not explicitly set on the configuration; treat null the same as false (the default behavior).

Default: false
schedulerobject
slugstringnullable

The slug for the Configuration object. This is an optional, unique identifier. You can use the slug instead of the configuration_id when making requests to the Nylas Scheduling endpoints. Slugs are unique to each Nylas application. This field may be null if no slug has been set.

Responses

request_idstring

The request ID.

dataobject
POSThttps://api.us.nylas.com/v3/grants/nyla%40example.com/scheduling/configurations

Find your API key in the Nylas Dashboard under API Keys in your application settings.

grant_idrequiredstring

ID of the grant to access. You can also use the email address associated with the grant, or use /me/ to refer to the grant associated with an access token.

Loading editor...

Autocomplete and validation come from this endpoint's request schema.