Skip to main content
PATCH
Update an Event

Headers

Authorization
string
required

value must be Bearer <token> where <token> is api key prefixed with cal_, managed user access token, or OAuth access token

Path Parameters

uuid
string<uuid>
required

Event UUID. Accepts the canonical UUID (e.g. 018ff5cd-6dc4-7d57-bcbc-374702ca8b38) or its short-uuid (Flickr Base58) form (e.g. 1cbZYoAFoJdwqN4tixezd5).

Body

application/json
title
string

The Event's title.

Required string length: 1 - 255
Example:

"Team offsite"

endTime
string

When the Event ends, in ISO 8601 format in UTC timezone. It must be after startTime.

Example:

"2030-01-01T11:00:00.000Z"

timeZone
string

The IANA time zone the Event's times are shown in.

Example:

"Europe/Berlin"

description
object | null

What the Event is about, shown on its page.

paymentTimeoutMinutes
object | null

How many minutes a guest's seat is held while they pay. null uses the default of 10 minutes.

theme
enum<string> | null

Default theme of the event page. null follows the visitor's system setting.

Available options:
light,
dark
background
object | null

Animated background of the event page.

lineup
object | null

Speakers or performers on the event page. Avatars need the Event uuid, so create people without avatarUrl and upload avatars with the person avatar endpoint afterwards.

schedule
object[]

Agenda on the event page. Each item has either a startTime or a timeLabel. Avatars need the Event uuid, so create people without avatarUrl and upload avatars with the person avatar endpoint afterwards.

Maximum array length: 50
registrationFields
(Default Full Name · object | Default Split Name · object | Default Email · object | Default Location · object | Default Title · object | Default Notes · object | Default Guests · object | Default Reschedule Reason · object | Default Attendee Phone · object | Workflow-added SMS Reminder · object | Workflow-added AI Agent Phone · object | Custom Email · object | Custom Phone · object | Custom Address · object | Custom Short Text · object | Custom Number · object | Custom Long Text · object | Custom Select · object | Custom Multi-Select · object | Custom Multiple Emails · object | Custom Checkbox Group · object | Custom Checkbox · object | Custom Radio Group · object | Custom URL · object)[]

The questions guests answer when they register.

hosts
object[]

The Event's hosts. The creator is always a host and always listed first, even when not passed. Personal Events can only have the creator, so passing other ids returns a 400. On team Events every id must be an accepted team member, otherwise it returns a 400.

liveStreams
object[]

Links where people can watch the event live.

Maximum array length: 5
startTime
string

When the Event starts, in ISO 8601 format in UTC timezone. It must be before endTime.

Example:

"2030-01-01T10:00:00.000Z"

slug
string

Public page slug (cal.com/{slug}): 10-100 lowercase letters, digits and hyphens. It can't change once the Event is published.

Example:

"team-offsite-2030"

visibility
enum<string>

Once published: PUBLIC is listed on the owner's page, UNLISTED only opens from its link.

Available options:
PUBLIC,
UNLISTED
capacity
number | null

The most guests the Event can take. Pass null for unlimited. Ignored once any location has its own capacity: the Event then takes the sum of the location capacities, or is unlimited if any location has none. It can't go below the number of confirmed guests.

Required range: 1 <= x <= 100000
waitlistEnabled
boolean

Let guests join a waitlist when the Event is full. The waitlist only opens when the Event or the chosen location is full, so it only works when capacity is set on the Event or on a location.

requiresApproval
boolean

Registrations wait for a host's approval.

showOrganizerEmail
boolean

Show the organizer's email to guests.

guestList
enum<string>

Who guests can see on the Event's page. names lists them, count shows how many, hidden shows neither. It can't change once the Event is published.

Available options:
hidden,
names,
count
showPresentedBy
boolean

Show who the Event is presented by.

category
enum<string>

What kind of event it is.

Available options:
meetup,
conference,
music,
sports

Response

status
enum<string>
required
Available options:
success,
error
Example:

"success"

data
object
required