Skip to content

CLI commands

Install and log in: CLI guide. Path values are positional or flags; other arguments are flags named after the field (kebab-case); nested bodies go in --body as JSON, @file or -. Global flags: --json, --all (follow every page), --base-url, --api-version. --org and --team default to QUORUM_ORG and QUORUM_TEAM.

Who you are, your orgs and teams, and a read-only look at your links, bookings and polls.

List bookings

quorum bookings list [flags]

Needs bookings:read (not for credentials limited to some orgs).

Argument Type Required Description
--when upcoming or past
--link-id string Only bookings made through this link
--cursor string
--limit integer

List your booking links

quorum links list [flags]

Needs links:read (not for credentials limited to some orgs).

Get an org

quorum orgs get <handle> [flags]

Needs any signed-in credential.

Argument Type Required Description
--handle, --org string yes

List the orgs you belong to

quorum orgs list [flags]

Needs any signed-in credential.

List an org’s members

quorum orgs members list <handle> [flags]

Needs any signed-in credential.

Argument Type Required Description
--handle, --org string yes

List polls

quorum polls list [flags]

Needs polls:read (not for credentials limited to some orgs).

List bookings

quorum team bookings list <handle> <teamPath> [flags]

Needs bookings:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--when upcoming or past
--link-id string Only bookings made through this link
--cursor string
--limit integer

List a team’s booking links

quorum team links list <handle> <teamPath> [flags]

Needs links:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id

List polls

quorum team polls list <handle> <teamPath> [flags]

Needs polls:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id

Get a team

quorum teams get <handle> <teamPath> [flags]

Needs any signed-in credential.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id

List an org’s teams

quorum teams list <handle> [flags]

Needs any signed-in credential.

Argument Type Required Description
--handle, --org string yes

List a team’s members

quorum teams members list <handle> <teamPath> [flags]

Needs any signed-in credential.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id

List the teams you are in

quorum teams mine [flags]

Needs any signed-in credential.

Get the signed-in user

quorum whoami [flags]

Needs any signed-in credential.

Create, change and delete booking links, for you or a team, and choose your handle.

Choose your handle

quorum handle set [flags]

Needs links:write (not for credentials limited to some orgs).

Argument Type Required Description
--handle, --org string yes

Create a booking link

quorum links create [flags]

Needs links:write (not for credentials limited to some orgs).

Argument Type Required Description
--slug string yes
--publish-at-root boolean Team links only, and only for a team with root publishing: publish at quorumcal.com/{org}/{slug} instead of under the team. The other address redirects. Root slugs share one namespace with the org’s team slugs. Defaults to false
--title string yes
--description string
--duration-minutes integer yes
--interval-minutes integer Start times are offered every this many minutes. Defaults to 30
--min-notice-minutes integer Defaults to 60
--buffer-before-minutes integer
--buffer-after-minutes integer
--timezone string yes
--hours-mode schedules or link schedules: each person’s default schedule applies. link: only the link’s own weekly hours apply
--weekly json[] The link’s own hours, used when hoursMode is link
--host-id string Optional. A host must be free and never counts toward a pool. Without one, a slot needs only the pools
--organizer creator or first_assigned Whose calendar holds the event when there is no host: the link’s creator (default) or the first person assigned. A creator who isn’t attending sees the event as free
--meet boolean Null follows the workspace default
--pools json[]
--cc json[] Invited to every booking as optional and never reserved

Delete a booking link

quorum links delete <linkId> [flags]

Needs links:write (not for credentials limited to some orgs).

Argument Type Required Description
--link-id string yes

Get a booking link

quorum links get <linkId> [flags]

Needs links:read (not for credentials limited to some orgs).

Argument Type Required Description
--link-id string yes

Change a booking link

quorum links update <linkId> [flags]

Needs links:write (not for credentials limited to some orgs).

Argument Type Required Description
--link-id string yes
--slug string
--publish-at-root boolean Team links only, and only for a team with root publishing: publish at quorumcal.com/{org}/{slug} instead of under the team. The other address redirects. Root slugs share one namespace with the org’s team slugs. Defaults to false
--title string
--description string
--duration-minutes integer
--interval-minutes integer Start times are offered every this many minutes. Defaults to 30
--min-notice-minutes integer Defaults to 60
--buffer-before-minutes integer
--buffer-after-minutes integer
--timezone string
--hours-mode schedules or link schedules: each person’s default schedule applies. link: only the link’s own weekly hours apply
--weekly json[] The link’s own hours, used when hoursMode is link
--host-id string Optional. A host must be free and never counts toward a pool. Without one, a slot needs only the pools
--organizer creator or first_assigned Whose calendar holds the event when there is no host: the link’s creator (default) or the first person assigned. A creator who isn’t attending sees the event as free
--meet boolean Null follows the workspace default
--pools json[]
--cc json[] Invited to every booking as optional and never reserved

