> ## Documentation Index
> Fetch the complete documentation index at: https://docs-staging-quickstart-revamp.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Learn about Form nodes and available components.

# Nodes and components

Forms lets you add nodes and components, such as fields, blocks, and widgets for your users to interact with the form. You can then reference the data input, from components, in your forms and flows.

## Form nodes

There are five types of form nodes: Start, Step, Flow, Router and Ending screen. These nodes have a very specific purpose for the structure of the form.

<Frame>
  <img src="https://mintcdn.com/docs-staging-quickstart-revamp/OF4RJhPvadaf5sdD/images/cdy7uua7fh8z/5V4GsHxxC2cjxx1aODCxPd/309850c72bbce224e7a8d3f5af34114c/form-editor-preview.png?fit=max&auto=format&n=OF4RJhPvadaf5sdD&q=85&s=c14191d10977958a89fa8dc3a275e827" alt="Dashboard >  Forms > Form Editor" data-og-width="1393" width="1393" data-og-height="637" height="637" data-path="images/cdy7uua7fh8z/5V4GsHxxC2cjxx1aODCxPd/309850c72bbce224e7a8d3f5af34114c/form-editor-preview.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-quickstart-revamp/OF4RJhPvadaf5sdD/images/cdy7uua7fh8z/5V4GsHxxC2cjxx1aODCxPd/309850c72bbce224e7a8d3f5af34114c/form-editor-preview.png?w=280&fit=max&auto=format&n=OF4RJhPvadaf5sdD&q=85&s=34bcf71e709fc98ece271d5e42b44477 280w, https://mintcdn.com/docs-staging-quickstart-revamp/OF4RJhPvadaf5sdD/images/cdy7uua7fh8z/5V4GsHxxC2cjxx1aODCxPd/309850c72bbce224e7a8d3f5af34114c/form-editor-preview.png?w=560&fit=max&auto=format&n=OF4RJhPvadaf5sdD&q=85&s=47a736ae160fc1d82ba3ed12694a9630 560w, https://mintcdn.com/docs-staging-quickstart-revamp/OF4RJhPvadaf5sdD/images/cdy7uua7fh8z/5V4GsHxxC2cjxx1aODCxPd/309850c72bbce224e7a8d3f5af34114c/form-editor-preview.png?w=840&fit=max&auto=format&n=OF4RJhPvadaf5sdD&q=85&s=061076fca4fdb738e4a9f0d2c4e63793 840w, https://mintcdn.com/docs-staging-quickstart-revamp/OF4RJhPvadaf5sdD/images/cdy7uua7fh8z/5V4GsHxxC2cjxx1aODCxPd/309850c72bbce224e7a8d3f5af34114c/form-editor-preview.png?w=1100&fit=max&auto=format&n=OF4RJhPvadaf5sdD&q=85&s=c0a5a44af0b30a43a9699a975058823b 1100w, https://mintcdn.com/docs-staging-quickstart-revamp/OF4RJhPvadaf5sdD/images/cdy7uua7fh8z/5V4GsHxxC2cjxx1aODCxPd/309850c72bbce224e7a8d3f5af34114c/form-editor-preview.png?w=1650&fit=max&auto=format&n=OF4RJhPvadaf5sdD&q=85&s=a6502e35607f8b461f40a61ff1b1c861 1650w, https://mintcdn.com/docs-staging-quickstart-revamp/OF4RJhPvadaf5sdD/images/cdy7uua7fh8z/5V4GsHxxC2cjxx1aODCxPd/309850c72bbce224e7a8d3f5af34114c/form-editor-preview.png?w=2500&fit=max&auto=format&n=OF4RJhPvadaf5sdD&q=85&s=0137289e870cd9d001036395a5d95457 2500w" />
</Frame>

## Step node

Step nodes are the visual representation of the form. They can contain any number of components, such as fields, blocks, and widgets where the user can fill in their data.

<Frame>
  <img src="https://mintcdn.com/docs-staging-quickstart-revamp/MuTsjoV4fPPSGZz9/images/cdy7uua7fh8z/2tbkcXkVon0BawCvYgnvIz/e2ce566320af18a6b08702f04f763126/form-step-node.png?fit=max&auto=format&n=MuTsjoV4fPPSGZz9&q=85&s=02ebfcce75408fbad789f84c0f833ed1" alt="Dashboard > Foms > Step node" data-og-width="840" width="840" data-og-height="456" height="456" data-path="images/cdy7uua7fh8z/2tbkcXkVon0BawCvYgnvIz/e2ce566320af18a6b08702f04f763126/form-step-node.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-quickstart-revamp/MuTsjoV4fPPSGZz9/images/cdy7uua7fh8z/2tbkcXkVon0BawCvYgnvIz/e2ce566320af18a6b08702f04f763126/form-step-node.png?w=280&fit=max&auto=format&n=MuTsjoV4fPPSGZz9&q=85&s=e8a96e2b84ce95b73c71147837258bf2 280w, https://mintcdn.com/docs-staging-quickstart-revamp/MuTsjoV4fPPSGZz9/images/cdy7uua7fh8z/2tbkcXkVon0BawCvYgnvIz/e2ce566320af18a6b08702f04f763126/form-step-node.png?w=560&fit=max&auto=format&n=MuTsjoV4fPPSGZz9&q=85&s=dd69cb7b2ca3a3f58ba3dbb3973df943 560w, https://mintcdn.com/docs-staging-quickstart-revamp/MuTsjoV4fPPSGZz9/images/cdy7uua7fh8z/2tbkcXkVon0BawCvYgnvIz/e2ce566320af18a6b08702f04f763126/form-step-node.png?w=840&fit=max&auto=format&n=MuTsjoV4fPPSGZz9&q=85&s=c03dfd4e3e438b0eaeae9eeeae6e225f 840w, https://mintcdn.com/docs-staging-quickstart-revamp/MuTsjoV4fPPSGZz9/images/cdy7uua7fh8z/2tbkcXkVon0BawCvYgnvIz/e2ce566320af18a6b08702f04f763126/form-step-node.png?w=1100&fit=max&auto=format&n=MuTsjoV4fPPSGZz9&q=85&s=4211a36e6ed123212f0d2253964a30ea 1100w, https://mintcdn.com/docs-staging-quickstart-revamp/MuTsjoV4fPPSGZz9/images/cdy7uua7fh8z/2tbkcXkVon0BawCvYgnvIz/e2ce566320af18a6b08702f04f763126/form-step-node.png?w=1650&fit=max&auto=format&n=MuTsjoV4fPPSGZz9&q=85&s=2282317b57ea50a407d0063cda5f1ac5 1650w, https://mintcdn.com/docs-staging-quickstart-revamp/MuTsjoV4fPPSGZz9/images/cdy7uua7fh8z/2tbkcXkVon0BawCvYgnvIz/e2ce566320af18a6b08702f04f763126/form-step-node.png?w=2500&fit=max&auto=format&n=MuTsjoV4fPPSGZz9&q=85&s=c0a8072b9080feb29b450faa0e2c15d3 2500w" />
