Creating and filling a form

How to create a form?


A form is always created from a published version of a form template. There are several entry points: the + (add) button on the Forms page, or the Create form action available from a form template (its action menu or its detail page).


In the creation dialog:


  1. Select the form template the form should be based on (required).
    1. By default, the form uses the template's latest published version. To pick a different one, check Select a specific version and choose it from the list. Only published and archived versions are available — a draft version cannot be used to create a form.
      1. Optionally enter a Name for the form. If left empty, the form takes the template's name.
        1. Click Create form. The new form opens on its detail page, ready to be filled in.

          The form detail page


          The form detail page is where you fill in and review a form. It is organized into the following areas:


          • Header — shows the form name (editable inline), its status chip (Draft or Submitted), and the action menu.
            • Fields area — the form's fields, with a display-mode switch and, for draft forms, the AI fill button.
              • Sidebar — shows the source form template and version, the form's tags, and creation and submission information.

                How to fill in a form?


                While a form is in Draft status, you can edit its fields. Enter values according to each field's type. For table fields, add and remove rows as needed. Computed fields are read-only — their values are calculated automatically and update each time you save.


                Click Save to record your progress without finalizing the form. Saving validates the values you entered against the schema and recalculates computed fields. You can save as many times as you need — the form stays in Draft status. The save history is tracked, so every change is recorded (see Managing a form).


                Form, table, and JSON display modes


                The fields area offers three display modes, selectable with the toggle at the top:


                • Form — the default editable view, showing each field as an input. This is the mode used to fill in and submit the form.
                  • Table — a read-only tabular view of the form's values, convenient for reviewing the data at a glance.
                    • JSON — a read-only view of the raw values as a JSON object, useful for inspecting or copying the structured data.

                      Only the Form mode is editable; the Table and JSON modes are for viewing.


                      How to fill a form with AI?


                      For a form in Draft status, the fields area provides an AI fill button. It lets you populate the form from a free-text instruction instead of typing each value by hand.


                      Describe the data you want to enter in plain language. The AI reads the form's schema and your current values, then proposes a complete set of field values. The proposed values are applied to the form but not saved automatically — review and adjust them, then click Save (or Submit) to keep them. Computed fields are never filled by the AI; they remain calculated from the other fields.


                      How to submit a form?


                      When a form is complete, click Submit to finalize it. Submitting runs a full validation: every mandatory field must be filled in. If any required field is missing, the submission is rejected and the missing fields are highlighted.


                      Once submitted, the form's status changes to Submitted, and who submitted it and when is recorded in the sidebar. A submitted form is shown read-only, so its data is preserved as a finalized record. You can still review its values at any time, including in the Table and JSON display modes.

                      Shine Logo
                      Technical bricks to reuse or customize

                      Have you developed a brick?

                      Share it to accelerate projects for the entire community.