Create a booking link

quorum team links create <handle> <teamPath> [flags]

Needs links:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--slug string yes
--publish-at-root boolean Team links only, and only for a team with root publishing: publish at quorumcal.com/{org}/{slug} instead of under the team. The other address redirects. Root slugs share one namespace with the org’s team slugs. Defaults to false
--title string yes
--description string
--duration-minutes integer yes
--interval-minutes integer Start times are offered every this many minutes. Defaults to 30
--min-notice-minutes integer Defaults to 60
--buffer-before-minutes integer
--buffer-after-minutes integer
--timezone string yes
--hours-mode schedules or link schedules: each person’s default schedule applies. link: only the link’s own weekly hours apply
--weekly json[] The link’s own hours, used when hoursMode is link
--host-id string Optional. A host must be free and never counts toward a pool. Without one, a slot needs only the pools
--organizer creator or first_assigned Whose calendar holds the event when there is no host: the link’s creator (default) or the first person assigned. A creator who isn’t attending sees the event as free
--meet boolean Null follows the workspace default
--pools json[]
--cc json[] Invited to every booking as optional and never reserved

Delete a booking link

quorum team links delete <handle> <teamPath> <linkId> [flags]

Needs links:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--link-id string yes

Get a booking link

quorum team links get <handle> <teamPath> <linkId> [flags]

Needs links:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--link-id string yes

Change a booking link

quorum team links update <handle> <teamPath> <linkId> [flags]

Needs links:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--link-id string yes
--slug string
--publish-at-root boolean Team links only, and only for a team with root publishing: publish at quorumcal.com/{org}/{slug} instead of under the team. The other address redirects. Root slugs share one namespace with the org’s team slugs. Defaults to false
--title string
--description string
--duration-minutes integer
--interval-minutes integer Start times are offered every this many minutes. Defaults to 30
--min-notice-minutes integer Defaults to 60
--buffer-before-minutes integer
--buffer-after-minutes integer
--timezone string
--hours-mode schedules or link schedules: each person’s default schedule applies. link: only the link’s own weekly hours apply
--weekly json[] The link’s own hours, used when hoursMode is link
--host-id string Optional. A host must be free and never counts toward a pool. Without one, a slot needs only the pools
--organizer creator or first_assigned Whose calendar holds the event when there is no host: the link’s creator (default) or the first person assigned. A creator who isn’t attending sees the event as free
--meet boolean Null follows the workspace default
--pools json[]
--cc json[] Invited to every booking as optional and never reserved

List a team’s bookings and swap a reserved pool member.

Swap one reserved pool member for another

quorum bookings swap <bookingId> [flags]

Needs bookings:write (not for credentials limited to some orgs).

Argument Type Required Description
--booking-id string yes
--from string yes The reserved pool member to replace
--to string yes Another member of the same pool

Swap one reserved pool member for another

quorum team bookings swap <handle> <teamPath> <bookingId> [flags]

Needs bookings:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--booking-id string yes
--from string yes The reserved pool member to replace
--to string yes Another member of the same pool

Create, edit, answer, finalize and schedule polls, including suggested polls and invitations.

Answer a poll as yourself

quorum polls answer <pollId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes
--answers json[] yes Options left out count as no

Add attendees to a suggested poll

quorum polls attendees add <pollId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes
--attendees json[] yes

Remove an attendee from a suggested poll

quorum polls attendees remove <pollId> <attendeeId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes
--attendee-id string yes

Make an attendee required or optional

quorum polls attendees update <pollId> <attendeeId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes
--attendee-id string yes
--required boolean yes

Busy overlay for a poll’s grid

quorum polls busy <pollId> [flags]

