Configurations
A configuration is a collection of event settings and preferences. Nylas Scheduler stores Configuration objects in the Scheduler database and loads them as Scheduling Pages in the Scheduler UI.
A configuration can be either private if it uses a session, or public if it does not. By default, Nylas creates public configurations (requires_session_auth: false). To create a private configuration, set requires_session_auth to true.
After you create a private configuration, you can make a POST /v3/scheduling/sessions request that includes the Configuration object ID to create a session.
Agent Accounts as the organizer
The grant_id in the path can be an Agent Account grant, which makes the Agent Account the organizer of the Configuration. Guests then book against the agent's own calendar and receive confirmation email from the agent's own address, with no OAuth connection involved.
Two limits apply when an Agent Account is a participant:
- Set
availability.calendar_idsto["primary"]andbooking.calendar_idto"primary". Scheduler reads and writes the Agent Account's primary calendar only. - Round-robin Configurations aren't supported. An Agent Account can't be a host under
max-fairnessormax-availability, though one-on-one, collective, and group Configurations all work.
The scopes table below covers Google and Microsoft grants. Agent Accounts have no OAuth token, so they authenticate with your API key alone. For the full walkthrough, see Use Scheduler with Agent Accounts.
Configurations scopes
The table below lists the Configurations endpoints and which scopes they require. The table shortens the full scope URI for space reasons, so add the prefix for the provider when requesting scopes.
The ☑️ in each column indicates the most restrictive scope you can request for each provider and still use that API. More permissive scopes appear under the minimum option. If you're already using one of the permissive scopes, you don't need to add the more restrictive scope.
| Endpoint | Google Scopeshttps://www.googleapis.com/auth/... |
Microsoft Scopeshttps://graph.microsoft.com/... |
|---|---|---|
POST /scheduling/configurationsPUT /scheduling/configuration/<SCHEDULER_CONFIG_ID> |
/calendar.readonly ☑️/calendar |
Calendars.Read ☑️Calendars.ReadWrite |
For more information about scopes, see Using scopes to request user data.
GET /v3/grants/{grant_id}/scheduling/configurationsReturns all Configuration objects.
POST /v3/grants/{grant_id}/scheduling/configurationsCreates 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 u...
GET /v3/grants/{grant_id}/scheduling/configurations/{configuration_id}Returns the specified Configuration object.
PUT /v3/grants/{grant_id}/scheduling/configurations/{configuration_id}Updates the specified Configuration object. When you make a PUT request, Nylas replaces all data in the nested object with the information included in your request. For more information, see Updating...
DELETE /v3/grants/{grant_id}/scheduling/configurations/{configuration_id}Deletes the specified Configuration object. You can't delete a Configuration that has active sessions.