ESC
Type to search...

PrinterShare.ReadWrite.All

Export JSON
Export CSV
Copy URL
Print
Delegated Read/Write All Resources

Allows the application to read and update printer shares on behalf of the signed-in user.

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

Permission Details

Delegated Permission Admin consent required

Read and write printer shares

Allows the application to read and update printer shares on behalf of the signed-in user.

Properties

Microsoft Graph v1.0 exact-category-docs

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

Property Type Description
allowAllUsers Boolean If true, all users and groups will be granted access to this printer share. This supersedes the allow lists defined by the allowedUsers and allowedGroups navigation properties.
capabilities printerCapabilities The capabilities of the printer associated with this printer share. Inherited from printerBase.
createdDateTime DateTimeOffset The DateTimeOffset when the printer share was created. Read-only.
defaults printerDefaults The default print settings of the printer associated with this printer share. Inherited from printerBase.
displayName String The name of the printer share that print clients should display. Inherited from printerBase.
id String The printerShare's identifier. Inherited from printerBase. Read-only.
isAcceptingJobs BooleanNullable Whether the printer associated with this printer share is currently accepting new print jobs. Inherited from printerBase.
location printerLocation The physical and/or organizational location of the printer associated with this printer share. Inherited from printerBase.
manufacturer StringNullable The manufacturer reported by the printer associated with this printer share. Inherited from printerBase. Read-only.
model StringNullable The model name reported by the printer associated with this printer share. Inherited from printerBase. Read-only.
status printerStatus The processing status, including any errors, of the printer associated with this printer share.Inherited from printerBase. Read-only.
viewPoint printerShareViewpoint Additional data for a printer share as viewed by the signed-in user.
allowedGroups group collection The groups whose users have access to print using the printer.
allowedUsers user collection The users who have access to print using the printer.
jobs printJob collection The list of jobs that are queued for printing by the printer/printerShare.

Showing 15 of 16 properties.

JSON Representation

Microsoft Graph v1.0 exact-category-docs

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

JSON representation
{
  "@odata.type": "#microsoft.graph.printerShare",
  "id": "String (identifier)",
  "displayName": "String",
  "manufacturer": "String",
  "model": "String",
  "isAcceptingJobs": "Boolean",
  "defaults": {
    "@odata.type": "microsoft.graph.printerDefaults"
  },
  "location": {
    "@odata.type": "microsoft.graph.printerLocation"
  },
  "capabilities": {
    "@odata.type": "microsoft.graph.printerCapabilities"
  },
  "status": {
    "@odata.type": "microsoft.graph.printerStatus"
  },
  "allowAllUsers": "Boolean",
  "createdDateTime": "String (timestamp)",
  "viewPoint": {
    "@odata.type": "microsoft.graph.printerShareViewpoint"
  }
}

Relationships

Microsoft Graph v1.0 exact-category-docs

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

Relationship Type Description
printer printer The printer that this printer share is related to.
allowedUsers user collection The users who have access to print using the printer.
allowedGroups group The groups whose users have access to print using the printer.
jobs printJob collection The list of jobs that are queued for printing by the printer associated with this printer share.
status printerStatus Related status 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.

Methods
GET /me/print/recentPrinterShares
GET /print/printers/{printerId}/shares
GET /print/printers/{printerId}/shares/{printerShareId}
GET /print/services
GET /print/services/{printServiceId}
GET /print/services/{printServiceId}/endpoints
GET /print/services/{printServiceId}/endpoints/{printServiceEndpointId}
GET /print/shares
GET /print/shares/{printerShareId}
GET /print/shares/{printerShareId}/allowedGroups
GET /print/shares/{printerShareId}/allowedUsers
POST /print/printers/{printerId}/shares/{printerShareId}/allowedGroups/$ref
POST /print/shares
POST /print/shares/{printerShareId}/allowedUsers/$ref
PATCH /print/shares/{printerShareId}
DELETE /print/shares/{printerShareId}
DELETE /print/shares/{printerShareId}/allowedGroups/{groupId}/$ref
DELETE /print/shares/{printerShareId}/allowedUsers/{userId}/$ref
Exact Microsoft Learn match

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

Methods
GET /me/print/recentPrinterShares
GET /print/printers/{printerId}/shares/{printerShareId}
GET /print/services
GET /print/services/{id}
GET /print/services/{id}/endpoints
GET /print/services/{id}/endpoints/{name}
GET /print/shares
GET /print/shares/{id}/allowedGroups
GET /print/shares/{id}/allowedUsers
GET /print/shares/{printerShareId}
POST /print/shares
POST /print/shares/{id}/allowedGroups/$ref
POST /print/shares/{id}/allowedUsers/$ref
PATCH /print/shares/{id}
DELETE /print/printers/{id}/share
DELETE /print/printerShares/{id}/allowedUsers/{id}/$ref
DELETE /print/shares/{id}
DELETE /print/shares/{id}/allowedGroups/{id}/$ref
Exact Microsoft Learn PowerShell match

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

