Send fixed-price client quotes with approvals using Gmail and data tables
Ready for 3.0What this workflow does
This workflow has 74 nodes and runs when an HTTP POST request hits its webhook URL (plus 3 other triggers). Along the way it connects Gmail.
How it runs
Trigger: When an HTTP POST request hits its webhook URL (plus 3 other triggers).
- Validate Quote Intake Token (Code): runs custom JavaScript code
- Validate Quote Approval Token (Code): runs custom JavaScript code
- Find Observable Quote Rows (Data table): get (row)
- Build Safe Quote Customization Fixture (Code): runs custom JavaScript code
- Quote Intake Authorized? (If): checks a condition and branches into true / false
- Quote Approval Authorized? (If): checks a condition and branches into true / false
- Build Stale Quote Alerts (Code): runs custom JavaScript code
- OPTION — Build Good Better Best Choices (Code): runs custom JavaScript code
- OPTION — Add Deposit Schedule (Code): runs custom JavaScript code
- OPTION — Build CRM Handoff Payload (Code): runs custom JavaScript code
…plus 60 more steps. See the full node list below.
Services it uses
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
Nodes used (8)
- Webhook
n8n-nodes-base.webhook - Code
n8n-nodes-base.code - If
n8n-nodes-base.if - Data table
n8n-nodes-base.dataTable - Gmail
n8n-nodes-base.gmail - Respond to Webhook
n8n-nodes-base.respondToWebhook - Schedule Trigger
n8n-nodes-base.scheduleTrigger - Manual Trigger
n8n-nodes-base.manualTrigger
From the author
Quick overview Price authenticated quote requests, prevent replay sends, route exceptions for approval, and surface stale delivery state. How it works 1. Authenticates quote intake with the server-side QUOTEINTAKETOKEN and rejects malformed, array-shaped,…