高级日历服务
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
通过高级日历服务,您可以在 Apps 脚本中使用公共 Google Calendar API。与 Apps 脚本的内置日历服务非常相似,此 API 允许脚本访问和修改用户的 Google 日历,包括用户订阅的其他日历。在大多数情况下,内置服务更易于使用,但此高级服务提供了一些额外的功能,包括为各个活动设置背景颜色。
参考
如需详细了解此服务,请参阅公共 Google 日历 API 的参考文档。与 Apps 脚本中的所有高级服务一样,高级日历服务使用的对象、方法和参数均与公共 API 相同。如需了解详情,请参阅方法签名是如何确定的。
如需报告问题并查找其他支持,请参阅日历支持指南。
高级日历服务可以接受 HTTP 请求标头 If-Match
和 If-None-Match
。如需了解详情,请参阅参考文档。
示例代码
以下示例代码使用 API 的版本 3。
创建事件
以下示例演示了如何在用户的默认日历中创建活动。
列出日历
以下示例演示了如何检索用户日历列表中显示的日历的详细信息。
列出活动
以下示例演示了如何列出用户默认日历中接下来 10 个即将到来的活动。
有条件地修改事件
以下示例展示了如何使用 If-Match
标头有条件地更新日历活动。该脚本会创建一个新事件,等待 30 秒,然后仅当自创建事件以来没有任何事件详情发生变化时才更新该事件。
有条件地检索事件
以下示例展示了如何使用 If-None-Match
标头有条件地获取日历活动。该脚本会创建一个新事件,然后轮询该事件的更改,持续 30 秒。每当活动发生变化时,系统都会提取新版本。
同步活动
以下示例演示了如何使用同步令牌检索事件。
如果您在日历高级服务请求中添加同步令牌,则生成的响应只会包含自该令牌生成以来发生更改的项目,从而提高处理效率。如需详细了解同步流程,请参阅高效同步资源。
以下示例使用了上述示例中定义的相同 getRelativeDate(daysOffset, hour)
方法。
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-08-31。
[null,null,["最后更新时间 (UTC):2025-08-31。"],[[["\u003cp\u003eThe Advanced Calendar service in Apps Script allows you to access and modify Google Calendar data using the public Google Calendar API.\u003c/p\u003e\n"],["\u003cp\u003eIt offers features beyond the built-in Calendar service, such as setting event background colors and using HTTP request headers for conditional updates and retrievals.\u003c/p\u003e\n"],["\u003cp\u003eSample code snippets demonstrate various functionalities like creating, listing, and syncing calendar events, and conditionally modifying or retrieving specific events.\u003c/p\u003e\n"],["\u003cp\u003eBefore using this advanced service, ensure it's enabled in your Apps Script project settings.\u003c/p\u003e\n"],["\u003cp\u003eRefer to the Google Calendar API reference documentation and support guide for detailed information and troubleshooting.\u003c/p\u003e\n"]]],[],null,[]]