Microsoft-graph-docs: originalStart missing

Created on 10 Apr 2019  Â·  9Comments  Â·  Source: microsoftgraph/microsoft-graph-docs

When I get events either through /events or /calendarView I never get the originalStart property. If I use $select=originalStart I get the property but the value is always null.


Document Details

⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

Most helpful comment

Any updates on this one? The following still returns "originalStart": null when fetching events:

GET /users/{id|userPrincipalName}/events?$select=originalStart
/users/{id|userPrincipalName}/calendarView?startDateTime={dateTime}&endDateTime={dateTime}&$select=originalStart

All 9 comments

I am having this same issue. Is this intended or will it be fixed? I do get the originalStart with the list events function, though.

https://github.com/microsoftgraph/microsoft-graph-docs/issues/5524

I am experiencing this issue as well. I do not receive the originalStart for events when using the following endpoint:

https://graph.microsoft.com/v1.0/users/{id | userPrincipalName}/calendars/{id}/events

This is a very important information, required to handle exceptions correctly. Please add it!

Example: Occurrence 1 moved to the time of the previously deleted occurrence 2.

In this case it's not possible anymore to differ occurrence 1 from occurrence 2. Which one has been deleted? This is only possible by comparing the original start times.

You need to add that specific field to the select. If you are using the graph sdk, that will look like this:
var queryOptions = new List
{
new QueryOption("select", "id,start,end,subject,body,location,type,attendees,categories,recurrence,iCalUId,IsCancelled,IsOrganizer,organizer,originalStart")};

Note, once you add the select query option, only the fields in the select will be returned. As a result, you will need to add all the fields you need returned, not just the originalStart field.

Any updates on this one? The following still returns "originalStart": null when fetching events:

GET /users/{id|userPrincipalName}/events?$select=originalStart
/users/{id|userPrincipalName}/calendarView?startDateTime={dateTime}&endDateTime={dateTime}&$select=originalStart

new QueryOption("select", "id,start,end,subject,body,location,type,attendees,categories,recurrence,iCalUId,IsCancelled,IsOrganizer,organizer,originalStart")};

The issue is that even when the originalStart field is selected, the value is always null.

I have only ever used originalStart when dealing with recurring event instances. The field is populated when an instance's StartDate has changed. I have never tried to use originalStart outside of recurring events. Is it possible the same logic would apply? That the field will be null unless the StartDate has changed?

The issue described here is with recurring events.

If you get a list of events from a calendar view for example, it will include events of all types (single instances, series masters, occurrences and exceptions).

The exceptions should have a value for originalStart but they do not, it is always null.

The only way to retrieve the field is to make another separate call to get the individual event details for each of the exceptions.

Thanks for the clarification! I just checked my code and the only time I am using originalStart (and getting a value) is when I am getting a particular event's instances (using the graph SDK):

var instanceException = (await graphClient.Me.Events[ExternalID].Instances.Request(queryOptions).GetAsync().ConfigureAwait(false)).Where(i => i.Type == EventType.Exception).FirstOrDefault();

Was this page helpful?
0 / 5 - 0 ratings

Related issues

nilleb picture nilleb  Â·  4Comments

mlafleur picture mlafleur  Â·  3Comments

RobinBreman picture RobinBreman  Â·  4Comments

fredericklin picture fredericklin  Â·  3Comments

cconrado picture cconrado  Â·  4Comments