AI-generated LinkedIn posts with OpenAI, Google Sheets & email approval workflow
Ready for 3.0Ready for 3.0. This template uses no nodes that n8n 3.0 removes. No removed nodes, versions or helpers found. Static check, last run 2026-10-19.
Nodes used (10)
- HTTP Request
n8n-nodes-base.httpRequest - Schedule Trigger
n8n-nodes-base.scheduleTrigger - OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi - Google Sheets
n8n-nodes-base.googleSheets - Basic LLM Chain
@n8n/n8n-nodes-langchain.chainLlm - Edit Fields (Set)
n8n-nodes-base.set - Gmail
n8n-nodes-base.gmail - Switch
n8n-nodes-base.switch - If
n8n-nodes-base.if - LinkedIn
n8n-nodes-base.linkedIn
What it does
How it works This workflow automates the process of creating, approving, and optionally posting LinkedIn content from a Google Sheet. Here's a high-level overview: 1. Scheduled Trigger: Runs automatically based on your defined time interval (daily, weekly, etc.). 2. Fetch Data from Google Sheets: Pulls the first row from your sheet where Status is marked as Pending. 3. Generate LinkedIn Post Content: Uses OpenAI to create a professional LinkedIn post using the Post Description and Instructions from the sheet. 4. Format & Prepare Data: Formats the generated content along with the original instruction and post description for email. 5. Send for Approval: Sends an email to a predefined user (e.g., marketing team) with a custom form for approval, including a dropdown to accept/reject and an optional field for edits. 6. (Optional) Image Fetch: Downloads an image from a URL (if provided in the sheet) for future use in post visuals. Set up steps You’ll need the following before you start: - A Google Sheet with the following columns: Post Description, Instructions, Image (URL), Status - Access to an OpenAI API key - A connected Gmail account for sending approval emails - Your own Google Sheets and Gmail credentials added in n8n Steps: 1. Google Sheet Preparation: Create a new Google Sheet with the mentioned columns (Post Description, Instructions, Image, Status, Output, Post Link). Add a row with test data and set Status to Pending. 2. Credentials: In n8n, create OAuth2 credentials for: a. Google Sheets b. Gmail c. OpenAI (API Key) Assign these credentials to the respective nodes in the JSON. 3. OpenAI Model: Choose a model like gpt-4o-mini (used here) or any other available in your plan. Adjust the prompt in the "Generate Post Content" node if needed. 4. Email Configuration: In the Gmail node, set the recipient email to your own or your team’s address. Customize the email message template if necessary. 5. Schedule the Workflow: Set the trigger interval (e.g., every morning at 9 AM). 6. Testing: Run the workflow manually first to confirm everything works. Check Gmail for the approval form, respond, and verify the results.