</Frame>

### Field components

Fields are UI components where users input their information in Forms.

<Frame>
  <img src="https://mintcdn.com/docs-staging-quickstart-revamp/0yzvW89mU3tfXF-c/images/cdy7uua7fh8z/6fuBdJcbDybzcVaiByUkoQ/2ad29c8dbbcc6ddf850f5efc004a75e0/forms-fields.png?fit=max&auto=format&n=0yzvW89mU3tfXF-c&q=85&s=ef6d9399160ca78b47fc11287e05d304" alt="Dashboard > Forms > Fields" data-og-width="1404" width="1404" data-og-height="663" height="663" data-path="images/cdy7uua7fh8z/6fuBdJcbDybzcVaiByUkoQ/2ad29c8dbbcc6ddf850f5efc004a75e0/forms-fields.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-quickstart-revamp/0yzvW89mU3tfXF-c/images/cdy7uua7fh8z/6fuBdJcbDybzcVaiByUkoQ/2ad29c8dbbcc6ddf850f5efc004a75e0/forms-fields.png?w=280&fit=max&auto=format&n=0yzvW89mU3tfXF-c&q=85&s=1ff304c499e3615f40650a69c24921d1 280w, https://mintcdn.com/docs-staging-quickstart-revamp/0yzvW89mU3tfXF-c/images/cdy7uua7fh8z/6fuBdJcbDybzcVaiByUkoQ/2ad29c8dbbcc6ddf850f5efc004a75e0/forms-fields.png?w=560&fit=max&auto=format&n=0yzvW89mU3tfXF-c&q=85&s=ec91228572f1aad948eb5f6b2b50f73e 560w, https://mintcdn.com/docs-staging-quickstart-revamp/0yzvW89mU3tfXF-c/images/cdy7uua7fh8z/6fuBdJcbDybzcVaiByUkoQ/2ad29c8dbbcc6ddf850f5efc004a75e0/forms-fields.png?w=840&fit=max&auto=format&n=0yzvW89mU3tfXF-c&q=85&s=280e2aee549dbb3a9bcbaec93a8d6d2a 840w, https://mintcdn.com/docs-staging-quickstart-revamp/0yzvW89mU3tfXF-c/images/cdy7uua7fh8z/6fuBdJcbDybzcVaiByUkoQ/2ad29c8dbbcc6ddf850f5efc004a75e0/forms-fields.png?w=1100&fit=max&auto=format&n=0yzvW89mU3tfXF-c&q=85&s=cdcc97f3fb83a07e6e9f6539fab27913 1100w, https://mintcdn.com/docs-staging-quickstart-revamp/0yzvW89mU3tfXF-c/images/cdy7uua7fh8z/6fuBdJcbDybzcVaiByUkoQ/2ad29c8dbbcc6ddf850f5efc004a75e0/forms-fields.png?w=1650&fit=max&auto=format&n=0yzvW89mU3tfXF-c&q=85&s=dfb2d93d047cbb56a434eec6266ed1c2 1650w, https://mintcdn.com/docs-staging-quickstart-revamp/0yzvW89mU3tfXF-c/images/cdy7uua7fh8z/6fuBdJcbDybzcVaiByUkoQ/2ad29c8dbbcc6ddf850f5efc004a75e0/forms-fields.png?w=2500&fit=max&auto=format&n=0yzvW89mU3tfXF-c&q=85&s=c8dcef7d7f869b6d54d7aefd3a23904d 2500w" />
</Frame>

#### Field settings

Fields have a number of default settings that you can configure to meet your requirements.

The default field settings are:

<table class="table">
  <thead>
    <tr>
      <th><strong>Settings</strong></th>
      <th><strong>Description</strong></th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>ID</td>
      <td>The unique id</td>
    </tr>

    <tr>
      <td>Label</td>
      <td>Display or hide a label</td>
    </tr>

    <tr>
      <td>Required</td>
      <td>Input value is required</td>
    </tr>

    <tr>
      <td>Hint text</td>
      <td>Display a hint text</td>
    </tr>

    <tr>
      <td>Placeholder text</td>
      <td>Text visible to the user</td>
    </tr>

    <tr>
      <td>Default value</td>
      <td>Default value visible to the user</td>
    </tr>

    <tr>
      <td>Transient</td>
      <td>Enable or disable data mask</td>
    </tr>
  </tbody>
</table>

#### Field validation rules

<table class="table">
  <thead>
    <tr>
      <th><strong>Settings</strong></th>
      <th><strong>Description</strong></th>
    </tr>
  </thead>

  <tbody>
    <tr>
      <td>Min. length / Max. length</td>
      <td>Require an input value length.</td>
    </tr>

    <tr>
      <td>Min. value / Max. value</td>
      <td>Require a number value length.</td>
    </tr>
  </tbody>
</table>

#### Available fields in Forms

The available fields with their specific settings and data output types are:

