Process Contact Form Submissions with Validation and MongoDB Storage
This n8n workflow securely processes contact form submissions by validating user input, formatting the data, and storing it in a MongoDB database. The flow ensures data consistency, prevents unsafe entries, and provides a confirmation response back to the user.
Workflow
- Form Submission Node
Purpose: Serves as the workflow’s entry point.
Functionality: Captures user input from the contact form, which typically includes:
name last name email phone number
- Code Node (Validation Layer)
Purpose: Ensures that collected data is valid and secure.
Validations performed:
Removes suspicious characters to mitigate risks like SQL injection or script injection.
Validates the phone_number field format (numeric, correct length, etc.).
If any field fails validation, the entry is marked as “is_not_valid” to block it from database insertion.
- Edit Fields Node (Data Formatting)
Purpose: Normalizes data before database insertion.
Transformations applied:
Converts field names to snake_case (first_name, last_name, phone_number).
Standardizes field naming convention for consistency in MongoDB storage.
- MongoDB Node (Insert Documents)
Purpose: Persists validated data in MongoDB Atlas.
Process:
Inserts documents into the target collection with the cleaned and formatted fields.
Connection is established securely using a MongoDB Atlas connection string (URI).
🔧 How to Set Up MongoDB Atlas Connection URL
a. Create a Cluster
b. Log in to MongoDB Atlas and create a new cluster.
c. Configure Database Access: Add a database user with a secure username and password, Assign appropriate roles (e.g., Atlas Admin for full access or Read/Write for limited).
d. Obtain Connection String (URI)
From Atlas, go to Clusters → Connect → Drivers.
Copy the provided connection string, which looks like:
mongodb+srv://<username>:<password>@cluster0.abcd123.mongodb.net/myDatabase?retryWrites=true&w=majority
Configure in n8n In the MongoDB node, paste the URI.
Replace <username>, <password>, and myDatabase with your actual credentials and database name.
Test the connection to ensure it is successful.
- Form Ending Node
Purpose: Provides closure to the workflow.
Functionality: Sends a confirmation response back to the user, indicating that their contact details were successfully submitted and stored.
✅ Result: With this workflow, all contact form submissions are safely validated, normalized, and stored in MongoDB Atlas, ensuring both data integrity and security basic.
Related Templates
USDT And TRC20 Wallet Tracker API Workflow for n8n
Overview This n8n workflow is specifically designed to monitor USDT TRC20 transactions within a specified wallet. It u...
Send structured logs to BetterStack from any workflow using HTTP Request
Send structured logs to BetterStack from any workflow using HTTP Request Who is this for? This workflow is perfect for...
Automate Daily Keyword Research with Google Sheets, Suggest API & Custom Search
Who's it for This workflow is perfect for SEO specialists, marketers, bloggers, and content creators who want to automa...
🔒 Please log in to import templates to n8n and favorite templates
Workflow Visualization
Loading...
Preparing workflow renderer
Comments (0)
Login to post comments