# Ask: Form

When you need to elicit more than one piece of information from a user, you can use an **Ask: Form** node. It is designed for web front ends. One form can have multiple input fields.

<figure><img src="https://3356808761-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEBQHGJABNTj5ISSOTRxM%2Fuploads%2FsJ5vRa33nSppRN1THIwH%2Fform1.png?alt=media&#x26;token=8a40a5e0-be82-4621-bd91-e62125cf5961" alt=""><figcaption></figcaption></figure>

The fields to elicit can be configured as part of the node. In this example, we set three fields of type Custom. They are required, so they cannot be skipped (see asterisks). The other fields are optional.

<figure><img src="https://3356808761-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEBQHGJABNTj5ISSOTRxM%2Fuploads%2FSjrHP8Kq45kPM5zOy1X0%2Fform2.png?alt=media&#x26;token=96bf19a6-a76d-411f-807e-327e96bb5231" alt=""><figcaption></figcaption></figure>

The following parameters can be configured for a form field:

| Property                | Description                                                                                                 | Explanation                                                                                                                 |
| ----------------------- | ----------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------- |
| Title                   | The label for the field                                                                                     |                                                                                                                             |
| Type                    | The type of the field determines how the field is validated and stored                                      |                                                                                                                             |
| Required                | Toggle if the field is required and cannot be skipped                                                       |                                                                                                                             |
| Remember in user.\<var> | Toggle if you want to remember the field in the user object                                                 | Only use when the value identifies this user.                                                                               |
| Assign to               | Fill in with a name of a [variable](https://manuals.dialox.ai/studio/flows/variables) to store the value in | Use primarily when the expected value doesn't identify this user. Like when you are asking for someone else's phone number. |

## Field types

| Field type | Description                                          | Where it is stored |
| ---------- | ---------------------------------------------------- | ------------------ |
| First name | The first name of the user                           | user.first\_name   |
| Last name  | The last name of the user                            | user.last\_name    |
| Email      | The email address (needs to be a valid email format) | user.email         |
| Phone      | The phone number (needs to be a valid phone number)  | user.phone         |
| Custom     | See custom fields                                    |                    |

## Custom fields

Custom fields can be used for any type of information. It needs more properties to be configured, since its behaviour isn't fixed by its type.

<figure><img src="https://3356808761-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEBQHGJABNTj5ISSOTRxM%2Fuploads%2FLAYv65RkMtlHSDI5ruUO%2Fform.png?alt=media&#x26;token=8ffc2609-d810-4e06-baaa-f5b187a80cf1" alt=""><figcaption></figcaption></figure>

| Property      | Description                                                     | Explanation |
| ------------- | --------------------------------------------------------------- | ----------- |
| Remember      | To also store the variable in the user object                   |             |
| Assign to     | The name of the variable to store it in                         |             |
| Text area     | Toggle to render a multiline text area instead of a single line |             |
| Default value | Text already present in the answer box by default               |             |

## Resources

* [web-flows](https://manuals.dialox.ai/store/skills/web-flows "mention")
* [variables](https://manuals.dialox.ai/studio/flows/variables "mention")
