ESC
Type to search...

PrintTaskDefinition.ReadWrite.All

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

Allows the application to read and update print task definitions without a signed-in user.

In short

PrintTaskDefinition.ReadWrite.All is an application-only permission in the Microsoft Graph API, grouped under the PrintTaskDefinition category. Allows the application to read and update print task definitions without a signed-in user. 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, write and update print task definitions

Allows the application to read and update print task definitions without a signed-in user.

Properties

Microsoft Graph v1.0 exact-category-docs

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

Property Type Description
createdBy appIdentity The application that created the printTaskDefinition. Read-only.
displayName String The name of the printTaskDefinition.
id String The printTaskDefinition's identifier. Read-only.
tasks printTask collection A list of tasks that have been created based on this definition. The list includes currently running tasks and recently completed tasks. Read-only.

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.printTaskDefinition",
  "id": "String (identifier)",
  "displayName": "String",
  "createdBy": {
    "@odata.type": "microsoft.graph.appIdentity"
  }
}

Relationships

Microsoft Graph v1.0 exact-category-docs

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

Relationship Type Description
tasks printTask collection A list of tasks that have been created based on this definition. The list includes currently running tasks and recently completed tasks. Read-only.
createdBy appIdentity Related createdBy 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 /print/taskDefinitions
GET /print/taskDefinitions/{printTaskDefinitionId}
GET /print/taskDefinitions/{taskDefinitionId}/tasks
GET /print/taskDefinitions/{taskDefinitionId}/tasks/{taskId}
POST /print/taskDefinitions
PATCH /print/taskDefinitions/{printTaskDefinitionId}
PATCH /print/taskDefinitions/{taskDefinitionId}/tasks/{taskId}
DELETE /print/taskDefinitions/{printTaskDefinitionId}
Exact Microsoft Learn match

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

Methods
GET /print/taskDefinitions
GET /print/taskDefinitions/{id}
GET /print/taskDefinitions/{id}/tasks
GET /print/taskDefinitions/{id}/tasks/{id}
POST /print/taskDefinitions
PATCH /print/taskDefinitions/{id}
PATCH /print/taskDefinitions/{id}/tasks/{id}
DELETE /print/taskDefinitions/{id}
Exact Microsoft Learn PowerShell match

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

Commands
Get-MgPrintTaskDefinition /print/taskDefinitions
List taskDefinitions
Get-MgPrintTaskDefinition /print/taskDefinitions/{printTaskDefinitionId}
Get printTaskDefinition
Get-MgPrintTaskDefinitionTask /print/taskDefinitions/{taskDefinitionId}/tasks
List tasks
Get-MgPrintTaskDefinitionTask /print/taskDefinitions/{taskDefinitionId}/tasks/{taskId}
Get printTask
New-MgPrintTaskDefinition /print/taskDefinitions
Create printTaskDefinition
Remove-MgPrintTaskDefinition /print/taskDefinitions/{printTaskDefinitionId}
Delete printTaskDefinition
Update-MgPrintTaskDefinition /print/taskDefinitions/{printTaskDefinitionId}
Update printTaskDefinition
Update-MgPrintTaskDefinitionTask /print/taskDefinitions/{taskDefinitionId}/tasks/{taskId}
Update printTask
Exact Microsoft Learn PowerShell match

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

Commands
Get-MgBetaPrintTaskDefinition /print/taskDefinitions
List taskDefinitions
Get-MgBetaPrintTaskDefinition /print/taskDefinitions/{id}
Get taskDefinition
Get-MgBetaPrintTaskDefinitionTask /print/taskDefinitions/{id}/tasks
List tasks
Get-MgBetaPrintTaskDefinitionTask /print/taskDefinitions/{id}/tasks/{id}
Get task
New-MgBetaPrintTaskDefinition /print/taskDefinitions
Create taskDefinition
Remove-MgBetaPrintTaskDefinition /print/taskDefinitions/{id}
Delete taskDefinition
Update-MgBetaPrintTaskDefinition /print/taskDefinitions/{id}
Update taskDefinition
Update-MgBetaPrintTaskDefinitionTask /print/taskDefinitions/{id}/tasks/{id}
Update task

Code Examples

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

// Dependencies
using Microsoft.Graph.Models;

var requestBody = new PrintTaskDefinition
{
	DisplayName = "Test TaskDefinitionName",
	CreatedBy = new AppIdentity
	{
		DisplayName = "Requesting App Display Name",
	},
};

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

const client = Client.init(options);

const printTaskDefinition = {
  displayName: 'Test TaskDefinitionName',
  createdBy: {
    displayName: 'Requesting App Display Name'
  }
};

await client.api('/print/taskDefinitions')
	.post(printTaskDefinition);
PowerShell
Create printTaskDefinition
Import-Module Microsoft.Graph.Devices.CloudPrint

$params = @{
	displayName = "Test TaskDefinitionName"
	createdBy = @{
		displayName = "Requesting App Display Name"
	}
}

New-MgPrintTaskDefinition -BodyParameter $params
Python
Create printTaskDefinition
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.models.print_task_definition import PrintTaskDefinition
from msgraph.generated.models.app_identity import AppIdentity
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = PrintTaskDefinition(
	display_name = "Test TaskDefinitionName",
	created_by = AppIdentity(
		display_name = "Requesting App Display Name",
	),
)

result = await graph_client.print.task_definitions.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 PrintTaskDefinition.ReadWrite.All

4

Grant Admin Consent

Application permissions always require admin consent.

Frequently asked questions

What is the PrintTaskDefinition.ReadWrite.All Microsoft Graph permission?

PrintTaskDefinition.ReadWrite.All is an application-only permission in the Microsoft Graph API, grouped under the PrintTaskDefinition category. Allows the application to read and update print task definitions without a signed-in user. It grants read and write access to resources. Application permissions always require admin consent. It is mapped to the Microsoft Graph printtaskdefinition resource type. 16 documented Microsoft Graph REST methods require it. 16 Microsoft Graph PowerShell commands are documented for it.

Is PrintTaskDefinition.ReadWrite.All an application or a delegated permission?

PrintTaskDefinition.ReadWrite.All is an application permission only. It grants app-only access without a signed-in user and always requires admin consent.

Does PrintTaskDefinition.ReadWrite.All require admin consent?

Application permissions always require admin consent.

What is the permission ID (GUID) for PrintTaskDefinition.ReadWrite.All?

For PrintTaskDefinition.ReadWrite.All, the application (app role) ID is 456b71a7-0ee0-4588-9842-c123fcc8f664. These are the real Microsoft Graph identifiers and can be used directly in an app registration manifest.