Commands
Get-MgPrintPrinterShare /print/printers/{printerId}/shares
List printerShares for a printer
Get-MgPrintService /print/services
List printServices
Get-MgPrintService /print/services/{printServiceId}
Get printService
Get-MgPrintServiceEndpoint /print/services/{printServiceId}/endpoints
List endpoints
Get-MgPrintServiceEndpoint /print/services/{printServiceId}/endpoints/{printServiceEndpointId}
Get printServiceEndpoint
Get-MgPrintShare /print/shares
List shares
Get-MgPrintShare /print/shares/{printerShareId}
Get printerShare
Get-MgPrintShareAllowedGroup /print/shares/{printerShareId}/allowedGroups
List allowedGroups
Get-MgPrintShareAllowedUser /print/shares/{printerShareId}/allowedUsers
List allowedUsers
New-MgPrintShare /print/shares
Create printerShare
New-MgPrintShareAllowedGroupByRef /print/printers/{printerId}/shares/{printerShareId}/allowedGroups/$ref
Create allowedGroup for printerShare
New-MgPrintShareAllowedUserByRef /print/shares/{printerShareId}/allowedUsers/$ref
Create allowedUser for printerShare
Remove-MgPrintShare /print/shares/{printerShareId}
Delete printerShare
Update-MgPrintShare /print/shares/{printerShareId}
Update printerShare
Exact Microsoft Learn PowerShell match

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

Commands
Get-MgBetaPrintService /print/services
List printServices
Get-MgBetaPrintService /print/services/{id}
Get printService
Get-MgBetaPrintServiceEndpoint /print/services/{id}/endpoints
List printServiceEndpoints
Get-MgBetaPrintServiceEndpoint /print/services/{id}/endpoints/{name}
Get printServiceEndpoint
Get-MgBetaPrintShare /print/shares
List shares
Get-MgBetaPrintShare /print/shares/{printerShareId}
Get printerShare
Get-MgBetaPrintShareAllowedGroup /print/shares/{id}/allowedGroups
List allowedGroups for printerShare
Get-MgBetaPrintShareAllowedUser /print/shares/{id}/allowedUsers
List allowedUsers for printerShare
New-MgBetaPrintShare /print/shares
Create printerShare
New-MgBetaPrintShareAllowedGroupByRef /print/shares/{id}/allowedGroups/$ref
Create allowedGroup for printerShare
New-MgBetaPrintShareAllowedUserByRef /print/shares/{id}/allowedUsers/$ref
Create allowedUser for printerShare
Remove-MgBetaPrintShare /print/shares/{id}
Delete printerShare
Update-MgBetaPrintShare /print/shares/{id}
Update printershare

Code Examples

C# / .NET SDK
Create allowedGroup for printerShare
// Code snippets are only available for the latest version. Current version is 5.x

// Dependencies
using Microsoft.Graph.Models;

var requestBody = new ReferenceCreate
{
	OdataId = "https://graph.microsoft.com/v1.0/groups/{groupId}",
};

// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Print.Shares["{printerShare-id}"].AllowedGroups.Ref.PostAsync(requestBody);
JavaScript
Create allowedGroup for printerShare
const options = {
	authProvider,
};

const client = Client.init(options);

const group = {
  '@odata.id': 'https://graph.microsoft.com/v1.0/groups/{groupId}'
};

await client.api('/print/shares/{printerShareId}/allowedGroups/$ref')
	.post(group);
PowerShell
Create allowedGroup for printerShare
Import-Module Microsoft.Graph.Devices.CloudPrint

$params = @{
	"@odata.id" = "https://graph.microsoft.com/v1.0/groups/{groupId}"
}

New-MgPrintShareAllowedGroupByRef -PrinterShareId $printerShareId -BodyParameter $params
Python
Create allowedGroup for printerShare
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.reference_create import ReferenceCreate
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = ReferenceCreate(
	odata_id = "https://graph.microsoft.com/v1.0/groups/{groupId}",
)

await graph_client.print.shares.by_printer_share_id('printerShare-id').allowed_groups.ref.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 Delegated permissions and search for PrinterShare.ReadWrite.All

4

Grant Admin Consent

This delegated permission requires admin consent.