Needs polls:read (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes

Create a poll

quorum polls create [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--title string yes
--description string
--duration-minutes integer yes
--timezone string yes
--options string[] yes Candidate start times, in the future, up to 50
--deadline string
--meet boolean Defaults to the org’s setting
--publish-at-root boolean Team polls of a team with root publishing: public at quorumcal.com/{org}/poll/{publicId} instead of under the team. Defaults to false

Delete a poll and its responses

quorum polls delete <pollId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes

Pick the final time and invite everyone who responded

quorum polls finalize <pollId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes
--option-id string yes

Get a poll with every response

quorum polls get <pollId> [flags]

Needs polls:read (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes

Invite people to answer a poll by email

quorum polls invitations create <pollId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes
--emails string[] yes Up to 20 addresses
--note string

List who was invited to a poll

quorum polls invitations list <pollId> [flags]

Needs polls:read (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes

Suggested answers from your connected calendars

quorum polls prefill <pollId> [flags]

Needs polls:read (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes

Schedule now: book the chosen option and close the poll

quorum polls schedule <pollId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes
--option-id string yes
--accept-conflicts boolean

Create a poll whose times Quorum proposes

quorum polls suggest [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--title string yes
--description string
--duration-minutes integer yes
--timezone string yes
--window json yes
--interval-minutes integer How often a time may start, in the poll’s time zone. Defaults to 30
--attendees json[] yes
--max-options integer At most this many proposed times. Defaults to 20
--deadline string
--auto-finalize boolean Schedule the Best option by itself once every required attendee has answered, or the deadline passes, if it is unique (Q75). Needs a required attendee or a deadline
--meet boolean
--publish-at-root boolean

People who can be picked as attendees of a suggested poll

quorum polls suggest-people [flags]

Needs polls:read (not for credentials limited to some orgs).

Every option ranked, with who can make it

quorum polls suggestions get <pollId> [flags]

Needs polls:read (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes

Propose more times, optionally in a wider window

quorum polls suggestions more <pollId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes
--from string
--to string

Turn auto-finalize on or off

quorum polls suggestions update <pollId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes
--auto-finalize boolean yes

Edit a poll

quorum polls update <pollId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--poll-id string yes
--title string
--description string
--duration-minutes integer
--timezone string
--options string[] Replaces the options. Only allowed while nobody has responded
--deadline string
--meet boolean
--publish-at-root boolean

Answer a poll as yourself

quorum team polls answer <handle> <teamPath> <pollId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes
--answers json[] yes Options left out count as no

Add attendees to a suggested poll

quorum team polls attendees add <handle> <teamPath> <pollId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes
--attendees json[] yes

Remove an attendee from a suggested poll

quorum team polls attendees remove <handle> <teamPath> <pollId> <attendeeId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes
--attendee-id string yes

Make an attendee required or optional

quorum team polls attendees update <handle> <teamPath> <pollId> <attendeeId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes
--attendee-id string yes
--required boolean yes

Busy overlay for a poll’s grid

quorum team polls busy <handle> <teamPath> <pollId> [flags]

Needs polls:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes

Create a poll

quorum team polls create <handle> <teamPath> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--title string yes
--description string
--duration-minutes integer yes
--timezone string yes
--options string[] yes Candidate start times, in the future, up to 50
--deadline string
--meet boolean Defaults to the org’s setting
--publish-at-root boolean Team polls of a team with root publishing: public at quorumcal.com/{org}/poll/{publicId} instead of under the team. Defaults to false

Delete a poll and its responses

quorum team polls delete <handle> <teamPath> <pollId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes

Pick the final time and invite everyone who responded

quorum team polls finalize <handle> <teamPath> <pollId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes
--option-id string yes

Get a poll with every response

quorum team polls get <handle> <teamPath> <pollId> [flags]

Needs polls:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes

Invite people to answer a poll by email

quorum team polls invitations create <handle> <teamPath> <pollId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes
--emails string[] yes Up to 20 addresses
--note string

List who was invited to a poll

quorum team polls invitations list <handle> <teamPath> <pollId> [flags]

Needs polls:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes

Suggested answers from your connected calendars

quorum team polls prefill <handle> <teamPath> <pollId> [flags]

Needs polls:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes

Schedule now: book the chosen option and close the poll

quorum team polls schedule <handle> <teamPath> <pollId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes
--option-id string yes
--accept-conflicts boolean

Create a poll whose times Quorum proposes

quorum team polls suggest <handle> <teamPath> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--title string yes
--description string
--duration-minutes integer yes
--timezone string yes
--window json yes
--interval-minutes integer How often a time may start, in the poll’s time zone. Defaults to 30
--attendees json[] yes
--max-options integer At most this many proposed times. Defaults to 20
--deadline string
--auto-finalize boolean Schedule the Best option by itself once every required attendee has answered, or the deadline passes, if it is unique (Q75). Needs a required attendee or a deadline
--meet boolean
--publish-at-root boolean

People who can be picked as attendees of a suggested poll

quorum team polls suggest-people <handle> <teamPath> [flags]

Needs polls:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id

Every option ranked, with who can make it

quorum team polls suggestions get <handle> <teamPath> <pollId> [flags]

Needs polls:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes

Propose more times, optionally in a wider window

quorum team polls suggestions more <handle> <teamPath> <pollId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes
--from string
--to string

Turn auto-finalize on or off

quorum team polls suggestions update <handle> <teamPath> <pollId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes
--auto-finalize boolean yes

Edit a poll

quorum team polls update <handle> <teamPath> <pollId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--poll-id string yes
--title string
--description string
--duration-minutes integer
--timezone string
--options string[] Replaces the options. Only allowed while nobody has responded
--deadline string
--meet boolean
--publish-at-root boolean

Recurring poll series: members, weeks, new-time polls, breaks and your memberships.

The org’s breaks

quorum orgs breaks list <handle> [flags]

Needs any signed-in credential.

Argument Type Required Description
--handle, --org string yes

Answer from my calendar automatically for this series

quorum series auto-answer set <seriesId> [flags]

Needs availability:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes
--enabled boolean yes

Add a break

quorum series breaks create [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--label string yes
--starts-on string yes
--ends-on string yes

Remove a break

quorum series breaks delete <breakId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--break-id string yes

Breaks that series skip

quorum series breaks list [flags]

Needs polls:read (not for credentials limited to some orgs).

Start a recurring poll series

quorum series create [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--title string yes
--description string
--duration-minutes integer yes
--timezone string yes
--meet boolean
--interval-weeks integer A period starts every this many weeks. Defaults to 1 (weekly)
--starts-on string The local date the first period starts on. A re-poll series defaults to the next Monday; a standing-time series to its first meeting
--window-days integer How many days a period offers times on, at most the interval. Defaults to 7
--weekdays integer[] Days a time may start on, 0 is Sunday. Defaults to Monday to Friday
--window-start string Earliest start, local. Defaults to 09:00
--window-end string Latest end, local. Defaults to 17:00
--interval-minutes integer How often a time may start. Defaults to 30
--timing fixed or rolling Fixed (Q66): the poll opens and closes at set times before each period. Rolling: it opens when the previous meeting ends and closes 48 hours before the earliest option
--open-days-before integer Fixed timing: days before the period the poll opens. Defaults to 3 (Friday for a Monday period)
--open-time string HH:MM, local
--close-days-before integer Fixed timing: days before the period the poll closes. Defaults to 2 (Saturday noon for a Monday period; one day leaves under the 24 hours a second round needs before a 09:00 start)
--close-time string Defaults to 12:00
--respect-breaks boolean Skip the org’s, team’s and personal breaks (Q63). Defaults to true
--auto-book boolean Book the best option by itself when the poll closes. Off leaves every week to the owner. Defaults to true
--second-round json
--decline-repoll json
--standing-repoll json
--decline-threshold integer Required declines that count as the time not working. Defaults to 3
--decline-window integer …among this many of the latest meetings. Defaults to 6
--mode repoll or standing yes Re-poll: a suggested poll each period, then the best option booked. Standing time: one recurring event, re-polled when it stops working. Fixed at creation
--standing-weekday integer Standing time: the day of the week the meeting is on, 0 is Sunday
--standing-time string Standing time: the meeting’s local start time. Defaults to the window start
--host-id string Whose calendar the events are booked into. Defaults to you; a team admin may name another team member
--members json[]

End a series

quorum series end <seriesId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes

A series with its members and settings

quorum series get <seriesId> [flags]

Needs polls:read (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes

List recurring poll series

quorum series list [flags]

Needs polls:read (not for credentials limited to some orgs).

Add a member to a series

quorum series members add <seriesId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes
--user-id string A person with an account: an org or team member, or anyone who shared availability
--email string Anyone else, by address. Quorum can’t see their calendar; they answer the poll
--name string Required with email
--required boolean Defaults to true (Q75)

Remove a member from a series

quorum series members remove <seriesId> <memberId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes
--member-id string yes

Make a member required or optional

quorum series members update <seriesId> <memberId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes
--member-id string yes
--required boolean yes

Your place in a series

quorum series memberships get <seriesId> [flags]

Needs polls:read (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes

Leave a series

quorum series memberships leave <seriesId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes

The series you are a member of

quorum series memberships list [flags]

Needs polls:read (not for credentials limited to some orgs).

Pause a series

quorum series pause <seriesId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes

Cancel the open new-time poll

quorum series repoll cancel <seriesId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes

The open new-time poll, ranked

quorum series repoll get <seriesId> [flags]

Needs polls:read (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes

Choose the new weekly time

quorum series repoll pick <seriesId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes
--option-id string yes

Poll the group for a new weekly time

quorum series repoll start <seriesId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes

Resume a paused series

quorum series resume <seriesId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes

Hand a series to someone else

quorum series transfer <seriesId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes
--user-id string yes

Change a series’ settings

quorum series update <seriesId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes
--title string
--description string
--duration-minutes integer
--timezone string
--meet boolean
--interval-weeks integer A period starts every this many weeks. Defaults to 1 (weekly)
--starts-on string The local date the first period starts on. A re-poll series defaults to the next Monday; a standing-time series to its first meeting
--window-days integer How many days a period offers times on, at most the interval. Defaults to 7
--weekdays integer[] Days a time may start on, 0 is Sunday. Defaults to Monday to Friday
--window-start string Earliest start, local. Defaults to 09:00
--window-end string Latest end, local. Defaults to 17:00
--interval-minutes integer How often a time may start. Defaults to 30
--timing fixed or rolling Fixed (Q66): the poll opens and closes at set times before each period. Rolling: it opens when the previous meeting ends and closes 48 hours before the earliest option
--open-days-before integer Fixed timing: days before the period the poll opens. Defaults to 3 (Friday for a Monday period)
--open-time string HH:MM, local
--close-days-before integer Fixed timing: days before the period the poll closes. Defaults to 2 (Saturday noon for a Monday period; one day leaves under the 24 hours a second round needs before a 09:00 start)
--close-time string Defaults to 12:00
--respect-breaks boolean Skip the org’s, team’s and personal breaks (Q63). Defaults to true
--auto-book boolean Book the best option by itself when the poll closes. Off leaves every week to the owner. Defaults to true
--second-round json
--decline-repoll json
--standing-repoll json
--decline-threshold integer Required declines that count as the time not working. Defaults to 3
--decline-window integer …among this many of the latest meetings. Defaults to 6
--standing-weekday integer Standing time: the day of the week the meeting is on, 0 is Sunday
--standing-time string Standing time: the meeting’s local start time. Defaults to the window start

One week with every option and who can’t make it

quorum series weeks get <seriesId> <occurrenceId> [flags]

Needs polls:read (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes
--occurrence-id string yes

Keep a declined meeting as it is

quorum series weeks keep <seriesId> <occurrenceId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes
--occurrence-id string yes

A series’ history: each week and what became of it

quorum series weeks list <seriesId> [flags]

Needs polls:read (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes

Pick the time for a week

quorum series weeks pick <seriesId> <occurrenceId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes
--occurrence-id string yes
--option-id string yes

Start the automatic step for a week now

quorum series weeks repoll <seriesId> <occurrenceId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes
--occurrence-id string yes

Skip a week

quorum series weeks skip <seriesId> <occurrenceId> [flags]

Needs polls:write (not for credentials limited to some orgs).

Argument Type Required Description
--series-id string yes
--occurrence-id string yes

Add a break

quorum team series breaks create <handle> <teamPath> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--label string yes
--starts-on string yes
--ends-on string yes

Remove a break

quorum team series breaks delete <handle> <teamPath> <breakId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--break-id string yes

Breaks that series skip

quorum team series breaks list <handle> <teamPath> [flags]

Needs polls:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id

Start a recurring poll series

quorum team series create <handle> <teamPath> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--title string yes
--description string
--duration-minutes integer yes
--timezone string yes
--meet boolean
--interval-weeks integer A period starts every this many weeks. Defaults to 1 (weekly)
--starts-on string The local date the first period starts on. A re-poll series defaults to the next Monday; a standing-time series to its first meeting
--window-days integer How many days a period offers times on, at most the interval. Defaults to 7
--weekdays integer[] Days a time may start on, 0 is Sunday. Defaults to Monday to Friday
--window-start string Earliest start, local. Defaults to 09:00
--window-end string Latest end, local. Defaults to 17:00
--interval-minutes integer How often a time may start. Defaults to 30
--timing fixed or rolling Fixed (Q66): the poll opens and closes at set times before each period. Rolling: it opens when the previous meeting ends and closes 48 hours before the earliest option
--open-days-before integer Fixed timing: days before the period the poll opens. Defaults to 3 (Friday for a Monday period)
--open-time string HH:MM, local
--close-days-before integer Fixed timing: days before the period the poll closes. Defaults to 2 (Saturday noon for a Monday period; one day leaves under the 24 hours a second round needs before a 09:00 start)
--close-time string Defaults to 12:00
--respect-breaks boolean Skip the org’s, team’s and personal breaks (Q63). Defaults to true
--auto-book boolean Book the best option by itself when the poll closes. Off leaves every week to the owner. Defaults to true
--second-round json
--decline-repoll json
--standing-repoll json
--decline-threshold integer Required declines that count as the time not working. Defaults to 3
--decline-window integer …among this many of the latest meetings. Defaults to 6
--mode repoll or standing yes Re-poll: a suggested poll each period, then the best option booked. Standing time: one recurring event, re-polled when it stops working. Fixed at creation
--standing-weekday integer Standing time: the day of the week the meeting is on, 0 is Sunday
--standing-time string Standing time: the meeting’s local start time. Defaults to the window start
--host-id string Whose calendar the events are booked into. Defaults to you; a team admin may name another team member
--members json[]

End a series

quorum team series end <handle> <teamPath> <seriesId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes

A series with its members and settings

quorum team series get <handle> <teamPath> <seriesId> [flags]

Needs polls:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes

List recurring poll series

quorum team series list <handle> <teamPath> [flags]

Needs polls:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id

Add a member to a series

quorum team series members add <handle> <teamPath> <seriesId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes
--user-id string A person with an account: an org or team member, or anyone who shared availability
--email string Anyone else, by address. Quorum can’t see their calendar; they answer the poll
--name string Required with email
--required boolean Defaults to true (Q75)

Remove a member from a series

quorum team series members remove <handle> <teamPath> <seriesId> <memberId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes
--member-id string yes

Make a member required or optional

quorum team series members update <handle> <teamPath> <seriesId> <memberId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes
--member-id string yes
--required boolean yes

Pause a series

quorum team series pause <handle> <teamPath> <seriesId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes

Cancel the open new-time poll

quorum team series repoll cancel <handle> <teamPath> <seriesId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes

The open new-time poll, ranked

quorum team series repoll get <handle> <teamPath> <seriesId> [flags]

Needs polls:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes

Choose the new weekly time

quorum team series repoll pick <handle> <teamPath> <seriesId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes
--option-id string yes

Poll the group for a new weekly time

quorum team series repoll start <handle> <teamPath> <seriesId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes

Resume a paused series

quorum team series resume <handle> <teamPath> <seriesId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes

Hand a series to someone else

quorum team series transfer <handle> <teamPath> <seriesId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes
--user-id string yes

Change a series’ settings

quorum team series update <handle> <teamPath> <seriesId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes
--title string
--description string
--duration-minutes integer
--timezone string
--meet boolean
--interval-weeks integer A period starts every this many weeks. Defaults to 1 (weekly)
--starts-on string The local date the first period starts on. A re-poll series defaults to the next Monday; a standing-time series to its first meeting
--window-days integer How many days a period offers times on, at most the interval. Defaults to 7
--weekdays integer[] Days a time may start on, 0 is Sunday. Defaults to Monday to Friday
--window-start string Earliest start, local. Defaults to 09:00
--window-end string Latest end, local. Defaults to 17:00
--interval-minutes integer How often a time may start. Defaults to 30
--timing fixed or rolling Fixed (Q66): the poll opens and closes at set times before each period. Rolling: it opens when the previous meeting ends and closes 48 hours before the earliest option
--open-days-before integer Fixed timing: days before the period the poll opens. Defaults to 3 (Friday for a Monday period)
--open-time string HH:MM, local
--close-days-before integer Fixed timing: days before the period the poll closes. Defaults to 2 (Saturday noon for a Monday period; one day leaves under the 24 hours a second round needs before a 09:00 start)
--close-time string Defaults to 12:00
--respect-breaks boolean Skip the org’s, team’s and personal breaks (Q63). Defaults to true
--auto-book boolean Book the best option by itself when the poll closes. Off leaves every week to the owner. Defaults to true
--second-round json
--decline-repoll json
--standing-repoll json
--decline-threshold integer Required declines that count as the time not working. Defaults to 3
--decline-window integer …among this many of the latest meetings. Defaults to 6
--standing-weekday integer Standing time: the day of the week the meeting is on, 0 is Sunday
--standing-time string Standing time: the meeting’s local start time. Defaults to the window start

One week with every option and who can’t make it

quorum team series weeks get <handle> <teamPath> <seriesId> <occurrenceId> [flags]

Needs polls:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes
--occurrence-id string yes

Keep a declined meeting as it is

quorum team series weeks keep <handle> <teamPath> <seriesId> <occurrenceId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes
--occurrence-id string yes

A series’ history: each week and what became of it

quorum team series weeks list <handle> <teamPath> <seriesId> [flags]

Needs polls:read.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes

Pick the time for a week

quorum team series weeks pick <handle> <teamPath> <seriesId> <occurrenceId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes
--occurrence-id string yes
--option-id string yes

Start the automatic step for a week now

quorum team series weeks repoll <handle> <teamPath> <seriesId> <occurrenceId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes
--occurrence-id string yes

Skip a week

quorum team series weeks skip <handle> <teamPath> <seriesId> <occurrenceId> [flags]

Needs polls:write.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--series-id string yes
--occurrence-id string yes

Schedules, saved overrides, visibility, busy times, and who you share availability with.

Your busy times across connected calendars

quorum availability busy [flags]

Needs availability:read.

Argument Type Required Description
--from string yes
--to string yes

Save a dated override or a weekly rule

quorum availability overrides create [flags]

Needs availability:write (not for credentials limited to some orgs).

Argument Type Required Description
--body json yes

Delete a saved override or weekly rule

quorum availability overrides delete <overrideId> [flags]

Needs availability:write (not for credentials limited to some orgs).

Argument Type Required Description
--override-id string yes

List your saved availability overrides and weekly rules

quorum availability overrides list [flags]

Needs availability:read.

Change a saved override or weekly rule

quorum availability overrides update <overrideId> [flags]

Needs availability:write (not for credentials limited to some orgs).

Argument Type Required Description
--override-id string yes
--kind free or busy free: calendar busy time inside it counts as open. busy: the time is blocked whatever the calendar shows
--label string
--scope json
--starts-at string
--ends-at string
--weekday integer
--start string
--end string
--timezone string
--acknowledged boolean As on create

Cancel a pending availability request

quorum availability requests cancel <requestId> [flags]

Needs availability:write (not for credentials limited to some orgs).

Argument Type Required Description
--request-id string yes

Ask people to share their availability

quorum availability requests create [flags]

Needs availability:write (not for credentials limited to some orgs).

Argument Type Required Description
--emails string[] yes Up to 20 addresses
--scope json yes
--note string

List the availability requests you sent

quorum availability requests list [flags]

Needs availability:read (not for credentials limited to some orgs).

Who can see your busy time

quorum availability visibility get [flags]

Needs availability:read.

Change who can see your busy time

quorum availability visibility update [flags]

Needs availability:write (not for credentials limited to some orgs).

Argument Type Required Description
--default busy or hidden What other workspace members see: busy blocks inside a poll’s grid (never titles), or nothing
--calendars json[] Per-calendar overrides; null clears one back to your default

Share your availability

quorum grants create [flags]

Needs availability:write (not for credentials limited to some orgs).

Argument Type Required Description
--grantee-kind user or team or org or link or series yes
--grantee-id string yes

List who you share your availability with

quorum grants list [flags]

Needs availability:read (not for credentials limited to some orgs).

Stop sharing your availability

quorum grants revoke <grantId> [flags]

Needs availability:write (not for credentials limited to some orgs).

Argument Type Required Description
--grant-id string yes

Create a named schedule

quorum schedules create [flags]

Needs availability:write (not for credentials limited to some orgs).

Argument Type Required Description
--name string yes
--timezone string yes
--weekly json[] yes
--is-default boolean

Delete a named schedule

quorum schedules delete <scheduleId> [flags]

Needs availability:write (not for credentials limited to some orgs).

Argument Type Required Description
--schedule-id string yes

List your named schedules

quorum schedules list [flags]

Needs availability:read.

Update a named schedule

quorum schedules update <scheduleId> [flags]

Needs availability:write (not for credentials limited to some orgs).

Argument Type Required Description
--schedule-id string yes
--name string
--timezone string
--weekly json[]
--is-default boolean

Your private address book.

Add a contact

quorum contacts create [flags]

Needs contacts:write (not for credentials limited to some orgs).

Argument Type Required Description
--name string
--notes string
--emails string[] yes

Delete a contact

quorum contacts delete <contactId> [flags]

Needs contacts:write (not for credentials limited to some orgs).

Argument Type Required Description
--contact-id string yes

Export your contacts

quorum contacts export [flags]

Needs contacts:read (not for credentials limited to some orgs).

Argument Type Required Description
--format csv or vcard

Read a contact and your history with them

quorum contacts get <contactId> [flags]

Needs contacts:read (not for credentials limited to some orgs).

Argument Type Required Description
--contact-id string yes

Import contacts from a vCard or CSV file

quorum contacts import [flags]

Needs contacts:write (not for credentials limited to some orgs).

Argument Type Required Description
--format vcard or csv yes
--text string yes
--mapping json
--dry-run boolean

List your contacts

quorum contacts list [flags]

Needs contacts:read (not for credentials limited to some orgs).

Argument Type Required Description
--q string
--limit integer
--offset integer
--order name or recent
--initiated true or false
--source booking or poll_response or availability_request or poll_invitation or accepted_request or manual or vcard or csv or google or microsoft

Change a contact

quorum contacts update <contactId> [flags]

Needs contacts:write (not for credentials limited to some orgs).

Argument Type Required Description
--contact-id string yes
--name string
--notes string
--emails string[]

Org administration: settings, members, invites, teams and credentials.

Add an org-wide break

quorum orgs breaks create <handle> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--label string yes
--starts-on string yes
--ends-on string yes

Remove an org-wide break

quorum orgs breaks delete <handle> <breakId> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--break-id string yes

List every credential that reaches an org

quorum orgs credentials list <handle> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes

Invite someone by email

quorum orgs invites create <handle> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--email string yes
--role admin or member Your role in this workspace (owners show as admin)

List an org’s pending invites

quorum orgs invites list <handle> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes

Revoke a pending invite

quorum orgs invites revoke <handle> <inviteId> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--invite-id string yes

Remove a member, or leave the org yourself

quorum orgs members remove <handle> <userId> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--user-id string yes

Change a member’s role

quorum orgs members update <handle> <userId> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--user-id string yes
--role admin or member yes Your role in this workspace (owners show as admin)

Get an org’s token and connected-app policies

quorum orgs policy get <handle> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes

Change an org’s settings

quorum orgs update <handle> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--name string
--meet-by-default boolean

Create a webhook endpoint

quorum orgs webhooks create <handle> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--url string yes
--description string
--events string[] Defaults to everything (*)
--payload-version string A supported API version; defaults to the request’s

Delete a webhook endpoint

quorum orgs webhooks delete <handle> <webhookId> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--webhook-id string yes

List an endpoint’s deliveries

quorum orgs webhooks deliveries <handle> <webhookId> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--webhook-id string yes
--status pending or succeeded or failed
--limit integer
--offset integer

Get a delivery with its payload and tries

quorum orgs webhooks delivery <handle> <webhookId> <deliveryId> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--webhook-id string yes
--delivery-id string yes

List the webhook event types

quorum orgs webhooks events [flags]

Needs any signed-in credential.

Get a webhook endpoint

quorum orgs webhooks get <handle> <webhookId> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--webhook-id string yes

List an org’s webhook endpoints

quorum orgs webhooks list <handle> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes

Send a delivery again

quorum orgs webhooks redeliver <handle> <webhookId> <deliveryId> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--webhook-id string yes
--delivery-id string yes

Rotate a webhook endpoint’s secret

quorum orgs webhooks rotate-secret <handle> <webhookId> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--webhook-id string yes
--overlap-hours integer How long the old secret keeps signing. Default 24, at most 168 (a week)

Send a test event

quorum orgs webhooks test <handle> <webhookId> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--webhook-id string yes

Change a webhook endpoint

quorum orgs webhooks update <handle> <webhookId> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--webhook-id string yes
--url string
--description string
--events string[] Event types to receive: exact (booking.created), a group (booking.*) or everything (*). List them with GET /v1/webhook-events
--status active or disabled

Create a team

quorum teams create <handle> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--name string yes
--slug string yes
--can-publish-root boolean Let the team publish links and polls at the org’s root. Defaults to false
--alias string A root alias handle (quorumcal.com/{alias}/…)

Delete an empty team

quorum teams delete <handle> <teamPath> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id

Remove someone from a team, or leave it yourself

quorum teams members remove <handle> <teamPath> <userId> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--user-id string yes

Add someone to a team, or change their role

quorum teams members set <handle> <teamPath> <userId> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--user-id string yes
--role admin or member Your standing: admin (of this team, or an org admin), member, or none

Rename a team, change its root permission or alias

quorum teams update <handle> <teamPath> [flags]

Needs workspace:admin.

Argument Type Required Description
--handle, --org string yes
--team-path, --team string yes The team’s slug or id
--name string
--slug string
--can-publish-root boolean
--alias string