获取用户的邮箱设置
命名空间:microsoft.graph
获取用户的 mailboxSettings。 可以查看所有邮箱设置或获取特定设置。
用户可通过 Outlook 客户端为其邮箱设置以下设置:
- 自动答复(收到发件人的电子邮件时自动通知发件人)
- 日期格式
- delegateMeetingMessageDeliveryOptions
- 区域设置(语言和国家/地区)
- 时间格式
- 时区
- 工作时间
- 用户用途
用户可以使用 Outlook 网页版设置首选的日期和时间格式。 用户可以选择支持的短日期或短时间格式之一。 此 GET
操作将返回用户选择的格式。
通过从管理员为其邮箱服务器设置的支持时区中进行选择,用户可以在任何 Outlook 客户端上设置自己喜欢的时区。 管理员可以在 Windows 时区格式或 Internet 分配号码机构 (IANA) 时区 (也称为 Olson 时区) 格式设置时区。 Windows 时区是默认格式。
此 GET
操作以管理员设置的格式返回用户的首选时区。 若要将时区设置为某种特定格式(Windows 或 IANA),可以先将相应格式的首选时区更新为邮箱设置。 随后便可以获取相应格式的时区。 也可以在应用中单独管理格式转换。
此 API 可用于以下国家级云部署。
全局服务 | 美国政府 L4 | 美国政府 L5 (DOD) | 由世纪互联运营的中国 |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
权限
为此 API 选择标记为最低特权的权限。 只有在应用需要它时,才使用更高的特权权限。 有关委派权限和应用程序权限的详细信息,请参阅权限类型。 要了解有关这些权限的详细信息,请参阅 权限参考。
权限类型 | 最低特权权限 | 更高特权权限 |
---|---|---|
委派(工作或学校帐户) | MailboxSettings.Read | MailboxSettings.ReadWrite |
委派(个人 Microsoft 帐户) | MailboxSettings.Read | MailboxSettings.ReadWrite |
应用程序 | MailboxSettings.Read | MailboxSettings.ReadWrite |
HTTP 请求
若要获取用户的所有邮箱设置:
GET /me/mailboxSettings
GET /users/{id|userPrincipalName}/mailboxSettings
若要获取特定设置 - 仅自动答复设置、日期格式、区域设置、时间格式、时区、工作时间或用户的收件人或邮箱类型 (例如,用户用途) :
GET /me/mailboxSettings/automaticRepliesSetting
GET /users/{id|userPrincipalName}/mailboxSettings/automaticRepliesSetting
GET /me/mailboxSettings/dateFormat
GET /users/{id|userPrincipalName}/mailboxSettings/dateFormat
GET /me/mailboxSettings/delegateMeetingMessageDeliveryOptions
GET /users/{id|userPrincipalName}/mailboxSettings/delegateMeetingMessageDeliveryOptions
GET /me/mailboxSettings/language
GET /users/{id|userPrincipalName}/mailboxSettings/language
GET /me/mailboxSettings/timeFormat
GET /users/{id|userPrincipalName}/mailboxSettings/timeFormat
GET /me/mailboxSettings/timeZone
GET /users/{id|userPrincipalName}/mailboxSettings/timeZone
GET /me/mailboxSettings/workingHours
GET /users/{id|userPrincipalName}/mailboxSettings/workingHours
GET /me/mailboxSettings/userPurpose
GET /users/{id|userPrincipalName}/mailboxSettings/userPurpose
可选的查询参数
此方法支持一些 OData 查询参数 来帮助自定义响应。
请求标头
名称 | 类型 | 说明 |
---|---|---|
Authorization | string | 持有者 {token}。 必填。 详细了解 身份验证和授权。 |
请求正文
请勿提供此方法的请求正文。
响应
如果成功,此方法在响应正文中返回 200 OK
响应代码和以下请求对象之一:
- mailboxSettings 对象
- automaticRepliesSetting 对象
- 字符串(适用于 dateFormat)
- delegateMeetingMessageDeliveryOptions) 的字符串 (
- localeInfo 对象
- 字符串(适用于 timeFormat)
- 字符串(适用于 timeZone)
- workingHours
- userPurpose
示例
示例 1:获取已登录用户邮箱的所有邮箱设置
获取已登录用户邮箱的所有邮箱设置,其中包括自动答复、日期格式、区域设置 (语言和国家/地区) 、时间格式、时区、工作时间和用户用途的设置。
请求
以下示例显示了一个请求。
GET https://graph.microsoft.com/v1.0/me/mailboxSettings
响应
下面是包含已登录用户的所有邮箱设置的响应示例。
注意:为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Me/mailboxSettings",
"automaticRepliesSetting": {
"status": "Scheduled",
"externalAudience": "All",
"scheduledStartDateTime": {
"dateTime": "2016-03-14T07:00:00.0000000",
"timeZone": "UTC"
},
"scheduledEndDateTime": {
"dateTime": "2016-03-28T07:00:00.0000000",
"timeZone": "UTC"
},
"internalReplyMessage": "<html>\n<body>\n<p>I'm at our company's worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n",
"externalReplyMessage": "<html>\n<body>\n<p>I'm at the Contoso worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n"
},
"timeZone":"UTC",
"language":{
"locale":"en-US",
"displayName":"English (United States)"
},
"workingHours":{
"daysOfWeek":[
"monday",
"tuesday",
"wednesday",
"thursday",
"friday"
],
"startTime": "08:00:00.0000000",
"endTime": "17:00:00.0000000",
"timeZone":{
"name":"Pacific Standard Time"
}
},
"userPurpose": {
"value": "user"
},
"dateFormat": "MM/dd/yyyy",
"timeFormat": "hh:mm tt",
"delegateMeetingMessageDeliveryOptions": "sendToDelegateOnly"
}
示例 2:专门获取已登录用户邮箱的自动答复设置
请求
以下示例显示了一个请求。
GET https://graph.microsoft.com/v1.0/me/mailboxSettings/automaticRepliesSetting
响应
下面是仅包含自动答复设置的响应示例。
注意:为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Me/mailboxSettings/automaticRepliesSetting",
"status": "alwaysEnabled",
"externalAudience": "None",
"scheduledStartDateTime": {
"dateTime": "2016-03-19T02:00:00.0000000",
"timeZone": "UTC"
},
"scheduledEndDateTime": {
"dateTime": "2016-03-20T02:00:00.0000000",
"timeZone": "UTC"
},
"internalReplyMessage": "<html>\n<body>\n<p>I'm at our company's worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n",
"externalReplyMessage": "<html>\n<body>\n<p>I'm at the Contoso worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n"
}
示例 3:获取已登录用户邮箱的工作时间设置
请求
以下示例显示了一个请求。
GET https://graph.microsoft.com/v1.0/me/mailboxSettings/workingHours
响应
下面是仅包含工作时间设置的响应示例。 请注意,用户的工作时间在自定义时区内。
注意:为了提高可读性,可能缩短了此处显示的响应对象。
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context":"https://graph.microsoft.com/v1.0/$metadata#users('94447c6e-ea4c-494c-a9ed-d905e366c5cb')/mailboxSettings/workingHours",
"daysOfWeek":[
"monday",
"tuesday",
"wednesday",
"thursday",
"friday",
"saturday"
],
"startTime":"09:00:00.0000000",
"endTime":"18:30:00.0000000",
"timeZone":{
"@odata.type":"#microsoft.graph.customTimeZone",
"bias":-200,
"name":"Customized Time Zone",
"standardOffset":{
"time":"02:00:00.0000000",
"dayOccurrence":4,
"dayOfWeek":"sunday",
"month":5,
"year":0
},
"daylightOffset":{
"daylightBias":-100,
"time":"02:00:00.0000000",
"dayOccurrence":2,
"dayOfWeek":"sunday",
"month":10,
"year":0
}
}
}
示例 4:专门获取已登录用户邮箱的用户用途设置
请求
以下示例显示了一个请求。
GET https://graph.microsoft.com/v1.0/me/mailboxSettings/userPurpose
响应
下面是仅包含 用户用途 设置的响应示例。
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('622eaaff-0683-4862-9de4-f2ec83c2bd98')/mailboxSettings/userPurpose",
"value": "user"
}