<AccordionGroup>
  <Accordion title="Text field">
    Standard input lets a user enter any string value.

    ##### Text field settings

    The text field setting is:

    <table class="table">
      <thead>
        <tr>
          <th><strong>Settings</strong></th>
          <th><strong>Description</strong></th>
        </tr>
      </thead>

      <tbody>
        <tr>
          <td>Multiline</td>
          <td>Enable multi-line input text.</td>
        </tr>
      </tbody>
    </table>

    ##### Text field output value

    The text field output value data type is a `string`.

    ```json lines
    {
      "text_field_id": "Auth0"
    }
    ```
  </Accordion>

  <Accordion title="Email field">
    Standard input lets a user enter email string values.

    ##### Email field output value

    The email field output value data type is a `string`.

    ```json lines
    {
      "email_field_id": "username@domain.com"
    }
    ```
  </Accordion>

  <Accordion title="Phone field">
    Standard input lets a user enter phone number values.

    ##### Phone field settings

    The phone field settings are:

    <table class="table">
      <thead>
        <tr>
          <th><strong>Settings</strong></th>
          <th><strong>Description</strong></th>
        </tr>
      </thead>

      <tbody>
        <tr>
          <td>Country picker</td>
          <td>Enable or disable Country picker. By default, it displays the user’s IP location.</td>
        </tr>

        <tr>
          <td>Filter placeholder text</td>
          <td>Text visible to the user in the country search window.</td>
        </tr>
      </tbody>
    </table>

    ##### Phone field output value

    The phone field output value data type is either a `string` or, if Country picker is enabled, an `object` .

    The phone field output data type value as a `string`:

    ```json lines
    {
      "phone_field_id": "8005550175"
    }
    ```

    The phone field output data type value as an `object` :

    ```json lines
    {
      "phone_field_id": {
        "national_number": "8005550175",
        "national_format": "(800) 555-0175",
        "international_number": "+18005550175",
        "international_format": "+1 800-555-0175",
        "country_code_iso": "US",
        "country_code_number": "1"
      }
    }
    ```
  </Accordion>

  <Accordion title="Choice field">
    Standard input that lets a user select single or multiple choice values.

    ##### Choice field settings

    The Choice field settings are:

    <table class="table">
      <thead>
        <tr>
          <th><strong>Settings</strong></th>
          <th><strong>Description</strong></th>
        </tr>
      </thead>

      <tbody>
        <tr>
          <td>Multiple choice</td>
          <td>Enable several choice options.</td>
        </tr>

        <tr>
          <td>Other option</td>
          <td>Let users enter their own option.</td>
        </tr>

        <tr>
          <td>Advanced > Internal values</td>
          <td>Assign an internal value to each choice option.</td>
        </tr>

        <tr>
          <td>Advanced > Bulk edit</td>
          <td>Bulk edit label and internal choice option values.</td>
        </tr>
      </tbody>
    </table>

    ##### Choice field output value

    The choice field output value data type is either a `string` or, if multiple choice is enabled, as an `array of strings` .

    The choice field output data type  value as a `string`:

    ```json lines
    {
      "choice_field_id": "Option A"
    }
    ```

    The choice field output data type value as an  `array of strings`:

    ```json lines
    {
      "choice_field_id": ["Option A", "Option B"]
    }
    ```
  </Accordion>

  <Accordion title="Cards field">
    Standard input that lets a user select single or multiple choice image values.

    ##### Cards field settings

    The cards field settings are:

    <table class="table">
      <thead>
        <tr>
          <th><strong>Settings</strong></th>
          <th><strong>Description</strong></th>
        </tr>
      </thead>

      <tbody>
        <tr>
          <td>Multiple choice</td>
          <td>Enable several choice options.</td>
        </tr>

        <tr>
          <td>Hide labels</td>
          <td>Hide card labels.</td>
        </tr>

        <tr>
          <td>Advanced > Internal values</td>
          <td>Assign an internal value for each option.</td>
        </tr>
      </tbody>
    </table>

    ##### Cards field output value

    The cards field output value data type is either a `string` or, if multiple choice is enabled, as an `array of strings`.

    The cards field output data type value as a `string`:

    ```json lines
    {
      "card_field_id": "Option A"
    }
    ```

    The cards field output data type value as an `array of strings`:

    ```json lines
    {
      "card_field_id": ["Option A", "Option B"]
    }
    ```
  </Accordion>

  <Accordion title="URL field">
    Standard input lets a user enter a URL value.

    ##### URL field output value

    The URL field output value data type is a string:

    ```json lines
    {
      "url_field_id": "https://auth0.com"
    }
    ```
  </Accordion>

  <Accordion title="Password field">
    Standard input that lets a user enter a password or a secret value.

    ##### Password field settings

    The password field settings are:

    <table class="table">
      <thead>
        <tr>
          <th><strong>Settings</strong></th>
          <th><strong>Description</strong></th>
        </tr>
      </thead>

      <tbody>
        <tr>
          <td>Require complex password</td>
          <td>Passwords must contain an uppercase, a lowercase, a symbol and a number.</td>
        </tr>

        <tr>
          <td>Enforce NIST guidelines</td>
          <td>The password cannot be less than 8 characters, passwords obtained from previous breach corpuses, dictionary words, repetitive or sequential characters, content-specific words.</td>
        </tr>

        <tr>
          <td>Add strength meter</td>
          <td>A graphical meter with a red, yellow and green scale is displayed under the password field to show the strength of the password input.</td>
        </tr>

        <tr>
          <td>Hash</td>
          <td>Select an algorithm to hash the input value directly in the browser.</td>
        </tr>
      </tbody>
    </table>

    ##### Password field output value

    The password field output value data type is a masked `string`:

    ```json lines
    {
      "password_field_id": "███"
    }
    ```
  </Accordion>

  <Accordion title="Payment field">
    Standard input that lets a user enter payment information using a payment provider. Payments are processed before the Ending node.

    ##### Payment field settings

    The payment field settings are:

    <table class="table">
      <thead>
        <tr>
          <th><strong>Settings</strong></th>
          <th><strong>Description</strong></th>
        </tr>
      </thead>

      <tbody>
        <tr>
          <td>Payment type</td>
          <td>Select either a one-off (Charge) or recurring (Subscription) payments.</td>
        </tr>

        <tr>
          <td>Amount</td>
          <td>Specify the amount for a one-off (Charge) payment.</td>
        </tr>

        <tr>
          <td>Currency</td>
          <td>Specify the currency for a one- off ( Charge) payment.</td>
        </tr>

        <tr>
          <td>Subscription action</td>
          <td>Select either to create or update an existing subscription.</td>
        </tr>

        <tr>
          <td>Customer action</td>
          <td>Select either to create or update an existing customer.</td>
        </tr>

        <tr>
          <td>Display options</td>
          <td>Display and edit Card number, Expiration date, and Security code labels and Trustmarks.</td>
        </tr>
      </tbody>
    </table>

    ##### Payment field output value

    The payment field output value data type is either a string or an object  for after submission flows.

    The payment field output value data type as a `string`:

    ```json lines
    {
      "payment_field_id": "pm_1P19e..."
    }
    ```

    The payment field output value data type for subscriptions as an `object` :

    ```json lines
    {
      "payment_field_id": {
        "payment_method_id": "pm_1P19e...",
        "customer_id": "cus_PqrM...",
        "price_ids": [
          "price_1ONHR..."
        ],
        "subscription_id": "sub_1P1A...",
        "payment_intent_id": "pi_3P19e5..."
      }
    }
    ```

    The payment field output value data type for charge as an `object` :

    ```json lines
    {
      "payment_field_id": {
        "payment_method_id": "pm_1P19e...",
        "customer_id": "cus_PqrM...",
        "amount": 100,
        "payment_intent_id": "pi_3P19e5..."
      }
    }
    ```
  </Accordion>

  <Accordion title="Legal field">
    Standard input that adds legal text and a check input.

    ##### Legal field output value

    The legal field output value data type is a `boolean`.

    ```json lines
    {
      "legal_field_id": true
    }
    ```
  </Accordion>

  <Accordion title="Dropdown field">
    Standard input that lets a user select single or multiple dropdown choice values.

    ##### Dropdown field settings

    The dropdown field settings are:

    <table class="table">
      <thead>
        <tr>
          <th><strong>Settings</strong></th>
          <th><strong>Description</strong></th>
        </tr>
      </thead>

      <tbody>
        <tr>
          <td>Multiple selector</td>
          <td>Enable several choice options.</td>
        </tr>

        <tr>
          <td>Advanced > Internal values</td>
          <td>Assign an internal value for each option.</td>
        </tr>

        <tr>
          <td>Advanced > Bulk edit</td>
          <td>Bulk edit label and internal values.</td>
        </tr>
      </tbody>
    </table>

    ##### Dropdown field output value

    The dropdown field output value data type is either a `string` or, if multiple choice is enabled, as an `array of strings` .

    The dropdown field output data type  value as a `string`:

    ```json lines
    {
      "dropdown_field_id": "Option A"
    }
    ```

    The dropdown field output data type value as an `array of strings`:

    ```json lines
    {
      "dropdown_field_id": ["Option A", "Option B"]
    }
    ```
  </Accordion>

  <Accordion title="Number field">
    Standard input that lets a user enter number values.

    ##### Number field output value

    The number field output value data type is a `number`.

    ```json lines
    {
      "number_field_id": 123
    }
    ```
  </Accordion>

  <Accordion title="Date / Time field">
    Standard input that lets a user enter either a date or time values.

    ##### Date / Time field settings

    The date/time field settings include:

    <table class="table">
      <thead>
        <tr>
          <th><strong>Key</strong></th>
          <th><strong>Description</strong></th>
        </tr>
      </thead>

      <tbody>
        <tr>
          <td>Format</td>
          <td>Select either Date or Time format.</td>
        </tr>
      </tbody>
    </table>

    ##### Date / Time field output value

    The date/time field output data type value for date is a `string`:

    ```json lines
    {
      "date_time_field_id": "2023-04-11"
    }
    ```

    The date/time field output data type value for time is a `string`:

    ```json lines
    {
      "date_time_field_id": "23:15"
    }
    ```
  </Accordion>

  <Accordion title="Boolean field">
    Standard input that lets a user enter true or false values.

    ##### Boolean field output value

    The boolean field output value data type is a boolean.

    ```json lines
    {
      "boolean_field_id": true
    }
    ```
  </Accordion>

  <Accordion title="Custom field">
    Standard field that you can customize to create your own field.

    ##### Custom field settings

    The custom field setting are:

    <table class="table">
      <thead>
        <tr>
          <th><strong>Settings</strong></th>
          <th><strong>Description</strong></th>
        </tr>
      </thead>

      <tbody>
        <tr>
          <td>Params</td>
          <td>Add key-value pairs to reference in the custom field source code.</td>
        </tr>

        <tr>
          <td>Source code</td>
          <td>Add your Javascript code to the custom field.</td>
        </tr>

        <tr>
          <td>JSON Schema</td>
          <td>By default, the custom field accepts any value format. However, you can use JSON Schema to validate values.</td>
        </tr>
      </tbody>
    </table>

    To learn more, read [Custom Field Components for Forms](/docs/customize/forms/custom-field-components).
  </Accordion>
