Add Question Types
All questions are added via the questions dynamic zone in a Questionnaire entry. Click Add a component and select the type you need.
Every question requires at minimum: questionId, groupId, and screen.question (the title shown to the user).
- Open your questionnaire in Strapi
- Scroll to the questions dynamic zone
- Click Add a component
- Select the question type (see the guide below)
- Set
questionId(unique within the questionnaire),groupId, andrequired - Configure
screen.questionwith the text the user will see - Fill in any type-specific props (e.g.,
mapValuefor radio options,yearRangefor dates) - Save the questionnaire
Choosing the right type
Section titled “Choosing the right type”For yes/no questions
Section titled “For yes/no questions”Use BOOLEAN. Renders as Yes/No buttons, stores true/false.
For single choice from a list
Section titled “For single choice from a list”Use RADIO for short lists (2-4 options) or DROPDOWN_SINGLE for longer lists (5+ options). Both use props.mapValue to define the options.
For multiple choices
Section titled “For multiple choices”Use CHECKBOX. Same props.mapValue format as RADIO, but allows multiple selections stored as an array.
For dates
Section titled “For dates”Use DATE. Set props.yearRange.min and props.yearRange.max to constrain selectable years.
For free text
Section titled “For free text”Use INPUT for single-line text or TEXT for multi-line. Set props.placeholder for hint text.
For numbers and currency
Section titled “For numbers and currency”Use NUMBER for plain numbers or CURRENCY for monetary amounts. Both support props.min and props.max.
For contact information
Section titled “For contact information”Use NAME (first + last name), PHONE (with country code), EMAIL_BASIC (simple email), or IBAN (bank account with validation).
For addresses
Section titled “For addresses”Use ADDRESS. Renders a multi-field form with autocomplete (Google Maps integration in the app).
For file uploads
Section titled “For file uploads”Use UPLOAD for a single file or MULTI_UPLOAD for multiple files. Use SIGNATURE_UPLOAD for digital signatures.
For countries
Section titled “For countries”Use COUNTRY_SINGLE (one country) or COUNTRY_MULTI (multiple countries).
For flow control (non-input screens)
Section titled “For flow control (non-input screens)”Use INTRO (welcome screen), BLOCKER (dead-end), SUCCESS (completion), REDIRECT (external URL), or PROCESSING (loading state).
For checkout
Section titled “For checkout”Use CHECKOUT for payment flows (Stripe) or SUBMISSION for non-payment flows. See Configure Checkout.
Specialized types
Section titled “Specialized types”These types serve specific verticals or flows. They are less common but available when needed:
- EFFECTIVE_DATE_DROPDOWN – dropdown for selecting a policy start date with auto-generated options
- COVERED_GROUP – add/manage a group of covered people (e.g., family members)
- ADD_TO_CART – multi-product bundling in signup flows
- HAS_POLICY – check whether the user already holds an active policy
- CAR_LOOKUP_SPAIN – Spain-specific vehicle lookup
- NUMERIC_CONVERSION – number input with unit conversion
- CANCELLATION_REVIEW – summary/review screen for cancellation flows
- CLAIM_PROCESSING – processing screen for claim submission
- CANCEL_POLICY_PROCESSING – processing screen for policy cancellation
See Question Types Reference for the complete list of all types and their props.
See also
Section titled “See also”- Question Types Reference – full specifications for every type and prop
- Your First Questionnaire – step-by-step tutorial building a questionnaire
- Component Overview – how question types map to rendered components