用途:此技能用于通过 Google Calendar API 与 Google 日历交互,采用 curl 命令行方式调用 API,并借助 OAuth2 访问令牌进行授权,实现对日历事件的查看与管理。
主要能力:
- 列出即将到来的事件:调用 Google Calendar API 的 events 列表接口,指定 maxResults、timeMin(按当前 UTC 时间过滤)、orderBy=startTime 和 singleEvents=true,并使用 jq 提取 summary、start.dateTime 与 end.dateTime 等字段。
- 创建事件:向 primary 日历的 events 端点发送 POST 请求,携带 JSON 正文,包含 summary、start.dateTime 与 end.dateTime,返回 id、summary 和 htmlLink。
- 删除事件:向指定事件 ID 的端点发送 DELETE 请求,用于删除事件。
使用方式:需要设置环境变量 GOOGLE_ACCESS_TOKEN,其值为具有 calendar scope 的 OAuth2 访问令牌。所有请求均在 Authorization 头中以 Bearer 方式携带该令牌。资料提供以下命令示例(原样保留):
列出即将到来的事件:
curl -s -H "Authorization: Bearer $GOOGLE_ACCESS_TOKEN"
"https://www.googleapis.com/calendar/v3/calendars/primary/events?maxResults=10&timeMin=$(date -u +%Y-%m-%dT%H:%M:%SZ)&orderBy=startTime&singleEvents=true"
| jq '.items[] | {summary, start: .start.dateTime, end: .end.dateTime}'
创建事件:
curl -s -X POST
-H "Authorization: Bearer $GOOGLE_ACCESS_TOKEN"
-H "Content-Type: application/json"
"https://www.googleapis.com/calendar/v3/calendars/primary/events"
-d '{
"summary": "Meeting with team",
"start": {"dateTime": "2025-01-15T10:00:00-05:00"},
"end": {"dateTime": "2025-01-15T11:00:00-05:00"}
}' | jq '{id, summary, htmlLink}'
删除事件:
curl -s -X DELETE
-H "Authorization: Bearer $GOOGLE_ACCESS_TOKEN"
"https://www.googleapis.com/calendar/v3/calendars/primary/events/EVENT_ID"
注意事项:令牌刷新在外部的 SaaS 凭据存储中处理,不在本技能内完成。资料特别提醒,在创建或删除事件之前应始终进行确认。
适用场景:适用于需要通过命令行或脚本化方式操作 Google 日历的事件列表、创建与删除任务的场景,例如在自动化流程或命令行工作流中管理日程。
限制:资料未提供认证令牌的获取方式、权限范围细节、价格或平台信息;所有未知信息暂未提供。