Tutorial: Edit a public-site intake workflow
After public forms scaffold internal schemas, generate the intake workflow—then refine steps, permissions, and triggers in Workflow admin.
Public-site intake workflows are regular workflows created (or updated) from a public form definition. They reuse the internal form schema and data entity that were synced when you saved the marketing form. This tutorial assumes you already completed Customize your public pages for workspace yourteam.
What gets scaffolded
When you run create workflow from public form in Public Site admin, the platform:
- Ensures internal artifacts exist:
public-site-{formKey}form schema and a data entity keyed by your schema type + version (seeensureInternalSchemaArtifactsbehavior). - Inserts a workflow named like
{Form display name} Intakewith slugpublic-{formKey}-intake(suffix added if the slug collides). - Inserts three steps:
start→review(task) →done(end).
- Binds the
reviewstep to the internal form + entity and setsstep_io_configwith inputs/outputs referencing that entity (states such asnew→reviewed). - Adds a
workflow_step_permissionsrow somemberhascan_viewandcan_captureonreview(so staff can process submissions). - Stores
public_form_triggermetadata insideworkflows.definition(includingform_key,schema_type,schema_version, andauto_start_instance: true) plusinstance_creation.manual_enabled: false so new instances are tied to public submissions rather than a generic “start” button.
You need both public_site.manage (or owner) and workflow.manage for the scaffold action.
Step 1 — Scaffold from the public form
- Open
/home/yourteam/admin/public-site. - Locate the Forms section and the form you want (e.g. personal-banking-lead in a multi-page demo).
- Use the control that creates / opens the intake workflow (wording varies; it calls
createWorkflowFromPublicFormActionwith your form key). - On success, note the returned Workflow admin URL (pattern
/home/yourteam/workflow/admin/{workflowId}).
If the action errors, common causes: missing draft site, missing form key, or lacking workflow.manage.
Step 2 — Open Workflow admin
Follow the link or go to /home/yourteam/workflow/admin, select the new Intake workflow, and open the editor.
Step 3 — Tighten permissions beyond the default
The scaffold grants member capture on review. For many teams you should:
- Remove overly broad rows (if everyone in the tenant should not see PII).
- Add
accountrole rows pointing at custom roles such asIntake reviewerorFront officewithcan_view+can_capture. - Optionally keep
workflow_adminorownerwithcan_viewfor oversight withoutcan_capture.
Save permissions per step from the Steps card.
Step 4 — Adjust the task step
Edit the review step if you need:
- A different form (swap
form_schema_id)—for example after you bump form version and want reviewers on a richer layout. - A different entity or
step_io_configif your data model gained fields (coordinate version bumps in Data entities / Forms tutorials).
Remember: changing form_schema_id does not retroactively change completed instances; plan migrations for in-flight work.
Step 5 — Gateways and extra tasks (optional)
Insert additional task steps before done:
- Manager approval after review.
- Gateway splitting approve vs reject with
next_stepswhenoutcomes.
Update permissions so only the right roles capture each new step.
Step 6 — Definition / trigger metadata
In definition JSON, inspect public_form_trigger. Teams sometimes toggle:
auto_start_instance— Whether a new workflow instance should spin up for each public submission (default true for intakes).instance_creation.manual_enabled— Whether operators may also start instances manually from Operative (scaffold setsfalse; settrueif you want hybrid behavior).
Edit carefully—operative routing reads these flags.
Step 7 — BPMN (optional)
If your team uses the BPMN panel, re-import XML after you add steps so diagrams stay aligned with workflow_steps. Use the editor’s sync actions to avoid drift.
Step 8 — Test end to end
- Publish a public-site revision that includes the form on a page.
- Submit a lead from
yourteam’s tenant host or preview URL. - In the app, open
/home/yourteam/operativeworkflow(or the specific slug) and confirm a new instance appears. - Complete
reviewas a user who hascan_capture. Check Task inbox if assignments are enabled.
Related reading
- Create a workflow from zero — Full manual modeling.
- Define data forms — Bumping form versions used by the review step.
- Define data entities — Bumping entity versions tied to
step_io_config.