taskFileAttachment: createUploadSession

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 en intervalos de carga iterativa de un archivo como datos adjuntos a una tarea todoTask.

Como parte de la respuesta, esta acción devuelve una dirección URL de carga que puede usar en consultas secuenciales PUT posteriores. Los encabezados de solicitud de cada PUT operación permiten especificar el intervalo exacto de bytes que se van a cargar. Esto permite reanudar la transferencia, en caso de que se quite la conexión de red durante la carga.

Estos son los pasos para adjuntar un archivo a una tarea de Microsoft To Do mediante una sesión de carga:

  1. Cree una sesión de carga.
  2. En esa sesión de carga, cargue iterativamente intervalos de bytes (hasta 4 MB cada vez) hasta que se hayan cargado todos los bytes del archivo y el archivo esté asociado a todoTask.
  3. Opcional: elimine la sesión de carga.

Nota: Use este enfoque para adjuntar un archivo de cualquier tamaño compatible entre 0 MB y 25 MB.

Para obtener un ejemplo que describa el proceso de datos adjuntos de un extremo a otro, consulte Adjuntar archivos a una tarea Tareas pendientes.

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.

Tipo de permiso Permisos con privilegios mínimos Permisos con privilegios más altos
Delegado (cuenta profesional o educativa) Tasks.ReadWrite No disponible.
Delegado (cuenta personal de Microsoft) Tasks.ReadWrite No disponible.
Aplicación No admitida. No admitida.

Solicitud HTTP

POST /me/todo/lists/{id}/tasks/{id}/attachments/createUploadSession
POST /users/{id}/todo/lists/{id}/tasks/{id}/attachments/createUploadSession

Encabezados de solicitud

Nombre Descripción
Authorization {token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización.
Content-Type application/json. Obligatorio.

Cuerpo de la solicitud

En el cuerpo de la solicitud, proporcione una representación JSON de los parámetros.

En la tabla siguiente se muestra el parámetro que se puede usar con esta acción.

Parámetro Tipo Descripción
attachmentInfo attachmentInfo Representa los atributos del elemento que se va a cargar y adjuntar. Como mínimo, especifique el tipo de datos adjuntos (file), un nombre y el tamaño del archivo.

Respuesta

Si se ejecuta correctamente, esta acción devuelve un 200 OK código de respuesta y una nueva uploadSession en el cuerpo de la respuesta.

Ejemplos

Solicitud

En el ejemplo siguiente se muestra una solicitud para crear una sesión de carga.

POST https://graph.microsoft.com/beta/me/todo/lists/AAMDiFkfh=/tasks/AAMkADliMm=/attachments/createUploadSession
Content-Type: application/json

{
  "attachmentInfo": {
    "attachmentType": "file",
    "name": "flower",
    "size": 3483322
  }
}

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#microsoft.graph.uploadSession",
    "uploadUrl": "https://graph.microsoft.com/beta/users/6f9a2a92-8527-4d64-837e-b5312852f36d/todo/lists/AAMDiFkfh=/tasks/AAMkADliMm=/attachmentSessions/AAMkADliMm=",
    "expirationDateTime": "2022-06-09T10:45:27.4324526Z",
    "nextExpectedRanges": [
        "0-"
    ]
}