formbasedocs
Go to appApp

Integrations

Cal.com scheduling

Add a native Schedule appointment question, connect Cal.com, and let respondents book an available slot inside the form.


Available on every plan

Cal.com scheduling is available on Free, Pro, and Business plans.

What native scheduling means

Schedule appointment is a formbase question, not an iframe. It uses your form’s theme and language, participates in conditional logic, and records confirmed booking details with the submission. Cal.com supplies event types, availability, calendar invitations, and meeting links.

  • Show or hide scheduling based on earlier answers.
  • Require every visible Schedule appointment question to be booked before submission.
  • Prefill attendee name and email from earlier questions.
  • Show available dates and times in the respondent’s time zone.
  • Include booking details in submission views, PDFs, notifications, exports, and integrations.

Connect Cal.com

  1. 1

    Insert Schedule appointment

    Type / in the editor, search for “Schedule appointment,” and insert the question where the booking should appear.

  2. 2

    Connect Cal.com

    Click Connect Cal.com in the question. Authorize formbase in the Cal.com OAuth window, then return to the editor.

  3. 3

    Choose account and event type

    Pick a connected Cal.com account, then select the event type respondents should book.

  4. 4

    Map attendee fields

    Optionally set Name from and Email from. Name from offers earlier Text questions; Email from offers earlier Email questions. Only questions above the scheduler are listed, plus hidden fields, which already hold a value when the form opens. Leave them on "Do not autofill" to have respondents type both.

  5. 5

    Preview and publish

    Test the respondent flow in Preview. Publish checks block an incomplete scheduler setup from going live.

You can also connect accounts from Workspace → Integrations → Scheduling → Cal.com. Connections belong to the workspace, so workspace members can reuse them on other forms and connect additional Cal.com accounts.

Configure the question

SettingWhat it controls
AccountWhich connected Cal.com account owns the event type.
Event typeThe Cal.com event type, duration, location, and availability respondents book.
Name fromOptional earlier Text question or hidden field used to fill in the attendee name.
Email fromOptional earlier Email question or hidden field used to fill in the attendee email.

If no fields are mapped, respondents enter their name and email in the scheduling question. When fields are mapped, their answers flow into booking details automatically.

Respondent experience

  1. The respondent picks a date, then an available time. Times show in the time zone their browser reports; they can pick another from the Time zone list, and the booking uses the one they chose.

  2. They confirm attendee name and email, then press Book.

  3. Cal.com creates the booking and sends its normal confirmation and calendar invitation.
  4. formbase shows the booking back to them as What, When, Who, and Where, with the meeting link.

  5. Before submitting, they can press Cancel booking and choose another time.

Booking happens before form submission

Cal.com confirms the appointment when the respondent clicks Book. The booking then attaches to the form submission when they submit the form. Until then the appointment exists on the host’s calendar even if the respondent walks away. On a public link, formbase releases it again when the form is still not submitted 24 hours after booking; on a request, when the request is cancelled or expires. It is also released when you delete the submission or the form.

If a time is taken by someone else between listing and booking, the respondent is told so and sees the times that are still free. If a booking attempt fails halfway, formbase cancels the calendar entry it created rather than leave the host with a booking the form does not know about, and a second device cannot book the same question twice.

Use scheduling with logic

Logic can show or hide Schedule appointment like any other question. Example: ask whether a lead has budget and authority; reveal booking only when both answers qualify.

A visible Schedule appointment question must have a confirmed booking before submission. A hidden one does not block submission. Once a respondent books, the answers that decide whether the question shows are locked, so a later answer cannot hide the booking by accident; to change one, they cancel the booking first. If the question is hidden when the form is submitted anyway, for example because a branching rule skipped its page, that booking is cancelled on Cal.com, so the host’s calendar matches the submission.

Publish checks

Publishing is blocked while a Schedule appointment question is missing either half of its setup:

  • Connect Cal.com before publishing forms that schedule appointments. — an event type is selected but no account is.

  • Select a scheduler event type before publishing this Schedule appointment question. — an account is selected but no event type is.

  • Complete setup for this Schedule appointment question before publishing. — neither is selected.

Each message points at the question that caused it. In the editor, the same three states show on the question as Not connected, Event missing, and Configured badges.

An event type that needs more than a name, an email and a time cannot be booked from a form. Event types that require confirmation, recur, have seats, cost money, or ask required booking questions are listed as Not bookable from a form and cannot be selected; a form that still points at one is blocked from publishing until you choose another event type.

After submission

Booking details appear under the Schedule appointment question in the submission table and detail view, with the date and time in your own language. They are also available to notification emails, generated PDFs, CSV/Excel exports, webhooks, and mapped integrations. Webhooks, Zapier, n8n, Make, request callbacks and the API receive the booking as data: start and end time, time zone, attendee, meeting link, Cal.com booking id and status. See Bookings and payments.

formbase keeps listening after submission. When the respondent or the host reschedules or cancels through Cal.com, or the host rejects the booking or marks a no-show, the booking on the submission is updated: its status changes, and the text shown for it starts with Rescheduled, Cancelled, Rejected, or No-show. The table, exports, the API and regenerated PDFs show the current state. Integrations are not sent again: the submission itself did not change.

Deleting a submission, or the whole form, cancels its appointments on Cal.com so the host does not keep a slot for answers that no longer exist.

Connection health

A daily job refreshes Cal.com OAuth tokens before they expire. A temporary Cal.com outage is retried the next day and changes nothing. If access is revoked, the connection is marked expired: the question shows a Disconnected badge, booking stops working for respondents, and the person who connected the account gets an email naming each published form that books through it. Reconnect Cal.com from Workspace → Integrations → Scheduling, then reselect the account and confirm the event type on each affected question.

Disconnecting a Cal.com account from Workspace → Integrations lists the published forms that schedule appointments through it. Those forms stop accepting bookings, and their owner is emailed. Reconnecting the same Cal.com account restores them: the questions keep the account, so there is nothing to select again.

Next steps