{
  "id": 4766,
  "name": "Automate LinkedIn posts with Claude AI, DALL-E images & Google Sheets approval",
  "description": "**How it works**\n\nThis workflow automates your entire LinkedIn content strategy, from ideation to publishing.\n\n* **Daily Idea Generation:** Every day, the workflow uses an advanced AI agent (Anthropic's Claude model) to generate a new, viral-optimized LinkedIn post idea, complete with a title, full text, and a detailed image description. It analyzes your past posts from a Google Sheet to ensure content is fresh and aligns with one of your four content pillars: timeless principles, case studies, growth hacks, or controversial ads.\n* **AI Image Creation:** It then uses OpenAI's DALL-E to create a custom, high-quality image based on the generated description and a style reference image you provide, ensuring brand consistency.\n* **Review & Approval Workflow:** The generated post and its accompanying image are automatically saved as a new row in a Google Sheet, marked with a \"review\" status. This gives you full editorial control.\n* **Automated Publishing:** Once you approve a post by changing its status to \"ready\" in the Google Sheet, a separate part of the workflow picks it up and automatically publishes it to your LinkedIn profile at a scheduled time.\n* **Status Tracking:** After publishing, the workflow updates the status in your Google Sheet to \"posted,\" so you always have a clear overview of your content pipeline.\n\n**Set up steps**\n\nThis workflow integrates several services. Follow these steps to get it running:\n\n1.  **Copy the Google Sheet:** Make a copy of the [AI Posts Content Machine Google Sheet template](https://docs.google.com/spreadsheets/d/1-F3ZioIs3oWOKMyDPMuquaH-qiuaZs6qdZXP-yNeRbs/edit?usp=sharing) and select your copy in the `Get Past Ideas`, `Save Post`, `Get Ready Posts`, and `Update Status` nodes.\n2.  **Set Up Credentials:** You will need to create and add API credentials for the following services within the corresponding n8n nodes:\n    * **Google Sheets & Google Drive:** Create a Google credential.\n    * **Anthropic:** Add your API key in the `Anthropic Chat Model` node.\n    * **OpenAI:** Add your API key as a Header Auth credential in the `OpenAI Image` node.\n    * **Perplexity AI:** Add your API key as a Header Auth credential inside the `Perplexity Research` sub-workflow.\n    * **LinkedIn:** Create a LinkedIn credential.\n3.  **Customize Your Content:**\n    * In the `Idea Generator` node, adjust the system prompt to reflect your specific audience, topics, and content style.\n    * Create a folder in Google Drive for your post images. Add a reference image to this folder that defines your desired visual style.\n    * Paste the shareable link to your style reference image into the `Image Style` node.\n4.  **Activate the Workflow:** Enable the workflow to start the automated content creation and publishing process.",
  "categories": [
    {
      "id": 31,
      "name": "Content Creation"
    },
    {
      "id": 51,
      "name": "Multimodal AI"
    }
  ],
  "totalViews": 3648,
  "createdAt": "2025-06-07T18:34:34.273Z",
  "workflow": {
    "meta": {
      "instanceId": "ba46fb650f86474799bdce64bc1a1b13792a092ea60f04bd2b668778ec59d1af",
      "templateCredsSetupCompleted": true
    },
    "nodes": [
      {
        "id": "1a11e25a-ea01-4adb-a337-3f9a4a79ea64",
        "name": "Idea Generator",
        "type": "@n8n/n8n-nodes-langchain.agent",
        "position": [
          1740,
          340
        ],
        "parameters": {},
        "retryOnFail": true,
        "typeVersion": 1.7
      },
      {
        "id": "9aa904db-7895-4832-b5c8-eb1d9c90eedd",
        "name": "Sticky Note7",
        "type": "n8n-nodes-base.stickyNote",
        "position": [
          1120,
          240
        ],
        "parameters": {
          "content": ""
        },
        "typeVersion": 1
      },
      {
        "id": "d7935948-a3a3-45e7-ac8e-561bd6ec5498",
        "name": "Sticky Note8",
        "type": "n8n-nodes-base.stickyNote",
        "position": [
          2120,
          240
        ],
        "parameters": {
          "content": ""
        },
        "typeVersion": 1
      },
      {
        "id": "bea82c2c-91ed-4e2c-8c1e-0cf43b4d0c3f",
        "name": "Structured Output Parser",
        "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
        "position": [
          1940,
          540
        ],
        "parameters": {},
        "typeVersion": 1.2
      },
      {
        "id": "276bffe0-5a03-40ae-aead-29a673c9035d",
        "name": "Anthropic Chat Model",
        "type": "@n8n/n8n-nodes-langchain.lmChatAnthropic",
        "position": [
          1600,
          540
        ],
        "parameters": {},
        "typeVersion": 1.3
      },
      {
        "id": "e35964d1-637e-48a9-95b7-054ee7a5fa7d",
        "name": "Convert to File",
        "type": "n8n-nodes-base.convertToFile",
        "position": [
          2600,
          420
        ],
        "parameters": {},
        "typeVersion": 1.1
      },
      {
        "id": "10eec8ac-01de-4087-810d-0135161cead2",
        "name": "Schedule",
        "type": "n8n-nodes-base.scheduleTrigger",
        "position": [
          1200,
          340
        ],
        "parameters": {},
        "typeVersion": 1.2
      },
      {
        "id": "d7cc1ac4-325f-4e92-b42b-b041a12e8ca0",
        "name": "Join Ideas",
        "type": "n8n-nodes-base.code",
        "position": [
          1560,
          340
        ],
        "parameters": {},
        "typeVersion": 2
      },
      {
        "id": "56f96df4-d046-4d39-a98f-b7765e1ab4e3",
        "name": "Pick One",
        "type": "n8n-nodes-base.limit",
        "position": [
          1560,
          840
        ],
        "parameters": {},
        "typeVersion": 1
      },
      {
        "id": "1fc65864-7215-4d74-a312-d324b9143c2b",
        "name": "Sticky Note1",
        "type": "n8n-nodes-base.stickyNote",
        "position": [
          1120,
          740
        ],
        "parameters": {
          "content": ""
        },
        "typeVersion": 1
      },
      {
        "id": "c4388b53-6f36-45f3-826c-c54e0c01dd08",
        "name": "X",
        "type": "n8n-nodes-base.twitter",
        "disabled": true,
        "position": [
          1780,
          1120
        ],
        "parameters": {},
        "typeVersion": 2
      },
      {
        "id": "c7d40512-ea04-4302-b5fa-bbaaac674109",
        "name": "Prepare Data for Instagram API",
        "type": "n8n-nodes-base.set",
        "disabled": true,
        "position": [
          2040,
          1120
        ],
        "parameters": {},
        "typeVersion": 3.4
      },
      {
        "id": "39a9a9e4-04da-4953-a53e-c0f652749fcb",
        "name": "Create Instagram Media Container",
        "type": "n8n-nodes-base.facebookGraphApi",
        "disabled": true,
        "position": [
          2220,
          1120
        ],
        "parameters": {},
        "typeVersion": 1
      },
      {
        "id": "0e8c9d4e-9fc9-4894-8046-66ac07c28a7c",
        "name": "Wait for Container Processing",
        "type": "n8n-nodes-base.wait",
        "disabled": true,
        "position": [
          2420,
          1120
        ],
        "webhookId": "1b14c8bf-151a-4054-8215-093dd5b6cbcc",
        "parameters": {},
        "typeVersion": 1.1
      },
      {
        "id": "2e5993a3-252f-4335-b1f7-6ba37fa9988a",
        "name": "Publish Post to Instagram",
        "type": "n8n-nodes-base.facebookGraphApi",
        "disabled": true,
        "position": [
          2620,
          1120
        ],
        "parameters": {},
        "typeVersion": 1
      },
      {
        "id": "033dfb23-5e51-4a79-a6e4-f15d9497f0f1",
        "name": "Sticky Note",
        "type": "n8n-nodes-base.stickyNote",
        "position": [
          1720,
          1060
        ],
        "parameters": {
          "content": ""
        },
        "typeVersion": 1
      },
      {
        "id": "e01b66e9-2759-4509-aded-4028c07c4040",
        "name": "Sticky Note6",
        "type": "n8n-nodes-base.stickyNote",
        "position": [
          380,
          240
        ],
        "parameters": {
          "content": ""
        },
        "typeVersion": 1
      },
      {
        "id": "8eb257ac-92f4-4ba9-93cd-4dac96b0e454",
        "name": "OpenAI Image",
        "type": "n8n-nodes-base.httpRequest",
        "position": [
          2400,
          420
        ],
        "parameters": {},
        "typeVersion": 4.2
      },
      {
        "id": "cb8ed234-9678-46f7-982e-a1fb2b94ed11",
        "name": "Image Style",
        "type": "n8n-nodes-base.googleDrive",
        "position": [
          2180,
          420
        ],
        "parameters": {},
        "typeVersion": 3
      },
      {
        "id": "b92bd35a-61e0-48bf-b092-64de27ecb737",
        "name": "Get Past Ideas",
        "type": "n8n-nodes-base.googleSheets",
        "position": [
          1380,
          340
        ],
        "parameters": {},
        "typeVersion": 4.5,
        "alwaysOutputData": true
      },
      {
        "id": "84da84a9-f8e5-4e9f-be10-e1b938c5380f",
        "name": "Save Image",
        "type": "n8n-nodes-base.googleDrive",
        "position": [
          2820,
          420
        ],
        "parameters": {},
        "typeVersion": 3
      },
      {
        "id": "3441c86d-3465-447d-af1c-65bf945d6629",
        "name": "Save Post",
        "type": "n8n-nodes-base.googleSheets",
        "position": [
          3020,
          420
        ],
        "parameters": {},
        "typeVersion": 4.5
      },
      {
        "id": "d3421c14-3d77-4074-b3f4-87a2beb83ccd",
        "name": "Schedule 2",
        "type": "n8n-nodes-base.scheduleTrigger",
        "position": [
          1200,
          840
        ],
        "parameters": {},
        "typeVersion": 1.2
      },
      {
        "id": "88aff01a-fedd-465f-987c-1079513871a0",
        "name": "Get Ready Posts",
        "type": "n8n-nodes-base.googleSheets",
        "position": [
          1380,
          840
        ],
        "parameters": {},
        "typeVersion": 4.5
      },
      {
        "id": "797d6646-ff58-4826-a7fd-c474d323e627",
        "name": "Download Image",
        "type": "n8n-nodes-base.googleDrive",
        "position": [
          1760,
          840
        ],
        "parameters": {},
        "typeVersion": 3
      },
      {
        "id": "7fcb5702-0c96-4510-aca8-59eed1bcd095",
        "name": "Publish Post",
        "type": "n8n-nodes-base.linkedIn",
        "position": [
          1960,
          840
        ],
        "parameters": {},
        "typeVersion": 1
      },
      {
        "id": "b211beb9-55a0-4650-b6e2-873e31159f65",
        "name": "Update Status",
        "type": "n8n-nodes-base.googleSheets",
        "position": [
          2160,
          840
        ],
        "parameters": {},
        "typeVersion": 4.5
      },
      {
        "id": "e903c168-b507-4e12-82e0-00519ac7c2fb",
        "name": "Perplexity",
        "type": "n8n-nodes-base.perplexityTool",
        "position": [
          1800,
          560
        ],
        "parameters": {},
        "typeVersion": 1
      }
    ],
    "pinData": {},
    "connections": {
      "Pick One": {
        "main": [
          [
            {
              "node": "Download Image",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "Schedule": {
        "main": [
          [
            {
              "node": "Get Past Ideas",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "Join Ideas": {
        "main": [
          [
            {
              "node": "Idea Generator",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "Perplexity": {
        "ai_tool": [
          [
            {
              "node": "Idea Generator",
              "type": "ai_tool",
              "index": 0
            }
          ]
        ]
      },
      "Save Image": {
        "main": [
          [
            {
              "node": "Save Post",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "Schedule 2": {
        "main": [
          [
            {
              "node": "Get Ready Posts",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "Image Style": {
        "main": [
          [
            {
              "node": "OpenAI Image",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "OpenAI Image": {
        "main": [
          [
            {
              "node": "Convert to File",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "Publish Post": {
        "main": [
          [
            {
              "node": "Update Status",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "Download Image": {
        "main": [
          [
            {
              "node": "Publish Post",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "Get Past Ideas": {
        "main": [
          [
            {
              "node": "Join Ideas",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "Idea Generator": {
        "main": [
          [
            {
              "node": "Image Style",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "Convert to File": {
        "main": [
          [
            {
              "node": "Save Image",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "Get Ready Posts": {
        "main": [
          [
            {
              "node": "Pick One",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "Anthropic Chat Model": {
        "ai_languageModel": [
          [
            {
              "node": "Idea Generator",
              "type": "ai_languageModel",
              "index": 0
            }
          ]
        ]
      },
      "Structured Output Parser": {
        "ai_outputParser": [
          [
            {
              "node": "Idea Generator",
              "type": "ai_outputParser",
              "index": 0
            }
          ]
        ]
      },
      "Wait for Container Processing": {
        "main": [
          [
            {
              "node": "Publish Post to Instagram",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "Prepare Data for Instagram API": {
        "main": [
          [
            {
              "node": "Create Instagram Media Container",
              "type": "main",
              "index": 0
            }
          ]
        ]
      },
      "Create Instagram Media Container": {
        "main": [
          [
            {
              "node": "Wait for Container Processing",
              "type": "main",
              "index": 0
            }
          ]
        ]
      }
    }
  },
  "workflowInfo": {
    "nodeCount": 28,
    "nodeTypes": {
      "n8n-nodes-base.set": {
        "count": 1
      },
      "n8n-nodes-base.code": {
        "count": 1
      },
      "n8n-nodes-base.wait": {
        "count": 1
      },
      "n8n-nodes-base.limit": {
        "count": 1
      },
      "n8n-nodes-base.twitter": {
        "count": 1
      },
      "n8n-nodes-base.linkedIn": {
        "count": 1
      },
      "n8n-nodes-base.stickyNote": {
        "count": 5
      },
      "n8n-nodes-base.googleDrive": {
        "count": 3
      },
      "n8n-nodes-base.httpRequest": {
        "count": 1
      },
      "n8n-nodes-base.googleSheets": {
        "count": 4
      },
      "n8n-nodes-base.convertToFile": {
        "count": 1
      },
      "n8n-nodes-base.perplexityTool": {
        "count": 1
      },
      "@n8n/n8n-nodes-langchain.agent": {
        "count": 1
      },
      "n8n-nodes-base.scheduleTrigger": {
        "count": 2
      },
      "n8n-nodes-base.facebookGraphApi": {
        "count": 2
      },
      "@n8n/n8n-nodes-langchain.lmChatAnthropic": {
        "count": 1
      },
      "@n8n/n8n-nodes-langchain.outputParserStructured": {
        "count": 1
      }
    }
  },
  "nodes": [
    "Idea Generator",
    "Sticky Note7",
    "Sticky Note8",
    "Structured Output Parser",
    "Anthropic Chat Model",
    "Convert to File",
    "Schedule",
    "Join Ideas",
    "Pick One",
    "Sticky Note1",
    "X",
    "Prepare Data for Instagram API",
    "Create Instagram Media Container",
    "Wait for Container Processing",
    "Publish Post to Instagram",
    "Sticky Note",
    "Sticky Note6",
    "OpenAI Image",
    "Image Style",
    "Get Past Ideas",
    "Save Image",
    "Save Post",
    "Schedule 2",
    "Get Ready Posts",
    "Download Image",
    "Publish Post",
    "Update Status",
    "Perplexity"
  ],
  "nodeTypes": [
    "@n8n/n8n-nodes-langchain.agent",
    "n8n-nodes-base.httpRequest",
    "n8n-nodes-base.code",
    "n8n-nodes-base.limit",
    "n8n-nodes-base.twitter",
    "n8n-nodes-base.facebookGraphApi",
    "n8n-nodes-base.convertToFile",
    "n8n-nodes-base.wait",
    "n8n-nodes-base.linkedIn",
    "n8n-nodes-base.stickyNote",
    "@n8n/n8n-nodes-langchain.lmChatAnthropic",
    "n8n-nodes-base.scheduleTrigger",
    "n8n-nodes-base.set",
    "n8n-nodes-base.googleSheets",
    "n8n-nodes-base.perplexityTool",
    "@n8n/n8n-nodes-langchain.outputParserStructured",
    "n8n-nodes-base.googleDrive"
  ]
}