返回顶部
l

limehouse-calendar石灰屋日历

Read and write calendar events with granular per-calendar permissions. Users control which calendars an agent can access and whether it can read, create, update, or delete events.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.1
安全检测
已通过
158
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

limehouse-calendar

日历 API

使用您的 API 密钥验证每个请求:

Authorization: Bearer cal_

API 密钥通过仪表盘的代理选项卡创建,或通过以下设置流程生成。每个密钥都限定于特定日历,并具有细粒度权限:canread(可读取)、cancreate(可创建)、canupdate(可更新)、candelete(可删除)、cancreateinvitees(可创建受邀者)和 canupdateinvitees(可更新受邀者)。



设置(获取 API 密钥)

如果您还没有 cal_ API 密钥,请使用设置流程让用户授权访问:

  1. 1. 创建设置会话(无需认证):

POST https://cal.limehouse.io/api/v1/setup/sessions

响应:{ token: ..., setupurl: https://..., expiresat: ... }

  1. 2. 引导用户在浏览器中打开 setup_url。他们将登录、选择日历并配置权限。
  1. 3. 轮询完成状态(每 3 秒一次):

GET https://cal.limehouse.io/api/v1/setup/sessions/{token}/poll

等待中响应:{ status: pending }
完成时响应:{ status: completed, agenttoken: cal... }

  1. 4. 存储 agent_token 值。这就是您所有后续请求的 API 密钥。

设置会话在 30 分钟后过期。如果代理无法发出 HTTP 请求,请引导用户访问 https://cal.limehouse.io/connect,他们可以在那里手动创建并复制密钥。



获取代理信息

GET /api/v1/agent/me

获取当前代理的元数据,包括其名称、描述、具有逐日历权限的已授权日历,以及用户拥有但代理尚未获得访问权限的日历(connectedcalendarswithout_access)。

响应
json
{
id: 1,
name: My Agent,
description: optional description,
created_at: 2024-01-01T00:00:00,
last_used: 2024-01-02T12:00:00,
permitted_calendars: [
{
calendar_id: 3,
calendar_name: Work,
can_read: true,
can_create: false,
can_update: false,
can_delete: false,
cancreateinvitees: false,
canupdateinvitees: false
}
],
connectedcalendarswithout_access: [
{
calendar_id: 5,
calendar_name: Side Projects
}
]
}

使用 connectedcalendarswithout_access 发现代理可以通过 POST /api/v1/agent/request-permission-change 请求访问权限的日历。



列出可访问的日历

GET /api/v1/agent/calendars

列出代理有权访问的所有日历及其读写权限。

响应 — 日历对象数组:
json
[
{ id: 3, name: Work, color: #4285F4, timezone: America/New_York }
]



列出事件

GET /api/v1/agent/events
GET /api/v1/agent/calendars/{calendar_id}/events

列出日历上的事件,可选择按时间范围过滤。如果未提供 calendarid,则返回代理具有读取权限的所有日历中的事件。start 和 end 接受完整的 ISO 8601 日期时间(例如 2026-03-05T00:00:00-08:00)或仅日期字符串(例如 2026-03-05),后者会扩展为用户所在时区的全天。需要 canread 权限。使用可选的查询参数过滤结果。

参数类型必需描述
calendar_id整数过滤到特定日历。如果省略,则返回所有可读日历中的事件。
start
ISO 8601 日期时间或日期 | 否 | 事件开始的 ISO 8601 日期时间。当提供了时区参数时,日期时间被解释为该时区的挂钟时间(忽略任何 UTC 偏移)。否则,对于非 UTC 时间,请包含 UTC 偏移,例如 2026-02-26T17:30:00-08:00。无偏移的原始日期时间被视为 UTC。也接受仅日期字符串(例如 2026-03-05),该字符串扩展为用户所在时区的当天开始时间。 |
| end | ISO 8601 日期时间或日期 | 否 | 事件结束的 ISO 8601 日期时间。时区规则与 start_time 相同。也接受仅日期字符串,该字符串扩展为用户所在时区的当天结束时间。 |

响应 — 事件对象数组:
json
[
{
id: 42,
uid: abc123,
calendar_id: 3,
summary: Team standup,
description: Daily sync,
location: Conference Room A,
start_time: 2024-01-15T09:00:00Z,
end_time: 2024-01-15T09:30:00Z,
all_day: false,
recurrence_rule: null,
invitees: [
{email: alice@example.com, name: Alice, rsvp: ACCEPTED},
{email: bob@example.com, name: null, rsvp: NEEDS-ACTION}
],
etag: v1,
created_at: 2024-01-01T00:00:00Z,
updated_at: 2024-01-01T00:00:00Z
}
]



创建事件

POST /api/v1/agent/calendars/{calendar_id}/events

在日历上创建新事件。需要 cancreate 权限。返回 201 Created 及新事件对象。如果 invitees 非空,则还需要 cancreate_invitees 权限。

字段类型必需描述
summary字符串事件标题(1–255 个字符)
description
字符串 | 否 | 事件描述 |
| location | 字符串 | 否 | 事件的物理地址或虚拟会议链接。 |
| start_time | ISO 8601 日期时间 | 是 | 事件开始的 ISO 8601 日期时间。当提供了时区参数时,日期时间被解释为该时区的挂钟时间(忽略任何 UTC 偏移)。否则,对于非 UTC 时间,请包含 UTC 偏移,例如 2026-02-26T17:30:00-08:00。无偏移的原始日期时间被视为 UTC。 |
| endtime | ISO 8601 日期时间 | 是 | 事件结束的 ISO 8601 日期时间。时区规则与 starttime 相同。 |
| all_day | 布尔值 | 否 | 默认值:false |
| timezone | 字符串 | 否 | IANA 时区名称(例如 America/LosAngeles)。提供时,starttime 和 end_time 被解释为该时区的挂钟时间,并自动处理夏令时。 |
| recurrence_rule| 字符串 | 否 | 重复事件的 RRULE 字符串(例如 FREQ=WEEKLY;BYDAY=MO)。 |
| invitees | 数组 | 否 | 参与者列表。每个项目:{email: ..., name: ...}。对于 Google 连接的日历,Google 将发送邀请邮件(sendUpdates=all)。 |

示例请求体
json
{
summary: Team standup,
description: Daily sync,
location: Conference Room A,
start_time: 2024-01-15T09:00:00,
end_time: 2024-01-15T09:30:00,
timezone: America/Los_Angeles,
invitees: [
{email: alice@example.com, name: Alice},
{email: bob@example.com}
]
}



更新事件

PUT /api/v1/agent/calendars/{calendarid}/events/{eventid}

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 limehouse-calendar-1776363422 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 limehouse-calendar-1776363422 技能

通过命令行安装

skillhub install limehouse-calendar-1776363422

下载

⬇ 下载 limehouse-calendar v1.0.1(免费)

文件大小: 4.93 KB | 发布时间: 2026-4-17 15:13

v1.0.1 最新 2026-4-17 15:13
- Added _meta.json file to the project.
- No changes to calendar API or functionality; this update is metadata-only.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部