2026-02-25T14:00:00+08:00ou_...,群 oc_...,会议室 omm_...,邮箱 email@...用户意图工具action必填参数强烈建议常用可选创建会议feishu_calendar_eventcreatesummary, start_time, end_timeuser_open_idattendees, description, location查某时间段日程feishu_calendar_eventliststart_time, end_time--改日程时间feishu_calendar_eventpatchevent_id, start_time/end_time-summary, description搜关键词找会feishu_calendar_eventsearchquery--回复邀请feishu_calendar_eventreplyevent_id, rsvp_status--查重复日程实例feishu_calendar_eventinstancesevent_id, start_time, end_time--查忙闲feishu_calendar_freebusylisttime_min, time_max, user_ids[]--邀请参会人feishu_calendar_event_attendeecreatecalendar_id, event_id, attendees[]--删除参会人feishu_calendar_event_attendeebatch_deletecalendar_id, event_id, user_open_ids[]--
工具使用用户身份:日程创建在用户主日历上,用户本人能看到。
但为什么还要传 user_open_id:将发起人也添加为 参会人,确保:
如果不传:
工具已默认设置 attendee_ability: "can_modify_event",参会人可以编辑日程和管理参与者。
权限值能力none无权限can_see_others可查看参与人列表can_invite_others可邀请他人can_modify_event可编辑日程(推荐)
user_open_id = SenderIdattendees[].id = "ou_xxx"user_open_ids = ["ou_xxx"](工具已优化,直接传 open_id 即可)⚠️ ID 格式区分:
ou_xxx:用户的 open_id( 你应该使用的)user_xxx:日程内部的 attendee_id(list 接口返回,仅用于内部记录)添加会议室类型参会人后,会议室进入异步预约流程:
rsvp_status: "needs_action"(预约中)accept(成功)或 decline(失败)查询预约结果:使用 feishu_calendar_event_attendee.list 查看 rsvp_status。
⚠️ 重要: instances action 仅对重复日程有效,必须满足:
recurrence 字段)如何判断:
get action 获取日程详情recurrence 字段且不为空instances 获取实例列表json
{
"action": "create",
"summary": "项目复盘会议",
"description": "讨论 Q1 项目进展",
"start_time": "2026-02-25 14:00:00",
"end_time": "2026-02-25 15:30:00",
"user_open_id": "ou_aaa",
"attendees": [
{"type": "user", "id": "ou_bbb"},
{"type": "user", "id": "ou_ccc"},
{"type": "resource", "id": "omm_xxx"}
]
}
json
{
"action": "list",
"start_time": "2026-02-25 00:00:00",
"end_time": "2026-03-03 23:59:00"
}
json
{
"action": "list",
"time_min": "2026-02-25 09:00:00",
"time_max": "2026-02-25 18:00:00",
"user_ids": ["ou_aaa", "ou_bbb", "ou_ccc"]
}
注意:user_ids 是数组,支持 1-10 个用户。当前不支持会议室忙闲查询。
json
{
"action": "patch",
"event_id": "xxx_0",
"start_time": "2026-02-25 15:00:00",
"end_time": "2026-02-25 16:00:00"
}
json
{
"action": "search",
"query": "项目复盘"
}
json
{
"action": "reply",
"event_id": "xxx_0",
"rsvp_status": "accept"
}
错误现象根本原因解决方案发起人不在参会人列表中未传 user_open_id强烈建议传 user_open_id = SenderId参会人看不到其他参会人attendee_ability 权限不足工具已默认设置 can_modify_event时间不对使用了 Unix 时间戳改用 ISO 8601 格式(带时区): 2024-01-01T00:00:00+08:00**会议室显示"预约中"**会议室预约是异步的等待几秒后用 list 查询 rsvp_status修改日程报权限错误当前用户不是组织者,且日程未设置可编辑权限确保日程创建时设置了 attendee_ability: "can_modify_event"无法查看参会人列表当前用户无查看权限确保是组织者或日程设置了 can_see_others 以上权限
飞书日历采用 三层架构:
text
日历(Calendar)
└── 日程(Event)
└── 参会人(Attendee)
关键理解:
attendee_ability 参数控制参会人能否编辑日程、邀请他人、查看参与人列表type: "user" + id: "ou_xxx" — 飞书用户(使用 open_id)type: "chat" + id: "oc_xxx" — 飞书群组type: "resource" + id: "omm_xxx" — 会议室type: "third_party" + id: "email@example.com" — 外部邮箱cancelled类型说明能否删除能否修改primary主日历(每个用户/应用一个)❌ 否✅ 是shared共享日历(用户创建并共享)✅ 是✅ 是resource会议室日历❌ 否❌ 否google绑定的 Google 日历❌ 否❌ 否exchange绑定的 Exchange 日历❌ 否❌ 否
状态含义(用户)含义(会议室)needs_action未回复预约中accept已接受预约成功tentative待定-decline拒绝预约失败removed已被移除已被移除
每个日程最多 3000 名参会人
单次添加参会人上限:
主日历不可删除(type 为 primary 的日历)
会议室预约可能失败: