ESC
Type to search...

Presence.Read.All

Export JSON
Export CSV
Copy URL
Print
ApplicationDelegated Read All Resources

Allows the app to read presence information of all users in the directory without a signed-in user. Presence information includes activity, availability, status note, calendar out-of-office message, timezone and location.

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

Permission Details

Application Permission

Read presence information for all users

Allows the app to read presence information of all users in the directory without a signed-in user. Presence information includes activity, availability, status note, calendar out-of-office message, timezone and location.

Delegated Permission User consent allowed

Read presence information of all users in your organization

Allows the app to read presence information of all users in the directory on behalf of the signed-in user. Presence information includes activity, availability, status note, calendar out-of-office message, timezone and location.

Properties

Microsoft Graph v1.0 exact-category-docs

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

Property Type Description
activity StringNullable The supplemental information to a user's availability. Possible values are available, away, beRightBack, busy, doNotDisturb, offline, outOfOffice, presenceUnknown.
availability StringNullable The base presence information for a user. Possible values are available, away, beRightBack, busy, doNotDisturb, focusing, inACall, inAMeeting, offline, presenting, presenceUnknown.
id String The unique identifier for the user.
outOfOfficeSettings outOfOfficeSettings The out of office settings for a user.
sequenceNumber StringRead-onlyNullable The lexicographically sortable String stamp that represents the version of a presence object.
statusMessage presenceStatusMessage The presence status message of a user.
workLocation userWorkLocation Represents the user’s aggregated work location state.

JSON Representation

Microsoft Graph v1.0 exact-category-docs

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

JSON representation
{
  "activity": "String",
  "availability": "String",
  "id": "String (identifier)",
  "outOfOfficeSettings": {
    "@odata.type": "#microsoft.graph.outOfOfficeSettings"
  },
  "sequenceNumber": "String",
  "statusMessage": {
    "@odata.type": "#microsoft.graph.presenceStatusMessage"
  },
  "workLocation": {
    "@odata.type": "microsoft.graph.userWorkLocation"
  }
}

Relationships

Microsoft Graph v1.0 exact-category

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

Relationship Type Description
statusMessage presenceStatusMessage Presence status message of a user.

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/presences/{id}
GET /me/presence
GET /users/{id}/presence
POST /communications/getPresencesByUserId
Exact Microsoft Learn match

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

Methods
GET /communications/presences/{id}
GET /me/presence
GET /users/{id}/presence
POST /communications/getPresencesByUserId
Exact Microsoft Learn PowerShell match

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

Commands
Get-MgCommunicationPresence /users/{id}/presence
Get presence
Get-MgCommunicationPresenceByUserId /communications/getPresencesByUserId
cloudCommunications: getPresencesByUserId
Get-MgUserPresence /users/{id}/presence
Get presence
Exact Microsoft Learn PowerShell match

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

Commands
Get-MgBetaCommunicationPresence /users/{id}/presence
Get presence
Get-MgBetaCommunicationPresenceByUserId /communications/getPresencesByUserId
cloudCommunications: getPresencesByUserId
Get-MgBetaUserPresence /users/{id}/presence
Get presence

Code Examples

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

// Dependencies
using Microsoft.Graph.Communications.GetPresencesByUserId;

var requestBody = new GetPresencesByUserIdPostRequestBody
{
	Ids = new List<string>
	{
		"fa8bf3dc-eca7-46b7-bad1-db199b62afc3",
		"66825e03-7ef5-42da-9069-724602c31f6b",
	},
};

// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Communications.GetPresencesByUserId.PostAsGetPresencesByUserIdPostResponseAsync(requestBody);
JavaScript
cloudCommunications: getPresencesByUserId
const options = {
	authProvider,
};

const client = Client.init(options);

const presence = {
	ids: ['fa8bf3dc-eca7-46b7-bad1-db199b62afc3', '66825e03-7ef5-42da-9069-724602c31f6b']
};

await client.api('/communications/getPresencesByUserId')
	.post(presence);
PowerShell
cloudCommunications: getPresencesByUserId
Import-Module Microsoft.Graph.CloudCommunications

$params = @{
	ids = @(
	"fa8bf3dc-eca7-46b7-bad1-db199b62afc3"
"66825e03-7ef5-42da-9069-724602c31f6b"
)
}

Get-MgCommunicationPresenceByUserId -BodyParameter $params
Python
cloudCommunications: getPresencesByUserId
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.communications.get_presences_by_user_id.get_presences_by_user_id_post_request_body import GetPresencesByUserIdPostRequestBody
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = GetPresencesByUserIdPostRequestBody(
	ids = [
		"fa8bf3dc-eca7-46b7-bad1-db199b62afc3",
		"66825e03-7ef5-42da-9069-724602c31f6b",
	],
)

result = await graph_client.communications.get_presences_by_user_id.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 or delegated permissions and search for Presence.Read.All

4

Grant Admin Consent

Application permissions always require admin consent.