Contents
- Domma CMS User Manual
- 1. Using the CMS
- 2. Tutorials
- 3. Components
- 4. API Reference
- 5. Tools
Form Follow-Up
Updated by Darryl Waterhouse on 29 September 2026 · 3 min read
Every form in Domma CMS stores each submission as an entry in a collection first. After that it can do up to four more things:
- Send an email notification to one or more recipients
- Send the submission to a webhook URL
- Run a CMS Action (needs MongoDB)
- Show an inline success message or redirect the visitor to a success page
These are set per form. Open any form in Data > Forms: the success message and redirect are on the Settings tab; email, webhook, CMS Action and spam protection are on the Actions tab.
1. Email notification
On the Actions tab, in the Email Action card, tick Send email on submit and enter one or more comma-separated recipient addresses. The email goes through the SMTP settings in System > Site Settings > Email; without them nothing is delivered.
Recipients: admin@example.com, team@example.com
Subject Prefix: [Contact Form]
The subject reads <prefix> New submission. With no prefix, the form's title in square brackets is used.
2. Webhook
In the Webhook Action card, tick POST to webhook on submit, enter a URL and choose POST or PUT. Domma sends this JSON body:
{
"form": "enquiries",
"data": {
"full_name": "Jane Smith",
"email": "jane@example.com",
"message": "Hello!"
}
}
Use this to integrate with Zapier, Make, Slack, or any HTTP endpoint. The URL is not kept in the editor's draft, in case it carries a secret token.
3. CMS Action (needs MongoDB)
Actions are reusable workflow steps defined in Data > Actions. A single action can chain several steps: update a field, move the entry to another collection, create an entry in another collection, send an email, call a webhook, raise a notification, or delete the entry. Actions are stored in MongoDB, so they need a MongoDB connection.
To wire an Action to a form:
- Create an Action in Data > Actions targeting the collection your form stores into.
- Open the form in Forms > Actions tab > CMS Action card.
- Pick it under Action on Submit and save.
The Action runs on the server after the entry is saved, as the signed-in visitor if there is one (so {{user.id}} and {{user.email}} work in its steps). If it fails - for example because MongoDB is not connected - the submission is still stored.
A field's triggers (Fields tab) can also run an action, notify the admins or redirect after submit, only when the answers meet the trigger's condition.
A trigger's messages can use the visitor's answers: a banner reading Hello {{name}} greets them by name as they type. Use Insert field beside the message box to pick a field. Passwords, files and images are never repeated back.
4. Success message vs. redirect
After a successful submission the visitor sees one of two things:
- Inline success message - the form is replaced by the text set in Settings > Success Message (default: "Thank you for your submission."). Good for simple acknowledgements.
- Page redirect - the visitor is sent to the URL set in Settings > Success Redirect URL. Good for registration flows or a full thank-you page. Takes priority if both are set, and a trigger's "Redirect after submit" takes priority over it.
{{entryId}}in the URL is replaced with the new entry's id.
Example: set Success Redirect URL to /thank-you and create a thank-you page in Pages with any content you like.
Execution order
On every submission, the pipeline runs in this fixed order:
- Spam checks (honeypot and a too-fast submission are accepted silently and not stored)
- Triggers: a "Block submission" trigger refuses it; an "End the form here" trigger decides what is kept
- Field validation (required fields, conditional logic), then the per-minute rate limit
- Store the entry in the collection - if this fails, the visitor is told and nothing else runs
- Send the email (if enabled)
- Call the webhook (if enabled)
- Run the CMS Action (if set)
- Run trigger events: run an action, notify the admins, redirect
- Return success - the browser redirects or shows the message
Steps 5-8 cannot lose the submission: a failure is logged and raises a warning in Notifications ("Form ...: webhook failed"), but the entry is already stored and the visitor still sees success. An "End the form here" trigger set not to record stores nothing, so no email, webhook or action runs.