Changes to reminders, timezones, and photos in REST API
I wanted to update you all on some more breaking changes that we are making to the Outlook REST API beta endpoint. These changes will be widely deployed over the next few weeks.
Reminders for events
The property Reminder
will be removed from the Event entity, and two new properties ReminderMinutesBeforeStart
and IsReminderOn
will be added to the Event entity.
Example:
{
"ReminderMinutesBeforeStart": "15",
"IsReminderOn": "true"
}
A new function ReminderView
will also be added. This will return a list of reminders within the start and end times specified.
Example:
.../api/Beta/me/ReminderView(startDateTime='2015-10-08T16:56:00',endDateTime='2015-10-12T00:56:00')
In addition to this, two new actions Snooze
and Dismiss
will be enabled. These actions can be used to snooze a reminder or dismiss a reminder after it has been fired.
Example:
Snooze:
.../api/Beta/me/Events('Id')/SnoozeReminder
{
"NewReminderTime": {
"DateTime":"2015-10-13T08:30:00",
"TimeZone":"Pacific Standard Time"
}
}
Dismiss:
.../api/Beta/me/Events('ID')/DismissReminder
Timezone
Based on feedback we received on the existing timezone implementation, Start
and End
properties for Event entities will now be a complex type of:
{
DateTime
Timezone
}
Timezone
is mandatory for all create requests. It is also mandatory for update requests where start and end times are changed.
Example:
"Start": {
DateTime: "2015-09-25T16:00:00",
TimeZone: "UTC"
}
Properties StartTimezone
and EndTimezone
will be removed from the Event entity and properties OriginalStartTimezone
and OriginalEndTimezone
will be added to the Event entity. OriginalStartTimezone
and OriginalEndTimezone
are meant to reflect what timezone was set when the event was created or updated.
In addition to this, a new preference header outlook.timezone
will be supported for all GET requests. This header can be used to get the events in a timezone that is different from the one it was created in.
Example:
Prefer: outlook.timezone = "Pacific Standard Time"
Since a new type DateTime
is being introduced, all "times" that are in any event related API will support the new DateTime
format.
Examples:
Sort
.../api/beta/me/Events?$orderby=Start/DateTime
Filter
//With outlook.timezone header as PST, time will be taken as PST
.../api/beta/me/Events?$filter=Start/DateTime eq '2015-09-25T09:00:00'
//With no outlook.timezone header, time will be assumed as UTC
.../api/beta/me/Events?$filter=Start/DateTime eq '2015-09-25T16:00:00'
CalendarView/Instances
.../api/beta/me/CalendarView?startDateTime=2015-09-25T16:00:00&endDateTime=2015-09-25T17:00:20
.../api/beta/me/CalendarView?startDateTime=2015-09-25T16:00:00-08:00&endDateTime=2015-09-25T17:00:20-08:00
Photos
We are renaming the UserPhoto
property on User, GroupPhoto
property on Group and ContactPhoto
property on Contact to just Photo
.
More extensive documentation on the new functionality is coming soon in our API reference documentation page. Please let us know if you have any questions, and visit https://dev.outlook.com for the latest news and updates.
Thanks,
Shreedevi