ESC
Type to search...

Calls.AccessMedia.All

Export JSON
Export CSV
Copy URL
Print
Application Read All Resources

Allows the app to get direct access to media streams in a call, without a signed-in user.

Permission data: April 6, 2026 at 4:06 AM UTC
Delegated Access App-Only Access

Permission Details

Application Permission

Access media streams in a call as an app

Allows the app to get direct access to media streams in a call, without a signed-in user.

Properties

Microsoft Graph v1.0 mapped-docs

Properties is shown from stable Microsoft Graph v1.0 metadata.

Property Type Description
callbackUri String The callback URL on which callbacks are delivered. Must be an HTTPS URL.
callChainId StringNullable A unique identifier for all the participant calls in a conference or a unique identifier for two participant calls in a P2P call. This identifier must be copied over from Microsoft.Graph.Call.CallChainId.
callOptions outgoingCallOptions Contains the optional features for the call.
callRoutes callRoute collection The routing information on how the call was retargeted. Read-only.
chatInfo chatInfo The chat information. Required information for joining a meeting.
direction callDirection The direction of the call. The possible values are incoming or outgoing. Read-only.
id String The unique identifier for the call. Read-only.
incomingContext incomingContext Call context associated with an incoming call.
mediaConfig appHostedMediaConfig or serviceHostedMediaConfig The media configuration. Required.
mediaState callMediaState Read-only. The call media state.
meetingInfo organizerMeetingInfo, tokenMeetingInfo, or joinMeetingIdMeetingInfo The meeting information. Required information for meeting scenarios.
myParticipantId StringNullable Read-only.
requestedModalities modality collection The list of requested modalities. The possible values are: unknown, audio, video, videoBasedScreenSharing, data.
resultInfo resultInfo The result information. For example, the result can hold termination reason. Read-only.
source participantInfo The originator of the call.

Showing 15 of 25 properties.

JSON Representation

Microsoft Graph v1.0 mapped-docs

JSON representation is shown from stable Microsoft Graph v1.0 metadata.

JSON representation
{
  "callbackUri": "String",
  "callChainId": "String",
  "callOptions": {"@odata.type": "#microsoft.graph.outgoingCallOptions"},
  "chatInfo": {"@odata.type": "#microsoft.graph.chatInfo"},
  "contentSharingSessions": [{ "@odata.type": "microsoft.graph.contentSharingSession" }],
  "direction": "String",
  "id": "String (identifier)",
  "mediaConfig": {"@odata.type": "#microsoft.graph.mediaConfig"},
  "mediaState": {"@odata.type": "#microsoft.graph.callMediaState"},
  "meetingInfo": {"@odata.type": "#microsoft.graph.meetingInfo"},
  "myParticipantId": "String",
  "requestedModalities": ["String"],
  "resultInfo": {"@odata.type": "#microsoft.graph.resultInfo"},
  "source": {"@odata.type": "#microsoft.graph.participantInfo"},
  "state": "String",
  "subject": "String",
  "targets": [{"@odata.type": "#microsoft.graph.invitationParticipantInfo"}],
  "toneInfo": {"@odata.type": "#microsoft.graph.toneInfo"},
  "transcription": {"@odata.type": "#microsoft.graph.callTranscriptionInfo"},
}

Relationships

Microsoft Graph v1.0 mapped-docs

Relationships is shown from stable Microsoft Graph v1.0 metadata.

Relationship Type Description
contentSharingSessions contentSharingSession collection Read-only. Nullable.
operations commsOperation collection Read-only. Nullable.
participants participant collection Read-only. Nullable.
audioRoutingGroups audioRoutingGroup collection Related audioRoutingGroups data exposed by this resource.
callRoutes callRoute collection The routing information on how the call was retargeted. Read-only.
requestedModalities array The list of requested modalities. The possible values are: unknown, audio, video, videoBasedScreenSharing, data.
targets invitationParticipantInfo collection The targets of the call. Required information for creating peer to peer call.
activeModalities array The list of active modalities. The possible values are: unknown, audio, video, videoBasedScreenSharing, data. Read-only.
routingPolicies array This property is applicable for peer to peer calls only. The possible values are: none, noMissedCall, disableForwardingExceptPhone, disableForwarding, preferSkypeForBusiness, unknownFutureValue.

Graph Methods

Delegated access App-only access
Exact Microsoft Learn match

Microsoft Graph v1.0 endpoints are mapped directly from refreshed Microsoft Learn permissions tables.

Methods
GET /communications/calls/{id}
GET /communications/calls/{id}/participants
POST /app/calls/{id}/sendDtmfTones
POST /communications/calls/{id}/cancelMediaProcessing
POST /communications/calls/{id}/changeScreenSharingRole
POST /communications/calls/{id}/keepAlive
POST /communications/calls/{id}/mute
POST /communications/calls/{id}/playPrompt
POST /communications/calls/{id}/recordResponse
POST /communications/calls/{id}/sendDtmfTones
POST /communications/calls/{id}/subscribeToTone
POST /communications/calls/{id}/unmute
POST /communications/calls/{id}/updateRecordingStatus
POST /communications/calls/logTeleconferenceDeviceQuality
DELETE /communications/calls/{id}
Exact Microsoft Learn match

Microsoft Graph beta endpoints are mapped directly from refreshed Microsoft Learn permissions tables.

