# Adding conferencing to bookings

Source: https://developer.nylas.com/docs/v3/scheduler/add-conferencing/

When organizers select a conferencing option in the Scheduler Editor, Scheduler can create conferencing details for new events. Nylas can create conferencing details for Google Meet, Microsoft Teams, and Zoom.

> **Info:** 
> **You must have an active Microsoft 365 subscription to create conferencing details for Microsoft Teams**.

By default, the Scheduler Editor shows the organizer's authenticated provider (either Google Meet or Microsoft Teams) as a conferencing option. If you set up Zoom conferencing, the Scheduler Editor displays Zoom as an option as well.

## Setting up automatic conference creation

Before you can create conferencing details with Scheduler, you need to have a provider auth app, and a [connector](/docs/reference/api/connectors-integrations/) for your provider with at least the following scopes:

- **Google**: No specific scopes required
- **Microsoft**: `Calendars.ReadWrite`
- **Zoom**: `meeting:write:meeting`, `meeting:update:meeting`, `meeting:delete:meeting`, and `user:read:user`

If you already have a Google of Microsoft connector, you can use it to connect to Google Meet and Microsoft Teams, respectively.

For more information about creating provider auth apps and connectors, see our [Provider guides](/docs/provider-guides/).

## Create Google Meet or Microsoft Teams conferences

> **Info:** 
> **Currently, Scheduler supports same-provider conference creation for Google Meet and Microsoft Teams**. For example, if an organizer authenticates with Nylas using their Google account, they can't create Microsoft Teams meetings.

Make a [Create Configuration](/docs/reference/api/configurations/post-configurations/) or [Update Configuration](/docs/reference/api/configurations/put-configurations-id/) request that includes the `conferencing` object. Specify the `provider`, and include an empty `autocreate` object.

```bash {8-11}
curl --request PUT \
  --url "https://api.us.nylas.com/v3/grants/<NYLAS_GRANT_ID>/scheduling/configurations/<SCHEDULER_CONFIGURATION_ID>" \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer <NYLAS_API_KEY>' \
  --header 'Content-Type: application/json' \
  --data '{
    "event_booking": {
      "conferencing": {
        "provider": "Google Meet",
        "autocreate": {}
      }
    }
  }'
```

## Create Zoom conferences

You can add conferencing with Zoom to Scheduler either [using the Scheduler API](#add-zoom-conferencing-using-scheduler-api) or [modifying the Scheduler Editor Component](#add-zoom-conferencing-using-scheduler-editor-component).

### Add Zoom conferencing using Scheduler API

Make a [Create Configuration](/docs/reference/api/configurations/post-configurations/) or [Update Configuration](/docs/reference/api/configurations/put-configurations-id/) request that includes the `conferencing` object. Set the `provider` to `Zoom` and set `autocreate.conf_grant_id` to the ID of the grant you [authenticated with Zoom](/docs/provider-guides/zoom-meetings/#authenticate-an-existing-user-with-zoom).

```bash {8-12}
curl --request PUT \
  --url "https://api.us.nylas.com/v3/grants/<NYLAS_GRANT_ID>/scheduling/configurations/<SCHEDULER_CONFIGURATION_ID>" \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer <NYLAS_API_KEY>' \
  --header 'Content-Type: application/json' \
  --data '{
    "event_booking": {
      "conferencing": {
        "provider": "Zoom Meeting",
        "autocreate": {
          "conf_grant_id": "<NYLAS_GRANT_ID>"
        }
      }
    }
  }'
```

You can customize settings for your Zoom meetings by including the `conf_settings` object in your configuration request. For available settings and a code example, see [Customize Zoom Meetings](/docs/v3/calendar/add-conferencing/#customize-zoom-meetings).

### Add Zoom conferencing using Scheduler Editor Component

To add Zoom conferencing to Scheduler using the Scheduler Editor Component, include the `conferenceProviders` object, and set the `zoom` property to the ID of the grant you [authenticated with Zoom](/docs/provider-guides/zoom-meetings/#authenticate-an-existing-user-with-zoom).

```tsx
<NylasSchedulerEditor
  conferenceProviders = {
    'zoom': '<NYLAS_GRANT_ID>'
  }
/>
```

For more details on conferencing with the Calendar API directly, see [Adding conferencing to events](/docs/v3/calendar/add-conferencing/).