feishu-cli-calendar

Original🇨🇳 Chinese
Translated

Calendar and schedule management. Used when users request to view calendars, create schedules, and manage schedules. Supports operations such as listing calendars, creating/viewing/updating/deleting schedules.

2installs
Added on

NPX Install

npx skill4agent add riba2534/feishu-cli feishu-cli-calendar

SKILL.md Content (Chinese)

View Translation Comparison →

Feishu Calendar Operation Skill

Manage Feishu calendars and schedules, including listing calendars, creating/viewing/updating/deleting schedules, etc.

Usage

bash
/feishu-calendar list                                   # List all calendars
/feishu-calendar list-events <calendar_id>              # List events in a calendar
/feishu-calendar create-event --calendar-id <id> ...    # Create an event
/feishu-calendar get-event <calendar_id> <event_id>     # Get event details
/feishu-calendar update-event <calendar_id> <event_id>  # Update an event
/feishu-calendar delete-event <calendar_id> <event_id>  # Delete an event

CLI Command Details

1. List Calendars

bash
feishu-cli calendar list
Output Example
Calendar List:
  1. Calendar ID: CAL_xxx
     Name: My Calendar
     Type: primary

  2. Calendar ID: CAL_yyy
     Name: Team Calendar
     Type: shared

2. Create an Event

bash
# Basic usage
feishu-cli calendar create-event \
  --calendar-id CAL_ID \
  --summary "Event Title" \
  --start 2024-01-21T14:00:00+08:00 \
  --end 2024-01-21T15:00:00+08:00

# With description and location
feishu-cli calendar create-event \
  --calendar-id CAL_ID \
  --summary "Project Review" \
  --start 2024-01-21T14:00:00+08:00 \
  --end 2024-01-21T16:00:00+08:00 \
  --description "Q1 Project Progress Review" \
  --location "Meeting Room A101"

# JSON format output
feishu-cli calendar create-event \
  --calendar-id CAL_ID \
  --summary "Meeting" \
  --start 2024-01-21T14:00:00+08:00 \
  --end 2024-01-21T15:00:00+08:00 \
  --output json
Parameter Description
ParameterShortcutDescriptionRequired
--calendar-id
-c
Calendar IDYes
--summary
-s
Event titleYes
--start
Start time (RFC3339 format)Yes
--end
End time (RFC3339 format)Yes
--description
-d
Event descriptionNo
--location
-l
LocationNo
--output
-o
Output format (json)No

3. List Events

bash
# List all events
feishu-cli calendar list-events CAL_ID

# Specify time range
feishu-cli calendar list-events CAL_ID \
  --start-time 2024-01-01T00:00:00+08:00 \
  --end-time 2024-01-31T23:59:59+08:00

# Pagination query
feishu-cli calendar list-events CAL_ID --page-size 20

# JSON format output
feishu-cli calendar list-events CAL_ID --output json
Parameter Description
ParameterDescriptionDefault Value
--start-time
Start time filterNone
--end-time
End time filterNone
--page-size
Number of items per page50
--page-token
Pagination tokenNone
--output, -o
Output formatText

4. Get Event Details

bash
feishu-cli calendar get-event CAL_ID EVENT_ID

5. Update an Event

bash
# Update title
feishu-cli calendar update-event CAL_ID EVENT_ID --summary "New Title"

# Update time
feishu-cli calendar update-event CAL_ID EVENT_ID \
  --start 2024-01-21T15:00:00+08:00 \
  --end 2024-01-21T16:00:00+08:00

# Update multiple fields
feishu-cli calendar update-event CAL_ID EVENT_ID \
  --summary "Updated Meeting" \
  --description "Meeting content has been updated" \
  --location "Meeting Room B202"
Parameter Description
ParameterShortcutDescription
--summary
-s
New event title
--start
New start time
--end
New end time
--description
-d
New event description
--location
-l
New location
--output
-o
Output format (json)

6. Delete an Event

bash
feishu-cli calendar delete-event CAL_ID EVENT_ID

Time Format Description

Use RFC3339 format, examples:
  • 2024-01-21T14:00:00+08:00
    - Beijing Time 14:00
  • 2024-01-21T06:00:00Z
    - UTC Time 06:00
Common Time Zones
Time ZoneOffsetExample
Beijing Time
+08:00
2024-01-21T14:00:00+08:00
UTC
Z
2024-01-21T06:00:00Z
Tokyo Time
+09:00
2024-01-21T15:00:00+09:00

Typical Workflow

View Today's Events

bash
# 1. Get calendar list
feishu-cli calendar list

# 2. View today's events in the specified calendar
feishu-cli calendar list-events CAL_ID \
  --start-time 2024-01-21T00:00:00+08:00 \
  --end-time 2024-01-21T23:59:59+08:00

Create a Meeting Event

bash
# 1. Get calendar ID
feishu-cli calendar list

# 2. Create event
feishu-cli calendar create-event \
  --calendar-id CAL_xxx \
  --summary "Weekly Meeting" \
  --start 2024-01-21T10:00:00+08:00 \
  --end 2024-01-21T11:00:00+08:00 \
  --description "Weekly Team Meeting" \
  --location "Meeting Room 101"

Modify Event Time

bash
# 1. Get event list
feishu-cli calendar list-events CAL_ID

# 2. Update event time
feishu-cli calendar update-event CAL_ID EVENT_ID \
  --start 2024-01-21T15:00:00+08:00 \
  --end 2024-01-21T16:00:00+08:00

Command Aliases

The
calendar
command supports the alias
cal
bash
feishu-cli cal list
feishu-cli cal list-events CAL_ID

Error Handling

ErrorCauseSolution
Access denied
Insufficient permissionsCheck if the app has calendar permissions enabled
invalid calendar_id
Invalid calendar IDUse
calendar list
to get valid IDs first
invalid event_id
Invalid event IDUse
list-events
to get valid IDs first
invalid time format
Incorrect time formatUse RFC3339 format (including time zone)
rate limit
API rate limit exceededWait a few seconds and try again

Notes

  1. Calendar ID: You need to get the calendar ID via
    calendar list
    before creating an event
  2. Time Format: Must use RFC3339 format with time zone information
  3. Permission Requirements: The app needs to have calendar-related permissions
  4. Create Calendar: The current CLI does not support creating new calendars; you can only use existing calendars to create events

Permission Requirements (Important)

⚠️ The calendar function requires the app to have one of the following permissions enabled on the Feishu Open Platform:
  • calendar:calendar:readonly
    - Read-only permission
  • calendar:calendar
    - Read-write permission
  • calendar:calendar.calendar:readonly
    - Calendar read-only
  • calendar:calendar:read
    - Calendar read
Application Link: In the Feishu Open Platform app backend → Permission Management → Apply for the corresponding permission
If you encounter an
Access denied
error, please check the app permission configuration.