You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Universal Print is a modern print solution that organizations can use to manage their print infrastructure through Microsoft cloud services. Organizations use Universal Print to move key Windows Server print functionality to the Microsoft 365 cloud. Using Universal print helps organizations simplify and secure their print infrastructure, streamline printer management, enable users to discover printers by location, and more.
15
+
16
+
Use the Universal Print API to:
17
+
18
+
- Manage printers and shares.
19
+
- Configure cloud-enabled and legacy printer capabilities, settings, and defaults.
20
+
- Manage print jobs, print tasks and operations, and pull printing.
21
+
- Manage printer access through users and groups.
22
+
- Report print activity and usage by printer or user.
23
+
24
+
The cloud printing API provides the following key features.
25
+
26
+
## Access print devices
27
+
28
+
The [printerShare](./printershare.md) and [printer](./printer.md) resources define the public view and the actual printer for physical printers that are discoverable by users and applications. A **printerShare** is a logical view of **printer** resources that represent physical printers. The underlying physical printers can be changed without changing the printer share, which enables organizations to maintain high printer availability.
29
+
30
+
The **printerShare** resource contains properties and methods that let you manage which users and groups can perform operations on that printer, such as creating or deleting print jobs. You can use the **printer** property to access information about the physical printer, see its status, list and reset its settings, and more.
31
+
32
+
Cloud-enabled printers can connect directly to Universal Print, but legacy printers require a [print connector](./printconnector.md) to connect and enable discovery. For more information about print connectors for legacy print devices, see [What is the Universal Print connector?](/universal-print/fundamentals/universal-print-connector-overview).
33
+
34
+
## Manage user and group printing permissions
35
+
36
+
You can manage user and group print permissions with Universal Print APIs that operate on **printerShare** resources. You can add, remove, and list authorized users and groups to a printer share. The permissions applied to the printer share apply to all the physical printers that the share contains. In addition, the **printerShare** resource includes **allowedUsers** and **allowedGroups** navigation properties that contain the users and groups that are authorized to use the printers that the printer share contains.
37
+
38
+
39
+
## Manage print jobs, tasks, and operations
40
+
41
+
[printJob](./printjob.md) objects are the basic unit of work for printing. They have a list of documents to print and another list of [printTask](./printtask.md) objects that describe the print operation to complete. Resources that derive from the [printOperation](./printoperation.md) base resource type, such as [printerCreateOperation](./printercreateoperation.md), represent long-running operations such as creating a new printer.
42
+
43
+
To print a document, create a **printJob** and pass its unique identifier to [printDocument: createUploadSession](../api/printdocument-createuploadsession.md) after the print task for the print job enters the **processing** state. Then use the session identifier that you received when you created the upload session to send the document to the **document** property of the **printJob**. After this operation completes, you can start the **printJob** to print your document. For more information about uploading documents, see [Upload documents using the Microsoft Graph Universal Print API](/graph/upload-data-to-upload-session).
44
+
45
+
## Implement pull printing
46
+
47
+
In pull printing, the user swipes their badge at a physical printer to enable printing. To implement pull printing, first create a virtual printer and then create a [printTaskTrigger](./printtasktrigger.md) on it. When a job is submitted, it pauses and your application can be notified. When the user swipes their badge at the physical printer, your application can redirect the job from virtual printer to the physical printer. This workflow increases security by reducing the number of unattended documents at the physical printer.
48
+
49
+
## Get print usage data and reports
50
+
51
+
Use the [printUsageByUser](./printusagebyuser.md) and [printUsageByPrinter](./printusagebyprinter.md) resources to report information about the daily or monthly number and type of print jobs for a user or printer. These reports are valuable for understanding your organization's usage of print resources and where there might be problems with your print infrastructure. The APIs that return [archivedPrintJob](./archivedprintjob.md) resources contain detailed information about the historical jobs from a printer, user, or group.
52
+
53
+
## Related content
54
+
[Universal Print cloud printing API overview](/graph/universal-print-concept-overview)
Represents a printer device that is registered with the Universal Print service. Printer resources can be used to manage print jobs, printer settings, printer metadata, and registration status.
16
+
Represents a printer device that is registered with the Universal Print service. Printer resources can be used to manage print jobs, printer settings, printer metadata, and registration status. Inherits from [printerBase](./printerbase.md).
17
17
18
-
This resource supports:
19
-
*[Subscribing to change notifications](/graph/universal-print-webhook-notifications).
18
+
This resource supports [subscribing to change notifications](/graph/universal-print-webhook-notifications).
20
19
21
20
## Methods
22
21
@@ -38,17 +37,17 @@ This resource supports:
38
37
| Property | Type | Description |
39
38
|:-------------|:------------|:------------|
40
39
|id|String|The printer's identifier. Read-only.|
41
-
|displayName|String|The name of the printer.|
42
-
|manufacturer|String|The manufacturer reported by the printer.|
43
-
|model|String|The model name reported by the printer.|
40
+
|displayName|String|The name of the printer. Inherited from [printerBase](./printerbase.md).|
41
+
|manufacturer|String|The manufacturer reported by the printer. Inherited from [printerBase](./printerbase.md).|
42
+
|model|String|The model name reported by the printer. Inherited from [printerBase](./printerbase.md).|
44
43
|registeredDateTime|DateTimeOffset|The DateTimeOffset when the printer was registered. Read-only.|
45
-
|status|[printerStatus](printerstatus.md)|The processing status of the printer, including any errors.|
44
+
|status|[printerStatus](printerstatus.md)|The processing status of the printer, including any errors. Inherited from [printerBase](./printerbase.md).|
46
45
|isShared|Boolean|True if the printer is shared; false otherwise. Read-only.|
47
46
|hasPhysicalDevice|Boolean|True if the printer has a physical device for printing. Read-only.|
48
-
|isAcceptingJobs|Boolean| If `true`, the printer is currently accepting new print jobs.|
49
-
|location|[printerLocation](printerlocation.md)|The physical and/or organizational location of the printer.|
|capabilities|[printerCapabilities](printercapabilities.md)|The capabilities of the printer.|
47
+
|isAcceptingJobs|Boolean| If `true`, the printer is currently accepting new print jobs. Inherited from [printerBase](./printerbase.md).|
48
+
|location|[printerLocation](printerlocation.md)|The physical and/or organizational location of the printer. Inherited from [printerBase](./printerbase.md).|
49
+
|defaults|[printerDefaults](printerdefaults.md)|The printer's default print settings. Inherited from [printerBase](./printerbase.md).|
50
+
|capabilities|[printerCapabilities](printercapabilities.md)|The capabilities of the printer. Inherited from [printerBase](./printerbase.md).|
52
51
|lastSeenDateTime|DateTimeOffset|The most recent dateTimeOffset when a printer interacted with Universal Print. Read-only.|
Represents the base type for the [printer](printer.md) and [printerShare](printerShare.md) entity types. Inherits from [printerBase](./printerbase.md).
16
+
17
+
## Properties
18
+
|Property|Type|Description|
19
+
|:---|:---|:---|
20
+
|capabilities|[printerCapabilities](printercapabilities.md)|The capabilities of the printer/printerShare.|
21
+
|defaults|[printerDefaults](printerdefaults.md)|The default print settings of printer/printerShare.|
22
+
|displayName|String|The name of the printer/printerShare.|
23
+
|id|String|The identifier.|
24
+
|isAcceptingJobs|Boolean|Specifies whether the printer/printerShare is currently accepting new print jobs.|
25
+
|location|[printerLocation](printerlocation.md)|The physical and/or organizational location of the printer/printerShare.|
26
+
|manufacturer|String|The manufacturer of the printer/printerShare.|
27
+
|model|String|The model name of the printer/printerShare.|
28
+
|status|[printerStatus](printerstatus.md)|The processing status of the printer/printerShare, including any errors.|
29
+
30
+
## Relationships
31
+
|Relationship|Type|Description|
32
+
|:---|:---|:---|
33
+
|jobs|[printJob](printjob.md) collection|The list of jobs that are queued for printing by the printer/printerShare.|
34
+
35
+
## JSON representation
36
+
The following JSON representation shows the resource type.
Copy file name to clipboardExpand all lines: api-reference/beta/resources/printershare.md
+12-12Lines changed: 12 additions & 12 deletions
Original file line number
Diff line number
Diff line change
@@ -25,34 +25,34 @@ Represents a printer that is intended to be discoverable by users and printing a
25
25
|[Delete](../api/printershare-delete.md)| None | Unshare a printer. |
26
26
|[List jobs](../api/printershare-list-jobs.md)|[printJob](printjob.md) collection | Get a list of print jobs that are queued for processing by the printerShare. |
27
27
|[Create job for a printer share](../api/printershare-post-jobs.md)|[printJob](printjob.md)| Create a new print job for the printerShare. To start printing the job, use [start](../api/printjob-start.md). |
28
-
|[List allowed users](../api/printershare-list-allowedusers.md)|[user](user.md) collection | Retrieve a list of users who have been granted access to submit print jobs to the associated printer share. |
28
+
|[List allowed users](../api/printershare-list-allowedusers.md)|[user](user.md) collection | Retrieve a list of users who can submit print jobs to the associated printer share. |
29
29
|[Create allowed user](../api/printershare-post-allowedusers.md)| None | Grant the specified user access to submit print jobs to the associated printer share. |
30
30
|[Delete allowed user](../api/printershare-delete-alloweduser.md)| None | Revoke printer share access from the specified user. |
31
-
|[List allowed groups](../api/printershare-list-allowedgroups.md)|[group](group.md) collection | Retrieve a list of groups that have been granted access to submit print jobs to the associated printer share. |
31
+
|[List allowed groups](../api/printershare-list-allowedgroups.md)|[group](group.md) collection | Retrieve a list of groups whose members can submit print jobs to the associated printer share. |
32
32
|[Create allowed group](../api/printershare-post-allowedgroups.md)| None | Grant the specified group access to submit print jobs to the associated printer share. |
33
33
|[Delete allowed group](../api/printershare-delete-allowedgroup.md)| None | Revoke printer share access from the specified group. |
34
34
|[List recent shares](../api/print-list-recentshares.md)|[printerShare](printershare.md) collection | Get a list of recently used **printerShares** by the signed-in user. |
35
35
36
36
## Properties
37
37
| Property | Type | Description |
38
38
|:-------------|:------------|:------------|
39
-
|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.|
40
-
|capabilities|[printerCapabilities](printercapabilities.md)|The capabilities of the printer associated with this printer share.|
39
+
|allowAllUsers|Boolean|If true, all users and groups can access this printer share. This property supersedes the lists of allowed users and groups defined by the **allowedUsers** and **allowedGroups** navigation properties.|
40
+
|capabilities|[printerCapabilities](printercapabilities.md)|The capabilities of the printer associated with this printer share. Inherited from [printerBase](./printerbase.md).|
41
41
|createdDateTime|DateTimeOffset|The DateTimeOffset when the printer share was created. Read-only.|
42
-
|defaults|[printerDefaults](printerdefaults.md)|The default print settings of the printer associated with this printer share.|
43
-
|displayName|String|The name of the printer share that print clients should display.|
42
+
|defaults|[printerDefaults](printerdefaults.md)|The default print settings of the printer associated with this printer share. Inherited from [printerBase](./printerbase.md).|
43
+
|displayName|String|The name of the printer share that print clients should display. Inherited from [printerBase](./printerbase.md).|
44
44
|id|String| The printerShare's identifier. Read-only.|
45
-
|isAcceptingJobs|Boolean|Whether the printer associated with this printer share is currently accepting new print jobs.|
46
-
|location|[printerLocation](printerlocation.md)|The physical and/or organizational location of the printer associated with this printer share.|
47
-
|manufacturer|String|The manufacturer reported by the printer associated with this printer share. Read-only.|
45
+
|isAcceptingJobs|Boolean|Whether the printer associated with this printer share is currently accepting new print jobs. Inherited from [printerBase](./printerbase.md).|
46
+
|location|[printerLocation](printerlocation.md)|The physical and/or organizational location of the printer associated with this printer share. Inherited from [printerBase](./printerbase.md).|
47
+
|manufacturer|String|The manufacturer reported by the printer associated with this printer share. Read-only. Inherited from [printerBase](./printerbase.md).|
48
48
|model|String|The model name reported by the printer associated with this printer share. Read-only.|
49
-
|status|[printerStatus](printerstatus.md)|The processing status, including any errors, of the printer associated with this printer share. Read-only.|
50
-
|viewPoint|[printerShareViewpoint](../resources/printershareviewpoint.md)|Additional data for a printer share as viewed by the signed-in user.|
49
+
|status|[printerStatus](printerstatus.md)|The processing status, including any errors, of the printer associated with this printer share. Read-only. Inherited from [printerBase](./printerbase.md).|
50
+
|viewPoint|[printerShareViewpoint](../resources/printershareviewpoint.md)|More data for a printer share as viewed by the signed-in user.|
51
51
52
52
## Relationships
53
53
| Relationship | Type | Description |
54
54
|:-------------|:------------|:------------|
55
-
|allowedGroups|[group](group.md)|The groups whose users have access to print using the printer.|
55
+
|allowedGroups|[group](group.md) collection|The groups whose users have access to print using the printer.|
56
56
|allowedUsers|[user](user.md) collection|The users who have access to print using the printer.|
57
57
|jobs|[printJob](printjob.md) collection| The list of jobs that are queued for printing by the printer associated with this printer share.|
58
58
|printer|[printer](printer.md)|The printer that this printer share is related to. |
Copy file name to clipboardExpand all lines: api-reference/v1.0/resources/printerbase.md
+2-2Lines changed: 2 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,6 @@
1
1
---
2
2
title: printerBase resource type
3
-
description: Represents base type for printer and printer share
3
+
description: Represents the base type for printer and printer share.
4
4
author: braedenp-msft
5
5
ms.localizationpriority: medium
6
6
ms.subservice: universal-print
@@ -11,7 +11,7 @@ ms.date: 04/03/2024
11
11
12
12
Namespace: microsoft.graph
13
13
14
-
Represents a base type for [printer](printer.md) and [printerShare](printerShare.md) entity types.
14
+
Represents the base type for the [printer](printer.md) and [printerShare](printerShare.md) entity types. Inherits from [printerBase](./printerbase.md).
0 commit comments