This workflow corresponds to n8n.io template #6255 — we link there as the canonical source.
This workflow follows the Airtable → Chainllm recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"id": "n8J6zsScmXcHxLmk",
"meta": {
"templateCredsSetupCompleted": true
},
"name": "[TEMPLATE] Automated Reddit Discussion Posts",
"tags": [
{
"id": "0IajwbFHtkq5MMtw",
"name": "[TEMPLATE] Automated Reddit Discussion Posts",
"createdAt": "2025-07-22T03:53:08.426Z",
"updatedAt": "2025-07-22T03:53:08.426Z"
}
],
"nodes": [
{
"id": "77505753-0436-4664-9176-8f9455373790",
"name": "Schedule Trigger",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
112,
384
],
"parameters": {
"rule": {
"interval": [
{
"triggerAtHour": 19
}
]
}
},
"typeVersion": 1.2
},
{
"id": "cfdf8308-6d1a-48b2-9fc5-e9342c54edf5",
"name": "OpenAI Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
1312,
592
],
"parameters": {
"model": "gpt-4o",
"options": {}
},
"credentials": {
"openAiApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "6b9ab420-06d1-4a08-970c-5c2ed0369106",
"name": "Aggregate",
"type": "n8n-nodes-base.aggregate",
"position": [
944,
384
],
"parameters": {
"options": {},
"fieldsToAggregate": {
"fieldToAggregate": [
{
"fieldToAggregate": "Copy"
}
]
}
},
"typeVersion": 1
},
{
"id": "aceb63e9-de20-424f-b1ff-5442b670a22e",
"name": "Generate New Discussion",
"type": "@n8n/n8n-nodes-langchain.chainLlm",
"position": [
1312,
384
],
"parameters": {
"text": "=Generate a short open-ended question of the [WEEK/DAY] about [INSERT TOPIC HERE] for the r/[SUBREDDIT NAME HERE] subreddit. ONLY provide the short open-ended question and nothing else in your output. Make sure it isn't any of the following previously used below.\n\n{{ $json.Copy }}",
"promptType": "define"
},
"executeOnce": true,
"typeVersion": 1.4
},
{
"id": "f9c7896d-bd76-4bb1-9df7-6a397527dbad",
"name": "Post Discussion",
"type": "n8n-nodes-base.reddit",
"position": [
1888,
384
],
"parameters": {
"text": "={{ $json.text }}",
"title": "={{ $json.text }}",
"subreddit": "Biohackers"
},
"credentials": {
"redditOAuth2Api": {
"name": "<your credential>"
}
},
"executeOnce": true,
"typeVersion": 1
},
{
"id": "b57f25dc-1010-40b3-aa4c-063cf72fab97",
"name": "Create Archived Discussion",
"type": "n8n-nodes-base.airtable",
"position": [
2336,
384
],
"parameters": {
"base": {
"__rl": true,
"mode": "list",
"value": "app6wzQqegKIJOiOg",
"cachedResultUrl": "https://airtable.com/app6wzQqegKIJOiOg",
"cachedResultName": "[TEMPLATE] Reddit Discussion"
},
"table": {
"__rl": true,
"mode": "list",
"value": "tblri7AaMrd36HwfE",
"cachedResultUrl": "https://airtable.com/app6wzQqegKIJOiOg/tblri7AaMrd36HwfE",
"cachedResultName": "Content"
},
"columns": {
"value": {
"Question": "={{ $('Generate New Discussion').item.json.text }}",
"Subreddit": "r/Example",
"Published Date": "={{ $now }}"
},
"schema": [
{
"id": "Question",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Question",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Subreddit",
"type": "options",
"display": true,
"options": [
{
"name": "r/Example",
"value": "r/Example"
}
],
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Subreddit",
"defaultMatch": false,
"canBeUsedToMatch": true
},
{
"id": "Published Date",
"type": "dateTime",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Published Date",
"defaultMatch": false,
"canBeUsedToMatch": true
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"operation": "create"
},
"credentials": {
"airtableTokenApi": {
"name": "<your credential>"
}
},
"typeVersion": 2.1
},
{
"id": "fb3cfb26-b091-4a54-a1fd-b9da5e9236c5",
"name": "Get Previous Discussions",
"type": "n8n-nodes-base.airtable",
"position": [
512,
384
],
"parameters": {
"base": {
"__rl": true,
"mode": "list",
"value": "app6wzQqegKIJOiOg",
"cachedResultUrl": "https://airtable.com/app6wzQqegKIJOiOg",
"cachedResultName": "[TEMPLATE] Reddit Discussion"
},
"table": {
"__rl": true,
"mode": "list",
"value": "tblri7AaMrd36HwfE",
"cachedResultUrl": "https://airtable.com/app6wzQqegKIJOiOg/tblri7AaMrd36HwfE",
"cachedResultName": "Content"
},
"options": {
"view": {
"__rl": true,
"mode": "list",
"value": "viwkayBLay4AKcrQg",
"cachedResultUrl": "https://airtable.com/app6wzQqegKIJOiOg/tblri7AaMrd36HwfE/viwkayBLay4AKcrQg",
"cachedResultName": "r/Example"
}
},
"operation": "search"
},
"credentials": {
"airtableTokenApi": {
"name": "<your credential>"
}
},
"typeVersion": 2.1
},
{
"id": "35de36f6-49f7-4325-b43a-e66c603df22d",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
48,
176
],
"parameters": {
"color": 7,
"content": "### 1. \ud83d\udcc5 Schedule\n\nSelect when you want to publish a new discussion(daily, weekly, etc)"
},
"typeVersion": 1
},
{
"id": "4b4d96e5-94da-4356-8875-c29597db2d27",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
384,
48
],
"parameters": {
"color": 7,
"width": 352,
"height": 288,
"content": "### 2. \ud83d\udcd5 Get Previous Discussions\n\nThis will receive previously posted questions from a select subreddit.\n\nCreate Airtable Account: https://airtable.com/invite/r/zhjTCrgs\n\nGet Airtable \"Personal Access Token\": https://airtable.com/create/tokens\n\nAirtable Template: https://airtable.com/app6wzQqegKIJOiOg/shrzy7L9yv8BFRQdY"
},
"typeVersion": 1
},
{
"id": "b645f619-dbeb-4e76-a18f-5a22e7d45ffa",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
816,
160
],
"parameters": {
"color": 7,
"width": 352,
"height": 176,
"content": "### 3. \ud83d\udcda Aggregate\n\nThis will take all of the previous questions and set them as one text block, resulting in a single output variable that we will use for ChatGPT.\n\nYou can add a \"Limit\" node before this one to reduce the amount of tokens used by ChatGPT."
},
"typeVersion": 1
},
{
"id": "5ffd936f-edf0-4590-8acc-b1aedd019209",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
1280,
128
],
"parameters": {
"color": 7,
"width": 352,
"height": 208,
"content": "### 4. \ud83e\udeb6 Generate Discussion\n\nThis will generate a new discussion, guided by the system prompt you provide(double click the node below). This will not duplicate recent questions, which we pulled in step 2!\n\nYou need to double-click the node below and set the options(they are in brackets) to your liking."
},
"typeVersion": 1
},
{
"id": "2f6d7078-0881-435f-94f1-2e1e6c916464",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
1744,
-224
],
"parameters": {
"color": 7,
"width": 352,
"height": 560,
"content": "### 5. \ud83d\udd17 Post Discussion\n\nThis will post the discussion question, obtained from step 4(the previous node), to your desired subreddit.\n\n\nConfigure your target subreddit in the node below. Only enter the subreddit name(not the /r).\n\n\nYou can choose between the following post types:\n- Text: This allows you to just specify a post title and/or description. Some subreddit's require a post description. You can use something like \"Curious to hear your thoughts\".\n\n- Image: You can make it so people see an accompanying image to the post, like something that says \"Question of the Day\". Enter the URL where the image is hosted.\n\n- Link: You can make it so people who click on the post are taken to a website of your choice, people will see the website's opengraph thumbnail."
},
"typeVersion": 1
},
{
"id": "f4d54e18-51bf-4a98-a809-a29adad5833e",
"name": "Sticky Note5",
"type": "n8n-nodes-base.stickyNote",
"position": [
2208,
192
],
"parameters": {
"color": 7,
"width": 352,
"height": 144,
"content": "### 6. \ud83d\uddc3\ufe0f Store Discussion in Archive\n\nThis will store the discussion question we just posted(from step 5) into our Airtable base. This is used to prevent ChatGPT from using the same discussion question in its output."
},
"typeVersion": 1
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "de199832-a3ba-4f73-8d30-13f309c0e8cc",
"connections": {
"Aggregate": {
"main": [
[
{
"node": "Generate New Discussion",
"type": "main",
"index": 0
}
]
]
},
"Post Discussion": {
"main": [
[
{
"node": "Create Archived Discussion",
"type": "main",
"index": 0
}
]
]
},
"Schedule Trigger": {
"main": [
[
{
"node": "Get Previous Discussions",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "Generate New Discussion",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"Generate New Discussion": {
"main": [
[
{
"node": "Post Discussion",
"type": "main",
"index": 0
}
]
]
},
"Get Previous Discussions": {
"main": [
[
{
"node": "Aggregate",
"type": "main",
"index": 0
}
]
]
},
"Create Archived Discussion": {
"main": [
[]
]
}
}
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
airtableTokenApiopenAiApiredditOAuth2Api
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
A "Schedule Trigger" node activates the automation at a defined schedule. An "Airtable" node will search for previously posted questions in your question database. Airtable Base Template: here An "Aggregate" node will take all the questions from Airtable and compress them to a…
Source: https://n8n.io/workflows/6255/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
This n8n-powered workflow automates the entire lifecycle of real estate lead intake, qualification, routing, assignment, and reporting across multiple channels. It brings WhatsApp inquiries and websit
Never worry about losing your n8n workflows again. This template provides a powerful, automated backup system that gives you the peace of mind of version control without the complexity of Git.
Automatically monitor LinkedIn posts from your community members and create AI-powered content digests for efficient social media curation.
This workflow is for community builders, marketers, consultants, coaches, and thought leaders who want to grow their presence in Skool communities through strategic, value-driven engagement. It's espe
⚠️ DISCLAIMER: This workflow uses the AnySite LinkedIn community node, which is only available on self-hosted n8n instances. It will not work on n8n.cloud.