Agregar datos adjuntos

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.

Use esta API para agregar un objeto attachment a un mensaje.

Los datos adjuntos pueden ser de uno de los tipos siguientes:

Todos estos tipos de recursos de datos adjuntos se derivan del recurso attachment.

Puede agregar datos adjuntos a un mensaje existente publicando en su colección de datos adjuntos, o en un nuevo mensaje que se está redactando o creado y enviado sobre la marcha.

Nota: Esta operación limita el tamaño de los datos adjuntos que puede agregar a menos de 3 MB.

Sin embargo, si va a adjuntar a un mensaje un archivo de entre 3 MB y 150 MB, puede crear una sesión de carga y cargar iterativamente intervalos del archivo para adjuntarlo. Vea adjuntar archivos grandes a mensajes de Outlook para obtener un ejemplo.

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) Mail.ReadWrite No disponible.
Delegado (cuenta personal de Microsoft) Mail.ReadWrite No disponible.
Aplicación Mail.ReadWrite No disponible.

Solicitud HTTP

Datos adjuntos de un message en el buzón de un usuario.

POST /me/messages/{id}/attachments
POST /users/{id | userPrincipalName}/messages/{id}/attachments

Datos adjuntos de un message contenido en una mailFolder de nivel superior en el buzón de un usuario.

POST /me/mailFolders/{id}/messages/{id}/attachments
POST /users/{id | userPrincipalName}/mailFolders/{id}/messages/{id}/attachments

Datos adjuntos de un message contenido en una carpeta secundaria de una mailFolder en el buzón de un usuario. El ejemplo siguiente muestra un nivel de anidamiento, pero un mensaje puede estar ubicado en un elemento secundario de un elemento secundario y así sucesivamente.

POST /me/mailFolders/{id}/childFolders/{id}/.../messages/{id}/attachments/{id}
POST /users/{id | userPrincipalName}/mailFolders/{id}/childFolders/{id}/messages/{id}/attachments/{id}

Encabezados de solicitud

Nombre Tipo Descripción
Authorization string {token} de portador. Obligatorio.
Content-Type string Naturaleza de los datos en el cuerpo de una entidad. Obligatorio.

Cuerpo de la solicitud

En el cuerpo de la solicitud, proporcione una representación JSON del objeto Attachment.

Respuesta

Si se ejecuta correctamente, este método devuelve 201 Created el código de respuesta y el objeto Attachment en el cuerpo de la respuesta.

Ejemplo (datos adjuntos del archivo)

Solicitud

En el ejemplo siguiente se muestra la solicitud.

POST https://graph.microsoft.com/beta/me/messages/AAMkpsDRVK/attachments
Content-type: application/json

{
  "@odata.type": "#microsoft.graph.fileAttachment",
  "name": "smile",
  "contentBytes": "a0b1c76de9f7="
}

En el cuerpo de la solicitud, proporcione una representación JSON del objeto attachment.

Respuesta

En el ejemplo siguiente se muestra la respuesta.

HTTP/1.1 201 Created
Content-type: application/json

{
    "id": "AAMkADNkN2R",
    "lastModifiedDateTime": "2017-01-26T08:48:28Z",
    "name": "smile",
    "contentType": "image/gif",
    "size": 1008,
    "isInline": false,
    "contentId": null,
    "contentLocation": null,
    "contentBytes": "a0b1c76de9f7="
}

Ejemplo (datos adjuntos de elemento)

Solicitud

En el ejemplo siguiente se muestra la solicitud.

POST https://graph.microsoft.com/beta/me/messages/AAMkpsDRVK/attachments
Content-type: application/json

{
  "@odata.type": "#microsoft.graph.itemAttachment",
  "name": "Holiday event",
  "item": {
    "@odata.type": "microsoft.graph.event",
    "subject": "Discuss gifts for children",
    "body": {
      "contentType": "HTML",
      "content": "Let's look for funding!"
    },
    "start": {
      "dateTime": "2016-12-02T18:00:00",
      "timeZone": "Pacific Standard Time"
    },
    "end": {
      "dateTime": "2016-12-02T19:00:00",
      "timeZone": "Pacific Standard Time"
    }
  }
}

Respuesta

En el ejemplo siguiente se muestra la respuesta. Nota: El objeto de respuesta que se muestra aquí puede haberse acortado para mejorar la legibilidad.

HTTP/1.1 201 Created
Content-type: application/json

{
  "id":"AAMkADNkNJp5JVnQIe9r0=",
  "lastModifiedDateTime":"2016-12-01T22:27:13Z",
  "name":"Holiday event",
  "contentType":null,
  "size":2473,
  "isInline":false
}

Ejemplo (datos adjuntos de referencia)

Solicitud

En el ejemplo siguiente se muestra una solicitud que agrega datos adjuntos de referencia a un mensaje existente. Los datos adjuntos apuntan a una carpeta en OneDrive.

POST https://graph.microsoft.com/beta/me/messages/AAMkAGE1M88AADUv0uFAAA=/attachments
Content-type: application/json

{
    "@odata.type": "#microsoft.graph.referenceAttachment",
    "name": "Personal pictures",
    "sourceUrl": "https://contoso.com/personal/mario_contoso_net/Documents/Pics",
    "providerType": "oneDriveConsumer",
    "permission": "Edit",
    "isFolder": "True"
}
Respuesta

Este es un ejemplo de una respuesta completa.

HTTP 201 Created

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#users/ddfcd489-628b-40d7-b48b-57002df800e5/messages/AAMkAGE1M88AADUv0uFAAA%3D/attachments/$entity",
  "@odata.type": "#microsoft.graph.referenceAttachment",
  "id": "AAMkAGE1Mg72tgf7hJp0PICVGCc0g=",
  "lastModifiedDateTime": "2016-03-12T06:04:38Z",
  "name": "Personal pictures",
  "contentType": null,
  "size": 382,
  "isInline": false,
  "sourceUrl": "https://contoso.com/personal/mario_contoso_net/Documents/Pics",
  "providerType": "oneDriveConsumer",
  "thumbnailUrl": null,
  "previewUrl": null,
  "permission": "edit",
  "isFolder": true
}