Skip to main content
All Docs
FeaturesPurple PepperUpdated April 7, 2026

Contact Form & Demo Booking

Contact Form & Demo Booking

The /contact page provides a public, unauthenticated way for visitors to submit inquiries, request demos, and — optionally — book a time directly via an embedded Calendly calendar.

Accessing the Page

The contact page is publicly accessible at /contact with no login required. A "Contact" link is included in the main navigation bar and footer on the home page.

Inquiry Form

Fields

FieldRequiredNotes
Full NameMax 200 characters
EmailMust be a valid email; max 320 characters
Company NameMax 200 characters
TelephoneMax 30 characters
Inquiry TypeSee options below
MessageMax 5,000 characters
GDPR ConsentCheckbox linking to Privacy Policy — must be checked

Inquiry Types

  • Request a Demo — default selection
  • Call Back
  • Support Query
  • More Information
  • Other

Form Behaviour

  • Field-level validation errors are shown inline after a failed submission attempt
  • Errors for a field are cleared as soon as the user edits that field
  • A loading spinner is shown while the submission is in progress
  • On success, the form is replaced by a confirmation message
  • On network failure, a general error message is displayed

Calendly Widget (Optional)

When the environment variable NEXT_PUBLIC_CALENDLY_URL is set to a valid Calendly scheduling page URL, an embedded calendar widget is displayed on the contact page so visitors can book a slot directly.

If the variable is not set, a fallback message is shown in its place.

NEXT_PUBLIC_CALENDLY_URL=https://calendly.com/your-org/demo

Direct Contact Details

The page also displays static direct contact information: phone number, email address, registered office address, and business hours.

GDPR Compliance

  • Consent is captured explicitly via a required checkbox before submission
  • The submitter's IP address is recorded alongside each inquiry for audit purposes
  • All data is stored in the contactInquiries database table

Email Notifications (Optional)

When both the email integration is configured and CONTACT_FORM_NOTIFY_EMAIL is set, the system sends an HTML notification email for every new form submission.

CONTACT_FORM_NOTIFY_EMAIL=sales@your-company.com

The notification email includes all submitted fields (name, email, company, telephone, inquiry type, message), the GDPR consent confirmation, the submission timestamp, and the submitter's IP address.

If email is not configured or the variable is not set, the submission is still stored in the database — the notification is simply skipped.

API Endpoint

See the POST /api/contact API reference for full request/response details.