Methods
GET /app/calls/{id}
GET /app/calls/{id}/participants
GET /communications/calls/{id}
GET /communications/calls/{id}/participants
POST /app/calls/{id}/cancelMediaProcessing
POST /app/calls/{id}/changeScreenSharingRole
POST /app/calls/{id}/mute
POST /app/calls/{id}/playPrompt
POST /app/calls/{id}/recordResponse
POST /app/calls/{id}/sendDtmfTones
POST /app/calls/{id}/subscribeToTone
POST /app/calls/{id}/unmute
POST /app/calls/{id}/updateRecordingStatus
POST /communications/calls/{id}/cancelMediaProcessing
POST /communications/calls/{id}/changeScreenSharingRole
POST /communications/calls/{id}/keepAlive
POST /communications/calls/{id}/mute
POST /communications/calls/{id}/playPrompt
POST /communications/calls/{id}/recordResponse
POST /communications/calls/{id}/sendDtmfTones
POST /communications/calls/{id}/subscribeToTone
POST /communications/calls/{id}/unmute
POST /communications/calls/{id}/updateRecordingStatus
POST /communications/calls/logTeleconferenceDeviceQuality
DELETE /app/calls/{id}
DELETE /communications/calls/{id}
Exact Microsoft Learn PowerShell match

Microsoft Graph PowerShell v1.0 commands are mapped directly from refreshed Microsoft Learn PowerShell snippets.

Commands
Get-MgCommunicationCall /communications/calls/{id}
Get call
Get-MgCommunicationCallParticipant /communications/calls/{id}/participants
List participants
Invoke-MgKeepCommunicationCallAlive /communications/calls/{id}/keepAlive
call: keepAlive
Invoke-MgMuteCommunicationCall /communications/calls/{id}/mute
call: mute
Invoke-MgPlayCommunicationCallPrompt /communications/calls/{id}/playPrompt
call: playPrompt
Invoke-MgRecordCommunicationCallResponse /communications/calls/{id}/recordResponse
call: recordResponse
Invoke-MgSubscribeCommunicationCallToTone /communications/calls/{id}/subscribeToTone
call: subscribeToTone
Invoke-MgUnmuteCommunicationCall /communications/calls/{id}/unmute
call: unmute
Remove-MgCommunicationCall /communications/calls/{id}
Delete call
Update-MgCommunicationCallRecordingStatus /communications/calls/{id}/updateRecordingStatus
call: updateRecordingStatus
Exact Microsoft Learn PowerShell match

Microsoft Graph PowerShell beta commands are mapped directly from refreshed Microsoft Learn PowerShell snippets.

Commands
Get-MgBetaCommunicationCall /app/calls/{id}
Get call
Get-MgBetaCommunicationCallParticipant /app/calls/{id}/participants
List participants
Invoke-MgBetaKeepCommunicationCallAlive /communications/calls/{id}/keepAlive
call: keepAlive
Invoke-MgBetaMuteCommunicationCall /app/calls/{id}/mute
call: mute
Invoke-MgBetaPlayCommunicationCallPrompt /app/calls/{id}/playPrompt
call: playPrompt
Invoke-MgBetaRecordCommunicationCallResponse /app/calls/{id}/recordResponse
call: recordResponse
Invoke-MgBetaSubscribeCommunicationCallToTone /app/calls/{id}/subscribeToTone
call: subscribeToTone
Invoke-MgBetaUnmuteCommunicationCall /app/calls/{id}/unmute
call: unmute
Remove-MgBetaCommunicationCall /app/calls/{id}
Delete call
Update-MgBetaCommunicationCallRecordingStatus /app/calls/{id}/updateRecordingStatus
call: updateRecordingStatus

Code Examples

C# / .NET SDK
call: changeScreenSharingRole
// Code snippets are only available for the latest version. Current version is 5.x

// Dependencies
using Microsoft.Graph.Communications.Calls.Item.ChangeScreenSharingRole;
using Microsoft.Graph.Models;

var requestBody = new ChangeScreenSharingRolePostRequestBody
{
	Role = ScreenSharingRole.Viewer,
};

// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Communications.Calls["{call-id}"].ChangeScreenSharingRole.PostAsync(requestBody);
JavaScript
call: changeScreenSharingRole
const options = {
	authProvider,
};

const client = Client.init(options);

const changeScreenSharingRole = {
  role: 'viewer'
};

await client.api('/communications/calls/{id}/changeScreenSharingRole')
	.post(changeScreenSharingRole);
PowerShell
call: changeScreenSharingRole
Import-Module Microsoft.Graph.CloudCommunications

$params = @{
	role = "viewer"
}

Rename-MgCommunicationCallScreenSharingRole -CallId $callId -BodyParameter $params
Python
call: changeScreenSharingRole
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.communications.calls.item.change_screen_sharing_role.change_screen_sharing_role_post_request_body import ChangeScreenSharingRolePostRequestBody
from msgraph.generated.models.screen_sharing_role import ScreenSharingRole
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = ChangeScreenSharingRolePostRequestBody(
	role = ScreenSharingRole.Viewer,
)

await graph_client.communications.calls.by_call_id('call-id').change_screen_sharing_role.post(request_body)

App Registration

1

Navigate to Azure Portal

Go to App registrations in Microsoft Entra admin center

2

Add API Permission

Select your app → API permissions → Add a permission → Microsoft Graph

3

Select Permission Type

Choose Application permissions and search for Calls.AccessMedia.All

4

Grant Admin Consent

Application permissions always require admin consent.