Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
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.
Cree una sesión de carga que permita a una aplicación cargar de forma iterativa intervalos de un archivo binario vinculado al documento de impresión.
Como parte de la respuesta, esta acción devuelve una dirección URL de carga que se puede usar en consultas secuenciales PUT posteriores. Los encabezados de solicitud para cada PUT operación se pueden usar para especificar el intervalo exacto de bytes que se van a cargar. Esto permite reanudar la transferencia, en caso de que la conexión de red se interrumpa durante la carga.
Nota: La creación de una sesión de carga con permisos de aplicación solo se realizará correctamente si hay un printTask en un
processingestado en el trabajo de impresión asociado, iniciado por un desencadenador creado por la aplicación solicitante. Para obtener más información sobre cómo registrar un desencadenador de tareas, consulte Ampliación de la impresión universal para admitir la impresión extraída.
Esta API está disponible en las siguientes implementaciones en la nube nacional.
| Servicio global | Administración pública de EE. UU. | Gobierno de EE. UU. L5 (DOD) | China operado por 21Vianet |
|---|---|---|---|
| ✅ | ✅ | ✅ | ❌ |
Permissions
Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use uno o varios permisos con privilegios más altos 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.
| Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
|---|---|---|
| Delegado (cuenta profesional o educativa) | PrintJob.Create | PrintJob.ReadWrite, PrintJob.ReadWrite.All |
| Delegado (cuenta personal de Microsoft) | No admitida. | No admitida. |
| Aplicación | PrintJob.ReadWrite.All | No disponible. |
Solicitud HTTP
Para crear una sesión de carga con una impresora:
POST /print/printers/{id}/jobs/{id}/documents/{id}/createUploadSession
Para crear una sesión de carga con printerShare (compatible solo con permisos delegados):
POST /print/shares/{id}/jobs/{id}/documents/{id}/createUploadSession
Encabezados de solicitud
| Nombre | Descripción |
|---|---|
| Authorization | {token} de portador. Obligatorio. Obtenga más información sobre autenticación y autorización. |
| Tipo de contenido | application/json. Obligatorio. |
Cuerpo de la solicitud
En el cuerpo de la solicitud, proporcione un objeto JSON con los siguientes parámetros.
| Parámetro | Tipo | Descripción |
|---|---|---|
| properties | printDocumentUploadProperties | Representa las propiedades del archivo binario que se va a cargar. |
El valor de la propiedad contentType en el cuerpo de la solicitud debe ser compatible con printer/printerShare. Puede obtener los tipos de contenido admitidos obteniendo printerCapabilities de printer/printerShare.
Para la conversión de OXPS a PDF , debe pasar application/oxps como contentType para printer/printerShare que admita application/pdf.
La impresión universal convierte OXPS a PDF cuando se cumplen todas las condiciones siguientes:
- La impresora/recurso compartido de impresora se admite
application/pdfen printerCapabilities. - impresora/recurso compartido de impresora no se admite
application/oxpsen printerCapabilities. - El valor de la propiedad contentType en el cuerpo de la solicitud es
application/oxps.
Respuesta
Si tiene éxito, este método devuelve un 200 OK código de respuesta y un nuevo objeto uploadSession en el cuerpo de la respuesta.
Nota: La propiedad uploadUrl devuelta como parte del objeto de respuesta uploadSession es una dirección URL opaca para que las consultas posteriores
PUTcarguen intervalos de bytes del archivo. Contiene el token de autenticación adecuado para las consultas posterioresPUTque expiran por expirationDateTime. No cambie esta URL.
Ejemplos
En el siguiente ejemplo se muestra cómo crear una sesión de carga que puede usar en operaciones posteriores de carga de archivos en el printDocument especificado.
Solicitud
POST https://graph.microsoft.com/beta/print/shares/1c879027-5120-4aaf-954a-ebfd509a3bcc/jobs/46207/documents/9001bcd9-e36a-4f51-bfc6-140c3ad7f9f7/createUploadSession
Content-type: application/json
{
"properties": {
"documentName": "TestFile.pdf",
"contentType": "application/pdf",
"size": 4533322
}
}
Respuesta
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#microsoft.graph.uploadSession",
"uploadUrl": "https://print.print.microsoft.com/uploadSessions/5400be13-5a4e-4c20-be70-90c85bfe5d6e?tempauthtoken={token}",
"expirationDateTime": "2020-10-25T02:19:38.1694207Z",
"nextExpectedRanges": [
"0-4533321"
]
}