Allows the app to read and write data in your organization's directory, such as users, and groups, without a signed-in user. Does not allow user or group deletion.
In short
Directory.ReadWrite.All is available as both an application permission and a delegated permission in the Microsoft Graph API, grouped under the Directory category. Allows the app to read and write data in your organization's directory, such as users, and groups, without a signed-in user. Does not allow user or group deletion. It grants read and write access to resources. Application permissions always require admin consent.
Permission data: October 3, 2026 at 3:19 AM UTC
Delegated Access
App-Only Access
Permission Details
Application Permission
Read and write directory data
Allows the app to read and write data in your organization's directory, such as users, and groups, without a signed-in user. Does not allow user or group deletion.
Delegated Permission
Admin consent required
Read and write directory data
Allows the app to read and write data in your organization's directory, such as users, and groups. It does not allow the app to delete users or groups, or reset user passwords.
User sees: Allows the app to read and write data in your organization's directory, such as other users, groups. It does not allow the app to delete users or groups, or reset user passwords.
Properties
Microsoft Graph v1.0exact-category-docs
Properties is shown from stable Microsoft Graph v1.0 metadata.
Property
Type
Description
id
String
A unique identifier for the object; for example, 12345678-9abc-def0-1234-56789abcde. Key. Not nullable. Read-only. Inherited from entity.
administrativeUnits
administrativeUnit collection
Conceptual container for user and group directory objects.
attributeSets
attributeSet collection
Group of related custom security attribute definitions.
customSecurityAttributeDefinitions
customSecurityAttributeDefinition collection
Schema of a custom security attributes (key-value pairs).
deletedItems
directoryObject collection
Recently deleted items. Read-only. Nullable.
deviceLocalCredentials
deviceLocalCredentialInfo collection
The credentials of the device's local administrator account backed up to Microsoft Entra ID.
federationConfigurations
identityProviderBase collection
Configure domain federation with organizations whose identity provider (IdP) supports either the SAML or WS-Fed protocol.
onPremisesSynchronization
onPremisesDirectorySynchronization collection
A container for on-premises directory synchronization functionalities that are available for the organization.
publicKeyInfrastructure
object
The collection of public key infrastructure instances for the certificate-based authentication feature for users in a Microsoft Entra tenant.
recovery
object
remoteTenantGroups
remoteTenantGroup collection
Collection of groups in remote Microsoft Entra tenants that are available in the directory.
subscriptions
companySubscription collection
List of commercial subscriptions that an organization acquired.
tenantGovernance
object
JSON Representation
Microsoft Graph v1.0exact-category-docs
JSON representation is shown from stable Microsoft Graph v1.0 metadata.
JSON representation
{
"@odata.type": "#microsoft.graph.directory"
}
Relationships
Microsoft Graph v1.0exact-category-docs
Relationships is shown from stable Microsoft Graph v1.0 metadata.
Relationship
Type
Description
administrativeUnits
administrativeUnit collection
Conceptual container for user and group directory objects.
attributeSets
attributeSet collection
Group of related custom security attribute definitions.
customSecurityAttributeDefinitions
customSecurityAttributeDefinition collection
Schema of a custom security attributes (key-value pairs).
deletedItems
directoryObject collection
Recently deleted items. Read-only. Nullable.
deviceLocalCredentials
deviceLocalCredential collection
The credentials of the device's local administrator account backed up to Microsoft Entra ID.
federationConfigurations
identityProviderBase collection
Configure domain federation with organizations whose identity provider (IdP) supports either the SAML or WS-Fed protocol.
onPremisesSynchronization
onPremisesDirectorySynchronization
A container for on-premises directory synchronization functionalities that are available for the organization.
publicKeyInfrastructure
publicKeyInfrastructureRoot
The collection of public key infrastructure instances for the certificate-based authentication feature for users in a Microsoft Entra tenant.
remoteTenantGroups
remoteTenantGroup collection
Collection of groups in remote Microsoft Entra tenants that are available in the directory.
subscriptions
companySubscription collection
List of commercial subscriptions that an organization acquired.
externalUserProfiles
externalUserProfile collection
Collection of external user profiles that represent collaborators in the directory.
featureRolloutPolicies
featureRolloutPolicy collection
Related featureRolloutPolicies data exposed by this resource.
impactedResources
impactedResource collection
Related impactedResources data exposed by this resource.
inboundSharedUserProfiles
inboundSharedUserProfile collection
A collection of external users whose profile data is shared with the Microsoft Entra tenant. Nullable.
outboundSharedUserProfiles
outboundSharedUserProfile collection
Related outboundSharedUserProfiles data exposed by this resource.
pendingExternalUserProfiles
pendingExternalUserProfile collection
Collection of pending external user profiles representing collaborators in the directory that are unredeemed.
recommendations
recommendation collection
List of recommended improvements to improve tenant posture.
sharedEmailDomains
sharedEmailDomain collection
Related sharedEmailDomains data exposed by this resource.
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.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Models;
var requestBody = new FeatureRolloutPolicy
{
DisplayName = "PassthroughAuthentication rollout policy",
Description = "PassthroughAuthentication rollout policy",
Feature = StagedFeatureName.PassthroughAuthentication,
IsEnabled = true,
IsAppliedToOrganization = false,
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Policies.FeatureRolloutPolicies.PostAsync(requestBody);
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.feature_rollout_policy import FeatureRolloutPolicy
from msgraph.generated.models.staged_feature_name import StagedFeatureName
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = FeatureRolloutPolicy(
display_name = "PassthroughAuthentication rollout policy",
description = "PassthroughAuthentication rollout policy",
feature = StagedFeatureName.PassthroughAuthentication,
is_enabled = True,
is_applied_to_organization = False,
)
result = await graph_client.policies.feature_rollout_policies.post(request_body)
What is the Directory.ReadWrite.All Microsoft Graph permission?
Directory.ReadWrite.All is available as both an application permission and a delegated permission in the Microsoft Graph API, grouped under the Directory category. Allows the app to read and write data in your organization's directory, such as users, and groups, without a signed-in user. Does not allow user or group deletion. It grants read and write access to resources. Application permissions always require admin consent. It is mapped to the Microsoft Graph directory resource type. 752 documented Microsoft Graph REST methods require it. 461 Microsoft Graph PowerShell commands are documented for it.
Is Directory.ReadWrite.All an application or a delegated permission?
Directory.ReadWrite.All is available as both an application permission (app-only access, no signed-in user) and a delegated permission (access on behalf of a signed-in user).
Does Directory.ReadWrite.All require admin consent?
What is the permission ID (GUID) for Directory.ReadWrite.All?
For Directory.ReadWrite.All, the application (app role) ID is 19dbc75e-c2e2-444c-a770-ec69d8559fc7, and the delegated (OAuth2 scope) ID is c5366453-9fb0-48a5-a156-24f0c49a4b84. These are the real Microsoft Graph identifiers and can be used directly in an app registration manifest.