🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

Gmail + OpenAI: approve AI drafts before sending

Lisa Granqvist Partner Workflow Automation Expert

Your inbox fills up, the good leads get buried, and you end up rewriting the same “thanks for reaching out” email for the tenth time. Then you rush one out, miss a detail, and spend the next hour doing damage control. It’s tiring. And it’s avoidable.

This Gmail OpenAI approval setup hits sales reps first, honestly, because speed matters. But support leads handling first-touch tickets and agency owners juggling multiple client inboxes feel the same bottleneck. The outcome is simple: replies go out faster, but only after you (or a teammate) approve the draft.

You’ll see how the workflow drafts replies with OpenAI, routes them for review, and sends only the approved version. No “AI went rogue” surprises. Just consistent, human-checked responses.

How This Automation Works

See how this solves the problem:

n8n Workflow Template: Gmail + OpenAI: approve AI drafts before sending

The Challenge: Fast Replies Without Risky Auto-Sends

Inbound emails look harmless until they stack up. A few sales inquiries, a couple partnership requests, a “quick question” from a real buyer, and suddenly you’re triaging instead of selling. Manual replying is slow, but full auto-replies are risky because context matters. One wrong promise, one off-brand tone, one missed detail about pricing or availability, and you’ve created a mess that takes longer to fix than the original email would have taken.

It adds up fast. Here’s where it breaks down inside most teams:

  • Good leads wait hours (or a full day) because someone has to draft from scratch.
  • Templates help, but they still require copy-paste, personalization, and second-guessing every line.
  • When multiple people reply from the same inbox, tone drifts and important details get inconsistently explained.
  • Auto-send AI feels tempting, but you can’t confidently let it talk to customers without a safety check.

The Fix: AI Drafts, Human Approval, Then Send

This workflow uses a “human-in-the-loop” pattern. A new email arrives in Gmail, and the automation first checks if it’s even worth your attention (a potential lead versus spam, newsletters, or random requests). If it looks like a lead, OpenAI generates a draft reply using a prompt you control, plus any internal context you want to include. The draft is then sent to a reviewer (you, a teammate, or a shared review inbox). Only after the reviewer replies with an approval keyword does the workflow send the final email to the original sender. If the reviewer requests changes, the workflow loops back, rewrites the draft, and asks again.

The workflow starts with an inbox monitor in Gmail. OpenAI classifies the message, then creates a structured draft (subject + body) in a predictable format. Finally, Gmail handles the review-and-approve loop until the email is cleared to send.

What Changes: Before vs. After

Real-World Impact

Say your inbox gets 15 inbound messages a day and about 6 are real leads. Manually, a decent first reply often takes around 10 minutes each (read, think, draft, proof). That’s about 1 hour daily just on first-touch responses. With this workflow, the draft is ready in roughly a minute, then you spend about 2 minutes approving or requesting a tweak. You still stay in control, but you’re no longer doing the slow part.

Requirements

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Gmail for receiving emails and sending replies
  • OpenAI to classify leads and draft responses
  • OpenAI API key (get it from your OpenAI dashboard)

Skill level: Beginner. You’ll connect accounts, paste an API key, and tweak a couple of plain-English prompts.

Need help implementing this? Talk to an automation expert (free 15-minute consultation).

The Workflow Flow

A new email arrives in Gmail. The Gmail trigger watches a specific inbox (or label) so the automation only runs where you want it to.

AI decides if it’s a lead. The lead intent classifier uses OpenAI to separate real inquiries from noise. If it’s not worth replying, the workflow ends quietly (no accidental responses).

OpenAI drafts a reply in a structured format. A draft chain generates the subject and body based on your persona and knowledge base, then a structured parser forces the output into reliable JSON so the next steps don’t break.

A human approves (or requests a revision). Gmail sends the draft to a reviewer and waits. If the reply includes your approval keyword, the email goes to the customer. If not, the feedback is used to generate a revised draft and the review loop continues.

You can easily modify the approval channel to fit your team, so you can review in Slack instead of email. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Gmail Trigger

Set up the incoming email listener that starts the workflow whenever a new Gmail message arrives.

  1. Add and open Incoming Gmail Monitor.
  2. Set Simple to false.
  3. In Poll Times, keep the item set to everyMinute.
  4. Credential Required: Connect your gmailOAuth2 credentials.

Step 2: Connect Gmail for Review and Sending

Configure the review email and final delivery nodes to use your Gmail account.

  1. Open Human Review Request and set Send To to [YOUR_EMAIL].
  2. Set Operation to sendAndWait and Response Type to freeText.
  3. Set Subject to =RE: {{ $('Lead Intent Classifier').item.json.subject }}.
  4. Set Message to =Original Customer Email: --- {{ $('Incoming Gmail Monitor').item.json.text }} --- AI-Generated Reply (Draft): --- {{ $json.output.body }} --- Please reply to this email with "approve" to send, or provide feedback for revision..
  5. Credential Required: Connect your gmailOAuth2 credentials in Human Review Request.
  6. Open ✅ Deliver Approved Email and set Send To to ={{ $('Incoming Gmail Monitor').item.json.from.value[0].address }}.
  7. Set Subject to ={{ $json.output.subject }} and Message to ={{ $json.output.body }}.
  8. Credential Required: Connect your gmailOAuth2 credentials in ✅ Deliver Approved Email.

