Plugins
Cal.com
List, fetch, and cancel Cal.com bookings; enumerate event types and schedules.
Authentication
| Type | Default | Details |
|---|---|---|
api_key | ✅ | Cal.com API key passed as Authorization: Bearer cal_... |
Cal.com requires the cal-api-version: 2024-08-13 header on every request — the plugin sets it automatically.
Endpoints
| Path | Risk | Description |
|---|---|---|
bookings.list | read | List bookings (filterable by status). |
bookings.get | read | Fetch a single booking by uid. |
bookings.cancel | destructive | Cancel a booking. Notifies the attendee. |
event-types.list | read | List event types for the authenticated user. |
schedules.list | read | List availability schedules. |
bookings.list
const { data } = await fabric.cal.api.bookings.list({
status: 'ACCEPTED',
take: 25,
});| Field | Type | Description |
|---|---|---|
status | 'ACCEPTED' | 'PENDING' | 'CANCELLED' | 'REJECTED' | Filter |
take | number | Page size |
skip | number | Offset |
bookings.cancel
await fabric.cal.api.bookings.cancel({
uid: 'aBcD1234',
cancellationReason: 'Reschedule requested',
});Cautious-mode plugins block this until approved — see Permissions.
Factory
import { calCom } from '@fabricorg/integrations/plugins';
const fabric = createFabric({
plugins: [calCom({ apiKey: process.env.CAL_API_KEY })],
});