call: changeScreenSharingRole

Namespace: microsoft.graph

Allow applications to share screen content with the participants of a group call.

Note: This is only supported for group calls that use App-Hosted Media.


One of the following permissions is required to call this API. To learn more, including how to choose permissions, see Permissions.

Permission type Permissions (from least to most privileged)
Delegated (work or school account) Not Supported
Delegated (personal Microsoft account) Not Supported
Application Calls.AccessMedia.All

HTTP request

POST /communications/calls/{id}/changeScreenSharingRole

Request headers

Name Description
Authorization Bearer {token}. Required.
Content-type application/json. Required.

Request body

In the request body, provide a JSON object with the following parameters.

Parameter Type Description
role String Possible values are: 'viewer', 'sharer'


If successful, this method returns a 202 Accepted response code, and all participants will receive a roster update.



The following example shows the request.

Content-Type: application/json
Content-Length: 24

  "role": "viewer"

Here is an example of the response.

HTTP/1.1 202 Accepted
Notification - roster updated with participant sending screen sharing video

Note the direction: sendOnly property on the media stream.

Content-Type: application/json
  "@odata.type": "#microsoft.graph.commsNotifications",
  "value": [
      "@odata.type": "#microsoft.graph.commsNotification",
      "changeType": "updated",
      "resourceUrl": "/communications/calls/57dab8b1-894c-409a-b240-bd8beae78896/participants",
      "resourceData": [
          "@odata.type": "#microsoft.graph.participant",
          "id": "2765eb15-01f8-47c6-b12b-c32111a4a86f",
          "info": {
            "identity": {
              "user": {
                "displayName": "Bob",
                "id": "5810cede-f3cc-42eb-b2c1-e9bd5d53ec96"
            "region": "westus",
            "languageId": "en-US"
          "mediaStreams": [
              "mediaType": "videoBasedScreenSharing",
              "label": "applicationsharing-video",
              "sourceId": "1",
              "direction": "sendOnly"
          "isMuted": false,
          "isInLobby": false