Espacio de nombres: microsoft.graph
Importante
Las API de la versión /beta de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.
Recupere las propiedades y las relaciones de un trabajo de impresión.
Esta API está disponible en las siguientes implementaciones nacionales de nube.
| Servicio global |
Gobierno de EE. UU. L4 |
Us Government L5 (DOD) |
China operada por 21Vianet |
| ✅ |
✅ |
✅ |
❌ |
Permissions
Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.
Nota: Para que una aplicación con permisos delegados cancele los trabajos de otros usuarios, el usuario que ha iniciado sesión debe ser miembro del rol Administrador de impresoras.
Para una aplicación con permisos de aplicación para recuperar los trabajos de los usuarios, la aplicación necesita un permiso que conceda acceso Get printer (Obtener acceso a la impresora) junto con uno de los permisos de aplicación descritos en la tabla Permissions (Permisos ).
| Tipo de permiso |
Permisos con privilegios mínimos |
Permisos con privilegios más altos |
| Delegado (cuenta profesional o educativa) |
PrintJob.ReadBasic |
PrintJob.Read, PrintJob.Read.All, PrintJob.ReadBasic.All, PrintJob.ReadWrite, PrintJob.ReadWrite.All, PrintJob.ReadWriteBasic, PrintJob.ReadWriteBasic.All |
| Delegado (cuenta personal de Microsoft) |
No admitida. |
No admitida. |
| Aplicación |
PrintJob.ReadBasic.All |
PrintJob.Read.All, PrintJob.ReadWrite.All, PrintJob.ReadWriteBasic.All |
Solicitud HTTP
Para obtener un trabajo de una impresora:
GET /print/printers/{id}/jobs/{id}
Para obtener un trabajo de un recurso compartido de impresora:
GET /print/shares/{id}/jobs/{id}
Parámetros de consulta opcionales
Este método admite los Parámetros de consulta de OData a modo de ayuda para personalizar la respuesta. Para obtener información general, vea Parámetros de consulta OData.
Cuerpo de la solicitud
No proporcione un cuerpo de solicitud para este método.
Respuesta
Si se ejecuta correctamente, este método devuelve un 200 OK código de respuesta y un objeto printJob en el cuerpo de la respuesta.
Ejemplos
Ejemplo 1: Obtener trabajo de impresión
Solicitud
En el ejemplo siguiente se muestra una solicitud para obtener metadatos de un trabajo de impresión.
GET https://graph.microsoft.com/beta/print/printers/c05f3726-0d4b-4aa1-8fe9-2eb981bb26fb/jobs/5182
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Print.Printers["{printer-id}"].Jobs["{printJob-id}"].GetAsync();
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
//other-imports
)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
jobs, err := graphClient.Print().Printers().ByPrinterId("printer-id").Jobs().ByPrintJobId("printJob-id").Get(context.Background(), nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
PrintJob result = graphClient.print().printers().byPrinterId("{printer-id}").jobs().byPrintJobId("{printJob-id}").get();
const options = {
authProvider,
};
const client = Client.init(options);
let printJob = await client.api('/print/printers/c05f3726-0d4b-4aa1-8fe9-2eb981bb26fb/jobs/5182')
.version('beta')
.get();
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$result = $graphServiceClient->escapedPrint()->printers()->byPrinterId('printer-id')->jobs()->byPrintJobId('printJob-id')->get()->wait();
Import-Module Microsoft.Graph.Beta.Devices.CloudPrint
Get-MgBetaPrintPrinterJob -PrinterId $printerId -PrintJobId $printJobId
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
result = await graph_client.print.printers.by_printer_id('printer-id').jobs.by_print_job_id('printJob-id').get()
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#print/printers('c05f3726-0d4b-4aa1-8fe9-2eb981bb26fb')/jobs/$entity",
"id": "5182",
"displayName": "testjob",
"createdDateTime": "2020-02-04T00:00:00.0000000Z",
"createdBy": {
"id": "87d349ed-44d7-43e1-9a83-5f2406dee5bd",
"displayName": "John Smith",
"userPrincipalName": "john.smith@contoso.com"
},
"status": {
"state": "completed",
"description": "The print job has completed successfully and no further processing will take place.",
"details": []
},
"redirectedTo": null,
"redirectedFrom": null,
"isFetchable": false
}
Ejemplo 2: Obtención del trabajo de impresión con la lista de tareas
Solicitud
En el ejemplo siguiente se muestra una solicitud para obtener un trabajo de impresión y las tareas que se ejecutan o se han ejecutado en él.
GET https://graph.microsoft.com/beta/print/printers/c05f3726-0d4b-4aa1-8fe9-2eb981bb26fb/jobs/5182?$expand=tasks
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Print.Printers["{printer-id}"].Jobs["{printJob-id}"].GetAsync((requestConfiguration) =>
{
requestConfiguration.QueryParameters.Expand = new string []{ "tasks" };
});
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphprint "github.com/microsoftgraph/msgraph-beta-sdk-go/print"
//other-imports
)
requestParameters := &graphprint.PrintersItemJobsItemRequestBuilderGetQueryParameters{
Expand: [] string {"tasks"},
}
configuration := &graphprint.PrintersItemJobsItemRequestBuilderGetRequestConfiguration{
QueryParameters: requestParameters,
}
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
jobs, err := graphClient.Print().Printers().ByPrinterId("printer-id").Jobs().ByPrintJobId("printJob-id").Get(context.Background(), configuration)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
PrintJob result = graphClient.print().printers().byPrinterId("{printer-id}").jobs().byPrintJobId("{printJob-id}").get(requestConfiguration -> {
requestConfiguration.queryParameters.expand = new String []{"tasks"};
});
const options = {
authProvider,
};
const client = Client.init(options);
let printJob = await client.api('/print/printers/c05f3726-0d4b-4aa1-8fe9-2eb981bb26fb/jobs/5182')
.version('beta')
.expand('tasks')
.get();
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Print\Printers\Item\Jobs\Item\PrintJobItemRequestBuilderGetRequestConfiguration;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestConfiguration = new PrintJobItemRequestBuilderGetRequestConfiguration();
$queryParameters = PrintJobItemRequestBuilderGetRequestConfiguration::createQueryParameters();
$queryParameters->expand = ["tasks"];
$requestConfiguration->queryParameters = $queryParameters;
$result = $graphServiceClient->escapedPrint()->printers()->byPrinterId('printer-id')->jobs()->byPrintJobId('printJob-id')->get($requestConfiguration)->wait();
Import-Module Microsoft.Graph.Beta.Devices.CloudPrint
Get-MgBetaPrintPrinterJob -PrinterId $printerId -PrintJobId $printJobId -ExpandProperty "tasks"
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.print.printers.item.jobs.item.print_job_item_request_builder import PrintJobItemRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
query_params = PrintJobItemRequestBuilder.PrintJobItemRequestBuilderGetQueryParameters(
expand = ["tasks"],
)
request_configuration = RequestConfiguration(
query_parameters = query_params,
)
result = await graph_client.print.printers.by_printer_id('printer-id').jobs.by_print_job_id('printJob-id').get(request_configuration = request_configuration)
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#print/printers('c05f3726-0d4b-4aa1-8fe9-2eb981bb26fb')/jobs(tasks())/$entity",
"id": "5182",
"displayName": "testjob",
"createdDateTime": "2020-06-30T17:18:52.3930472Z",
"createdBy": {
"id": "87d349ed-44d7-43e1-9a83-5f2406dee5bd",
"displayName": "John Smith",
"userPrincipalName": "john.smith@contoso.com"
},
"status": {
"state": "completed",
"description": "The print job has completed successfully and no further processing will take place.",
"details": []
},
"redirectedTo": null,
"redirectedFrom": null,
"isFetchable": false,
"configuration": {},
"tasks": [
{
"id": "d036638b-1272-4bba-9227-732463823ed3",
"parentUrl": "https://graph.microsoft.com/beta/print/printers/c05f3726-0d4b-4aa1-8fe9-2eb981bb26fb/jobs/5182",
"status": {
"state": "processing",
"description": "The task is being processed."
}
}
]
}
Ejemplo 3: Obtención de un trabajo de impresión y sus datos de documento asociados
Solicitud
En el ejemplo siguiente se muestra una solicitud para obtener un trabajo de impresión y sus datos de documento asociados.
GET https://graph.microsoft.com/beta/print/printers/86b6d420-7e6b-4797-a05c-af4e56cd81bd/jobs/31216?$expand=documents
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Print.Printers["{printer-id}"].Jobs["{printJob-id}"].GetAsync((requestConfiguration) =>
{
requestConfiguration.QueryParameters.Expand = new string []{ "documents" };
});
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphprint "github.com/microsoftgraph/msgraph-beta-sdk-go/print"
//other-imports
)
requestParameters := &graphprint.PrintersItemJobsItemRequestBuilderGetQueryParameters{
Expand: [] string {"documents"},
}
configuration := &graphprint.PrintersItemJobsItemRequestBuilderGetRequestConfiguration{
QueryParameters: requestParameters,
}
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
jobs, err := graphClient.Print().Printers().ByPrinterId("printer-id").Jobs().ByPrintJobId("printJob-id").Get(context.Background(), configuration)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
PrintJob result = graphClient.print().printers().byPrinterId("{printer-id}").jobs().byPrintJobId("{printJob-id}").get(requestConfiguration -> {
requestConfiguration.queryParameters.expand = new String []{"documents"};
});
const options = {
authProvider,
};
const client = Client.init(options);
let printJob = await client.api('/print/printers/86b6d420-7e6b-4797-a05c-af4e56cd81bd/jobs/31216')
.version('beta')
.expand('documents')
.get();
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Print\Printers\Item\Jobs\Item\PrintJobItemRequestBuilderGetRequestConfiguration;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestConfiguration = new PrintJobItemRequestBuilderGetRequestConfiguration();
$queryParameters = PrintJobItemRequestBuilderGetRequestConfiguration::createQueryParameters();
$queryParameters->expand = ["documents"];
$requestConfiguration->queryParameters = $queryParameters;
$result = $graphServiceClient->escapedPrint()->printers()->byPrinterId('printer-id')->jobs()->byPrintJobId('printJob-id')->get($requestConfiguration)->wait();
Import-Module Microsoft.Graph.Beta.Devices.CloudPrint
Get-MgBetaPrintPrinterJob -PrinterId $printerId -PrintJobId $printJobId -ExpandProperty "documents"
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.print.printers.item.jobs.item.print_job_item_request_builder import PrintJobItemRequestBuilder
from kiota_abstractions.base_request_configuration import RequestConfiguration
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
query_params = PrintJobItemRequestBuilder.PrintJobItemRequestBuilderGetQueryParameters(
expand = ["documents"],
)
request_configuration = RequestConfiguration(
query_parameters = query_params,
)
result = await graph_client.print.printers.by_printer_id('printer-id').jobs.by_print_job_id('printJob-id').get(request_configuration = request_configuration)
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#print/printers('86b6d420-7e6b-4797-a05c-af4e56cd81bd')/jobs(documents())/$entity",
"id": "31216",
"displayName": "testjob",
"createdDateTime": "2020-06-26T04:20:06.5715544Z",
"createdBy": {
"id": "87d349ed-44d7-43e1-9a83-5f2406dee5bd",
"displayName": "John Smith",
"userPrincipalName": "john.smith@contoso.com"
},
"status": {
"state": "completed",
"description": "The print job has completed successfully and no further processing will take place.",
"details": []
},
"redirectedTo": null,
"redirectedFrom": null,
"isFetchable": false,
"configuration": {},
"documents": [
{
"id": "ca96c367-c3ad-478a-bbce-fbd1cd856e73",
"displayName": "",
"contentType": "application/oxps",
"size": 276604
}
]
}