</AccordionGroup>

### Blocks components

Blocks are UI components that add functionality to your forms but do not gather user information.

<Frame>
  <img src="https://mintcdn.com/docs-staging-quickstart-revamp/KCEsvkqT5-VRQ297/images/cdy7uua7fh8z/7IijftJnuwcevL4bdHiaKw/f0376ca75303bb58d0df87e6af75e347/forms-block.png?fit=max&auto=format&n=KCEsvkqT5-VRQ297&q=85&s=e9e831491f9f53c3908842ee0467a70b" alt="Dashboard > Forms > Components > Blocks" data-og-width="1404" width="1404" data-og-height="654" height="654" data-path="images/cdy7uua7fh8z/7IijftJnuwcevL4bdHiaKw/f0376ca75303bb58d0df87e6af75e347/forms-block.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-quickstart-revamp/KCEsvkqT5-VRQ297/images/cdy7uua7fh8z/7IijftJnuwcevL4bdHiaKw/f0376ca75303bb58d0df87e6af75e347/forms-block.png?w=280&fit=max&auto=format&n=KCEsvkqT5-VRQ297&q=85&s=ae94f7bc5d7293ab265dd4c46a8f7082 280w, https://mintcdn.com/docs-staging-quickstart-revamp/KCEsvkqT5-VRQ297/images/cdy7uua7fh8z/7IijftJnuwcevL4bdHiaKw/f0376ca75303bb58d0df87e6af75e347/forms-block.png?w=560&fit=max&auto=format&n=KCEsvkqT5-VRQ297&q=85&s=d4ce4457b76b7445e18365b597f18f79 560w, https://mintcdn.com/docs-staging-quickstart-revamp/KCEsvkqT5-VRQ297/images/cdy7uua7fh8z/7IijftJnuwcevL4bdHiaKw/f0376ca75303bb58d0df87e6af75e347/forms-block.png?w=840&fit=max&auto=format&n=KCEsvkqT5-VRQ297&q=85&s=202125214859a7aaaf6e1d3548f5e06d 840w, https://mintcdn.com/docs-staging-quickstart-revamp/KCEsvkqT5-VRQ297/images/cdy7uua7fh8z/7IijftJnuwcevL4bdHiaKw/f0376ca75303bb58d0df87e6af75e347/forms-block.png?w=1100&fit=max&auto=format&n=KCEsvkqT5-VRQ297&q=85&s=f083509fd3324bf9aebe3782ff5556f4 1100w, https://mintcdn.com/docs-staging-quickstart-revamp/KCEsvkqT5-VRQ297/images/cdy7uua7fh8z/7IijftJnuwcevL4bdHiaKw/f0376ca75303bb58d0df87e6af75e347/forms-block.png?w=1650&fit=max&auto=format&n=KCEsvkqT5-VRQ297&q=85&s=5ddff6299b94f883fd8c8d62e148787f 1650w, https://mintcdn.com/docs-staging-quickstart-revamp/KCEsvkqT5-VRQ297/images/cdy7uua7fh8z/7IijftJnuwcevL4bdHiaKw/f0376ca75303bb58d0df87e6af75e347/forms-block.png?w=2500&fit=max&auto=format&n=KCEsvkqT5-VRQ297&q=85&s=1cca54b799dcb7df141fb3d4e3cd5cc7 2500w" />
</Frame>

#### Available blocks in Forms

The available blocks are:

<AccordionGroup>
  <Accordion title="Next button block">
    A button that lets users continue to the next form node.

    <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
      * Before continuing, field validation rules are applied and validated on the client-side and server-side. If field validation rules fail, an error message is displayed for the user to verify.
      * If the next node is a flow node, a spinner loader is displayed until the flow completes. If the flow fails or returns a custom error message, an error message is displayed.
    </Callout>
  </Accordion>

  <Accordion title="Previous button block">
    A button that lets users go to the previous step node.

    <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
      If a user selects the previous button, field validation rules are re-run again even if no change to input data is done before continuing.
    </Callout>
  </Accordion>

  <Accordion title="Jump button block">
    A button that lets users skip the current step and directly jumps to the destination node.

    <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
      When skipping the current step, we won't validate and neither collect any filled out information of the current step.
    </Callout>
  </Accordion>

  <Accordion title="Resend button block">
    A component that lets users re-run a flow to generate and send a new OTP code

    <Callout icon="file-lines" color="#0EA5E9" iconType="regular">
      if a user selects the resend button, the associated flow will generate and send a new OTP code.
    </Callout>

    <table class="table">
      <thead>
        <tr>
          <th><strong>Settings</strong></th>
          <th><strong>Description</strong></th>
        </tr>
      </thead>

      <tbody>
        <tr>
          <td>Text alignment</td>
          <td>Select text alignment, left, center, or right</td>
        </tr>

        <tr>
          <td>Text</td>
          <td>Default text displayed when users select the resend button</td>
        </tr>

        <tr>
          <td>Button text</td>
          <td>Button text</td>
        </tr>

        <tr>
          <td>Waiting text</td>
          <td>Text displayed when users have selected the resend button. Replaces <code>Text</code> and the <code>Button text</code> settings.  Use the `“{{remaining_seconds}}”` variable to dynamically display the remaining number of seconds until the send button is enabled again.  For example: “Resend in `{{remaining_seconds}}` seconds”.</td>
        </tr>

        <tr>
          <td>Flow</td>
          <td>Flow executed after the user selects the resend button.</td>
        </tr>

        <tr>
          <td>Max attempts</td>
          <td>The maximum number of attempts the user can select the resend button</td>
        </tr>

        <tr>
          <td>Waiting time</td>
          <td>The waiting time between attempts in seconds.</td>
        </tr>
      </tbody>
    </table>
  </Accordion>

  <Accordion title="Rich text block">
    A rich text block to personalize the step node with additional information.
  </Accordion>

  <Accordion title="Divider block">
    A line to divide different sections of the step node. It can contain a small text.
  </Accordion>

  <Accordion title="HTML block">
    A HTML block to create your custom UI.
  </Accordion>

  <Accordion title="Image block">
    An image block to personalize the step adding images.
  </Accordion>
</AccordionGroup>

### Widgets components

Widgets are pre-built components, with third-party integrations, that add client-side and server-side logic to your forms.

<Frame>
  <img src="https://mintcdn.com/docs-staging-quickstart-revamp/TO6FS4AgTzQGgpsU/images/cdy7uua7fh8z/3J0IuWLP7utOPKSHc82IE9/a523afe0c240c63f714ef5fb102f8dab/forms-widget.png?fit=max&auto=format&n=TO6FS4AgTzQGgpsU&q=85&s=a6565c955bd6143d3115fd6842c5b6ef" alt="Dashboard > Forms > Components > Widget" data-og-width="1404" width="1404" data-og-height="721" height="721" data-path="images/cdy7uua7fh8z/3J0IuWLP7utOPKSHc82IE9/a523afe0c240c63f714ef5fb102f8dab/forms-widget.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-quickstart-revamp/TO6FS4AgTzQGgpsU/images/cdy7uua7fh8z/3J0IuWLP7utOPKSHc82IE9/a523afe0c240c63f714ef5fb102f8dab/forms-widget.png?w=280&fit=max&auto=format&n=TO6FS4AgTzQGgpsU&q=85&s=7228f439a6dc40f8d402bd96a9ea0ea3 280w, https://mintcdn.com/docs-staging-quickstart-revamp/TO6FS4AgTzQGgpsU/images/cdy7uua7fh8z/3J0IuWLP7utOPKSHc82IE9/a523afe0c240c63f714ef5fb102f8dab/forms-widget.png?w=560&fit=max&auto=format&n=TO6FS4AgTzQGgpsU&q=85&s=f10604012f5320b6ae1b066b0261907a 560w, https://mintcdn.com/docs-staging-quickstart-revamp/TO6FS4AgTzQGgpsU/images/cdy7uua7fh8z/3J0IuWLP7utOPKSHc82IE9/a523afe0c240c63f714ef5fb102f8dab/forms-widget.png?w=840&fit=max&auto=format&n=TO6FS4AgTzQGgpsU&q=85&s=5f73007db0449218cd10fa495b148c8b 840w, https://mintcdn.com/docs-staging-quickstart-revamp/TO6FS4AgTzQGgpsU/images/cdy7uua7fh8z/3J0IuWLP7utOPKSHc82IE9/a523afe0c240c63f714ef5fb102f8dab/forms-widget.png?w=1100&fit=max&auto=format&n=TO6FS4AgTzQGgpsU&q=85&s=7553f3fe409b66fe896a7c84c844930a 1100w, https://mintcdn.com/docs-staging-quickstart-revamp/TO6FS4AgTzQGgpsU/images/cdy7uua7fh8z/3J0IuWLP7utOPKSHc82IE9/a523afe0c240c63f714ef5fb102f8dab/forms-widget.png?w=1650&fit=max&auto=format&n=TO6FS4AgTzQGgpsU&q=85&s=cee6f57786aeb61ea431cc3ab30f237a 1650w, https://mintcdn.com/docs-staging-quickstart-revamp/TO6FS4AgTzQGgpsU/images/cdy7uua7fh8z/3J0IuWLP7utOPKSHc82IE9/a523afe0c240c63f714ef5fb102f8dab/forms-widget.png?w=2500&fit=max&auto=format&n=TO6FS4AgTzQGgpsU&q=85&s=6bbaba947d9ab9fed074a5eed6ac2c56 2500w" />
</Frame>

#### Available widgets in Forms

The available widget is:

