Reputation: 49874
When I use this API to get events
GET https://graph.microsoft.com/v1.0/me/calendarview?startdatetime=2018-04-11T00:00:00.000Z&enddatetime=2018-04-18T00:00:00.000Z
If it is a Skype meeting, there will be a onlineMeetingUrl
field and have the meeting url.
However, if it is a Microsoft Teams meeting, onlineMeetingUrl
is null. Is there another special field for the meeting url? Thanks
Below is a Microsoft Teams meeting:
{
"@odata.etag": "W/\"oCWUK/b/Ok2lJzxdSR2E9QABXMy2tg==\"",
"id": "AQMkADAwATM0MDAAMS1hZjgyLTczYjAtMDACLTAwCgBGAAADgXLIICAAoo9AoyFmP0_4_YQHAKAllCv2-zpNpSc8XUkdhPUAAAIBDQAAAKAllCv2-zpNpSc8XUkdhPUAAVypLdQAAAA=",
"createdDateTime": "2018-04-11T02:58:26.9190336Z",
"lastModifiedDateTime": "2018-04-11T02:58:26.9971595Z",
"changeKey": "oCWUK/b/Ok2lJzxdSR2E9QABXMy2tg==",
"categories": [],
"originalStartTimeZone": "Pacific Standard Time",
"originalEndTimeZone": "Pacific Standard Time",
"iCalUId": "040000008200E00074C5B7101A82E00800000000F1F424ED40D1D301000000000000000010000000F51FB6A3836CAB4985F44D2D45E3AC0F",
"reminderMinutesBeforeStart": 15,
"isReminderOn": true,
"hasAttachments": false,
"subject": "Hi",
"bodyPreview": "Hello",
"importance": "normal",
"sensitivity": "normal",
"isAllDay": false,
"isCancelled": false,
"isOrganizer": false,
"responseRequested": true,
"seriesMasterId": null,
"showAs": "tentative",
"type": "singleInstance",
"webLink": "https://outlook.live.com/owa/?itemid=AQMkADAwATM0MDAAMS1hZjgyLTczYjAtMDACLTAwCgBGAAADgXLIICAAoo9AoyFmP0%2B4%2BYQHAKAllCv2%2FzpNpSc8XUkdhPUAAAIBDQAAAKAllCv2%2FzpNpSc8XUkdhPUAAVypLdQAAAA%3D&exvsurl=1&path=/calendar/item",
"onlineMeetingUrl": null,
"responseStatus": {
"response": "notResponded",
"time": "0001-01-01T00:00:00Z"
},
"body": {
"contentType": "html",
"content": "Hello"
},
"start": {
"dateTime": "2018-04-12T03:00:00.0000000",
"timeZone": "UTC"
},
"end": {
"dateTime": "2018-04-12T03:30:00.0000000",
"timeZone": "UTC"
},
"location": {
"displayName": "Here",
"locationType": "default",
"uniqueId": "Here",
"uniqueIdType": "private"
},
"locations": [
{
"displayName": "Here",
"locationType": "default",
"uniqueId": "Here",
"uniqueIdType": "private"
}
],
"recurrence": null,
"attendees": [
{
"type": "required",
"status": {
"response": "none",
"time": "0001-01-01T00:00:00Z"
},
"emailAddress": {
"name": "Jack",
"address": "[email protected]"
}
},
{
"type": "required",
"status": {
"response": "none",
"time": "0001-01-01T00:00:00Z"
},
"emailAddress": {
"name": "Rose",
"address": "[email protected]"
}
}
],
"organizer": {
"emailAddress": {
"name": "Jack",
"address": "[email protected]"
}
}
}
Upvotes: 1
Views: 1419
Reputation: 3581
We are working with the Microsoft Graph team on this, both to filter on online meetings, and to distinguish between Teams and Skype for Business meetings (as you have discovered, they use different properties).
I don't know the exact schedule, but you should see this in the beta endpoint of Microsoft Graph in the next few months.
Update: there is an undocumented way to get to it in the meantime, before it's officially exposed:
https://graph.microsoft.com/v1.0/me/events?$expand=singleValueExtendedProperties($filter=id eq 'String {00020329-0000-0000-C000-000000000046} Name SkypeTeamsMeetingUrl')
Upvotes: 1