🔓 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

SharePoint to Gmail, newsletter drafts ready for approval

Lisa Granqvist Partner Workflow Automation Expert

Your newsletter workflow probably breaks in the same place every time. You have trends in SharePoint, a template somewhere, and a draft that gets built through copy-paste, “quick edits,” and last-minute formatting fixes.

Marketing managers feel it when approvals drag. Content creators feel it when “just one newsletter” turns into an afternoon. And SEO specialists end up chasing consistency across issues. This SharePoint Gmail automation turns trend data into a draft that’s already structured, branded, and ready for review.

Below, you’ll see exactly how the workflow pulls a trending topic from SharePoint, generates a newsletter draft (with optional creative), and sends it to Gmail for approval before anything gets stored or published.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: SharePoint to Gmail, newsletter drafts ready for approval

The Problem: Newsletter drafts take too long to assemble

Building a newsletter draft from “what’s trending” sounds simple until you actually do it every week. First you hunt down the latest trends spreadsheet in SharePoint. Then you pick a topic (often the loudest idea in the room, not the best one). After that comes the messy part: writing the content, translating or adapting it, fitting it into your HTML template, tracking versions, and getting someone to approve it. One tiny formatting change can ripple through the whole email, so you end up re-checking everything… again.

The friction compounds. And it shows up in ways that are hard to measure until you’re already behind schedule.

  • Trend spreadsheets get updated, but your draft starts from an outdated file or the wrong folder.
  • Manual drafting leads to inconsistent sections, which means more editing and weaker brand voice.
  • Approvals happen in DMs and random threads, so nobody knows which draft is “the” draft.
  • Creative assets become a blocker, especially when you want images (or video) but don’t have time.

The Solution: SharePoint trends → AI draft → Gmail approval

This workflow starts with a simple webhook request that tells n8n what you’re creating (for example, “newsletter”) and whether you want video. From there, it pulls your latest trends spreadsheet from SharePoint, selects a topic automatically, and generates bilingual newsletter content using GPT-4o. It then fetches your HTML newsletter template from SharePoint and injects the content into the correct placeholders, so the draft comes out formatted the same way every time. If you want creative assets, it can generate a social-sized image and optionally produce a short video by combining visuals and audio, then merging the results. Finally, it emails the full draft to Gmail for approval and only continues once it’s approved.

The workflow starts when you POST to the webhook. It then builds the newsletter draft (and optional assets) from your SharePoint data and template. After the Gmail approval step, it uploads the final files back to storage so you have a clean, reusable trail.

What You Get: Automation vs. Results

Example: What This Looks Like

Say you publish one newsletter per week. Manually, you might spend about 30 minutes finding the right SharePoint trend file, another 2 hours writing and formatting inside your HTML template, and 30 minutes chasing approvals and consolidating edits. Call it about 3 hours. With this workflow, you send a webhook in a minute, wait roughly 10–20 minutes for drafting (longer if you enable video), then approve it in Gmail. You typically get most of those 3 hours back, every week.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Microsoft 365 (SharePoint) to store trends and templates.
  • Gmail to handle the approval email loop.
  • OpenAI API key (get it from your OpenAI dashboard).

Skill level: Intermediate. You’ll connect a few accounts, edit variables (ENV_*), and test with a sample webhook request.

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

A webhook kicks things off. You POST a small payload like your use case and whether to include video. That single request becomes the “brief” for the whole run.

SharePoint provides the inputs. The workflow downloads your trends spreadsheet (XLSX) from SharePoint, loads it into n8n, then selects a topic automatically. No tabs. No searching through folders.

AI drafts the content and fits it into your template. GPT-4o generates bilingual newsletter copy based on the chosen trend, and the workflow injects it into your stored HTML template. This is where your consistency comes from, because the structure is controlled.

Gmail handles approval, then storage gets updated. The draft is emailed for review, and the workflow only continues when it’s approved. After approval, it uploads the HTML and any assets (image, plus a video URL if enabled) to your storage provider.

You can easily modify the topic selection logic to prioritize categories, regions, or “highest growth” items based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Webhook Trigger

Set up the workflow entry point so external systems can initiate the content pipeline.

  1. Add and open Incoming Webhook Trigger.
  2. Configure the webhook path, HTTP method, and response settings needed by your client app.
  3. Copy the webhook URL and store it in the service that will send the trigger request.

Use the test webhook URL in development so you can iterate on payload structure without affecting production calls.