<AccordionGroup>
  <Accordion title="Google Address Widget">
    A widget that lets a user enter and validate their address.

    ##### Google Address widget settings

    The Google Address widget settings include:

    <table class="table">
      <thead>
        <tr>
          <th><strong>Settings</strong></th>
          <th><strong>Description</strong></th>
        </tr>
      </thead>

      <tbody>
        <tr>
          <td>API key</td>
          <td>Requires a Google Maps API key to authenticate requests.</td>
        </tr>
      </tbody>
    </table>

    ##### Google Address widget output value

    The Google Address widget output value data type is an `object`.

    ```json lines
    {
      "google_address_widget_id": {
        "type": "Feature",
        "geometry": {
          "type": "Point",
          "coordinates": [
            -73.9654415,
            40.8054491
          ]
        },
        "properties": {
          "geocoding": {
            "type": "house",
            "housenumber": "2880",
            "street": "Broadway",
            "city": "New York",
            "county": "New York County",
            "state": "New York",
            "country": "United States",
            "postcode": "10025"
          }
        }
      }
    }
    ```
  </Accordion>

  <Accordion title="Google reCAPTCHA">
    A widget that helps protect your website from spam and abuse by verifying that a user is a human and not a bot.

    The widget supports:

    * Score-based (v3)
    * Challenge (v2)

      * Invisible reCAPTCHA badge

    Differences between `v2` and `v3`:

    * `v2` requires user interaction with visible challenges, such as clicking a checkbox or solving puzzles.
    * `v3` runs in the background and provides a score based on user behavior, without requiring user interaction. When using this version, make sure to implement additional business logic to handle the score and determine if further action is needed.

    ##### Google reCAPTCHA widget settings

    The Google reCAPTCHA widget settings include:

    <table class="table">
      <thead>
        <tr>
          <th><strong>Settings</strong></th>
          <th><strong>Description</strong></th>
        </tr>
      </thead>

      <tbody>
        <tr>
          <td>Site key</td>
          <td>The public site key used to initialize the reCAPTCHA on your website. You can create it in <a href="https://www.google.com/recaptcha/admin/create">Google reCAPTCHA console</a> or your Google Cloud Platform project.</td>
        </tr>

        <tr>
          <td>Secret key</td>
          <td>The secret key used to communicate securely with the reCAPTCHA service server-side. You can create it in <a href="https://www.google.com/recaptcha/admin/create">Google reCAPTCHA console</a> or your Google Cloud Platform project.</td>
        </tr>
      </tbody>
    </table>

    ##### Google reCAPTCHA output value

    The Google reCAPTCHA widget output value data type is an `object`.

    Example of `v2` response:

    ```json lines
    {
      "recaptcha_widget_id": {
        "success": true,
        "challenge_ts": "2025-03-26T11:22:18Z",
        "hostname": "auth.example.com"
      }
    }
    ```

    Example of `v3` response:

    ```json lines
    {
      "recaptcha_widget_id": {
        "success": true,
        "challenge_ts": "2025-03-26T11:22:18Z",
        "hostname": "auth.example.com",
        "score": 0.9
      }
    }
    ```
  </Accordion>

  <Accordion title="Verifiable Credentials">
    A widget that lets a user verify their identity using verifiable credentials stored in their digital wallet.

    ##### Verifiable Credentials widget settings

    The Verifiable Credentials widget settings include:

    <table class="table">
      <thead>
        <tr>
          <th><strong>Settings</strong></th>
          <th><strong>Description</strong></th>
        </tr>
      </thead>

      <tbody>
        <tr>
          <td>URL</td>
          <td>The URL value used to generate the QR code. This value is returned in the <code>engagement</code> property of the verification request.</td>
        </tr>

        <tr>
          <td>Link text</td>
          <td>Alternative text that will be displayed for users who cannot scan the QR code and prefer to open the link directly on their device.</td>
        </tr>

        <tr>
          <td>Size</td>
          <td>The size of the QR code.</td>
        </tr>

        <tr>
          <td>Public token</td>
          <td>The access token required to consume the polling endpoint. Please ensure the token is generated with only the <code>read:verification\_request</code> scope to avoid exposing access to other resources.</td>
        </tr>

        <tr>
          <td>Verification ID</td>
          <td>The verification ID generated when you start the verification request.</td>
        </tr>

        <tr>
          <td>Maximum waiting time</td>
          <td>The maximum amount of time to wait for the verification process to complete. Once the set time is reached, polling will stop and an error will be thrown, regardless of the verification status.</td>
        </tr>
      </tbody>
    </table>

    ##### Verifiable Credentials output value

    The Verifiable Credentials widget output value data type is an `object`.

    ```json lines
    {
      "verifiable_credentials_widget_id": {
        "state": "honored",
        "reason": "...", // The reason field contains additional information (if available) regarding the state of the verification request. 
        "presentation": {} // The presentation contains the claims provided by the wallet in response to the presentation definition.
      }
    }
    ```
  </Accordion>
</AccordionGroup>

## Router node

Router nodes let you add rules to create conditional logic jumps between nodes.

By default, a router node has a single pass-through rule named **Default Case** that connects to other nodes. You can add additional rules based on a set of conditions that a variable must meet to then connect to other nodes. To learn more, read [Router.](/docs/customize/forms/routers)

<Frame>
  <img src="https://mintcdn.com/docs-staging-quickstart-revamp/95MUIRU4PPeO3xcE/images/cdy7uua7fh8z/2IKI9sU9UPCVkMkHQ3G8lX/07df765647a69a4cf1ab8c5c7aae3c22/2025-07-15_10-31-08.png?fit=max&auto=format&n=95MUIRU4PPeO3xcE&q=85&s=89ef4911f9f9a098847303ffd05d57f4" alt="Dashboard > Forms > Routers " data-og-width="899" width="899" data-og-height="470" height="470" data-path="images/cdy7uua7fh8z/2IKI9sU9UPCVkMkHQ3G8lX/07df765647a69a4cf1ab8c5c7aae3c22/2025-07-15_10-31-08.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-quickstart-revamp/95MUIRU4PPeO3xcE/images/cdy7uua7fh8z/2IKI9sU9UPCVkMkHQ3G8lX/07df765647a69a4cf1ab8c5c7aae3c22/2025-07-15_10-31-08.png?w=280&fit=max&auto=format&n=95MUIRU4PPeO3xcE&q=85&s=43204859083d68e3b26043d00127cad6 280w, https://mintcdn.com/docs-staging-quickstart-revamp/95MUIRU4PPeO3xcE/images/cdy7uua7fh8z/2IKI9sU9UPCVkMkHQ3G8lX/07df765647a69a4cf1ab8c5c7aae3c22/2025-07-15_10-31-08.png?w=560&fit=max&auto=format&n=95MUIRU4PPeO3xcE&q=85&s=538d43778d52839cdbbd64faa5347614 560w, https://mintcdn.com/docs-staging-quickstart-revamp/95MUIRU4PPeO3xcE/images/cdy7uua7fh8z/2IKI9sU9UPCVkMkHQ3G8lX/07df765647a69a4cf1ab8c5c7aae3c22/2025-07-15_10-31-08.png?w=840&fit=max&auto=format&n=95MUIRU4PPeO3xcE&q=85&s=78549d9e74a2da398d29bd26af9a14f3 840w, https://mintcdn.com/docs-staging-quickstart-revamp/95MUIRU4PPeO3xcE/images/cdy7uua7fh8z/2IKI9sU9UPCVkMkHQ3G8lX/07df765647a69a4cf1ab8c5c7aae3c22/2025-07-15_10-31-08.png?w=1100&fit=max&auto=format&n=95MUIRU4PPeO3xcE&q=85&s=e913975255dc0dd2d8420720f72a7eb7 1100w, https://mintcdn.com/docs-staging-quickstart-revamp/95MUIRU4PPeO3xcE/images/cdy7uua7fh8z/2IKI9sU9UPCVkMkHQ3G8lX/07df765647a69a4cf1ab8c5c7aae3c22/2025-07-15_10-31-08.png?w=1650&fit=max&auto=format&n=95MUIRU4PPeO3xcE&q=85&s=9ec0615bcd4c965bbc897ec8f504e524 1650w, https://mintcdn.com/docs-staging-quickstart-revamp/95MUIRU4PPeO3xcE/images/cdy7uua7fh8z/2IKI9sU9UPCVkMkHQ3G8lX/07df765647a69a4cf1ab8c5c7aae3c22/2025-07-15_10-31-08.png?w=2500&fit=max&auto=format&n=95MUIRU4PPeO3xcE&q=85&s=6340ad4d26c956489be1e1d7b2ad3970 2500w" />
