Skip to content

CLI Schedule Commands

These commands let you manage on-call schedules, roster membership, and temporary overrides.

Terminal window
beeps schedule list
beeps schedule list --json
Terminal window
beeps schedule create --name "Weekly On-Call" \
--relay-id rly_abc123 \
--type weekly \
--handoff-day monday \
--handoff-time 09:00
beeps schedule create --name "Daily Rotation" \
--relay-id rly_abc123 \
--type daily \
--handoff-day monday \
--handoff-time 09:00 \
--external-key prod-oncall
FlagRequiredDescription
--nameYesSchedule name
--relay-idYesRelay this schedule belongs to
--typeYesdaily or weekly
--handoff-dayYesDay of week for handoffs (monday-sunday)
--handoff-timeYesTime of day for handoffs (HH:MM format)
--start-atNoStart time as ISO string (omit to start immediately)
--external-keyNoExternal key for idempotent upserts
Terminal window
beeps schedule on-call --schedule-id sch_abc123
beeps schedule on-call --schedule-id sch_abc123 --json
Terminal window
beeps schedule assignments --schedule-id sch_abc123
beeps schedule assignments --schedule-id sch_abc123 --count 5
beeps schedule assignments --schedule-id sch_abc123 --type until --date 2025-03-01T00:00:00Z
beeps schedule assignments --schedule-id sch_abc123 --type days --count 14
FlagRequiredDescription
--schedule-idYesSchedule ID
--countNoNumber of assignments to return
--dateNoShow assignments until this date (ISO string)
--typeNoQuery type: assignments, until, or days

Add by email or user ID:

Terminal window
beeps schedule add-member --schedule-id sch_abc123 --email alice@example.com
beeps schedule add-member --schedule-id sch_abc123 --user-id usr_def456
Terminal window
beeps schedule remove-member --schedule-id sch_abc123 --user-id usr_def456

Overrides let you temporarily replace the on-call person — useful for PTO, shift swaps, or emergency coverage.

Terminal window
beeps schedule override create \
--schedule-id sch_abc123 \
--user-id usr_def456 \
--start-at 2025-03-01T00:00:00Z \
--end-at 2025-03-02T00:00:00Z
beeps schedule override create \
--schedule-id sch_abc123 \
--user-id usr_def456 \
--start-at 2025-03-01T00:00:00Z \
--end-at 2025-03-02T00:00:00Z \
--reason "covering for Alice"
FlagRequiredDescription
--schedule-idYesSchedule ID
--user-idYesUser who will cover the override
--start-atYesOverride start time (ISO string)
--end-atYesOverride end time (ISO string)
--reasonNoDescription of why the override exists
Terminal window
beeps schedule override list --schedule-id sch_abc123
beeps schedule override list --schedule-id sch_abc123 \
--start-at 2025-03-01T00:00:00Z \
--end-at 2025-04-01T00:00:00Z
Terminal window
beeps schedule override update \
--schedule-id sch_abc123 \
--override-id ovr_abc123 \
--end-at 2025-03-03T00:00:00Z
beeps schedule override update \
--schedule-id sch_abc123 \
--override-id ovr_abc123 \
--reason "extended coverage"
Terminal window
beeps schedule override cancel --schedule-id sch_abc123 --override-id ovr_abc123
  • 0 success
  • 1 validation failure or API error