Step 3: Set Up the Lead Classification Layer

Classify inbound emails with an LLM and route them for drafting or fallback handling.

  1. Open Classifier LLM Model and select Model as gpt-4o-mini.
  2. Credential Required: Connect your openAiApi credentials in Classifier LLM Model.
  3. Open Lead Intent Classifier and set Input Text to ={{ $json.text }}.
  4. Keep the Categories list as configured (for AI Leads) and confirm Fallback is other.
  5. Confirm execution flow: Incoming Gmail MonitorLead Intent Classifier.
  6. Lead Intent Classifier outputs to both Draft Response Chain and Fallback No-Op in parallel.

If you want to handle non-lead emails, replace Fallback No-Op with a notification or label action later.

Step 4: Configure the Drafting Chain and Output Parsing

Create the AI drafting logic and enforce a structured subject/body response format.

  1. Open LLM Model for Draft and set Model to gpt-4o-mini.
  2. Credential Required: Connect your openAiApi credentials in LLM Model for Draft.
  3. Open Structured Reply Parser and set JSON Schema Example to { "subject": "This is an example subject line.", "body": "This is an example email body.\nIt can have multiple lines." }.
  4. Open Draft Response Chain and set Text to ={{ $('Lead Intent Classifier').item.json.text }}.
  5. Ensure Prompt Type is define and Has Output Parser is enabled.

Credential Required: The Structured Reply Parser is an AI sub-node. Add OpenAI credentials on the parent node LLM Model for Draft, not on the parser itself.

Step 5: Add the Human Approval Gate and Delivery Logic

Route the reviewer’s response to either send the approved email or revise the draft.

  1. Open Approval Decision Gate and set Combine Operation to any.
  2. Configure conditions to check Value 1 as ={{ $json.data.text }} and Value 2 as approve with Operation contains.
  3. Add a second condition for multilingual approval: Value 2 承認 with Operation contains.
  4. Confirm the flow: Human Review RequestApproval Decision Gate✅ Deliver Approved Email (true branch) and back to Draft Response Chain (false branch).

⚠️ Common Pitfall: If your reviewer replies with a subject line only, Approval Decision Gate won’t match. Make sure the word approve appears in the email body.

Step 6: Test and Activate Your Workflow

Run a controlled test to verify the AI draft, approval loop, and final delivery before enabling automation.

  1. Click Execute Workflow and send a test email to the inbox monitored by Incoming Gmail Monitor.
  2. Verify that Lead Intent Classifier runs and Draft Response Chain generates a structured response.
  3. Confirm you receive the review email from Human Review Request and reply with approve in the body.
  4. Check that ✅ Deliver Approved Email sends the final response to the original sender.
  5. When everything works, toggle the workflow to Active for production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Watch Out For

  • Gmail credentials can expire or need specific permissions. If things break, check the n8n Credentials section and your connected Google account’s security settings first.
  • If you’re using Wait behavior (the review step effectively “pauses” the run), processing times vary. Bump up the wait duration if downstream nodes fail because the approval reply hasn’t arrived yet.
  • OpenAI prompts start generic on purpose. Add your brand voice, hard rules (pricing, guarantees), and “never say this” constraints early or you will be editing outputs forever.

Common Questions

How quickly can I implement this Gmail OpenAI approval automation?

About 30 minutes if your Gmail and OpenAI accounts are ready.

Can non-technical teams implement this Gmail OpenAI approval process?

Yes. No coding required, but you do need to copy an API key and edit a couple of prompt fields carefully.

Is n8n free to use for this Gmail OpenAI approval workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in OpenAI API costs, which vary by model and message length (this template is designed around a cost-effective model like gpt-4o-mini).

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

How do I adapt this Gmail OpenAI approval solution to my specific challenges?

Start by editing the “Draft Response Chain” prompt so it matches your exact tone, rules, and offers. You can also tighten or loosen what counts as a lead by adjusting the “Lead Intent Classifier” criteria, which changes how many emails go into review. Common customizations include department-specific personas (sales vs. support), adding required snippets (pricing, calendar links), and changing approval keywords in the “Approval Decision Gate” to match how your team actually writes.

Why is my Gmail connection failing in this workflow?

Usually it’s expired Google authentication or the wrong Gmail account connected in n8n. Reconnect your Gmail credential and confirm the trigger inbox matches where the emails are arriving. If it fails only sometimes, check Google account security prompts and mailbox permissions, especially in shared inbox setups.

What’s the capacity of this Gmail OpenAI approval solution?

It’s typically limited by your n8n plan and how many emails you want to process per month.

Is this Gmail OpenAI approval automation better than using Zapier or Make?

Often, yes, if you care about the approval loop and “rewrite based on feedback” behavior. n8n handles branching and looping logic cleanly, and you can self-host for unlimited executions if your volume climbs. It also plays nicely with structured outputs (like the JSON subject/body), which reduces breakages in real use. Zapier or Make can be simpler for basic “draft and send to me” flows, but the moment you want conditional approval keywords, revisions, and reliable formatting, you’ll feel the limits. Talk to an automation expert if you want help choosing the right approach for your inbox.

Once this is running, your inbox stops being a constant interruption and turns into a clean review queue. The workflow handles the repetitive drafting. You keep the final word.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal