September 13th, 2019

Breaking changes: Calls and online meetings API updates in Microsoft Graph beta

We’re announcing several changes to the calls and online meetings APIs in Microsoft Graph beta, including a few breaking changes. Changes might affect existing applications that use the /beta calls and online meetings APIs. We expect the breaking changes to be fully deployed by the middle of September 2019.

API updates: adding /communications support for calls and online meetings

We were supporting /app/calls & /app/onlinemeetings in beta. To make the API naming more clear and specific, we are going to add new APIs: /communications/calls & /communications/onlinemeetings. The previous APIs, /app/calls and /app/onlinemeetings are still supported in beta for backward compatibility.

 

API updates: adding /user/onlinemeetings

We currently support creating online meetings with app token only. Now, we will support creating online meetings with both user token and app token.

Changes to entity types

We’re removing two unused properties from the commsOperation entity type: createdDateTime and lastActionDateTime.

We’re adding a new property isBroadcast to the onlineMeeting entity type, and removing the meetingType property.

Property Type Description
isBroadcast Boolean Is the meeting a broadcast meeting or not.

This propertmeetingType is an enum we used to support. Because there are only two types of meetings – broadcast and non-broadcast – you can use the isBroadcast flag instead of meetingType.

Changes to complex type

The resource property of the commsNotification complex type will be renamed to resourceUrl.

In order to support both the /app and /communicationspaths, we need to return two resource paths, one with /app and one with /communications. In the future, when our APIs are in the Microsoft Graph v1.0 endpoint, we will support only /communications. At the moment, the path for the resource property will be /app, and the path for the new resourceUrl property will be /commmunications.

In the resultInfo complex type, we’re renaming subCode to subcode, and changing the code and subcode properties from type string to type int.

Changes to enums

We’re adding a new value sameEnterpriseAndFederatedto the accessLevel enum type.

<EnumTypeName="accessLevel">
  <MemberName="everyone"Value="0"/>
  <MemberName="invited"Value="1"/>
  <MemberName="locked"Value="2"/>
  <MemberName="sameEnterprise"Value="3"/>
  <MemberName="sameEnterpriseAndFederated"Value="4"/>
</EnumType>

We updated the routingPolicy enum type. For backward compatibility, we need to keep `preferSfb` with Value=4. preferSfb is not in the beta, but is in the SDK.

New routingPolicy values

<EnumTypeName="routingPolicy">
  <MemberName="none"Value="0"/>
  <MemberName="noMissedCall"Value="1"/>
  <MemberName="disableForwardingExceptPhone"Value="2"/>
  <MemberName="disableForwarding"Value="3"/>
  <MemberName="preferSkypeForBusiness"Value="5"/>
  <MemberName="unknownFutureValue"Value="6"/>
</EnumType>