</Frame>

## Flow node

Flow nodes let you add and create custom logic and integration flows to your forms. To learn more, read [Flows.](/docs/customize/forms/flows)

<Frame>
  <img src="https://mintcdn.com/docs-staging-quickstart-revamp/TYcLtS8UbiQUCV_p/images/cdy7uua7fh8z/4UGCrqzgyHTPryLoEuBwNt/e4a67be08a33b565ece89973028fa6ac/forms-flow-node.png?fit=max&auto=format&n=TYcLtS8UbiQUCV_p&q=85&s=3b36c4ef57eb1b383c71e395f08a4842" alt="Dashboard > Forms > Flow" data-og-width="1226" width="1226" data-og-height="504" height="504" data-path="images/cdy7uua7fh8z/4UGCrqzgyHTPryLoEuBwNt/e4a67be08a33b565ece89973028fa6ac/forms-flow-node.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-quickstart-revamp/TYcLtS8UbiQUCV_p/images/cdy7uua7fh8z/4UGCrqzgyHTPryLoEuBwNt/e4a67be08a33b565ece89973028fa6ac/forms-flow-node.png?w=280&fit=max&auto=format&n=TYcLtS8UbiQUCV_p&q=85&s=3ab9cdbed22df2245db7f35bcd64c1ab 280w, https://mintcdn.com/docs-staging-quickstart-revamp/TYcLtS8UbiQUCV_p/images/cdy7uua7fh8z/4UGCrqzgyHTPryLoEuBwNt/e4a67be08a33b565ece89973028fa6ac/forms-flow-node.png?w=560&fit=max&auto=format&n=TYcLtS8UbiQUCV_p&q=85&s=3c8f334b4fdd5668cc3485a7538a8d28 560w, https://mintcdn.com/docs-staging-quickstart-revamp/TYcLtS8UbiQUCV_p/images/cdy7uua7fh8z/4UGCrqzgyHTPryLoEuBwNt/e4a67be08a33b565ece89973028fa6ac/forms-flow-node.png?w=840&fit=max&auto=format&n=TYcLtS8UbiQUCV_p&q=85&s=ca0adb2dd4b44dcbebfbf788720fdd2a 840w, https://mintcdn.com/docs-staging-quickstart-revamp/TYcLtS8UbiQUCV_p/images/cdy7uua7fh8z/4UGCrqzgyHTPryLoEuBwNt/e4a67be08a33b565ece89973028fa6ac/forms-flow-node.png?w=1100&fit=max&auto=format&n=TYcLtS8UbiQUCV_p&q=85&s=8c12646dc2f18ffcc2cac58bf6cc9911 1100w, https://mintcdn.com/docs-staging-quickstart-revamp/TYcLtS8UbiQUCV_p/images/cdy7uua7fh8z/4UGCrqzgyHTPryLoEuBwNt/e4a67be08a33b565ece89973028fa6ac/forms-flow-node.png?w=1650&fit=max&auto=format&n=TYcLtS8UbiQUCV_p&q=85&s=b7a8fa3f8766bf46dbfcf6007e3d3493 1650w, https://mintcdn.com/docs-staging-quickstart-revamp/TYcLtS8UbiQUCV_p/images/cdy7uua7fh8z/4UGCrqzgyHTPryLoEuBwNt/e4a67be08a33b565ece89973028fa6ac/forms-flow-node.png?w=2500&fit=max&auto=format&n=TYcLtS8UbiQUCV_p&q=85&s=b293adc5150e940b1609f1e7ad22efdd 2500w" />
</Frame>

<Frame>
  <img src="https://mintcdn.com/docs-staging-quickstart-revamp/R8rXfTj95YBIEuC2/images/cdy7uua7fh8z/4L1ixTcIVCmslts6M4wn7u/dc07046cfd41494f40285de5c102ff52/flow-editor-example.png?fit=max&auto=format&n=R8rXfTj95YBIEuC2&q=85&s=3019da5effa7b8a220974e89031c78e8" alt="Dashboard > Forms > Flow > Editor" data-og-width="1404" width="1404" data-og-height="728" height="728" data-path="images/cdy7uua7fh8z/4L1ixTcIVCmslts6M4wn7u/dc07046cfd41494f40285de5c102ff52/flow-editor-example.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-quickstart-revamp/R8rXfTj95YBIEuC2/images/cdy7uua7fh8z/4L1ixTcIVCmslts6M4wn7u/dc07046cfd41494f40285de5c102ff52/flow-editor-example.png?w=280&fit=max&auto=format&n=R8rXfTj95YBIEuC2&q=85&s=a90d72df5cdbea49573620a4977d101e 280w, https://mintcdn.com/docs-staging-quickstart-revamp/R8rXfTj95YBIEuC2/images/cdy7uua7fh8z/4L1ixTcIVCmslts6M4wn7u/dc07046cfd41494f40285de5c102ff52/flow-editor-example.png?w=560&fit=max&auto=format&n=R8rXfTj95YBIEuC2&q=85&s=834e9b91a35052302aaf9e0771b6b774 560w, https://mintcdn.com/docs-staging-quickstart-revamp/R8rXfTj95YBIEuC2/images/cdy7uua7fh8z/4L1ixTcIVCmslts6M4wn7u/dc07046cfd41494f40285de5c102ff52/flow-editor-example.png?w=840&fit=max&auto=format&n=R8rXfTj95YBIEuC2&q=85&s=fd6382e21f21b17303c55b43c88114a4 840w, https://mintcdn.com/docs-staging-quickstart-revamp/R8rXfTj95YBIEuC2/images/cdy7uua7fh8z/4L1ixTcIVCmslts6M4wn7u/dc07046cfd41494f40285de5c102ff52/flow-editor-example.png?w=1100&fit=max&auto=format&n=R8rXfTj95YBIEuC2&q=85&s=67f45684221e54595335472c540b7ecb 1100w, https://mintcdn.com/docs-staging-quickstart-revamp/R8rXfTj95YBIEuC2/images/cdy7uua7fh8z/4L1ixTcIVCmslts6M4wn7u/dc07046cfd41494f40285de5c102ff52/flow-editor-example.png?w=1650&fit=max&auto=format&n=R8rXfTj95YBIEuC2&q=85&s=bbe53c10dc799055fb95e40ac0d02d76 1650w, https://mintcdn.com/docs-staging-quickstart-revamp/R8rXfTj95YBIEuC2/images/cdy7uua7fh8z/4L1ixTcIVCmslts6M4wn7u/dc07046cfd41494f40285de5c102ff52/flow-editor-example.png?w=2500&fit=max&auto=format&n=R8rXfTj95YBIEuC2&q=85&s=d610637072942149588a22c170388538 2500w" />
