Using DataMold
Building forms
Fields, widths, show-if rules, pages and the look of a form.
A form is built in the builder: the fields down the middle, the field panel on the left, and the selected field's settings on the right. What you see is what a responder sees — the preview is the real form.
Field types
There are 28 types in five groups. The name in code is the type's id, which you will meet
in the API.
Text and numbers
| Field | Type id | What it collects |
|---|---|---|
| Text | text | One line, up to 255 characters. |
| Long text | textarea | Several lines, up to 5,000 characters. |
email | Checked to be a valid email address. | |
| Phone | phone | Checked to look like a phone number. |
| Website | url | Checked to be a web address. |
| Number | number | A number, with optional minimum, maximum and step. |
| Amount | currency | A sum of money. |
Dates and times
| Field | Type id | What it collects |
|---|---|---|
| Date | date | A calendar date, with optional earliest and latest dates. |
| Date & time | datetime | A date with a time. |
| Time | time | A time of day. |
Choices
| Field | Type id | What it collects |
|---|---|---|
| Dropdown | select | Pick one from a list. |
| Multi-select | multiselect | Pick several from a list. |
| Radio | radio | Pick one, every option visible. |
| Checkboxes | checkboxgroup | Tick any number of options. |
| Yes / no | toggle | An on-off switch. |
Advanced
| Field | Type id | What it collects |
|---|---|---|
| File upload | file | Paid plans. Up to 3 files by default, 25 MB each at most. |
| Colour | color | A colour picker. |
| Rating | rating | Stars, 1 to 5 by default. |
| Slider | range | A value on a scale, 0 to 100 by default. |
| Signature | signature | Drawn with a finger or a mouse. |
| Hidden | hidden | Not shown; filled from the link (see prefill). |
Layout (hold no answer)
| Field | Type id | What it collects |
|---|---|---|
| Columns | row | Split a row into 1 to 4 columns. |
| Heading | heading | A section title. |
| Paragraph | paragraph | A block of text. |
| Divider | divider | A horizontal rule. |
| Image | image | A picture. |
| Page break | pagebreak | Splits the form into pages. |
| Steps | stepper | Named steps within one page. |
Field settings
- Label, placeholder and help text.
- Required — the form will not submit without an answer.
- Default value — filled in before the responder starts.
- Options for dropdowns, multi-selects, radios and checkboxes. Each option has a label and, optionally, a different stored value.
- Validation — minimum and maximum length, minimum and maximum value, step, earliest and latest date, a pattern with your own error message, and unique, which refuses an answer that an earlier response already gave (useful for an email or an ID number).
- Label position — above the field, beside it, or hidden.
Field keys
Every field has a key, made from its label when you add it: "Full name" becomes full_name. The key is the column header in exports, the name in the API and webhooks,
and the name used to prefill the field from a link. Renaming the label later does not change the
key, so integrations keep working.
Widths and columns
Each field can be full width, two-thirds, half, a third or a quarter of the row, and fields placed side by side share the row. For finer control add a Columns block: 1 to 4 columns with their own relative widths, gap and alignment, which stack into one column on small screens (you choose when).
Show-if rules
Any field can be shown only when earlier answers match. A rule is one or more conditions, combined with all (every condition must hold) or any (at least one).
| Field kind | Conditions you can use |
|---|---|
| Text | is, is not, contains, does not contain, starts with, ends with, is any of |
| Number and date | is, is not, greater than / is after, is at least, less than / is before, is at most, between |
| Multi-select and checkboxes | includes, does not include, is any of |
| Yes / no | is, is not |
| Every field | is empty, is not empty |
- Comparisons ignore upper and lower case.
- For a field with several answers, the condition holds if any one of them matches.
- The same rules run in the browser and again on the server. A hidden field's answer is dropped, and a required field that is hidden does not block the submission.
Changing a field with rules
Beyond showing and hiding, a rule can change a field when a condition holds: make it required or read-only, hide it, change its label, help text, placeholder or options, set its value, or change its width and style. Rules apply in order, and a later rule wins over an earlier one.
Pages and steps
- Page break splits a long form into pages with Next and Back buttons. Only the current page is checked before moving on, and Submit appears on the last page.
- Steps walks through up to 10 named steps within one page, headed by numbers, tabs or dots. Each step can be checked before the next, and each can have its own show-if rule.
Design
The Design panel sets the look of the whole form:
- Theme — follow the responder's device, or always light or dark.
- Colours — the main colour, background, surface and text.
- Font — Nunito, Inter, Poppins, Roboto, Georgia, Courier New or the system font.
- Corners, spacing (compact, cosy, roomy) and width.
- Logo and cover image, a progress bar, and your own CSS.
- Buttons — the submit label, alignment, style (solid, outline, soft, ghost, link), size and a hover animation. You can add Clear and link buttons too.
Templates
New forms can start from Contact us, Feedback, Event registration, RSVP, Job application, Support request or Order form. A template is an ordinary form the moment it is created — change anything.
Saving and versions
Each time you publish, the form's definition is saved as a version, and an earlier version can be restored. Responses keep the answers they were given, so editing a live form never rewrites past responses. A form needs at least one field that collects an answer before it can be published.