Summary

Adds 6 new field types to routing forms that already exist in event-type booking questions, and derives the type system from the shared fieldTypeEnum — closing the gap described in #18987.

New types: Multiple emails, Checkbox group, Radio group, Yes/No, Address, URL

This gives routing forms 13 field types total (up from 7), matching what event types offer for custom inputs. The only excluded types are name and radioInput — those are system fields, not generic question types.

Key design decision: RoutingFormFieldType is now derived from the shared fieldTypeEnum in @calcom/prisma/zod-utils. Adding a new type to fieldTypeEnum automatically makes it available in routing forms — no need to maintain two separate lists. This directly addresses the requirement in #18987 that “adding a new input type to event-types will also add it to routing forms.”

Also reorders the field editor to show Identifier first (empty, not prefilled from label) — matching event-type behavior per PeerRich’s ask.

Changes (~250 lines, 8 files)

  • FieldTypes.ts — derived from shared fieldTypeEnum, auto-syncs with event-type field types
  • config.ts — RAQB widget and type entries for new fields
  • uiConfig.tsx — factory functions so new types render in route condition builder
  • transformResponse.ts — checkbox (multiselect logic) and radio (select logic) for JSON Logic routing
  • getQueryBuilderConfig.ts — expanded listValues for checkbox/radio options
  • FormEdit.tsx — show options editor for checkbox/radio; reorder identifier before label
  • formSubmissionUtils.ts — include checkbox/radio in options field check for webhooks
  • transformResponse.test.ts — 11 new tests covering all new types

Demo

After — 13 types, dropdown open (top half)

After dropdown

After — scrolled to show new types (Multiple emails, Checkbox group, Radio group, Yes/No, Address, URL)

After scrolled

After — Identifier first, empty (not prefilled from label)

Field order

Before vs After — Type dropdown comparison

Before vs After top

Before vs After — New types visible (scrolled)

Before vs After bottom

Demo video

https://files.catbox.moe/27oaw5.mp4

Test plan

  • All 163 routing-forms tests pass (TZ=UTC yarn test)
  • 11 new transform tests for multiemail, checkbox, radio, boolean, address, url
  • Biome lint clean
  • App-store package type-check passes
  • Manual: create routing form with each new field type
  • Manual: set route conditions using new field types
  • Manual: submit form and verify routing works

Closes #18987

/claim #18987

Claim

Total prize pool $50
Total paid $0
Status Pending
Submitted February 22, 2026
Last updated February 23, 2026

Contributors

YU

Yuvraj Angad Singh

@yuvrajangadsingh

100%

Sponsors

CA

Cal.com, Inc.

@cal

$50