UNPKG

@larksuiteoapi/lark-mcp

Version:
950 lines (949 loc) 104 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.calendarV4Tools = exports.calendarV4TimeoffEventDelete = exports.calendarV4TimeoffEventCreate = exports.calendarV4SettingGenerateCaldavConf = exports.calendarV4FreebusyList = exports.calendarV4ExchangeBindingGet = exports.calendarV4ExchangeBindingDelete = exports.calendarV4ExchangeBindingCreate = exports.calendarV4CalendarUnsubscription = exports.calendarV4CalendarUnsubscribe = exports.calendarV4CalendarSubscription = exports.calendarV4CalendarSubscribe = exports.calendarV4CalendarSearch = exports.calendarV4CalendarPrimary = exports.calendarV4CalendarPatch = exports.calendarV4CalendarList = exports.calendarV4CalendarGet = exports.calendarV4CalendarEventUnsubscription = exports.calendarV4CalendarEventSubscription = exports.calendarV4CalendarEventSearch = exports.calendarV4CalendarEventReply = exports.calendarV4CalendarEventPatch = exports.calendarV4CalendarEventMeetingMinuteCreate = exports.calendarV4CalendarEventMeetingChatDelete = exports.calendarV4CalendarEventMeetingChatCreate = exports.calendarV4CalendarEventList = exports.calendarV4CalendarEventInstances = exports.calendarV4CalendarEventInstanceView = exports.calendarV4CalendarEventGet = exports.calendarV4CalendarEventDelete = exports.calendarV4CalendarEventCreate = exports.calendarV4CalendarEventAttendeeList = exports.calendarV4CalendarEventAttendeeCreate = exports.calendarV4CalendarEventAttendeeChatMemberList = exports.calendarV4CalendarEventAttendeeBatchDelete = exports.calendarV4CalendarDelete = exports.calendarV4CalendarCreate = exports.calendarV4CalendarAclUnsubscription = exports.calendarV4CalendarAclSubscription = exports.calendarV4CalendarAclList = exports.calendarV4CalendarAclDelete = exports.calendarV4CalendarAclCreate = void 0; const zod_1 = require("zod"); exports.calendarV4CalendarAclCreate = { project: 'calendar', name: 'calendar.v4.calendarAcl.create', sdkName: 'calendar.v4.calendarAcl.create', path: '/open-apis/calendar/v4/calendars/:calendar_id/acls', httpMethod: 'POST', description: '[Feishu/Lark]-日历-日历访问控制-创建访问控制-调用该接口以当前身份(应用或用户)为指定日历添加访问控制,即日历成员权限', accessTokens: ['tenant', 'user'], schema: { data: zod_1.z.object({ role: zod_1.z .enum(['unknown', 'free_busy_reader', 'reader', 'writer', 'owner']) .describe('对日历的访问权限。 Options:unknown(Unkonwn 未知权限。unknown 是 role 参数枚举值之一,但 role 作为请求参数时,不支持传入 unknown。),free_busy_reader(FreeBusyReader 游客,只能看到忙碌、空闲信息。),reader(订阅者,可查看所有日程详情。),writer(编辑者,可创建及修改日程。),owner(管理员,可管理日历及共享设置。)'), scope: zod_1.z .object({ type: zod_1.z .literal('user') .describe('权限生效范围的类型。**注意**:目前只支持 `user`,且当 `type=user` 时,user_id 需要传入和 user_id_type 一致的用户 ID 类型。例如,`user_id_type=open_id` 时,user_id 需要传入用户的 open_id。 Options:user(用户)'), user_id: zod_1.z .string() .describe('用户 ID。当 `type=user` 时,必须设置该参数值。关于用户 ID 的更多介绍可参见[用户相关的 ID 概念]') .optional(), }) .describe('权限的生效范围'), }), params: zod_1.z .object({ user_id_type: zod_1.z.enum(['open_id', 'union_id', 'user_id']).describe('用户ID类型').optional() }) .optional(), path: zod_1.z.object({ calendar_id: zod_1.z .string() .describe('需要添加访问控制的日历 ID。创建共享日历时会返回日历 ID。你也可以调用以下接口获取某一日历的 ID。- [查询主日历信息]- [查询日历列表]- [搜索日历]'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarAclDelete = { project: 'calendar', name: 'calendar.v4.calendarAcl.delete', sdkName: 'calendar.v4.calendarAcl.delete', path: '/open-apis/calendar/v4/calendars/:calendar_id/acls/:acl_id', httpMethod: 'DELETE', description: '[Feishu/Lark]-日历-日历访问控制-删除访问控制-调用该接口以当前身份(应用或用户)删除指定日历内的某一访问控制,即成员权限', accessTokens: ['tenant', 'user'], schema: { path: zod_1.z.object({ calendar_id: zod_1.z .string() .describe('需要删除访问控制的日历 ID。创建共享日历时会返回日历 ID。你也可以调用以下接口获取某一日历的 ID。- [查询主日历信息]- [查询日历列表]- [搜索日历]'), acl_id: zod_1.z .string() .describe('访问控制 ID。为日历创建访问控制时会返回访问控制 ID。你也可以调用[获取访问控制列表]接口,获取指定日历内的访问控制信息'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarAclList = { project: 'calendar', name: 'calendar.v4.calendarAcl.list', sdkName: 'calendar.v4.calendarAcl.list', path: '/open-apis/calendar/v4/calendars/:calendar_id/acls', httpMethod: 'GET', description: '[Feishu/Lark]-日历-日历访问控制-获取访问控制列表-调用该接口以当前身份(应用或用户)获取指定日历的访问控制列表', accessTokens: ['tenant', 'user'], schema: { params: zod_1.z .object({ user_id_type: zod_1.z.enum(['open_id', 'union_id', 'user_id']).describe('用户ID类型').optional(), page_token: zod_1.z .string() .describe('分页标记,第一次请求不填,表示从头开始遍历;分页查询结果还有更多项时会同时返回新的 page_token,下次遍历可采用该 page_token 获取查询结果') .optional(), page_size: zod_1.z .number() .describe('分页大小,即一次请求返回的最大条目数。**注意**:最小值 10,即取值小于 10 时统一按 10 处理') .optional(), }) .optional(), path: zod_1.z.object({ calendar_id: zod_1.z .string() .describe('日历 ID。创建共享日历时会返回日历 ID。你也可以调用以下接口获取某一日历的 ID。- [查询主日历信息]- [查询日历列表]- [搜索日历]'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarAclSubscription = { project: 'calendar', name: 'calendar.v4.calendarAcl.subscription', sdkName: 'calendar.v4.calendarAcl.subscription', path: '/open-apis/calendar/v4/calendars/:calendar_id/acls/subscription', httpMethod: 'POST', description: '[Feishu/Lark]-日历-日历访问控制-订阅日历访问控制变更事件-调用该接口以用户身份订阅指定日历下的访问控制变更事件', accessTokens: ['user'], schema: { path: zod_1.z.object({ calendar_id: zod_1.z .string() .describe('日历ID。创建共享日历时会返回日历 ID。你也可以调用以下接口获取某一日历的 ID。- [查询主日历信息]- [查询日历列表]- [搜索日历]'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarAclUnsubscription = { project: 'calendar', name: 'calendar.v4.calendarAcl.unsubscription', sdkName: 'calendar.v4.calendarAcl.unsubscription', path: '/open-apis/calendar/v4/calendars/:calendar_id/acls/unsubscription', httpMethod: 'POST', description: '[Feishu/Lark]-日历-日历访问控制-取消订阅日历访问控制变更事件-调用该接口以用户身份取消订阅指定日历下的访问控制变更事件', accessTokens: ['user'], schema: { path: zod_1.z.object({ calendar_id: zod_1.z .string() .describe('日历ID。创建共享日历时会返回日历 ID。你也可以调用以下接口获取某一日历的 ID。- [查询主日历信息]- [查询日历列表]- [搜索日历]'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarCreate = { project: 'calendar', name: 'calendar.v4.calendar.create', sdkName: 'calendar.v4.calendar.create', path: '/open-apis/calendar/v4/calendars', httpMethod: 'POST', description: '[Feishu/Lark]-日历-日历管理-创建共享日历-调用该接口为当前身份(应用或用户)创建一个共享日历', accessTokens: ['tenant', 'user'], schema: { data: zod_1.z .object({ summary: zod_1.z.string().describe('日历标题。**默认值**:空').optional(), description: zod_1.z.string().describe('日历描述。**默认值**:空').optional(), permissions: zod_1.z .enum(['private', 'show_only_free_busy', 'public']) .describe('日历公开范围。**默认值**:show_only_free_busy Options:private(私密),show_only_free_busy(ShowOnlyFreeBusy 仅展示忙闲信息),public(公开,他人可查看日程详情)') .optional(), color: zod_1.z .number() .describe('日历颜色,取值通过颜色 RGB 值的 int32 表示,其中,24 ~ 31 位为透明度,16 ~ 23 位为红,8 ~ 15 位为绿,0 ~ 7 位为蓝。例如,-11034625 表示 RGB 值 (87, 159, 255)。**注意**:- 取值范围为 -2^31 ~ 2^31-1- 日历颜色会映射到飞书客户端色板上最接近的一种颜色进行展示。- 该颜色仅对当前身份生效。**默认值**:-14513409') .optional(), summary_alias: zod_1.z .string() .describe('日历备注名,设置该字段后(包括后续修改该字段)仅对当前身份生效。**默认值**:空') .optional(), }) .optional(), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarDelete = { project: 'calendar', name: 'calendar.v4.calendar.delete', sdkName: 'calendar.v4.calendar.delete', path: '/open-apis/calendar/v4/calendars/:calendar_id', httpMethod: 'DELETE', description: '[Feishu/Lark]-日历-日历管理-删除共享日历-调用该接口以当前身份(应用或用户)删除某一指定的共享日历', accessTokens: ['tenant', 'user'], schema: { path: zod_1.z.object({ calendar_id: zod_1.z .string() .describe('日历 ID。创建共享日历时会返回日历 ID。你也可以调用以下接口获取某一日历的 ID。- [查询主日历信息]- [查询日历列表]- [搜索日历]'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarEventAttendeeBatchDelete = { project: 'calendar', name: 'calendar.v4.calendarEventAttendee.batchDelete', sdkName: 'calendar.v4.calendarEventAttendee.batchDelete', path: '/open-apis/calendar/v4/calendars/:calendar_id/events/:event_id/attendees/batch_delete', httpMethod: 'POST', description: '[Feishu/Lark]-日历-日程参与人管理(含会议室)-删除日程参与人-调用该接口以当前身份(应用或用户)删除指定日程的一个或多个参与人', accessTokens: ['tenant', 'user'], schema: { data: zod_1.z .object({ attendee_ids: zod_1.z .array(zod_1.z.string()) .describe('需要删除的参与人 ID 列表。添加日程参与人时,会返回参与人 ID(attendee_id),你也可以调用[获取日程参与人列表]接口,查询指定日程的参与人 ID。- 一次最多删除500个参与人(与delete_ids一起计算)') .optional(), delete_ids: zod_1.z .array(zod_1.z.object({ type: zod_1.z .enum(['user', 'chat', 'resource', 'third_party']) .describe('参与人类型。 Options:user(用户),chat(群组),resource(会议室),third_party(ThirdParty 外部邮箱)') .optional(), user_id: zod_1.z .string() .describe('用户 ID。当选择用户类型参与人(type 取值为 user)时,需要传入该参数。传入的用户 ID 类型需要和 user_id_type 的值保持一致') .optional(), chat_id: zod_1.z .string() .describe('群组 ID。当选择群组类型参与人(type 取值为 chat)时,需要传入该参数') .optional(), room_id: zod_1.z .string() .describe('会议室 ID。当选择会议室类型参与人(type 取值为 resource)时,需要传入该参数') .optional(), third_party_email: zod_1.z .string() .describe('邮箱地址。当选择外部邮箱类型参与人(type 取值为 third_party)时,需要传入该参数') .optional(), })) .describe('参与人类型对应的 ID,该 ID 是 attendee_ids 字段的补充字段。- 一次最多删除500个参与人(与attendee_ids一起计算)') .optional(), need_notification: zod_1.z .boolean() .describe('删除日程参与人时,是否向参与人发送 Bot 通知。**可选值有**:- true(默认值):发送- false:不发送') .optional(), instance_start_time_admin: zod_1.z .string() .describe('使用管理员身份访问时,要修改的实例(仅用于重复日程修改其中的一个实例,非重复日程无需填此字段)') .optional(), is_enable_admin: zod_1.z .boolean() .describe('是否启用会议室管理员身份(需先在管理后台设置某人为会议室管理员)。**可选值有**:- true:启用- false(默认值):不启用') .optional(), }) .optional(), params: zod_1.z .object({ user_id_type: zod_1.z.enum(['open_id', 'union_id', 'user_id']).describe('用户ID类型').optional() }) .optional(), path: zod_1.z.object({ calendar_id: zod_1.z.string().describe('日程对应的日历 ID。了解更多,参见[日历 ID 说明]'), event_id: zod_1.z .string() .describe('日程 ID。创建日程时会返回日程 ID。你也可以调用以下接口获取某一日历的 ID。- [获取日程列表]- [搜索日程]'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarEventAttendeeChatMemberList = { project: 'calendar', name: 'calendar.v4.calendarEventAttendeeChatMember.list', sdkName: 'calendar.v4.calendarEventAttendeeChatMember.list', path: '/open-apis/calendar/v4/calendars/:calendar_id/events/:event_id/attendees/:attendee_id/chat_members', httpMethod: 'GET', description: '[Feishu/Lark]-日历-日程参与人管理(含会议室)-获取日程参与群成员列表-调用该接口以当前身份(应用或用户)获取日程的群组类型参与人的群成员列表', accessTokens: ['tenant', 'user'], schema: { params: zod_1.z .object({ page_token: zod_1.z .string() .describe('分页标记,第一次请求不填,表示从头开始遍历;分页查询结果还有更多项时会同时返回新的 page_token,下次遍历可采用该 page_token 获取查询结果') .optional(), page_size: zod_1.z.number().describe('一次请求返回的最大群成员数量').optional(), user_id_type: zod_1.z.enum(['open_id', 'union_id', 'user_id']).describe('用户ID类型').optional(), }) .optional(), path: zod_1.z.object({ calendar_id: zod_1.z.string().describe('日程所在的日历 ID。关于日历 ID 可参见[日历 ID 说明]'), event_id: zod_1.z .string() .describe('日程 ID。创建日程时会返回日程 ID。你也可以调用以下接口获取某一日历的 ID。- [获取日程列表]- [搜索日程]'), attendee_id: zod_1.z .string() .describe('群组类型参与人 ID。添加日程参与人时,会返回参与人 ID(attendee_id),你也可以调用[获取日程参与人列表]接口,查询指定日程的参与人 ID'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarEventAttendeeCreate = { project: 'calendar', name: 'calendar.v4.calendarEventAttendee.create', sdkName: 'calendar.v4.calendarEventAttendee.create', path: '/open-apis/calendar/v4/calendars/:calendar_id/events/:event_id/attendees', httpMethod: 'POST', description: '[Feishu/Lark]-日历-日程参与人管理(含会议室)-添加日程参与人-调用该接口以当前身份(应用或用户)为指定日程添加一个或多个参与人,参与人类型包括用户、群组、会议室以及邮箱', accessTokens: ['tenant', 'user'], schema: { data: zod_1.z .object({ attendees: zod_1.z .array(zod_1.z.object({ type: zod_1.z .enum(['user', 'chat', 'resource', 'third_party']) .describe('参与人类型。 Options:user(用户),chat(群组),resource(会议室),third_party(ThirdParty 外部邮箱)') .optional(), is_optional: zod_1.z .boolean() .describe('参与人是否为可选参加。**可选值有**:- true:是- false:否**注意**:无法编辑会议室类型参与人的此字段') .optional(), user_id: zod_1.z .string() .describe('用户 ID。当选择用户类型参与人(type 取值为 user)时,需要传入该参数。传入的用户 ID 类型需要和 user_id_type 的值保持一致。关于用户 ID 可参见[用户相关的 ID 概念]') .optional(), chat_id: zod_1.z .string() .describe('群组 ID。当选择群组类型参与人(type 取值为 chat)时,需要传入该参数。关于群组 ID 可参见[群 ID 说明]') .optional(), room_id: zod_1.z .string() .describe('会议室 ID。当选择会议室类型参与人(type 取值为 resource)时,需要传入该参数。你可以通过以下接口获取指定会议室 ID:- [查询会议室列表]- [搜索会议室]') .optional(), third_party_email: zod_1.z .string() .describe('邮箱地址。当选择外部邮箱类型参与人(type 取值为 third_party)时,需要传入该参数') .optional(), operate_id: zod_1.z .string() .describe('会议室联系人 ID。传入的用户 ID 类型需要和 user_id_type 的值保持一致。关于用户 ID 可参见[用户相关的 ID 概念]。**说明**:如果当前日程是基于应用身份创建的,则在添加会议室类型参与人时,需要通过该参数指定会议室的联系人,该联系人会在日程会议室信息中展示。**默认值**:空') .optional(), resource_customization: zod_1.z .array(zod_1.z.object({ index_key: zod_1.z.string().describe('表单内配置的唯一 ID'), input_content: zod_1.z.string().describe('当配置类型为填空时,需要填入该参数').optional(), options: zod_1.z .array(zod_1.z.object({ option_key: zod_1.z.string().describe('选项的唯一 ID').optional(), others_content: zod_1.z.string().describe('当选项类型为其它选项时,需要填入该参数').optional(), })) .describe('每个配置的选项') .optional(), })) .describe('会议室的个性化配置。- 在选择会议室类型参与人时,如果会议室有预定表单,则可以通过该参数配置表单信息。- 当前添加的参与人不涉及会议室个性化配置时,无需设置该参数') .optional(), approval_reason: zod_1.z .string() .describe('申请预定审批会议室的原因。参数配置说明:- 仅使用用户身份(user_access_token)预定审批会议室时,该字段生效。- 对于申请预定审批会议室的场景,不传该值会直接预约失败。- 如果使用应用身份(tenant_access_token)预定审批会议室,会直接失败。**默认值**:空') .optional(), })) .describe('新增参与人列表。**注意**:- 单次请求可设置的参与人数量(含会议室)上限为 1000。- 单次请求可设置的会议室数量上限为 100') .optional(), need_notification: zod_1.z .boolean() .describe('是否给参与人发送 Bot 通知。**可选值有**:- true(默认值):发送- false:不发送') .optional(), instance_start_time_admin: zod_1.z .string() .describe('使用管理员身份访问时,要修改的日程实例。**注意**:- 该参数仅用于修改重复日程中的某一日程实例,非重复日程无需填此字段。- 你可以调用[获取重复日程实例]接口,获取重复日程中某一日程实例的 event_id。该参数取值为 event_id 的时间戳后缀。例如查询到的日程实例 ID 为 `2cf525f0-1e67-4b04-ad4d-30b7f003903c_1713168000`,则当前的 `instance_start_time_admin` 取值为 `1713168000`。**默认值**:空') .optional(), is_enable_admin: zod_1.z .boolean() .describe('是否启用会议室管理员身份(需先在管理后台设置某成员为会议室管理员)。**可选值有**:- true:启用- false(默认值):不启用**说明**:开启后,本次请求只处理会议室数据,其他参与人操作不会生效') .optional(), add_operator_to_attendee: zod_1.z .boolean() .describe('是否添加会议室联系人(operate_id)到日程参与人。**可选值有**:- true(默认值):启用- false:不启用') .optional(), }) .optional(), params: zod_1.z .object({ user_id_type: zod_1.z.enum(['open_id', 'union_id', 'user_id']).describe('用户ID类型').optional() }) .optional(), path: zod_1.z.object({ calendar_id: zod_1.z.string().describe('日程对应的日历 ID。了解更多,参见[日历 ID 说明]'), event_id: zod_1.z .string() .describe('日程 ID。创建日程时会返回日程 ID。你也可以调用以下接口获取某一日历的 ID。- [获取日程列表]- [搜索日程]'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarEventAttendeeList = { project: 'calendar', name: 'calendar.v4.calendarEventAttendee.list', sdkName: 'calendar.v4.calendarEventAttendee.list', path: '/open-apis/calendar/v4/calendars/:calendar_id/events/:event_id/attendees', httpMethod: 'GET', description: '[Feishu/Lark]-日历-日程参与人管理(含会议室)-获取日程参与人列表-调用该接口以当前身份(应用或用户)获取日程的参与人列表', accessTokens: ['tenant', 'user'], schema: { params: zod_1.z .object({ user_id_type: zod_1.z.enum(['open_id', 'union_id', 'user_id']).describe('用户ID类型').optional(), need_resource_customization: zod_1.z .boolean() .describe('是否需要会议室表单信息。**可选值有**:- true:需要- false(默认值):不需要**注意**:当前身份需要有日程的编辑权限才会返回会议室表单信息,即当前身份需要是日程的组织者,或者是日程参与人且日程设置了**参与人可编辑日程**权限。你可以调用[获取日程]接口,获取日程的参与人权限(attendee_ability)') .optional(), page_token: zod_1.z .string() .describe('分页标记,第一次请求不填,表示从头开始遍历;分页查询结果还有更多项时会同时返回新的 page_token,下次遍历可采用该 page_token 获取查询结果') .optional(), page_size: zod_1.z .number() .describe('一次请求返回的最大日程参与人数量。最小值为 10,传入小于 10 的值默认按照 10 计算') .optional(), }) .optional(), path: zod_1.z.object({ calendar_id: zod_1.z.string().describe('日程所在的日历 ID。关于日历 ID 可参见[日历 ID 说明]'), event_id: zod_1.z .string() .describe('日程 ID。创建日程时会返回日程 ID。你也可以调用以下接口获取某一日历的 ID。- [获取日程列表]- [搜索日程]'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarEventCreate = { project: 'calendar', name: 'calendar.v4.calendarEvent.create', sdkName: 'calendar.v4.calendarEvent.create', path: '/open-apis/calendar/v4/calendars/:calendar_id/events', httpMethod: 'POST', description: '[Feishu/Lark]-日历-日程管理-创建日程-调用该接口以当前身份(应用或用户)在指定日历上创建一个日程', accessTokens: ['tenant', 'user'], schema: { data: zod_1.z.object({ summary: zod_1.z .string() .describe('日程标题。**注意**:为确保数据安全,系统会自动检测日程标题内容,当包含 **晋升、绩效、述职、调薪、调级、复议、申诉、校准、答辩** 中任一关键词时,该日程不会生成会议纪要') .optional(), description: zod_1.z .string() .describe('日程描述。支持解析Html标签。**注意**:可以通过Html标签来实现部分富文本格式,但是客户端生成的富文本格式并不是通过Html标签实现,如果通过客户端生成富文本描述后,再通过API更新描述,会导致客户端原来的富文本格式丢失') .optional(), need_notification: zod_1.z .boolean() .describe('更新日程时,是否给日程参与人发送 Bot 通知。**可选值有**:- true:发送通知- false:不发送通知**默认值**:true') .optional(), start_time: zod_1.z .object({ date: zod_1.z .string() .describe('开始时间,仅全天日程使用该字段,[RFC 3339] 格式,例如,2018-09-01。**注意**:该参数不能与 `timestamp` 同时指定') .optional(), timestamp: zod_1.z .string() .describe('秒级时间戳,用于设置具体的开始时间。例如,1602504000 表示 2020/10/12 20:00:00(UTC +8 时区)。**注意**:该参数不能与 `date` 同时指定') .optional(), timezone: zod_1.z .string() .describe('时区。使用 IANA Time Zone Database 标准,例如 Asia/Shanghai。- 全天日程时区固定为UTC +0- 非全天日程时区默认为 Asia/Shanghai') .optional(), }) .describe('日程开始时间'), end_time: zod_1.z .object({ date: zod_1.z .string() .describe('结束时间,仅全天日程使用该字段,[RFC 3339] 格式,例如,2018-09-01。**注意**:该参数不能与 `timestamp` 同时指定') .optional(), timestamp: zod_1.z .string() .describe('秒级时间戳,用于设置具体的结束时间。例如,1602504000 表示 2020/10/12 20:00:00(UTC +8 时区)。**注意**:该参数不能与 `date` 同时指定') .optional(), timezone: zod_1.z .string() .describe('时区。使用 IANA Time Zone Database 标准,例如 Asia/Shanghai。- 全天日程时区固定为UTC +0- 非全天日程时区默认为 Asia/Shanghai') .optional(), }) .describe('日程结束时间'), vchat: zod_1.z .object({ vc_type: zod_1.z .enum(['vc', 'third_party', 'no_meeting', 'lark_live', 'unknown']) .describe('视频会议类型。如果无需视频会议,则必须传入 `no_meeting`。**默认值**:空,表示在首次添加日程参与人时,会自动生成飞书视频会议 URL。 Options:vc(飞书视频会议。取该类型时,vchat 内的其他字段均无效。),third_party(ThirdParty 第三方链接视频会议。取该类型时,仅生效 vchat 内的 icon_type、description、meeting_url 字段。),no_meeting(NoMeeting 无视频会议。取该类型时,vchat 内的其他字段均无效。),lark_live(LarkLive 飞书直播。该值用于客户端,不支持通过 API 调用,只读。),unknown(未知类型。该值用于客户端做兼容使用,不支持通过 API 调用,只读。)') .optional(), icon_type: zod_1.z .enum(['vc', 'live', 'default']) .describe('第三方视频会议的 icon 类型。**默认值**:default Options:vc(飞书视频会议 icon。),live(直播视频会议 icon。),default(默认 icon。)') .optional(), description: zod_1.z.string().describe('第三方视频会议文案。**默认值**:空,为空展示默认文案').optional(), meeting_url: zod_1.z.string().describe('视频会议 URL').optional(), meeting_settings: zod_1.z .object({ owner_id: zod_1.z .string() .describe('设置会议 owner 的用户 ID,ID 类型需和 user_id_type 保持一致。该参数需满足以下全部条件才会生效:- 应用身份(tenant_access_token)请求,且在应用日历上操作日程。- 首次将日程设置为 VC 会议时,才能设置owner。- owner 不能为非用户身份。- owner 不能为外部租户用户身份') .optional(), join_meeting_permission: zod_1.z .enum(['anyone_can_join', 'only_organization_employees', 'only_event_attendees']) .describe('设置入会范围。**默认值**:anyone_can_join Options:anyone_can_join(AnyOne 所有人可以加入会议),only_organization_employees(OnlySameOrganization 仅企业内的用户可以加入会议),only_event_attendees(OnlyEventAttendees 仅日程参与者可以加入会议)') .optional(), assign_hosts: zod_1.z .array(zod_1.z.string()) .describe('通过用户 ID 指定主持人,ID 类型需和 user_id_type 保持一致。**注意**:- 仅日程组织者可以指定主持人。- 主持人不能是非用户身份。- 主持人不能是外部租户用户身份。- 在应用日历上操作日程时,不允许指定主持人') .optional(), auto_record: zod_1.z .boolean() .describe('是否开启自动录制。**可选值有**:- true:开启- false(默认值):不开启') .optional(), open_lobby: zod_1.z .boolean() .describe('是否开启等候室。**可选值有**:- true(默认值):开启- false:不开启') .optional(), allow_attendees_start: zod_1.z .boolean() .describe('是否允许日程参与者发起会议。**可选值有**:- true(默认值):允许- false:不允许**注意**:应用日历上操作日程时,该字段必须为 true,否则没有人能发起会议') .optional(), }) .describe('飞书视频会议(VC)的会前设置,需满足以下全部条件:- 当 `vc_type` 为 `vc` 时生效。- 需要有日程的编辑权限') .optional(), }) .describe('视频会议信息') .optional(), visibility: zod_1.z .enum(['default', 'public', 'private']) .describe('日程公开范围,新建日程默认为 `default`。**注意**:该参数仅在新建日程时,对所有参与人生效。如果后续更新日程修改了该参数值,则仅对当前身份生效。 Options:default(默认权限,即跟随日历权限,默认仅向他人显示是否忙碌),public(公开,显示日程详情),private(私密,仅自己可见详情)') .optional(), attendee_ability: zod_1.z .enum(['none', 'can_see_others', 'can_invite_others', 'can_modify_event']) .describe('参与人权限。**默认值**:none Options:none(无法编辑日程、无法邀请其他参与人、无法查看参与人列表),can_see_others(CanSeeOthers 无法编辑日程、无法邀请其他参与人、可以查看参与人列表),can_invite_others(CanInviteOthers 无法编辑日程、可以邀请其他参与人、可以查看参与人列表),can_modify_event(CanModifyEvent 可以编辑日程、可以邀请其他参与人、可以查看参与人列表)') .optional(), free_busy_status: zod_1.z .enum(['busy', 'free']) .describe('日程占用的忙闲状态,新建日程默认为 `busy`。**注意**:该参数仅在新建日程时,对所有参与人生效。如果后续更新日程时修改了该参数值,则仅对当前身份生效。 Options:busy(忙碌),free(空闲)') .optional(), location: zod_1.z .object({ name: zod_1.z.string().describe('地点名称').optional(), address: zod_1.z.string().describe('地点地址').optional(), latitude: zod_1.z .number() .describe('地点坐标纬度信息。- 对于国内的地点,采用 GCJ-02 标准。- 对于海外的地点,采用 WGS84 标准') .optional(), longitude: zod_1.z .number() .describe('地点坐标经度信息。- 对于国内的地点,采用 GCJ-02 标准。- 对于海外的地点,采用 WGS84 标准') .optional(), }) .describe('日程地点,不传值则默认为空') .optional(), color: zod_1.z .number() .describe('日程颜色,取值通过颜色 RGB 值的 int32 表示。**注意**:- 该参数仅对当前身份生效。- 客户端展示时会映射到色板上最接近的一种颜色。- 取值为 0 或 -1 时,默认跟随日历颜色') .optional(), reminders: zod_1.z .array(zod_1.z.object({ minutes: zod_1.z .number() .describe('日程提醒时间的偏移量。- 正数时表示在日程开始前 X 分钟提醒。- 负数时表示在日程开始后 X 分钟提醒。**注意**:新建或更新日程时传入该字段,仅对当前身份生效,不会对日程的其他参与人生效') .optional(), })) .describe('日程提醒列表。不传值则默认为空') .optional(), recurrence: zod_1.z .string() .describe('重复日程的重复性规则,规则设置方式参考[rfc5545]。**默认值**:空,表示当前日程不是重复日程。**注意**:- COUNT 和 UNTIL 不支持同时出现。- 预定会议室重复日程长度不得超过两年') .optional(), schemas: zod_1.z .array(zod_1.z.object({ ui_name: zod_1.z .string() .describe('UI 名称。**可选值有**: - ForwardIcon:日程转发按钮 - MeetingChatIcon:会议群聊按钮 - MeetingMinutesIcon:会议纪要按钮 - MeetingVideo:视频会议区域 - RSVP:接受、拒绝、待定区域 - Attendee:参与者区域 - OrganizerOrCreator:组织者或创建者区域') .optional(), ui_status: zod_1.z .enum(['hide', 'readonly', 'editable', 'unknown']) .describe('UI 项的状态。目前只支持选择 `hide`。 Options:hide(隐藏显示),readonly(只读),editable(可编辑),unknown(未知 UI 项自定义状态。该参数仅用于读取时兼容,不支持作为请求参数值传入)') .optional(), app_link: zod_1.z .string() .describe('按钮点击后跳转的链接。**注意**:兼容性参数,只读,因此暂不支持传入该请求参数') .optional(), })) .describe('日程自定义信息,控制日程详情页的 UI 展示。不传值则默认为空') .optional(), attachments: zod_1.z .array(zod_1.z.object({ file_token: zod_1.z .string() .describe('附件 Token。调用[上传素材]接口,获取附件的 file_token。在调用上传素材接口时需要注意:- `parent_type` 需传入固定值 `calendar`。- `parent_node` 需传入与当前接口一致的日历 ID。**附件校验规则**:附件总大小不超过 25 MB') .optional(), })) .describe('日程附件') .optional(), event_check_in: zod_1.z .object({ enable_check_in: zod_1.z.boolean().describe('是否启用日程签到'), check_in_start_time: zod_1.z .object({ time_type: zod_1.z .enum(['before_event_start', 'after_event_start', 'after_event_end']) .describe('偏移量(分钟)相对于的日程时间节点类型。 Options:before_event_start(BeforeEventStart 日程开始前),after_event_start(AfterEventStart 日程开始后),after_event_end(AfterEventEnd 日程结束后)'), duration: zod_1.z .number() .describe('相对于日程开始或者结束的偏移量(分钟)。- 目前取值只能为列表[0, 5, 15, 30, 60]之一,0表示立即开始。- 当time_type为before_event_start,duration不能取0'), }) .describe('日程签到开始时间。**注意**:签到开始时间不能大于或者等于签到结束时间') .optional(), check_in_end_time: zod_1.z .object({ time_type: zod_1.z .enum(['before_event_start', 'after_event_start', 'after_event_end']) .describe('偏移量(分钟)相对于的日程时间节点类型。 Options:before_event_start(BeforeEventStart 日程开始前),after_event_start(AfterEventStart 日程开始后),after_event_end(AfterEventEnd 日程结束后)'), duration: zod_1.z .number() .describe('相对于日程开始或者结束的偏移量(分钟)。- 目前取值只能为列表[0, 5, 15, 30, 60]之一,0表示立即开始。- 当time_type为before_event_start,duration不能取0'), }) .describe('日程签到结束时间。**注意**:签到开始时间不能大于或者等于签到结束时间') .optional(), need_notify_attendees: zod_1.z.boolean().describe('签到开始时是否自动发送签到通知给参与者').optional(), }) .describe('日程签到设置,为空则不进行日程签到设置') .optional(), }), params: zod_1.z .object({ idempotency_key: zod_1.z .string() .describe('创建日程的幂等 key,该 key 在应用和日历维度下唯一,用于避免重复创建资源。建议按照示例值的格式进行取值') .optional(), user_id_type: zod_1.z.enum(['open_id', 'union_id', 'user_id']).describe('用户ID类型').optional(), }) .optional(), path: zod_1.z.object({ calendar_id: zod_1.z .string() .describe('日历 ID。创建共享日历时会返回日历 ID。你也可以调用以下接口获取某一日历的 ID。- [查询主日历信息]- [查询日历列表]- [搜索日历]'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarEventDelete = { project: 'calendar', name: 'calendar.v4.calendarEvent.delete', sdkName: 'calendar.v4.calendarEvent.delete', path: '/open-apis/calendar/v4/calendars/:calendar_id/events/:event_id', httpMethod: 'DELETE', description: '[Feishu/Lark]-日历-日程管理-删除日程-调用该接口以当前身份(应用或用户)删除指定日历上的一个日程', accessTokens: ['tenant', 'user'], schema: { params: zod_1.z .object({ need_notification: zod_1.z .enum(['true', 'false']) .describe('删除日程是否给日程参与人发送 Bot 通知。**默认值**:true Options:true(发送),false(不发送)') .optional(), }) .optional(), path: zod_1.z.object({ calendar_id: zod_1.z.string().describe('日程所在的日历 ID。了解更多,参见[日历 ID 说明]'), event_id: zod_1.z.string().describe('日程 ID。获取方式:- [创建日程]会返回日程 ID- [获取日程列表]- [搜索日程]'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarEventGet = { project: 'calendar', name: 'calendar.v4.calendarEvent.get', sdkName: 'calendar.v4.calendarEvent.get', path: '/open-apis/calendar/v4/calendars/:calendar_id/events/:event_id', httpMethod: 'GET', description: '[Feishu/Lark]-日历-日程管理-获取日程-调用该接口以当前身份(应用或用户)获取指定日历内的某一日程信息,包括日程的标题、时间段、视频会议信息、公开范围以及参与人权限等', accessTokens: ['tenant', 'user'], schema: { params: zod_1.z .object({ need_meeting_settings: zod_1.z .boolean() .describe('是否需要返回飞书视频会议(VC)的会前设置。需满足以下条件才可以获取到返回结果:- 日程的会议类型(vc_type)需要是 vc。- 需要有日程的编辑权限。**可选值有**:- true:需要- false(默认值):不需要') .optional(), need_attendee: zod_1.z .boolean() .describe('是否需要返回参与人信息。**可选值有**:- true:需要- false(默认值):不需要') .optional(), max_attendee_num: zod_1.z .number() .describe('返回的最大参与人数量。调用[获取日程参与人列表]可获取日程完整的参与人信息') .optional(), user_id_type: zod_1.z.enum(['open_id', 'union_id', 'user_id']).describe('用户ID类型').optional(), }) .optional(), path: zod_1.z.object({ calendar_id: zod_1.z.string().describe('日程所在的日历 ID。关于日历 ID 可参见[日历 ID 说明]'), event_id: zod_1.z .string() .describe('日程 ID。创建日程时会返回日程 ID。你也可以调用以下接口获取某一日历的 ID。- [获取日程列表]- [搜索日程]'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarEventInstanceView = { project: 'calendar', name: 'calendar.v4.calendarEvent.instanceView', sdkName: 'calendar.v4.calendarEvent.instanceView', path: '/open-apis/calendar/v4/calendars/:calendar_id/events/instance_view', httpMethod: 'GET', description: '[Feishu/Lark]-日历-日程管理-查询日程视图-调用该接口以用户身份查询指定日历下的日程视图。与[获取日程列表]不同的是,当前接口会按照重复日程的重复性规则展开成多个日程实例(instance),并根据查询的时间区间返回相应的日程实例信息', accessTokens: ['tenant', 'user'], schema: { params: zod_1.z.object({ start_time: zod_1.z .string() .describe('开始时间,Unix 时间戳,单位为秒。该参数与 end_time 用于设置查询的时间范围。**注意**:start_time 与 end_time 之间的时间区间需要小于 40 天'), end_time: zod_1.z .string() .describe('结束时间,Unix 时间戳,单位为秒。该参数与 start_time 用于设置查询的时间范围。**注意**:start_time 与 end_time 之间的时间区间需要小于 40 天'), user_id_type: zod_1.z.enum(['open_id', 'union_id', 'user_id']).describe('用户ID类型').optional(), }), path: zod_1.z.object({ calendar_id: zod_1.z.string().describe('日历 ID。关于日历 ID 可参见[日历 ID 说明]') }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarEventInstances = { project: 'calendar', name: 'calendar.v4.calendarEvent.instances', sdkName: 'calendar.v4.calendarEvent.instances', path: '/open-apis/calendar/v4/calendars/:calendar_id/events/:event_id/instances', httpMethod: 'GET', description: '[Feishu/Lark]-日历-日程管理-获取重复日程实例-调用该接口以当前身份(应用或用户)获取指定日历中的某一重复日程信息', accessTokens: ['tenant', 'user'], schema: { params: zod_1.z.object({ start_time: zod_1.z .string() .describe('开始时间,Unix 时间戳,单位为秒。该参数与 end_time 用于设置时间范围,即重复日程的查询区间为 (start_time, end_time)**注意**:start_time 与 end_time 之间的时间区间不能超过 2年'), end_time: zod_1.z .string() .describe('结束时间,Unix 时间戳,单位为秒。该参数与 start_time 用于设置时间范围,即重复日程的查询区间为 (start_time, end_time)**注意**:start_time 与 end_time 之间的时间区间不能超过 2年'), page_size: zod_1.z.number().describe('一次调用返回的日程数量上限').optional(), page_token: zod_1.z .string() .describe('分页标记,第一次请求不填,表示从头开始遍历;分页查询结果还有更多项时会同时返回新的 page_token,下次遍历可采用该 page_token 获取查询结果') .optional(), }), path: zod_1.z.object({ calendar_id: zod_1.z.string().describe('日历 ID。关于日历 ID 可参见[日历 ID 说明]'), event_id: zod_1.z .string() .describe('日程 ID。创建日程时会返回日程 ID。你也可以调用以下接口获取某一日历的 ID。- [获取日程列表]- [搜索日程]'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarEventList = { project: 'calendar', name: 'calendar.v4.calendarEvent.list', sdkName: 'calendar.v4.calendarEvent.list', path: '/open-apis/calendar/v4/calendars/:calendar_id/events', httpMethod: 'GET', description: '[Feishu/Lark]-日历-日程管理-获取日程列表-调用该接口以当前身份(应用或用户)获取指定日历下的日程列表', accessTokens: ['tenant', 'user'], schema: { params: zod_1.z .object({ page_size: zod_1.z .number() .describe('一次请求要求返回的最大日程数量。实际返回的日程数量可能小于该值,也可能为空,可以根据响应体里的has_more字段来判断是否还有更多日程') .optional(), anchor_time: zod_1.z .string() .describe('时间锚点,Unix 时间戳(秒)。anchor_time 用于设置一个时间点,以便直接拉取该时间点之后的日程数据,从而避免拉取全量日程数据。可使用 page_token 或 sync_token 进行分页或增量拉取 anchor_time 之后的所有日程数据。**使用说明**:- 对于单次日程,会获取到 **日程结束时间 >= anchor_time** 的日程信息。- 对于重复性日程,目前设置 anchor_time 后均会获取到,包括在 anchor_time 之前的已结束的历史重复性日程。- 对于例外日程,会获取到 **original_time >= anchor_time** 以及 **日程结束时间 >= anchor_time** 的日程信息,其中 original_time 从例外日程 ID 中获取,ID 结构为 `{uid}_{original_time}`。**注意**:该参数不可与 start_time 和 end_time 一起使用。**默认值**:空') .optional(), page_token: zod_1.z .string() .describe('分页标记,第一次请求不填,表示从头开始遍历;分页查询结果还有更多项时会同时返回新的 page_token,下次遍历可采用该 page_token 获取查询结果') .optional(), sync_token: zod_1.z .string() .describe('增量同步标记,第一次请求不填。当分页查询结束(page_token 返回值为空)时,接口会返回 sync_token 字段,下次调用可使用该 sync_token 增量获取日历变更数据。**默认值**:空') .optional(), start_time: zod_1.z .string() .describe('时间区间的开始时间, Unix 时间戳(秒),与end_time搭配使用,用于拉取指定时间区间内的日程数据.**注意**:- 该方式只能一次性返回数据,无法进行分页。一次性返回的数据大小受page_size限制,超过限制的数据将被截断。- 在使用start_time和end_time时,不能与page_token或sync_token一起使用。- 在使用start_time和end_time时,不能与anchor_time一起使用。**默认值**:空') .optional(), end_time: zod_1.z .string() .describe('时间区间的结束时间, Unix 时间戳(秒)。与start_time搭配使用,用于拉取指定时间区间内的日程数据.**注意**:- 该方式只能一次性返回数据,无法进行分页。一次性返回的数据大小受page_size限制,超过限制的数据将被截断。- 在使用start_time和end_time时不能与page_token或sync_token一起使用。- 在使用start_time和end_time时,不能与anchor_time一起使用。**默认值**:空') .optional(), user_id_type: zod_1.z.enum(['open_id', 'union_id', 'user_id']).describe('用户ID类型').optional(), }) .optional(), path: zod_1.z.object({ calendar_id: zod_1.z.string().describe('日历 ID。关于日历 ID 可参见[日历 ID 说明]') }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarEventMeetingChatCreate = { project: 'calendar', name: 'calendar.v4.calendarEventMeetingChat.create', sdkName: 'calendar.v4.calendarEventMeetingChat.create', path: '/open-apis/calendar/v4/calendars/:calendar_id/events/:event_id/meeting_chat', httpMethod: 'POST', description: '[Feishu/Lark]-日历-会议群-创建会议群-调用该接口以当前身份(应用或用户)为指定日程创建一个会议群', accessTokens: ['tenant', 'user'], schema: { path: zod_1.z.object({ calendar_id: zod_1.z.string().describe('日程所在的日历 ID。了解更多,参见[日历 ID 说明]'), event_id: zod_1.z .string() .describe('日程 ID。创建日程时会返回日程 ID。你也可以调用以下接口获取某一日历的 ID。- [获取日程列表]- [搜索日程]'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarEventMeetingChatDelete = { project: 'calendar', name: 'calendar.v4.calendarEventMeetingChat.delete', sdkName: 'calendar.v4.calendarEventMeetingChat.delete', path: '/open-apis/calendar/v4/calendars/:calendar_id/events/:event_id/meeting_chat', httpMethod: 'DELETE', description: '[Feishu/Lark]-日历-会议群-解绑会议群-调用该接口以当前身份(应用或用户)为日程解绑已创建的会议群', accessTokens: ['tenant', 'user'], schema: { params: zod_1.z.object({ meeting_chat_id: zod_1.z.string().describe('会议群 ID。在创建会议群时会返回会议群 ID') }), path: zod_1.z.object({ calendar_id: zod_1.z.string().describe('日程所在的日历 ID'), event_id: zod_1.z.string().describe('日程 ID') }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarEventMeetingMinuteCreate = { project: 'calendar', name: 'calendar.v4.calendarEventMeetingMinute.create', sdkName: 'calendar.v4.calendarEventMeetingMinute.create', path: '/open-apis/calendar/v4/calendars/:calendar_id/events/:event_id/meeting_minute', httpMethod: 'POST', description: '[Feishu/Lark]-日历-会议纪要-创建会议纪要-调用该接口为指定的日程创建会议纪要。纪要以文档形式展示,成功创建后会返回纪要文档 URL', accessTokens: ['tenant', 'user'], schema: { path: zod_1.z.object({ calendar_id: zod_1.z.string().describe('日历 ID。调用[查询主日历信息]接口,获取当前身份的主日历 ID'), event_id: zod_1.z.string().describe('日程 ID。调用[搜索日程]接口,在指定日历内搜索日程并获取日程 ID'), }), useUAT: zod_1.z.boolean().describe('使用用户身份请求, 否则使用应用身份').optional(), }, }; exports.calendarV4CalendarEventPatch = { project: 'calendar', name: 'calendar.v4.calendarEvent.patch', sdkName: 'calendar.v4.calendarEvent.patch', path: '/open-apis/calendar/v4/calendars/:calendar_id/events/:event_id', httpMethod: 'PATCH', description: '[Feishu/Lark]-日历-日程管理-更新日程-调用该接口以当前身份(应用或用户)更新指定日历上的一个日程,包括日程标题、描述、开始与结束时间、视频会议以及日程地点等信息', accessTokens: ['tenant', 'user'], schema: { data: zod_1.z .object({ summary: zod_1.z.string().describe('日程标题。**默认值**:空,表示不更新该字段').optional(), description: zod_1.z .string() .describe('日程描述。**注意**:目前 API 方式不支持编辑富文本描述。如果日程描述通过客户端编辑为富文本内容,则使用 API 更新描述会导致富文本格式丢失。**默认值**:空,表示不更新该字段') .optional(), need_notification: zod_1.z .boolean() .describe('更新日程时,是否给日程参与人发送 Bot 通知。**默认值**:空,表示不更新该字段**可选值有**:- true:发送通知- false:不发送通知') .optional(), start_time: zod_1.z .object({ date: zod_1.z .string() .describe('开始时间,仅全天日程使用该字段,[RFC 3339] 格式,例如,2018-09-01。**注意**:该参数不能与 `timestamp` 同时指定') .optional(), timestamp: zod_1.z .string() .describe('秒级时间戳,用于设置具体的开始时间。例如,1602504000 表示 2020/10/12 20:00:00(UTC +8 时区)。**注意**:该参数不能与 `date` 同时指定') .optional(), timezone: zod_1.z .string() .describe('时区。使用 IANA Time Zone Database 标准,例如 Asia/Shanghai。- 全天日程时区固定为UTC +0- 非全天日程时区默认为 Asia/Shanghai') .optional(), }) .describe('日程开始时间。需要与end_time同时有值才会生效') .optional(), end_time: zod_1.z .object({ date: zod_1.z .string() .describe('结束时间,仅全天日程使用该字段,[RFC 3339] 格式,例如,2018-09-01。**注意**:该参数不能与 `timestamp` 同时指定') .optional(), timestamp: zod_1.z .string() .describe('秒级时间戳,用于设置具体的结束时间。例如,1602504000 表示 2020/10/12 20:00:00(UTC +8 时区)。**注意**:该参数不能与 `date` 同时指定') .optional(), timezone: zod_1.z .string() .describe('时区。使用 IANA Time Zone Database 标准,例如 Asia/Shanghai。- 全天日程时区固定为UTC +0- 非全天日程时区默认为 Asia/Shanghai') .optional(), }) .describe('日程结束时间。需要与start_time同时有值才会生效') .optional(), vchat: zod_1.z .object({ vc_type: zod_1.z .enum(['vc', 'third_party', 'no_meeting', 'lark_live', 'unknown']) .describe('视频会议类型。如果无需视频会议,则必须传入 `no_meeting`。 Options:vc(飞书视频会议。取该类型时,vchat 内的其他字段均无效。),third_party(ThirdParty 第三方链接视频会议。取该类型时,仅生效 vchat 内的 icon_type、description、meeting_url 字段。),no_meeting(NoMeeting 无视频会议。取该类型时,vchat 内的其他字段均无效。),lark_live(LarkLive 飞书直播。该值用于客户端,不支持通过 API 调用,只读。),unknown(未知类型。该值用于客户端做兼容使用,不支持通过 API 调用,只读。)') .optional(), icon_type: zod_1.z .enum(['vc', 'live', 'default']) .describe('第三方视频会议的 icon 类型。**默认值**:空,表示不更新该字段 Options:vc(飞书视频会议 icon),live(直播视频会议 icon),default(默认 icon)') .optional(), description: zod_1.z.string().describe('第三方视频会议文案。**默认值**:空,表示不更新该字段').optional(), meeting_url: zod_1.z.string().describe('视频会议 URL。**默认值**:空,表示不更新该字段').optional(), meeting_settings: zod_1.z .object({ owner_id: zod_1.z .string() .describe('设置会议 owner 的用户 ID,ID 类型需和 user_id_type 保持一致。该参数需满足以下全部条件才会生效:- 应用身份(tenant_access_token)请求,且在应用日历上操作日程。- 首次将日程设置为 VC 会议时,才能设置owner。- owner 不能为非用户身份。- owner 不能为外部租户用户身份') .optional(), join_meeting_permission: zod_1.z .enum(['anyone_can_join', 'only_organization_employees', 'only_event_attendees']) .describe('设置入会范围。 Options:anyone_can_join(AnyOne 所有人可以加入会议),only_organization_employees(OnlySameOrganization 仅企业内用户可以加入会议),only_event_attendees(OnlyEventAttendees 仅日程参与者可以加入会议)') .optional(), assign_hosts: zod_1.z .array(zod_1.z.string()) .describe('通过用户 ID 指定主持人,ID 类型需和 user_id_type 保持一致。**注意**:- 仅日程组织者可以指定主持人。- 主持人不能是非用户身份。- 主持人不能是外部租户用户身份。- 在应用日历上操作日程时,不允许指定主持人') .optional(), auto_record: zod_1.z .boolean() .describe('是否开启自动录制。**可选值有**:- true:开启- false:不开启**默认值**:空,表示不更新该字段') .optional(), open_lobby: zod_1.z .boolean() .describe('是否开启等候室。**可选值有**:- true:开启- false:不开启**默认值**:空,表示不更新该字段') .optional(), allow_attendees_start: zod_1.z .boolean() .describe('是否允许日程参与者发起会议。**注意**:应用日历上操作日程时,该字段必须为 true,否则没有人能发起会议。**可选值有**:- true:允许- false:不允许**默认值**:空,表示不更新该字段') .optional(), }) .describe('飞书视频会议(VC)的会前设置,需满足以下全部条件:- 当 `vc_type` 为 `vc` 时生效。- 需要有日程的编辑权限。不传值则表示不更新该字段') .optional(), }) .describe('视频会议信息。不传值则表示不更新该字段') .optional(), visibility: zod_1.z .enum(['default', 'public', 'private']) .describe('日程公开范围。**注意**:更新日程时如果修改了该参数值,则仅对当前身份生效。**默认值**:空,表示不更新该字段 Options:default(默认权限,即跟随日历权限,默认仅向他人显示是否忙碌),public(公开,显示日程详情),private(私密,仅自己可见详情)') .optional(), attendee_ability: zod_1.z .enum(['none', 'can_see_others', 'can_invite_others', 'can_modify_event']) .describe('参与人权限。**默认值**:空,表示不更新该字段 Options:none(无法编辑日程、无法邀请其他参与人、无法查看参与人列表),can_see_others(CanSeeOthers 无法编辑日程、无法邀请其他参与人、可以查看参与人列表),can_invite_others(CanInviteOthers 无法编辑日程、可以邀请其他参与人、可以查看参与人列表),can_modify_event(CanModifyEvent 可以编辑日程、可以邀请其他参与人、可以查看参与人列表)') .optional(), free_busy_status: zod_1.z .enum(['busy', 'free']) .describe('日程占用的忙闲状态,新建日程默认为 `busy`。**注意**:更新日程时如果修改了该参数值,则仅对当前身份生效。**默认值**:空,表示不更新该字段 Options:busy(忙碌),free(空闲)') .optional(), location: zod_1.z .object({ name: zod_1.z.string().describe('地点名称').optional(), address: zod_1.z.string().describe('地点地址').optional(), latitude: zod_1.z .number() .describe('地点坐标纬度信息。- 对于国内的地点,采用 GCJ-02 标准。- 对于海外的地点,采用 WGS84 标准') .optional(), longitude: zod_1.z .number() .describe('地点坐标经度信息。- 对于国内的地点,采用 GCJ-02 标准。- 对于海外的地点,采用 WGS84 标准') .optional(), }) .describe('日程地点。不传值则表示不更新该字段') .optional(), color: zod_1.z .number() .describe('日程颜色,取值通过颜色 RGB 值的 int32 表示。**注意**:- 该参数仅对当前身份生效。- 客户端展示时会映射到色板上最接近的一种颜色。- 取值为 0 或 -1 时,默认跟随日历颜色。**默认值**:空,表示不更新该字段') .optional(), reminders: zod_1.z .array(zod_1.z.object({ minutes: zod_1.z .number() .describe('日程提醒时间的偏移量。- 正数时表示在日程开始前 X 分钟提醒。- 负数时表示在日程开始后 X 分钟提醒。**注意**:更新日程时修改该字段仅对当前身份生效') .optional(), })) .describe('日程提醒列表。不传值则表示不更新该字段')