# 简介

在企业办公场景中，可能存在多个业务系统都配备了日程功能，例如：招聘系统的招聘日程、会议室系统的会议日程、Outlook 邮箱的邮箱日程等。企业成员在多个系统中分散维护日程，可能导致成员无法有效掌握自己的全部日程安排，且有可能在同一时间、不同系统中预约多个会议，造成日程冲突。

基于上述问题，飞书日历可以帮助你构建企业的统一日程入口。你可以通过日历服务以及开放能力（OpenAPI）将企业三方系统的日程数据同步到飞书日历中。成员通过飞书日历日程清晰洞察工作安排，同时，成员之间根据彼此的日程排期，可以更好的组织会议、协同办公。

## 基本概念

飞书日历和日程为包含关系，你可以自行创建一个或多个日历匹配企业的多个系统，在每个日历中均可添加指定日程进行工作安排。在阅读本教程前，建议你先了解有关飞书的日历类型、日程公开范围的相关概念。

### 日历类型

飞书日历分为以下几种类型。

日历类型 | 说明
---|---
全员日历 | 全员日历是由企业管理员所创建，所有成员自动订阅的日历。该类型日历适用于共享放假安排、公开讲座等面向全员的日程信息。管理员在管理后台创建全员日历后，该日历就会自动同步到团队成员的个人日历中。
公共日历 | 公共日历是可以让所有成员都搜到并订阅的日历。订阅该类日历后，企业成员可以查看该日历中的所有日程详情。成员可创建多个公共日历，方便团队共享不同主题、事件的相关信息。
会议室日历 | 会议室日历中会显示会议室的预定情况，方便会议组织者提前查看和安排。
订阅日历 | 你可以通过订阅日历来了解其他成员的日程安排、项目关键时间节点、会议室状态等多方面信息。<br>- 订阅其他成员的个人日历： 方便查看对方忙闲状态，快速邀约沟通时间。<br>- 订阅公共日历：比如公开的项目日历等，方便了解相关进展和关键时间点等。<br>- 订阅会议室日历：方便查看会议室的预定情况。

你可以通过视频了解全员日历与公共日历，参见[1分钟了解公共日历和全员日历（视频）](https://www.feishu.cn/hc/zh-CN/articles/360049067403)。

### 日程公开范围

公开范围 | 说明
---|---
默认的公开范围 | 已订阅当前日程对应日历的成员，如果有权查看该日历中其他日程的详情，则可以看到当前日程的详情。
公开 | 已订阅当前日程对应日历的成员，均可查看相应日程的详情。
私密 | 除非是当前日程的所有者或编辑者，否则订阅当前日程对应日历的成员无法查看当前日程详情。

## 操作流程

本教程通过 [API 调试台工具](https://open.feishu.cn/document/tools-and-resources/api-explorer-guide) 介绍如何使用日历服务的开放 API 在飞书内构建日历日程，调用流程如下。在实际使用过程中，你可以结合企业内三方系统的日程安排，构建匹配的飞书日历日程。例如，为招聘系统创建一个招聘日历，并根据系统内已有的日程数据，构建相匹配的飞书日程。
<!-- 原图：
![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/c3a1e09b8367589de128cefc2a3522ec_TMMqkKBZMC.png?height=664&lazyload=true&maxWidth=750&width=1013) -->

![image.png](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/15bda0b4d928b848ea009316484efc18_ZtUEJ1o7GO.png?height=555&lazyload=true&maxWidth=750&width=1013)
Outlook 以及 Google 日历同步功能可直接在飞书日历中配置，详见[Outlook 日历同步](https://www.feishu.cn/hc/zh-CN/articles/360049067745)及[Google 日历同步](https://www.feishu.cn/hc/zh-cn/articles/360045085934-%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98-%E6%80%8E%E4%B9%88%E5%AF%BC%E5%85%A5%E5%85%B6%E4%BB%96%E6%97%A5%E5%8E%86-#source=search)。

## 实现效果

如下图所示，在日历中添加了企业招聘系统的面试日程，以及 HR 系统的请假日程。

![](//sf3-cn.feishucdn.com/obj/open-platform-opendoc/df7c639f4b26e6fdc64084af9f26bf15_fqXFlaU5Ix.png?height=1070&lazyload=true&maxWidth=750&width=1640)
<!-- 
## 使用到的 API 与事件

### OpenAPI 
-->

## 使用到的 API

**[方法 (API)](https://open.feishu.cn/document/ukTMukTMukTM/uITNz4iM1MjLyUzM)** | 权限要求**调用该 API 所需的权限。开启其中任意一项权限即可调用** | **[访问凭证](https://open.feishu.cn/document/ukTMukTMukTM/uMTNz4yM1MjLzUzM)（选择其一）**
---|---|---
[查询日历列表](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/calendar-v4/calendar/list)<br>`GET` /open-apis/calendar/v4/calendars<br>> 用于分页获得当前身份（应用 / 用户）的日历列表。 | 更新日历及日程信息(calendar:calendar)<br>获取日历信息(calendar:calendar.calendar:readonly)<br>获取日历、日程及忙闲信息(calendar:calendar:readonly) | `tenant_access_token`<br>`user_access_token`
[查询主日历忙闲信息](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/calendar-v4/freebusy/list)<br>`POST` /open-apis/calendar/v4/freebusy/list<br>> 查询用户主日历或会议室的忙闲信息。 | 更新日历及日程信息(calendar:calendar)<br>获取日历、日程及忙闲信息(calendar:calendar:readonly) | `tenant_access_token`
[创建日程](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/calendar-v4/calendar-event/create)<br>`POST` /open-apis/calendar/v4/calendars/:calendar_id/events<br>> 以当前身份（应用 / 用户）在日历上创建一个日程。 | 更新日历及日程信息(calendar:calendar) | `tenant_access_token`<br>`user_access_token`
[添加日程参与人](https://open.feishu.cn/document/uAjLw4CM/ukTMukTMukTM/reference/calendar-v4/calendar-event-attendee/create)<br>`POST` /open-apis/calendar/v4/calendars/:calendar_id/events/:event_id/attendees<br>> 批量给日程添加参与人。 | 更新日历及日程信息(calendar:calendar) | `tenant_access_token`<br>`user_access_token`

<!-- ### 事件
[日程回复](https://open.feishu.cn/document/ukTMukTMukTM/uEzNxYjLxcTM24SM3EjN) -->
