Outlook 日历 API 概述

Outlook 日历是 Office 365 中 Outlook 消息传递中心的一部分,它也能让你管理电子邮件和联系人、在组织中查找用户相关信息、发起在线对话、共享文件,以及实现小组协作。

为什么与 Outlook 日历集成?

Outlook 日历及其 API 的丰富功能带来了许多应用机会。 以下部分列出了其中的一些机会。

覆盖数以亿计的客户并构建丰富的应用场景

数以百万计的客户使用 Outlook 日历作为集成中心的一部分,他们可以借此有效地沟通和完成任务。 他们可以设置会议、管理电子邮件、查找有关联系人和其他用户的信息,并可在一个位置启动对话或在线会议,比如 Web、移动或桌面设备。 Microsoft Graph 不仅可将应用连接到日历、邮件以及这些客户的联系人数据,还可使应用与 Microsoft 365 的最佳功能进行集成,并支持各种各样的应用场景,以提高工作效率和协作。

Outlook 日历 API 中的大多数功能适用于个人 Microsoft 帐户和工作或学校帐户中的日历。

** 表示仅适用于工作或学校帐户中的 Outlook 日历的专用功能。

自动化约会组织和日历功能

客户希望 Outlook 帮助他们合理安排用于工作、家庭和个人活动的时间。 Microsoft Graph REST API 与客户体验保持密切对等,以便应用可以自然地创建、管理和响应事件:

  • 在 Outlook 中,客户可以针对工作、家庭或其他目的创建单个日历,并在日历组中加以组织。 他们可以启用免费的生日节假日日历,提醒他们联系人的生日和本地假日。 也可以添加匹配其兴趣的日历,如有关运动队和电视节目的日历。 客户可以选择和叠加日历,并在同一个视图中查看他们的事件。 通过日历 API,你的应用可以类似地在日历组中组织日历,并与感兴趣的日历进行交互,就像用户邮箱中的任何其他日历一样。

  • Outlook 客户可通过一致的方式将类别应用到事件、邮件、联系人、任务和组文章中来加强组织和发现。 使用日历 API,你可以访问和定义用户的主类别列表,从而开发其他创造性的应用场景。 例如,体育俱乐部可以组织一场体育赛事,并提供一款应用,将每一项运动的电子邮件和事件按器自己的颜色类别区分开来。 对于诸如不可预见的时间表变化等最新新闻,这款应用还可以设置这些事件和电子邮件的重要性属性来提醒用户。

  • 在日历文件夹中,可以创建更新单个实例事件,或安排和维护定期事件。 你可以让客户响应会议请求,并使用关联的事件导航属性暂停消除提醒

帮助客户保持同步并浏览他们的日期

日历 API 可帮助客户浏览他们的日期并提高效率:

  • 可以通过订阅用户日历中的更改通知跟踪事件更改使应用本地存储保持同步。
  • 可以基于轻型提醒视图显示用户日程。
  • 可以方便地让用户接受并通过其 webLink 属性参与在线会议,这会在 Outlook 网页版中打开会议。
  • 外出途中,用户还可以暂时接受拒绝会议。

增强协作

  • 在 Outlook 中,客户可以与他人共享日历并授予读取、写入或删除日历内容的权限。 或者,他们可以委派一个日历,让另一个客户代表他们响应会议请求。 通过编程方式,虽然无法代表用户启动共享或委派操作,但可以使用一组属性来验证共享状态并启用有关共享或委派日历的应用场景:canEditcanSharecanViewPrivateItemsisSharedisSharedWithMe
  • 日历 API 使你能够获得已登录用户或将其日历共享或委派给已登录用户的用户的日历项目。 例如,如果 Garth 与 John 共享日历,或者如果 Garth 向 John 委派了访问权限,则来自 John 的委派权限将授予你对 Garth 共享日历和内容的读取访问权限。
  • Office 365 组可使组成员方便地直接在 Outlook 中进行协作、访问组对话和日历。 除了组日历和用户日历之间的一些细微差异外,通过日历 API 可像与用户日历那样与组日历进行交互。 请参阅日历资源了解详细信息**

