Microsoft Graph API将附件添加到其他消息中

时间:2018-08-22 23:13:19

标签: microsoft-graph

我正在尝试从用户的邮箱中“克隆”邮件,以在其他邮箱中创建副本。通过将消息的各个部分“克隆”到新消息(包括附件)中,我可以成功使用“创建消息” API。但是,考虑到REST有效负载的4MB限制,大于4MB的消息将被拒绝。因此,想知道是否存在一种通过附件ID或contentId包含附件而不是下载和上传的方法,因为该附件已在服务器上可用。

2 个答案:

答案 0 :(得分:0)

根据您的描述,我假设您要在邮件中添加附件。

根据我的测试,我们可以使用此API来实现它。

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

请求正文是Attachment object的JSON表示形式,如下所示:

{
  "contentType": "string",
  "id": "string (identifier)", // attachment id
  "isInline": true,
  "lastModifiedDateTime": "String (timestamp)",
  "name": "string",
  "size": 1024
 }

有关更多详细信息,我们可以参考this document

答案 1 :(得分:0)

以防万一您找不到答案。

使用Microsoft Graph API,您可以将最大150 MB的文件附加到Outlook消息或事件项。根据文件大小,选择以下两种方式之一来附加文件:

  • 如果文件大小小于3 MB,请对Outlook项的附件导航属性执行单个POST;了解如何针对消息或事件执行此操作。成功的POST响应包括文件附件的ID。
  • 如果文件大小在3MB到150MB之间,请创建一个上载会话,并反复使用PUT上载文件的字节范围,直到上载整个文件为止。最终成功的PUT响应中的标头包含带有附件ID的URL。

有关更多详细信息,请参阅本文: https://docs.microsoft.com/en-us/graph/outlook-large-attachments?tabs=http