</Frame>

## Start node

Start nodes are not visible to the user. It is where you can configure hidden field variables, such as user attributes when [rendering a form with an Action.](/docs/customize/forms/render)

<Frame>
  <img src="https://mintcdn.com/docs-staging-quickstart-revamp/95MUIRU4PPeO3xcE/images/cdy7uua7fh8z/2GqFDPep4akUxucmMJyb5/2b50f07f50ee29501341dc54f686de07/form-start-node.png?fit=max&auto=format&n=95MUIRU4PPeO3xcE&q=85&s=22df8206b017285026537dfa27a6b42a" alt="Dashboard > Forms > Start node" data-og-width="1233" width="1233" data-og-height="399" height="399" data-path="images/cdy7uua7fh8z/2GqFDPep4akUxucmMJyb5/2b50f07f50ee29501341dc54f686de07/form-start-node.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-quickstart-revamp/95MUIRU4PPeO3xcE/images/cdy7uua7fh8z/2GqFDPep4akUxucmMJyb5/2b50f07f50ee29501341dc54f686de07/form-start-node.png?w=280&fit=max&auto=format&n=95MUIRU4PPeO3xcE&q=85&s=e789c1f991d04cbf0d1b93617f1b1c42 280w, https://mintcdn.com/docs-staging-quickstart-revamp/95MUIRU4PPeO3xcE/images/cdy7uua7fh8z/2GqFDPep4akUxucmMJyb5/2b50f07f50ee29501341dc54f686de07/form-start-node.png?w=560&fit=max&auto=format&n=95MUIRU4PPeO3xcE&q=85&s=0a384260aa754950bf458bf253ffb08e 560w, https://mintcdn.com/docs-staging-quickstart-revamp/95MUIRU4PPeO3xcE/images/cdy7uua7fh8z/2GqFDPep4akUxucmMJyb5/2b50f07f50ee29501341dc54f686de07/form-start-node.png?w=840&fit=max&auto=format&n=95MUIRU4PPeO3xcE&q=85&s=6448ec10d0ebcfdf6971dbea710df3f7 840w, https://mintcdn.com/docs-staging-quickstart-revamp/95MUIRU4PPeO3xcE/images/cdy7uua7fh8z/2GqFDPep4akUxucmMJyb5/2b50f07f50ee29501341dc54f686de07/form-start-node.png?w=1100&fit=max&auto=format&n=95MUIRU4PPeO3xcE&q=85&s=6ff2f1c0809b818baa692290b989d867 1100w, https://mintcdn.com/docs-staging-quickstart-revamp/95MUIRU4PPeO3xcE/images/cdy7uua7fh8z/2GqFDPep4akUxucmMJyb5/2b50f07f50ee29501341dc54f686de07/form-start-node.png?w=1650&fit=max&auto=format&n=95MUIRU4PPeO3xcE&q=85&s=393a44468a88ea3a9e660aec7a2936dc 1650w, https://mintcdn.com/docs-staging-quickstart-revamp/95MUIRU4PPeO3xcE/images/cdy7uua7fh8z/2GqFDPep4akUxucmMJyb5/2b50f07f50ee29501341dc54f686de07/form-start-node.png?w=2500&fit=max&auto=format&n=95MUIRU4PPeO3xcE&q=85&s=3a4f2bac0875a1d921622d8c6912ab06 2500w" />
</Frame>

## Ending screen node

Every form has an Ending screen node. By default this node resumes the authentication flow and this is where you can configure an After submission flow.

<Frame>
  <img src="https://mintcdn.com/docs-staging-quickstart-revamp/3jbELjzzcIN-z8n3/images/cdy7uua7fh8z/0icbjPpDKsnmtInimJ548/ead65b5e89de57a3079127324acd314d/ending-screen-node.png?fit=max&auto=format&n=3jbELjzzcIN-z8n3&q=85&s=2e61f703b42b893614cc357704eb70dc" alt="Dashboard > Forms > Ending screen node" data-og-width="1196" width="1196" data-og-height="365" height="365" data-path="images/cdy7uua7fh8z/0icbjPpDKsnmtInimJ548/ead65b5e89de57a3079127324acd314d/ending-screen-node.png" data-optimize="true" data-opv="3" srcset="https://mintcdn.com/docs-staging-quickstart-revamp/3jbELjzzcIN-z8n3/images/cdy7uua7fh8z/0icbjPpDKsnmtInimJ548/ead65b5e89de57a3079127324acd314d/ending-screen-node.png?w=280&fit=max&auto=format&n=3jbELjzzcIN-z8n3&q=85&s=4bf06c55244c402848e3459f1c8e64e0 280w, https://mintcdn.com/docs-staging-quickstart-revamp/3jbELjzzcIN-z8n3/images/cdy7uua7fh8z/0icbjPpDKsnmtInimJ548/ead65b5e89de57a3079127324acd314d/ending-screen-node.png?w=560&fit=max&auto=format&n=3jbELjzzcIN-z8n3&q=85&s=a4dff8509dd0f28f932627e4c9399313 560w, https://mintcdn.com/docs-staging-quickstart-revamp/3jbELjzzcIN-z8n3/images/cdy7uua7fh8z/0icbjPpDKsnmtInimJ548/ead65b5e89de57a3079127324acd314d/ending-screen-node.png?w=840&fit=max&auto=format&n=3jbELjzzcIN-z8n3&q=85&s=d55919cbfc50a27c75381592a41778a4 840w, https://mintcdn.com/docs-staging-quickstart-revamp/3jbELjzzcIN-z8n3/images/cdy7uua7fh8z/0icbjPpDKsnmtInimJ548/ead65b5e89de57a3079127324acd314d/ending-screen-node.png?w=1100&fit=max&auto=format&n=3jbELjzzcIN-z8n3&q=85&s=7936e3b10af721709b8e54d388a0a4eb 1100w, https://mintcdn.com/docs-staging-quickstart-revamp/3jbELjzzcIN-z8n3/images/cdy7uua7fh8z/0icbjPpDKsnmtInimJ548/ead65b5e89de57a3079127324acd314d/ending-screen-node.png?w=1650&fit=max&auto=format&n=3jbELjzzcIN-z8n3&q=85&s=e56c138db96d5d92475c88fa2ffdad55 1650w, https://mintcdn.com/docs-staging-quickstart-revamp/3jbELjzzcIN-z8n3/images/cdy7uua7fh8z/0icbjPpDKsnmtInimJ548/ead65b5e89de57a3079127324acd314d/ending-screen-node.png?w=2500&fit=max&auto=format&n=3jbELjzzcIN-z8n3&q=85&s=9fcd838438cb7a84e3b441612e5a04bd 2500w" />
</Frame>
