Only show these results:
private-preview

Omnichannel Event reminders

This feature is a private preview release and should be used with caution. Its features and implementation will likely change before it is generally available.

You can notify participants of events in multiple ways.

  • Gmail, Microsoft, and Google support calendar popups. See our Events API for an example.
  • Nylas can send email and webhook (Slack, Teams, etc.) reminders to participants.
ℹ️ Omnichannel Reminders is available for Core and Plus plans.

Scopes

The email.send Nylas scope required.

Webhook notifications

Webhook notifications can send a payload to any URL. Use webhooks to send notifications to providers such as Slack and Teams.

curl --request POST \
--url https://api.nylas.com/events \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <NYLAS_ACCESS_TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"title": "Lets celebrate",
"location": "Roller Rink",
"calendar_id": "egtdopqam5jxky7ifrkwcra55",
"busy": true,
"read_only": false,
"conferencing": {
"provider": "Zoom Meeting",
"autocreate": {
"settings": {
"settings": {}
}
}
},
"participants": [{
"name": "Katherine Johnson",
"email": "[email protected]"
}
],
"when": {
"start_time": "1627499520",
"end_time": "1630245600"
},
"notifications": [{
"type": "webhook",
"minutes_before_event": "60",
"url": "https://hooks.service.com/services/T01A03EEXDE/B01TBNH532R/HubIZu1zog4oYdFqQ8VUcuiW",
"payload": "{\"text\" : \"Your reminder goes here!\"}"
}]
}'

Email notifications

Message Tracking

Message tracking is not supported for email notifications.

curl --location --request POST 'https://api.nylas.com/events' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <NYLAS_ACCESS_TOKEN>' \
--data-raw '{
"title": "hello Again",
"location": "Roller Rink",
"calendar_id": "egtdopqam5jxky7ifrkwcra55",
"busy": true,
"read_only": false,
"conferencing":{
"provider": "Zoom Meeting",
"autocreate":{
"settings":{
"password": "6789011",
"settings":{
"mute_upon_entry": true
}
}
},
"details": {
"meeting_code": "string",
"password": "string",
"url": "string"
}
},
"participants": [{
"name": "Katherine Johnson",
"email": "[email protected]",
"phone_number": "+12223456789"
}],
"description": "Lets celebrate",
"when": {
"start_time": "1627499520",
"end_time": "1630245600"
},
"notifications": [{
"type": "email",
"minutes_before_event": "600", // in minutes
"subject": "Test Event Notification",
"body": "Reminding you about our meeting." //Accepts HTML
}]
}'

Multiple notifications

This feature is a private preview release and should be used with caution. Its features and implementation will likely change before it is generally available.

You can add multiple notifications with different types for each event. Participants must have an email.

curl --location --request POST 'https://api.nylas.com/events' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <NYLAS_ACCESS_TOKEN>' \
--data-raw '{
"title": "hello Again",
"location": "Roller Rink",
"calendar_id": "egtdopqam5jxky7ifrkwcra55",
"busy": true,
"read_only": false,
"conferencing":{
"provider": "Zoom Meeting",
"autocreate":{
"settings":{
"password": "6789011",
"settings":{
"mute_upon_entry": true
}
}
},
"details": {
"meeting_code": "string",
"password": "string",
"url": "string"
}
},
"participants": [{
"name": "Katherine Johnson",
"email": "[email protected]"
}],
"description": "Lets celebrate",
"when": {
"start_time": "1627499520",
"end_time": "1630245600"
},
"notifications": [
{
"type": "email",
"minutes_before_event": "600", // in minutes
"subject": "Test Event Notification",
"body": "Reminding you about our meeting." //Accepts HTML
},
{
"type": "webhook",
"minutes_before_event": "60",
"url": "https://hooks.service.com/services/T01A03EEXDE/B01TBNH532R/HubIZu1zog4oYdFqQ8VUcuiW",
"payload": "{\"text\" : \"Your reminder goes here!\"}"
}
]
}'

Delete notifications

To remove notifications from an event, send an empty notifications array as a PUT request.

curl --location --request POST 'https://api.nylas.com/events/<EVENT_ID>' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <NYLAS_ACCESS_TOKEN>' \
--data-raw '{
"title": "hello Again",
"location": "Roller Rink",
"calendar_id": "egtdopqam5jxky7ifrkwcra55",
"busy": true,
"read_only": false,
"conferencing":{
"provider": "Zoom Meeting",
"autocreate":{
"settings":{
"password": "6789011",
"settings":{
"mute_upon_entry": true
}
}
},
"details": {
"meeting_code": "string",
"password": "string",
"url": "string"
}
},
"participants": [{
"name": "Katherine Johnson",
"email": "[email protected]"
}],
"description": "Lets celebrate",
"when": {
"start_time": "1627499520",
"end_time": "1630245600"
},
"notifications": []
}'

Notification limitations

  • You can't update events after their end_time.
  • You can't update recurring events to use notifications.
  • Notifications are only sent for the main event.
  • You can only create new reminders up to five minutes before the event starts. Notifications created five minutes before an event starts (or less) might not be sent, and would fail silently.
ℹ️ Custom Event Reminders is available for Entry, Core, and Plus plans.

Video walkthrough

Prefer video? You can watch our LiveStream Coding with Nylas.

More resources