Skip to main content
ConfigView reads your Cal.com account through Cal.com’s API v2, using an API key that you create in Cal.com. You will end up with 1 secret in ConfigView (CALCOM_API_KEY) when setup is complete.
Scope of this integration today. ConfigView reads who has Cal.com and with what role, the teams they belong to, the video apps and calendars they have connected, the webhooks and workflows that send booking data to other systems, any domain-wide calendar access Cal.com has been given, and bookings from the last year and ahead. ConfigView only reads. It never creates, changes or cancels anything.

Step 1: Open the Cal.com page in ConfigView

Open ConfigView in a second browser tab and leave it open: https://{companyname}.configview.com/admin/integrations/calcom Cal.com shows the key once, when you create it, so paste it straight into ConfigView instead of keeping it in a notes file.

Step 2: Create an API key in Cal.com

  1. Sign in to Cal.com as an organization owner or admin. See Which user owns the key below
  2. Open Settings → Security → API keys
  3. Create a new key. Name it ConfigView and choose Never expires if you can. A key with an expiry date stops working on that date without warning
  4. Copy the key. A live key starts with cal_live_. A key starting with just cal_ is a test-mode key and sees no real data
  5. Switch to the ConfigView tab, paste it into CALCOM_API_KEY under Credentials, and click the save icon

Which user owns the key

A Cal.com API key acts as the user who created it.
  • Organizations plan: the organization-wide lists (users, memberships, teams, webhooks, bookings, delegation credentials) need the key’s owner to be an organization admin or owner. A member’s key gets a 403 on every one of them, so those tables stay empty and only the key owner’s own data is collected.
  • Teams plan: there is no organization-wide view. ConfigView reads the teams the key’s owner belongs to, their members and their event types.
If the key’s owner leaves and their account is removed, collection stops. A shared admin account that won’t leave is the safer owner.

Step 3: Connect and verify

  1. Back on https://{companyname}.configview.com/admin/integrations/calcom, confirm the credential shows as saved
  2. Click Connect. ConfigView creates its tables and schedules every collector at your default run time. Stop any you don’t want under Collectors:
  1. Click Verify now. The health check confirms the key, reports whether this is an Organizations account, then reads one record from each kind of data the plan offers.
If a check fails:
  • Auth fails with 401. The key is wrong, revoked, or past its expiry date. Create a new key and paste it again.
  • Organization checks are skipped with 403. The key’s owner is not an organization admin or owner. Create the key from an admin account.
  • “Teams (Teams plan)” is skipped on an Organizations account. Expected: Cal.com serves team data to organizations under the organization endpoints instead.

Data Tables

Once the scripts run, these tables are created in your database. Each includes a run_at column for historical tracking, and a raw_json column holding the record as Cal.com returned it, minus the fields listed under What isn’t collected. Each table keeps only the newest run.

Things worth knowing

About half the tables will be empty, and that’s expected. Cal.com serves organization data only to Organizations accounts and team data only to Teams accounts. ConfigView collects both families. calcom_me.organization_id tells you which one applies: when it’s filled in, read the calcom_org_* tables. Connected calendars are the key owner’s only. Cal.com has no organization-wide list of connected calendars. To see who else gave Cal.com access to their calendar, look at the Google Workspace or Microsoft 365 integration’s app grants. locations names the video app. An event type’s locations column reads like integration:zoom or integration:google-meet. That’s where a booking’s meeting link comes from. Bookings cover a rolling window. Each run reads bookings that started in the last 365 days plus everything booked ahead. Older bookings drop out of the table. Event type webhooks are the key owner’s only. Cal.com refuses to show webhooks on another user’s event type, even to an organization admin. Organization-wide webhooks are collected in full. User event types are the public list. calcom_org_user_event_types reads each user’s booking page, so event types they’ve hidden may be missing.

What isn’t collected

  • Webhook signing secrets. has_secret records only that one exists
  • Booking descriptions, booking-form answers and cancellation or rescheduling reasons, which are free text typed in by the person booking
  • Routing form answers. Only when a form was filled in and which booking it led to
  • Meeting recordings and transcripts