Skip to content
Skip to main content

Quickstart: Scheduler

Nylas Scheduler gives your users embeddable scheduling pages that handle availability, booking, and calendar sync across Google, Microsoft, and Exchange — without you building any of that logic.

This quickstart walks you through embedding the Scheduler components in a web app and creating your first scheduling page.

The complete code for this quickstart is on GitHub: Web component (HTML) or React.

A sample web app that demonstrates a Scheduling Page and the Scheduler Editor

You need:

  • Node.js v18+ — run node -v to check your version.
  • A Nylas application with a client ID — if you haven’t set one up yet, follow the CLI setup or Dashboard setup. Your client ID is on the Dashboard Overview page.

Create a new local project. There are two paths: Web components (HTML) or React. Pick one and follow it through the rest of the guide.

Register a callback URI so Nylas can redirect users after authentication. Since we’re running locally, the URI uses localhost.

  1. In your Sandbox application, click Hosted Authentication in the left navigation, and click Callback URIs.
  2. Click Add a callback URI, and enter your application’s callback URI.
  3. Select the JavaScript platform.
  4. For URL, enter http://localhost:<PORT>/scheduler-editor.
  5. For Origin, enter http://localhost:<PORT>.
  6. Click Add callback URI.
Hosted authentication screen showing the Callback URIs tab, and a freshly added entry for a localhost callback URI.

The URL endpoints can be anything you want. However, they must match the callback URI and port in your application when you configure the Scheduler Editor Component.

Include the Scheduler Editor and Scheduling components in your app. The files you need to update depend on your framework:

FrameworkUI ComponentFiles
HTML/Vanilla JSScheduler Editorscheduler-editor.html
Schedulingindex.html
ReactScheduler EditorApp.tsx, index.css
SchedulingApp.tsx, App.css

See the Scheduler UI component reference for all available options and data properties.

Run a local server from your project root:

After you run the command, open your browser to http://localhost:<PORT>/scheduler-editor to see your Scheduler Editor.

Open http://localhost:<PORT>/scheduler-editor in your browser. Log in with your email provider, and the editor loads.

A screenshot of the Scheduler Editor login page

Click Create new to set up your first scheduling page.

A screenshot of the Scheduler Editor listing Scheduling Pages

Enter a title, duration, and description. Set availability under Availability in the left nav, then click Create.

A screenshot of the Scheduler Editor creating the Scheduling Page

The editor returns to the manager view showing all your scheduling pages.

A screenshot of the Scheduler Editor Preview

Click Preview from the manager view, or visit http://localhost:<PORT>/?config_id=<CONFIGURATION_ID> directly. This is the page your users’ invitees will see when booking time.

A screen showing the Nylas scheduling component