Settings Reference
Configure the contact page URL, anti-spam protection, email notifications, file uploads, and GDPR consent.
Go to Contact → Settings to configure everything that controls how the contact form behaves behind the scenes.
URL & slug
The contact page is served at /{slug}. The default slug is contact.
In multilingual installations, each language gets its own slug (e.g. /contact for English, /kontakt for German). Set them separately in the URL section.
Success message
The message shown to the visitor after a successful submission. Translatable per language. Default: "Your message has been sent. We'll get back to you soon."
Redirect after submission
| Option | Behaviour |
|---|---|
| Same page | Shows the success message on the contact page |
| Custom URL | Redirects to a thank-you page of your choice |
Anti-spam
Honeypot
A hidden field added to the form. Bots fill it in; humans don't. Any submission with the honeypot filled is silently rejected. Recommended: on.
Time check
Rejects submissions made too quickly after page load (faster than a human can read and fill in a form). Configure the minimum number of seconds (default: 3). Recommended: on.
Math question
Adds a simple arithmetic question (e.g. "4 + 7 = ?") that the visitor must answer. No external service required. Effective against basic bots.
Rate limiting
Limits the number of submissions from a single IP address. Configure the maximum number of submissions per time window (e.g. 5 per 60 minutes).
Google reCAPTCHA v2
Enable and paste your Site Key and Secret Key from Google. The reCAPTCHA checkbox widget appears above the submit button. Requires an internet connection.
Cloudflare Turnstile
Enable and paste your Site Key and Secret Key from the Cloudflare dashboard. Turnstile is non-intrusive (no checkbox puzzle) and privacy-friendly. Requires Cloudflare.
Tip: Don't enable both reCAPTCHA and Turnstile at the same time. Pick one.
Notifications
Admin email
The email address that receives a notification for every new submission. Leave blank to disable email notifications.
Auto-reply
When enabled, Contensio sends an automated reply to the visitor at the email address they submitted. Requires the form to have an email field.
Configure a subject and body per language. The body supports plain text.
Webhook
POST the form data as JSON to any URL immediately after a submission. Use this to connect to:
- Zapier — trigger a Zap from a Webhook trigger
- Make (Integromat) — trigger a scenario
- n8n — trigger a workflow
- Slack — post to a channel via an incoming webhook
- Any custom endpoint
The payload is a JSON object with all submitted field values keyed by field name.
File uploads
| Setting | Default | Description |
|---|---|---|
| Enabled | Off | Show a file attachment field on the form |
| Max files | 3 | Maximum number of files per submission |
| Max size (MB) | 5 | Maximum size per file |
| Allowed types | jpg, png, pdf | Comma-separated list of allowed extensions |
Files are stored using Laravel's default filesystem disk (local by default). Change the disk in config/filesystems.php to use S3 or another driver.
GDPR consent
| Setting | Description |
|---|---|
| Enabled | Adds a consent checkbox to the form |
| Required | Submission fails if the box is not checked |
| Text | The consent label — translatable. Supports HTML links (e.g. to your privacy policy). |
When enabled, the consent field appears just above the submit button.