Step 2: Set Up Intent & Configuration Preprocessing

This segment extracts intent and prepares configuration before pulling trend data.

  1. Open Determine User Intent and confirm the input mapping from Incoming Webhook Trigger.
  2. Connect OpenAI Chat Engine C as the language model for Determine User Intent. Credential Required: Connect your OpenAI credentials (set these on OpenAI Chat Engine C).
  3. Review Extract Intent Fields to ensure the expected output schema is generated for downstream nodes.
  4. Use Apply Configuration to normalize settings that will feed the trend retrieval branch.

⚠️ Common Pitfall: If OpenAI Chat Engine C has no credentials, Determine User Intent will fail silently in downstream nodes that expect structured output.

Step 3: Connect Trend Data Sources

Retrieve trend data from SharePoint and convert it into a usable sheet.

  1. Open Retrieve Trends XLSX and select the SharePoint site and file path for your trend workbook. Credential Required: Connect your Microsoft SharePoint credentials.
  2. Confirm Load Trend Sheet reads the file output from Retrieve Trends XLSX and parses rows correctly.
  3. Review Choose Trend Topic logic to ensure it selects the right trend record for the newsletter and media prompts.

If your SharePoint file format changes (new columns or headers), update the parsing logic in Load Trend Sheet and selection logic in Choose Trend Topic.

Step 4: Configure AI Content Generation Branches

Choose Trend Topic outputs to both Prepare Newsletter Info and Compose Media Prompt in parallel, creating text content and media prompts simultaneously.

  1. In Prepare Newsletter Info, verify the prompt template uses the selected trend topic.
  2. Connect OpenAI Chat Engine A as the language model for Prepare Newsletter Info. Credential Required: Connect your OpenAI credentials (set these on OpenAI Chat Engine A).
  3. In Compose Media Prompt, validate the prompt structure for image/video generation.
  4. Connect OpenAI Chat Engine B as the language model for Compose Media Prompt. Credential Required: Connect your OpenAI credentials (set these on OpenAI Chat Engine B).
  5. Review Extract Prompt Fields and Extract Text Content to ensure they parse agent outputs correctly for downstream steps.

⚠️ Common Pitfall: AI sub-nodes don’t store credentials—add credentials to OpenAI Chat Engine A, OpenAI Chat Engine B, and OpenAI Chat Engine C, not the agent nodes.

Step 5: Build the Newsletter Assembly Path

This path turns the AI output into a final HTML newsletter and prepares it for approval.

  1. Configure Fetch Newsletter Template to pull the HTML template from SharePoint. Credential Required: Connect your Microsoft SharePoint credentials.
  2. Ensure Extract Text Content outputs the template content expected by Assemble Newsletter.
  3. Validate Assemble Newsletter generates final HTML using the AI content and template.
  4. Review Combine Streams to confirm it merges outputs from media, newsletter HTML, and video assets before approval.

Step 6: Configure Media Asset Generation & File Handling

Generate visual media, convert base64 to files, and route files to downstream services.

  1. Set up Generate Visual Asset to call your image generation endpoint. Credential Required: Connect your HTTP Request credentials or API headers.
  2. In Assign Base64 Value, confirm the response field holding the base64 image is set for conversion.
  3. Base64 to File outputs to both Combine Streams and Send to Download Service in parallel.
  4. Configure Send to Download Service to post the image file where it can be downloaded or processed. Credential Required: Connect your HTTP Request credentials or API headers.

If your image endpoint returns URLs instead of base64, adjust Assign Base64 Value and Base64 to File to match the returned format.

Step 7: Configure Video & Audio Processing Loops

These steps create video, generate audio, and merge assets using wait-and-check loops.

  1. Configure Request FAL Video to submit video generation requests. Credential Required: Connect your HTTP Request credentials or API headers.
  2. Confirm Pause for Video waits long enough for the video to render, then Fetch Video Result retrieves the output. Credential Required: Connect your HTTP Request credentials or API headers.
  3. Use Video Processing Check to loop back to Pause for Video until a completed status is detected, then proceed to audio generation.
  4. Set up Generate Audio Clip, Pause for Audio, and Retrieve Audio Output with your audio endpoint. Credential Required: Connect your HTTP Request credentials or API headers.
  5. Ensure Audio Processing Check loops back to Pause for Audio until audio is ready, then triggers Initiate Merge Task and Hold for Merge.
  6. Configure Retrieve Merged Video to pull the final merged asset once the merge job completes. Credential Required: Connect your HTTP Request credentials or API headers.

