Hosted forms
The public-facing form respondents fill in and how submissions flow into a Workflow.
A hosted form is the publicly accessible web page that EzFlow generates for each published form. Respondents open it in a browser, fill in the fields, and submit — no EzFlow account required. EzFlow stores the submission and, if the form is linked to a Workflow, fires the FORM_TRIGGER to start that automation.
Public URL
Each form gets a unique public URL in the format:
https://www.ezflows.app/f/<formId>The form ID appears in the form detail page header. Copy the link directly with the Copy public link button, or open the Share dialog for a formatted link. The URL is shareable anywhere — email, social, QR code, or embedded as an <iframe> on a third-party page.
The hosted form is only accessible when the form is published. Visiting the URL of an unpublished form shows a "not available" page.
Respondent experience
When a respondent opens the hosted URL they see a branded EzFlow page with:
- The form name and optional description.
- Each field in the order you configured in the form builder, with its label, placeholder, and optional help text.
- Required fields marked with an asterisk.
- A terms-of-use and privacy-policy checkbox (LGPD-compliant consent requirement).
- A Submit button.
After submission a success message appears confirming receipt. Respondents can choose to submit another response if your form allows it.
Submission flow
When a respondent submits the form, EzFlow:
- Checks the honeypot field. A hidden field is included on the form page that genuine users never fill. If a bot auto-fills it, EzFlow returns a success-shaped response without storing anything, so the bot cannot distinguish a blocked submission from an accepted one.
- Checks the rate cap. EzFlow enforces per-form submission limits to prevent abuse. If a form receives too many submissions within a short window, further submissions are rejected with a rate-limit response. These limits are set at the environment level.
- Validates required fields. EzFlow checks that all required fields have a value and that email-type fields contain a valid address. Validation errors are shown inline; submission is blocked until resolved.
- Verifies reCAPTCHA (when configured). The hosted form runs a reCAPTCHA v3 check. Submissions scoring below the configured threshold are rejected before being stored.
- Stores the submission. A submission record is created with the field values, a hashed IP address (privacy-preserving), and the reCAPTCHA score.
- Fires the Workflow trigger. If the form is linked to a Workflow, EzFlow emits an internal event that starts the linked Workflow. The submission's field values are passed through the form's variable-mapping configuration and exposed as the
formDataoutput of the FORM_TRIGGER node.
How submission data reaches the Workflow
Inside the linked Workflow, the FORM_TRIGGER node is the entry point. Its output is a formData object containing each mapped field value keyed by the variable name you defined in the form builder.
For example, if your form has a field labelled Email mapped to the variable email, downstream nodes can read formData.email. A SEND_MAIL node could use that value to send a personalised confirmation, or an UPDATE_CONTACT node could use it to create or update a contact record.
Any default values you configured on the form are also injected into the trigger payload alongside the field values, so Workflows can receive context that respondents do not provide directly.
Bot protection
EzFlow applies two layers of bot protection on the hosted form:
- Honeypot — a hidden field invisible to real users. If a bot fills it in, the submission is silently discarded.
- reCAPTCHA v3 — a background score-based check. Submissions with a score below the threshold (configurable at the environment level) are rejected before storage.
Related
- Form builder — adding fields, setting types, and publishing.
- FORM_TRIGGER — the Workflow node that fires when a form is submitted and exposes the field values.
- Forms overview — how forms, Workflows, and contacts connect.
- Triggers — the trigger system that Form Trigger is part of.