PluginsCal.com
Cal.com API Endpoints
Complete reference for all Cal.com API endpoints
The Cal plugin provides access to Cal.com's scheduling API for managing bookings.
New to Corsair? Learn about core concepts like API access, authentication, and error handling.
Full Implementation: For the complete, up-to-date list, see the Cal plugin source code.
Bookings
list
bookings.list
List all bookings.
const bookings = await corsair.cal.api.bookings.list({
limit: 20,
offset: 0,
});Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
limit | number | No | Max results to return |
offset | number | No | Pagination offset |
status | string | No | Filter by status (e.g., upcoming, past) |
get
bookings.get
Get a booking by UID.
const booking = await corsair.cal.api.bookings.get({
uid: "booking-uid",
});Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
uid | string | Yes | Booking UID |
create
bookings.create
Create a new booking.
const booking = await corsair.cal.api.bookings.create({
eventTypeId: 12345,
start: "2024-02-15T10:00:00Z",
end: "2024-02-15T11:00:00Z",
name: "John Doe",
email: "john@example.com",
timeZone: "America/New_York",
});Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
eventTypeId | number | Yes | Cal.com event type ID |
start | string | Yes | Start time (ISO 8601) |
end | string | Yes | End time (ISO 8601) |
name | string | Yes | Attendee name |
email | string | Yes | Attendee email |
timeZone | string | Yes | Attendee timezone |
notes | string | No | Additional notes |
metadata | object | No | Custom metadata |
cancel
bookings.cancel
Cancel a booking.
await corsair.cal.api.bookings.cancel({
uid: "booking-uid",
reason: "Schedule conflict",
});Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
uid | string | Yes | Booking UID |
reason | string | No | Cancellation reason |
reschedule
bookings.reschedule
Reschedule a booking to a new time.
const rescheduled = await corsair.cal.api.bookings.reschedule({
uid: "booking-uid",
start: "2024-02-20T14:00:00Z",
end: "2024-02-20T15:00:00Z",
});Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
uid | string | Yes | Booking UID |
start | string | Yes | New start time (ISO 8601) |
end | string | Yes | New end time (ISO 8601) |
confirm
bookings.confirm
Confirm a pending booking.
await corsair.cal.api.bookings.confirm({
uid: "booking-uid",
});Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
uid | string | Yes | Booking UID |
decline
bookings.decline
Decline a pending booking.
await corsair.cal.api.bookings.decline({
uid: "booking-uid",
reason: "Not available at this time",
});Parameters:
| Name | Type | Required | Description |
|---|---|---|---|
uid | string | Yes | Booking UID |
reason | string | No | Decline reason |