Only show these results:
Private Beta

Automatic Meeting Details

Using one of our integrations, you can automatically add meeting details to events. Events will use the account or organization defaults.

Zoom

With our Zoom integration, you can automatically add Zoom meetings to calendar events.

Prerequisites

Autocreate Zoom Events

To automatically add Zoom to events, you can add autocreate to the conferencing object and set the provider to Zoom Meeting. Zoom will automatically add a URL to event invitations. If you have Zoom organization settings, those will be in place for the created event.

You can create events with metadata and notifications.

curl --location --request POST 'https:/api.nylas.com/events' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <ACCESS_TOKEN>' \
--data-raw '{
"title": "Birthday Party",
"location": "Roller Rink",
"calendar_id": "egtdopqam5jxky7ifrkwcra55",
"busy": true,
"read_only": false,
"conferencing":{
"provider": "Zoom Meeting",
"autocreate":{
"settings":{}
}
},
"participants": [
{
"name": "Katherine Johnson",
"email": "kat@spacetech.com"
}
],
"description": "Lets celebrate",
"when": {
"start_time": "1627499520",
"end_time": "1630245600"
}
}'

If an event has both autocreate and details, the API will return an error message.

{
"message": "'details' not allowed when auto generating a conference",
"type": "invalid_request_error"
}

Autocreate Zoom Response Example

The Zoom event will not return as part of the 200 response. A 200 OK does not mean the event was created. Use the job_status_id in the response to check event status. Once the job status is successful, the meeting will show in the following places:

  • In the Zoom account as a meeting
  • In the Get event response
  • Returns an event created webhook
 {
"account_id": "7keuifv5667vz4c3cvshe9lsm",
"busy": true,
"calendar_id": "egtdopqam5jxky7ifrkwcra55",
"description": "Lets celebrate",
"ical_uid": null,
"id": "1n9y2zr0uke4of79e4azbukgo",
"job_status_id": "650hufvdr73lk34riqgppwemz",
"location": "Roller Rink",
"message_id": null,
"metadata": {},
"notifications": [
{
"body": "Reminding you about our meeting.",
"subject": "Test Event Notification",
"time_before_event": "600",
"type": "email"
},
{
"message": "Test Event Notfication",
"time_before_event": "60",
"type": "sms"
}
],
"object": "event",
"owner": "Katherine Johnson <kat@spacetech.com>",
"participants": [
{
"comment": null,
"email": "kat@spacetech.com",
"name": "Katherine Johnson",
"phone_number": "+12223456789",
"status": "noreply"
}
],
"read_only": false,
"reminders": null,
"status": "confirmed",
"title": "Third Test Event",
"when": {
"end_time": 1630245600,
"object": "timespan",
"start_time": 1627499520
}
}
{
"account_id": "7keuifv5667vz4c3cvshe9lsm",
"busy": true,
"calendar_id": "egtdopqam5jxky7ifrkwcra55",
"conferencing": {
"details": {
"meeting_code": 11111111111,
"password": null,
"url": "https://us02web.zoom.us/j/11111111111"
},
"provider": "Zoom Meeting"
},
"description": "Lets celebrate",
"ical_uid": null,
"id": "bkdutgzh8gri36tkbp60bnkju",
"location": "Roller Rink",
"message_id": null,
"metadata": {},
"object": "event",
"owner": "Katherine Johnson <kat@spacetech.com>",
"participants": [
{
"comment": null,
"email": "ada@algoprime.com",
"name": "Ada Lovelace",
"phone_number": "+1234567890",
"status": "noreply"
}
],
"read_only": false,
"reminders": null,
"status": "confirmed",
"title": "Lets celebrate",
"when": {
"end_time": 1630245600,
"object": "timespan",
"start_time": 1627499520
}
}

Zoom Settings Object

If you want to add options such a password or mute_upon_entry, use the autocreate.settings object. The object maps to Zoom Create a Meeting object. Nylas doesn't have validation on the autocreate.settings object.

...
"conferencing":{
"provider": "Zoom Meeting",
"autocreate":{
"settings":{
"password": "6789011",
"settings":{
"mute_upon_entry": true
}

}
}
},
...

Google Meet

With just a few lines of code, generate Google Meet links on your events.

Prerequisites

Autocreate Google Meet Events

To automatically add Google Meet to events, you can add autocreate to the conferencing object. Google Meet will automatically add a URL to event invitations. If you have Google Meet organization settings, those will be in place for the created event.

You can create events with metadata and notifications.

curl --location --request POST 'https://api.nylas.com/events' \
--header 'Authorization: Bearer <ACCESS_TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"title": "Birthday Party",
"conferencing": {
"provider": "Google Meet",
"autocreate": {}
},
"calendar_id": "<CALENDAR_ID>",
"status": "confirmed",
"busy": true,
"read_only": true,
"participants": [
{
"name": "Alexander Graham Bell",
"email": "alex@bell.com",
"status": "yes"
}
],
"description": "Come ready to skate",
"when": {
"start_time": 1631732400,
"end_time": 1631736000
},
"location": "Roller Rink"
}'

Autocreate Google Meet Response

The Google Meet event will not return as part of the 200 response. A 200 OK does not mean the event was created. Use the job_status_id in the response to check event status. Once the job status is successful, the meeting will show in the following places:

  • In the Google Calendar as a meeting
  • In the Get event response
  • Returns an event created webhook
{
"account_id": "5tgncdmczat02216u7d6uypyi",
"busy": true,
"calendar_id": "9ev16mzqlwux5vrxai6s2t4uf",
"conferencing": null,
"description": "Come ready to skate",
"ical_uid": null,
"id": "4htaz8m4pww6wah1aakxt0pbk",
"job_status_id": "3r7h2gsvb83pfx236be15dsfd",
"location": "Roller Rink",
"message_id": null,
"object": "event",
"owner": "Katherine Johnson <kat@spacetech.com>",
"participants": [
{
"comment": null,
"email": "ada@algoprime.com",
"name": "Ada Lovelace",
"phone_number": null,
"status": "yes"
}
],
"read_only": false,
"reminders": null,
"status": "confirmed",
"title": "Birthday Party",
"visibility": null,
"when": {
"end_time": 1631736000,
"object": "timespan",
"start_time": 1631732400
}
}
{
"account_id": "5tgncdmczat02216u7d6uypyi",
"busy": true,
"calendar_id": "9ev16mzqlwux5vrxai6s2t4uf",
"conferencing": {
"details": {
"phone": [
"+1-123-456-7890"
],
"pin": "372386938",
"url": "https://meet.google.com/aaa-aaa-aaa"
},
"provider": "Google Meet"
},
"description": "Come ready to skate",
"ical_uid": "k5rj9fgr7vdog72og8cvq6sjfo@google.com",
"id": "4htaz8m4pww6wah1aakxt0pbk",
"location": "Roller Rink",
"message_id": null,
"object": "event",
"owner": "Katherine Johnson <kat@spacetech.com>",
"participants": [
{
"comment": null,
"email": "ada@algoprime.com",
"name": "Ada Lovelace",
"phone_number": null,
"status": "yes"
}
],
"read_only": false,
"reminders": null,
"status": "confirmed",
"title": "Birthday Party",
"visibility": null,
"when": {
"end_time": 1631736000,
"object": "timespan",
"start_time": 1631732400
}
}

What's Next?