AI-Generated LinkedIn Posts with OpenAI, Google Sheets, & Email Approval Workflow
### 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.
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:
- Scheduled Trigger: Runs automatically based on your defined time interval (daily, weekly, etc.).
- Fetch Data from Google Sheets: Pulls the first row from your sheet where Status is marked as Pending.
- Generate LinkedIn Post Content: Uses OpenAI to create a professional LinkedIn post using the Post Description and Instructions from the sheet.
- Format & Prepare Data: Formats the generated content along with the original instruction and post description for email.
- 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.
- (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:
-
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.
-
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.
-
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.
-
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.
-
Schedule the Workflow:
- Set the trigger interval (e.g., every morning at 9 AM).
-
Testing:
- Run the workflow manually first to confirm everything works.
- Check Gmail for the approval form, respond, and verify the results.
New buyers can create an account from the cart to unlock a controlled $10 first-purchase credit on eligible orders of $25+.
Related bundle
Lead Generation Machine
8 hand-picked workflows for $49.00.
That is $6.13 each, vs $14.99 for this one alone.
View bundleSecure checkout powered by Stripe
Support
How to import this workflow into n8n
- 1Purchase or download the workflow to get the n8n workflow JSON file.
- 2In your n8n instance, open Workflows and choose "Import from File" (or paste the JSON with Ctrl+V on the canvas).
- 3Open each node marked with a credential warning and connect your own accounts and API keys.
- 4Run the workflow once manually to verify the data flow, then toggle it to Active.
Related Marketing workflows
- Automate UGC Video Creation and Instagram Posting with Google Gemini and Veo 3$9.99
- Automate Lead Generation and Cold Email Outreach$14.99
- Automate Professional Video Ad Creation from Product Images$19.99
- Track SEO Keyword Rankings with Bright Data MCP and GPT-4o AI Analysis$14.99
- Automate Google Maps Data Scraping and Email Discovery for Local Business Outreach$14.99
- Automate AI-Driven Social Media Content for Auto Services$19.99
Need this deployed? We'll set it up for you.
Our automation experts deploy this workflow in your stack, connect your accounts, and verify it works — or build a custom solution from scratch.