⚠️ Common Pitfall: If wait durations are too short, Video Processing Check and Audio Processing Check may loop endlessly. Tune wait intervals based on your API’s typical render times.

Step 8: Route Output, Store Files, and Request Approval

This stage routes assets, uploads files to SharePoint, and sends an approval email.

  1. Confirm Route by Choice routes output to Request FAL Video or directly to Combine Streams based on your selection logic.
  2. Use Verify Approval State to gate file conversion and upload only after approval.
  3. Configure Convert HTML Binary, Convert Image Binary, and Convert Text Binary to format data for file uploads.
  4. Set up Upload HTML File, Upload Image File, and Upload Video Link to store assets in SharePoint. Credential Required: Connect your Microsoft SharePoint credentials.
  5. Configure Email Approval Request to send approval messages. Credential Required: Connect your Gmail credentials.
  6. Check Store Video URL logic to verify it only stores valid video URLs before Convert Text Binary.

Keep approval email subjects and content consistent so reviewers can quickly confirm or reject without confusion.

Step 9: Test and Activate Your Workflow

Run a full end-to-end test to confirm data flows across parallel branches and wait loops.

  1. Click Execute Workflow and send a test request to Incoming Webhook Trigger.
  2. Verify Choose Trend Topic outputs to both Prepare Newsletter Info and Compose Media Prompt in parallel.
  3. Confirm Base64 to File outputs to both Combine Streams and Send to Download Service in parallel.
  4. Check that Email Approval Request is sent and Verify Approval State allows downstream uploads.
  5. When successful, activate the workflow by toggling it to Active for production use.

⚠️ Common Pitfall: If any HTTP endpoints require authentication, missing headers or tokens will cause silent failures. Validate credentials in each HTTP node before activation.

🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • Microsoft SharePoint credentials can expire or need specific permissions. If things break, check the Microsoft 365 connection inside n8n credentials and confirm the folder/file access first.
  • If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
  • Default prompts in AI nodes are generic. Add your brand voice early or you’ll be editing outputs forever.

Frequently Asked Questions

How long does it take to set up this SharePoint Gmail automation?

About 45 minutes if your accounts and template are ready.

Do I need coding skills to automate SharePoint to Gmail approvals?

No. You will mostly connect credentials and edit a few variables. The only “code-like” part is adjusting selection logic if you want a custom topic rule.

Is n8n free to use for this SharePoint Gmail automation 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 and (if enabled) FAL AI video generation costs.

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.

Can I customize this SharePoint Gmail automation workflow for skipping video and using a different storage provider?

Yes, and it’s pretty straightforward. To skip video, set include_video to false in the webhook request and the workflow routes around the FAL video steps using the choice logic (the “Route by Choice” switch and related If checks). To change storage, replace the SharePoint upload nodes (like “Upload HTML File” and “Upload Image File”) with Google Drive, Dropbox, or S3 equivalents. Common tweaks also include changing the topic picker in “Choose Trend Topic” and tightening the brand tone in the “Prepare Newsletter Info” prompt.

Why is my SharePoint connection failing in this workflow?

Usually it’s expired Microsoft 365 credentials or missing SharePoint permissions to the folder where the XLSX and template live. Reconnect the Microsoft account in n8n, then confirm the exact site and path match what the nodes expect. If you recently moved files, that can break it too. Also check whether your tenant requires conditional access, which can block token refresh in automations.

How many newsletter drafts can this SharePoint Gmail automation handle?

Plenty for a normal marketing cadence.

Is this SharePoint Gmail automation better than using Zapier or Make?

For this workflow, n8n is a better fit when you need multi-step branching (video on/off), waits for external processing, and a real approval gate in the middle of the run. Zapier and Make can do parts of it, but the moment you add “download XLSX, select a row, generate content, inject into HTML, optionally render assets, then pause for approval,” costs and complexity climb fast. n8n also gives you the self-host option, which is handy when you’re running frequent drafts. If your goal is just “SharePoint file changed → send email,” then sure, simpler tools are fine. Talk to an automation expert if you want a quick recommendation based on your volume and stack.

Once this is running, the draft shows up ready for a decision, not a rebuild. Honestly, that’s the difference between “we should send a newsletter” and actually sending it.

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