使用 Outlook 邮件 REST API

Microsoft Graph 可让应用程序获得对个人或组织帐户中用户的 Outlook 邮件数据的授权访问权限。 借助相应的委派或应用程序 邮件权限,你的应用可以访问已登录用户或租户中的任何用户的邮件数据。 有关访问令牌、应用注册以及委托和应用程序权限的详细信息,请参阅 身份验证和授权基础知识

Microsoft Graph API 支持访问用户邮箱和共享邮箱中的数据。 这些数据可以是日历、邮件或个人联系人,存储在 Exchange Online(作为 Microsoft 365 的一部分)云端的邮箱中或混合部署中的 Exchange 本地邮箱中。

此 API 支持访问就地存档邮箱(不在 Exchange OnlineExchange Server 上)。

使用邮件 REST API

代表用户执行可由用户的 id 属性(唯一的 GUID)、电子邮件地址或me已登录用户的快捷方式别名标识的邮件 API 请求。

Email邮件由邮件资源表示,并在 mailFolder 中组织。 邮件和邮件文件夹由其 id 属性标识,可从 GET 操作获取。

重要

通常,请不要假设邮箱内的邮件mailfolder ID 是唯一的且始终保持不变。 在执行复制或移动等某些操作后,它们可能会发生更改。 只要邮件保留在同一个邮箱中,你就可以选择使用不可变 ID 来保留相同的 ID(除了发送草稿邮件和一些其他场景外)。 有关详细信息,请参阅不可变 ID 生存期

邮件正文可以是 HTML 格式或文本格式。

你可以使用已知的文件夹名称,如 InboxDraftsSentItemsDeletedItems,来识别某些对所有用户默认存在的邮件文件夹。 有关受支持的已知文件夹名称的列表,请参阅 mailFolder 资源类型

例如,你可以从已登录用户的 Outlook“已发送邮件”文件夹收取邮件,无需事先获取文件夹 ID:

GET /me/mailFolders('SentItems')/messages?$select=sender,subject

常见用例

邮件资源公开如类别conversationId标记以及重要性等属性,这些属性对应于 UI 中的可用功能,允许应用自动化或与内置 Outlook 用户体验集成。

Microsoft Graph API 还提供支持邮件常见用例的方法和操作。

用例 REST 资源 另请参阅
以用户为中心的操作
起草、阅读、答复、转发、发送、更新或删除邮件 邮件 邮件的方法
代表邮箱所有者委托其他用户发送邮件 邮件 正在设置邮件发件人收件人属性
让用户先查看更重要的邮件 inferenceClassificationOverride 重点收件箱
查询邮件并在搜索文件夹中获取邮件 mailSearchFolder mailSearchFolder 的方法
获取邮件或邮件附件的 MIME 内容 message 获取 MIME 内容
使用 MIME 内容发送邮件 邮件 发送 MIME 内容
添加、获取或删除邮件的附件 附件
fileAttachment
itemAttachment
referenceAttachment
邮件
attachment 的方法
获取用户的语言和时区选择 localeInfo
timeZoneInformation
supportedLanguages
supportedTimeZones
获取或更新用户的自动答复、区域设置、时区或工作时间 mailboxSettings
automaticRepliesSetting
localeInfo
workingHours
获取用户的邮箱设置
更新用户的邮箱设置
获取其他收件人的特殊状态(例如外出)的邮件提醒 user
mailTips
获取邮件提醒
邮件和文件夹管理
组织邮件文件夹层次结构中的邮件 mailFolder mailFolder 的方法
对邮件分类 outlookCategory outlookCategory 的方法
使用收件箱规则自动执行转发特定传入邮件等操作 messageRule messageRule 的方法
获取邮件的 Internet 邮件头 message 获取邮件的 internetMessageHeaders 属性
搜索和筛选邮件 邮件 查询参数
获取对文件夹中的邮件更改的通知 订阅 在 Microsoft Graph 中使用 Webhooks
同步邮件或邮件文件夹层次结构 邮件 获取文件夹中邮件的增量更改
应用开发
添加自定义应用数据作为邮件的 Internet 邮件头 邮件 向邮件的 internetMessageHeaders 属性添加自定义数据。
通过使用扩展向邮件添加自定义应用数据 openTypeExtension
schemaExtension
使用扩展向资源添加自定义数据
访问半公开的 Outlook MAPI 属性的自定义数据 SingleValueLegacyExtendedProperty
multiValueLegacyExtendedProperty
Outlook 扩展属性概述

后续步骤

邮件 API 可以为你开辟与用户互动的新途径: