Prefill and confirm form submissions
Use a prefill workflow to shape the form before it opens. Use a confirmation workflow to show the user a calculated summary before the main workflow runs.
Prefill Workflows
Section titled “Prefill Workflows”A prefill workflow runs before the form renders and returns initial values for the form fields. Use it to look up a customer record by query string and pre-populate name/email/phone, prefill default values pulled from your CRM, or seed a form from a token in the URL.
Configure it on the form trigger by pointing prefill.workflowId at another workflow:
{ "prefill": { "workflowId": "wf_lookup_customer", "timeoutMs": 10000 }}| Field | Description |
|---|---|
workflowId | The workflow to run before rendering the form. Receives the page query string as initial, plus any prefill context the form provides. |
timeoutMs | Hard timeout for the prefill workflow (1,000–30,000 ms, default 10,000). |
The prefill workflow’s Return step writes a formPrefill object whose fields map carries partial JSON Schema overrides per field. The most common override is default (which pre-populates a value), but you can also restrict dropdown options via enum, hide fields via visible: false, or mark them read-only:
{ "formPrefill": { "fields": { "first_name": { "default": "Jane" }, "email": { "default": "jane@acme.com", "readonly": true }, "region": { "enum": ["US", "CA"], "default": "US" }, "internal_notes": { "visible": false } } }}See Return Step — Form Prefill Response for the full list of supported overrides.
Confirmation Workflows
Section titled “Confirmation Workflows”A confirmation workflow runs after the user clicks Submit but before the main workflow runs. It returns a summary that QuickFlo shows to the user in a confirmation dialog — the user has to explicitly approve before the main workflow executes. Use it for showing a quote, calculated total, or any “review and confirm” UX.
{ "confirmation": { "workflowId": "wf_calculate_quote", "timeoutMs": 10000 }}| Field | Description |
|---|---|
workflowId | The workflow to run before final submission. Receives the form values as initial. |
timeoutMs | Hard timeout for the confirmation workflow (1,000–30,000 ms, default 10,000). |
The confirmation workflow’s Return step should return a formConfirmation summary object:
{ "formConfirmation": { "title": "Confirm your order", "summary": "You're about to submit this for review.", "items": [ { "label": "Plan", "value": "Pro" }, { "label": "Total", "value": "$99/mo" } ], "warningMessage": "Cancellation is subject to our refund policy." }}QuickFlo shows the title, summary, items, and any warning to the user before they confirm. If the user cancels at the confirmation step, the main workflow never runs.