Calendar API logo

Calendar API

Calendar API

正常免费analyticsGoogle

Google Calendar API 让应用程序化创建、读取、更新日历事件,是日程类应用最常用的集成。

访问站点 ↗健康巡检 9 小时前
适合什么时候用

配额慷慨且按用户隔离

先注意什么

必须走 OAuth,不能用简单 API key 操作用户数据

第一步先查

到 console.cloud.google.com 启用 Calendar API,配置 OAuth 凭证。用户授权后拿 access_token,调 calendars.list / events.insert 等端点。需要 scope:https://www.googleapis.com/auth/calendar 或更窄的 calendar.events。

认证
oauth
CORS
不支持
HTTPS
注册
需要
延迟
48 ms
协议
REST
计费
free

可用率 · 30 天窗口

巡检: 1可用率: 100%平均延迟: 48ms
01

关于这个 API

Google Calendar API 提供完整的日历编程能力:管理日历列表、创建与修改事件、订阅变更、处理 ACL 共享。在 Google Workspace 生态中它常与 Gmail、Drive、Meet API 联用——例如自动在事件中插入 Meet 会议链接,或把 Drive 附件挂到事件上。

事件模型最值得注意的点是 recurring events:一组重复事件由一个 master event 加上具体的实例组成。修改时要明确是改整个系列、改单次实例、还是把后续都改成新规则——API 通过 sendUpdates、updateMode 等参数区分。时区处理也是高频坑:每个事件可指定独立时区,跨区域协调时应优先用 IANA 时区名而非 UTC offset。

02

你可以做什么

  • 1为应用嵌入"加入到 Google Calendar"按钮
  • 2同步外部排班系统到日历
  • 3搭建会议预约工具自动创建事件
  • 4订阅他人公开日历做监控
  • 5推送提醒到 Google Calendar 触发通知
03

优劣对比

优点

  • 配额慷慨且按用户隔离
  • webhook(push notifications)实时推送变更
  • 与 Workspace 其他 API 共享 OAuth scope 模型
  • recurring events、time zones 处理完备

注意事项

  • 必须走 OAuth,不能用简单 API key 操作用户数据
  • recurring event 修改需理解 instance vs series 区别
  • 部分写操作有更严格速率限制
04

示例请求

通用模板 — 实际 endpoint 请查阅文档替换 <endpoint>。
curl https://google.com/<endpoint> \
  -H "Authorization: Bearer $ACCESS_TOKEN"
05

快速开始

到 console.cloud.google.com 启用 Calendar API,配置 OAuth 凭证。用户授权后拿 access_token,调 calendars.list / events.insert 等端点。需要 scope:https://www.googleapis.com/auth/calendar 或更窄的 calendar.events。

06

常见问题

API 调用免费吗?+

免费使用;配额按 quota units 计算,普通应用极难触达。

如何监听日历变更?+

用 events.watch 订阅 webhook(push notifications),Google 会向你配置的 HTTPS 端点推送变更。

能修改用户私有事件吗?+

需要用户授予对应 OAuth scope,且事件 ACL 允许;只读 scope 无法写入。

怎么处理跨时区事件?+

事件中的 timeZone 字段用 IANA 名称(如 Asia/Shanghai),不要用 UTC offset,否则 DST 切换会出错。

07

技术细节

CORS: NoHTTPS: Yes注册: Yes开源: No
认证方式
oauth
计费
free
协议
REST
SDK
python, javascript, java, go, ruby
响应时间
48 ms
上次巡检
2026/5/12 07:37:30
08

接口端点

从 OpenAPI spec 自动解析。显示 12 / 37 个未弃用端点。

POST
/calendarscalendars
DELETE
/calendars/{calendarId}calendars
calendarId:path*
GET
/calendars/{calendarId}calendars
calendarId:path*
PATCH
/calendars/{calendarId}calendars
calendarId:path*
PUT
/calendars/{calendarId}calendars
calendarId:path*
GET
/calendars/{calendarId}/aclacl
calendarId:path*maxResults:querypageToken:queryshowDeleted:querysyncToken:query
POST
/calendars/{calendarId}/aclacl
calendarId:path*sendNotifications:query
DELETE
/calendars/{calendarId}/acl/{ruleId}acl
calendarId:path*ruleId:path*
GET
/calendars/{calendarId}/acl/{ruleId}acl
calendarId:path*ruleId:path*
PATCH
/calendars/{calendarId}/acl/{ruleId}acl
calendarId:path*ruleId:path*sendNotifications:query
PUT
/calendars/{calendarId}/acl/{ruleId}acl
calendarId:path*ruleId:path*sendNotifications:query
POST
/calendars/{calendarId}/acl/watchacl
calendarId:path*maxResults:querypageToken:queryshowDeleted:querysyncToken:query

另有 25 个端点未显示,详见 OpenAPI spec。

09

标签

10

更多来自 Google 的 API