Skip to main content

Required answers, validation and field slugs

Make answers required, see which checks your form runs, and name each answer with a field slug for exports and automations.

Someone skips the email box, types "asdf" as their phone number and still gets through. Later you export the answers and half the columns are called text_2. Required answers and the form's built-in checks deal with the first problem. Field slugs deal with the second.

Make an answer required

  1. Open your form in the Editor tab and click the field.

  2. In the Edit Field panel, turn on Is required?. You can also use the Required switch at the top of the field on the canvas.

If someone leaves a required field empty, they see "This field is required" under it and can't send the form.

Every form needs at least one required field. Without one, Publish stops with Required field validation and the first field is outlined in red.

Let the form check answers

The form checks each answer when someone moves to the next field, and again when they tap your button. It won't send until every message is cleared.

  • Email: the answer must look like an email address, or they see "Please enter a valid email address".

  • URL: the answer must be a full web address that starts with https:// or http://, or they see "Please enter a valid URL".

  • Phone: people pick a country from the flag list and type their number, so every answer arrives with its country code, such as +91.

  • Date: turn on Before Date or After Date in the Edit Field panel and pick a day. Both start on today's date. People can't pick days outside the limit in the calendar. Use both together for a window, such as workshop dates between 1 and 31 October.

A few settings are saved but don't limit answers yet: the Min Number and Max Number switches on a Number field don't turn on, and the form doesn't check a Checkbox's Min choices and Max Choices or a Date's Specific Date Range.

Public form at phone width with "Your email" filled in as "priya@gmail" and the red message "Please enter a valid email address" under the field

Name each answer with a field slug

Every field has a Form field slug under its Field Title. Zorcha saves each answer under that slug, so it becomes the answer's name wherever the answers go:

  • Export List on the Submissions tab puts each slug at the top of its own column. Columns are sorted A to Z, not in form order.

  • Submission Details uses the slug as the heading of each answer, so company_size shows as "Company Size".

  • The slugs name, full_name and first_name give the person's name in Submission Details. Without one of them, the details open as "Anonymous Submission".

  • In a Flow Builder automation that starts with Submits a Form, you write an answer as {{form.<slug>}}. For example, {{form.city}} in a Send HTTP Request step sends the city someone picked. {{name}}, {{email}} and {{phone}} work on their own when the slug is exactly that word.

  • In Google Sheets rows from Flow Builder, each question's column is headed with its Field Title, but the slugs name, email and phone fill the sheet's Name, Email and Phone columns.

The hint under the slug box shows the slug as {{cups_per_day}}, without form. in front. In a form-triggered automation that version stays as plain text, so add form. yourself.

For contact details, use name, email and phone. For everything else, pick a short word your team will recognise in a spreadsheet, such as city or cups_per_day.

Edit Field panel for a Number field with Field Title "How many cups do you make a day?", Form field slug "cups_per_day" and the hint "Use this in automations as" followed by cups_per_day in double curly braces under it

How the slug box behaves

  • It follows the title. Zorcha builds the slug from the Field Title as you type it, so "Which city are you in?" becomes which_city_are_you_in. Once you edit the slug yourself, it stops following the title.

  • It tidies what you type. Capitals become lowercase, and spaces and symbols become underscores. An underscore at the very end is dropped, so type both words first and then add the underscore between them.

  • It keeps slugs unique. If another field already uses the slug, Zorcha adds _2, _3 and so on. This also happens when you add two fields of the same type before naming the first: the second keeps a slug like text_2, so type a better one.

  • It can't use a reserved name. run_id, lead_id, contact_id, form_id, workspace_id, automation_id and metadata are taken by Zorcha. A field titled "Lead ID" gets lead_id automatically, so Publish stops with Form validation failed and the hint under the slug turns red: "This form field slug is reserved". Change the slug and publish again.

Edit Field panel for a Text field titled "Lead ID" with Form field slug "lead_id" outlined in red and the red message "This form field slug is reserved" under it, after clicking Update

Settle slugs before you share the form

Changing a slug on a live form doesn't rename old answers or update your automations. New submissions are saved under the new slug and earlier ones keep the old one, so your export ends up with two columns for the same question. In Flow Builder, change any {{form.<slug>}} to the new slug, and delete and re-add any Condition rule that checks the question. Until you've edited a slug by hand, renaming the Field Title renames the slug as well.

Pick your slugs before you publish, then click Update after any change.

Related guides

Did this answer your question?