username | Yes | Username of the person whose schedule is to be displayed |
eventSlug | Yes | Unique slug created for a particular event |
orgBannerUrl | No | URL of the user’s current organization |
customClassNames | No | To pass in custom classnames from outside for styling the atom |
month | No | The exact month for displaying a user’s availability; defaults to the current month |
selectedDate | No | Default selected date for which the slot picker opens |
startTime | No | Custom start time for the Booker that allows users to decide the first available date. Accepts JavaScript Date object or date string in format YYYY-MM-DD (e.g., "2025-08-20" or new Date("2025-08-20") ) |
hideBranding | No | For hiding any branding on the booker |
isAway | No | Sets the booker component to the away state |
allowsDynamicBooking | No | Boolean indicating if the booking is a dynamic booking |
bookingData | No | Data for rescheduling a booking passed in via this prop |
defaultFormValues | No | Prefilled values for booking form fields like name, email, guests, notes, reschedule reason, etc. |
isTeamEvent | No | Boolean indicating if it is a team event |
duration | No | Refers to a multiple-duration event type; selects default if not passed |
durationConfig | No | Configures selectable options for a multi-duration event type |
hashedLink | No | Refers to the private link from event types page |
isInstantMeeting | No | Boolean indicating if the booking is an instant meeting |
rescheduleUid | No | Unique ID generated during rescheduling |
bookingUid | No | Unique ID generated during booking |
locationUrl | No | Custom meeting link URL instead of a Cal.com link |
firstName | No | First name of the attendee |
lastName | No | Last name of the attendee |
guests | No | Invite a guest to join a meeting |
name | No | Host name |
onCreateBookingSuccess | No | Callback function for successful booking creation |
onCreateBookingError | No | Callback function triggered on booking creation failure |
onCreateRecurringBookingSuccess | No | Callback function for successful recurring booking creation |
onCreateRecurringBookingError | No | Callback function triggered on recurring booking creation failure |
onCreateInstantBookingSuccess | No | Callback function for successful instant booking creation |
onCreateInstantBookingError | No | Callback function triggered on instant booking creation failure |
onReserveSlotSuccess | No | Callback function for successful slot reservation |
onReserveSlotError | No | Callback function triggered on slot reservation failure |
onDeleteSlotSuccess | No | Callback function for successful slot deletion |
onDeleteSlotError | No | Callback function triggered on slot deletion failure |
view | No | Specifies the layout of the booker atom into column, week, or month view |
metadata | No | Used to pass custom metadata values into the booker. Metadata should be an object eg: { bookingSource: "website", userRole: "admin" } |
bannerUrl | No | Adds custom banner to the booker atom |
onBookerStateChange | No | Callback function that is triggered when the state of the booker atom changes. |
allowUpdatingUrlParams | No | Boolean indicating if the URL parameters should be updated, defaults to false. |
confirmButtonDisabled | No | Boolean indicating if the submit button should be disabled, defaults to false. |
timeZones | No | Array of valid IANA timezones to be used in the booker. Eg. [“Asia/Kolkata”, “Europe/London”] |
onTimeslotsLoaded | No | Callback function triggered once the available timeslots have been fetched. |