开发Outlook插件:仅用消息ID读取共享邮箱邮件的Graph API问题
共享邮箱邮件获取问题解决方案
无需共享邮箱ID直接获取邮件的办法
- 直接调用Graph API的
/messages/{message-id}端点。只要当前用户有权读取该共享邮箱的邮件,这个接口就能返回邮件详情,无需指定用户ID或/me前缀。 - 通过Outlook插件API获取邮件的
parentFolderId,再调用/me/mailFolders/{parentFolderId}/messages/{message-id}。共享邮箱的文件夹会挂载在当前用户的邮箱目录下,借助父文件夹ID定位后即可获取对应邮件。
获取当前用户可访问的共享邮箱列表
调用Graph API的/me/sharedMailboxes端点,返回结果会包含每个共享邮箱的id、displayName等核心信息,拿到ID后就能用/users/{共享邮箱ID}/messages/{message-id}接口获取目标邮件。
另外需注意权限配置:确保你的应用已申请Mail.ReadBasic、Mail.Read或Mail.ReadWrite这类支持共享邮箱的权限,且管理员已完成授权操作。
内容的提问来源于stack exchange,提问作者PiotrX1
相关产品推荐
相关产品推荐