智能日程安排

Outlook 和日历 API 提供了很多智能便利的功能来安排事件:

  • 在 Outlook 日历应用设置中,客户可以启用在电子邮件中自动添加事件,如航班、酒店或就餐预订,以及开具发票等。 添加后,即可像用户邮箱中的任何其他事件那样与这些事件交互,并借此 Outlook 功能生成创造性应用场景。
  • 在 Outlook 中,预订会议室就像添加事件与会者那样简单。 日历 API 将会议室表示为 emailAddress 对象。 可以获取租户中可用的会议室获取会议室列表。 若要安排在特定会议室召开会议,请将它分配到 eventlocation 属性。**
  • 查找用户和资源在特定时间段内的忙/闲信息。 然后,可以将此类数据应用于各种方案,包括资源计划和事件日程安排。**
  • 如果方案涉及安排在最佳时间召开会议,不妨使用 findMeetingTimes 标识可召开会议的可能时间或地点findMeetingTimes 函数会考虑与会者的忙/闲状态,以及所提供的任何首选会议室、时间和其他限制。 如果首次尝试未返回常见的会议时间,请检查原因,调整条件并再次调用 findMeetingTimes**

跨多个地点和时区的电话会议

在全球化背景下,当今的商务会议通常涉及来自不同地点和时区的与会者。 下面介绍了如何使用日历 API 来管理此类会议:

  • 如 Outlook 中的一个示例所示,客户可以组织一场会议,并包括从西雅图会议室、巴黎咖啡店和中国家庭办公室加入的与会者。 通过编程方式,事件 locations 属性(location 对象集合)可反映每个 locationdisplayNamelocationType 中此级别的详细信息。 请参阅示例
  • Outlook 为客户提供了组织事件和针对每个事件的开始和结束时间指定一个时区的灵活性。 为了支持这种灵活性,默认情况下,日历 API 会以 UTC 格式返回事件开始结束时间,并提供 originalStartTimeZoneoriginalEndTimeZone 属性,以记录创建事件时使用的时区。
  • 或者,可以指定 Prefer: outlook.timezone="{time zone name}" 标头,以便 GET 事件操作返回指定时区的开始结束时间。 时区名称可以是 Windows 支持的任何名称,也可以是此列表上的这些名称。 请参阅使用中的 Prefer 标头示例
  • 支持联机会议提供程序的组织(例如 Microsoft Teams 和 Skype)可以设置 Outlook 日历以使用这些提供程序。 可方便地组织或以在线会议的形式参加这些日历中的事件

使用位置感知构建应用并提供智能上下文

使用 位置 API 来帮助用户导航到某个位置,或根据用户的位置提供智能解决方案。 下面是一些示例方案:

  • 在日历事件中包含地点详细信息,以帮助用户浏览当天事件并提高工作效率。**
  • 餐饮应用程序可以使用位置 API 来协助场地导航和设置。**
  • 自动将会前详细信息通过电子邮件发送给与会者,并提供有关如何到达会议室的地图。**
  • 设置接收机器人助理,以提供有关建筑物中的特定房间的信息。**

根据你的应用方案,你可以在 Outlook 上下文中使用位置 API,或独立于 Outlook 进行使用。

利用 Microsoft Graph 的社交智能以及其他开发者的便利性

使用 Microsoft Graph 中的 人员 API 连接到 人员数据,这是基于用户的通信和协作模式以及业务关系的。 你可以实现诸如人员选取器等控件,并在代表用户组织会议时建议与用户相关的人员。

节省在外部数据存储中存储和管理应用数据的开销。 使用 Microsoft Graph,可以在各个资源实例中将自定义应用数据存储为开放扩展。 如果需要键入数据,或者希望能够共享类型化架构,可以将自定义应用数据存储在 架构扩展 中。

数据在什么位置?

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

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

API 参考

在查找此服务的 API 参考?