Skip to content

Your First Questionnaire

In this tutorial you will create a working questionnaire for a fictional pet insurance product. By the end you will have a multi-step flow with an intro screen, a yes/no question, a radio selection, and a date picker — all configured entirely in the Strapi CMS.

  • Access to the Strapi admin panel (strapi.staging.f14e.com/admin for staging)
  • A Vertical already exists for your product (or use an existing one for practice)
  1. Open the Strapi admin panel
  2. In the left sidebar, go to Content Manager
  3. Select Questionnaire from the collection types list
  4. Click Create new entry in the top-right corner

You now have an empty questionnaire form with several sections: metadata, questions, rules, and calculated fields.

The metadata section defines the identity and basic configuration of your questionnaire.

Field Value Why
name pet-insurance Internal name used as the slug and in sync commands
slug pet-insurance URL-friendly identifier (usually matches name)
vertical Select your vertical (e.g., Pet) Links this questionnaire to an insurance product
type singleRegion This questionnaire targets one country
regions Select DE The country this questionnaire is available in

The intro screen is the first thing users see. It sets context for what follows.

  1. Scroll down to the questions dynamic zone (a section where you add building blocks — see Glossary)
  2. In the questions section, click the + Add a component button at the bottom. A dropdown appears — select the question type.
  3. Select INTRO from the list

Fill in these fields:

Field Value
questionId intro
groupId intro
screen.question Welcome to Pet Insurance
screen.description Protect your furry friend with comprehensive coverage.

The questionId is the unique identifier for this question within the questionnaire. The groupId (which phase of the flow this question belongs to — preQuote means before pricing — see Glossary) determines where in the flow this question appears. intro questions appear before any data-collection steps.

Under the Screen section of your question, fill in the Question field (the title users see) and optionally the Description field (extra context shown below the title).

Next, add a yes/no question to ask whether the user has a pet.

  1. In the questions dynamic zone, click Add a component
  2. Select BOOLEAN

Fill in:

Field Value
questionId hasPet
groupId preQuote
required true
screen.question Do you have a pet?

Setting required to true means the user must answer this question to complete the flow. The preQuote groupId places it in the data-collection phase before pricing.

Now add a question that lets the user choose their pet type from a list.

  1. Add another component to the questions dynamic zone
  2. Select RADIO

Fill in:

Field Value
questionId petType
groupId preQuote
required true
screen.question What type of pet do you have?

For the radio options, find the props (the settings for this question type) section. In the mapValue field (the list of options the user can choose from), add entries:

value label
DOG Dog
CAT Cat

The value is what gets stored as the answer. The label is what the user sees on screen. Use SCREAMING_SNAKE_CASE for values (ALL UPPERCASE with underscores, e.g., DOG, CAT) — this is the Feather convention for fixed-list answers.

Finally, add a date picker for the pet’s birth date.

  1. Add another component: DATE

Fill in:

Field Value
questionId petDateOfBirth
groupId preQuote
required true
screen.question When was your pet born?

Configure the date constraints in props.yearRange:

Field Value
min 2000
max 2026

The yearRange limits the date picker to a sensible range — users cannot select years outside this window.

Click Save in the top-right corner. Your questionnaire is now saved as a draft. Drafts are not visible to end users and can be freely edited.

  1. With your questionnaire open in Strapi, look for the Preview button in the top-right area
  2. Click it — this opens a new browser tab pointing to the staging app
  3. The URL will look like: https://app.staging.feather-insurance.com/preview-staging/draft/{documentId}
  4. Walk through the flow: you should see the intro screen, then the boolean question, radio question, and date picker in sequence

You now have a four-step questionnaire:

  1. Intro — Welcome screen with a title and description
  2. Boolean — Yes/no question about pet ownership
  3. Radio — Pet type selection with two options
  4. Date — Pet birth date with constrained year range

The flow follows the default order: questions appear in the same sequence as they are listed in the dynamic zone, top to bottom.

This questionnaire always shows every question in order. In Adding Conditional Rules, you will learn how to add branching logic so the flow changes based on user answers — for example, blocking users who do not have a pet.