This workflow follows the Google Sheets → HTTP Request 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 →
{
"name": "R25 | The Ultimate Publishing Agent",
"nodes": [
{
"parameters": {
"rule": {
"interval": [
{}
]
}
},
"type": "n8n-nodes-base.scheduleTrigger",
"typeVersion": 1.2,
"position": [
400,
0
],
"id": "d1d8548e-afbf-43e8-acd0-874b932a2ffc",
"name": "Schedule Trigger"
},
{
"parameters": {
"documentId": {
"__rl": true,
"value": "1-Pg0atARGiLZMUmc9rT7xpCxhPesYzYmcGGyp4aYbcE",
"mode": "list",
"cachedResultName": "R24 | Faceless POV Video AI Agent",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1-Pg0atARGiLZMUmc9rT7xpCxhPesYzYmcGGyp4aYbcE/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": "gid=0",
"mode": "list",
"cachedResultName": "Sheet1",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1-Pg0atARGiLZMUmc9rT7xpCxhPesYzYmcGGyp4aYbcE/edit#gid=0"
},
"filtersUI": {
"values": [
{
"lookupColumn": "publishing",
"lookupValue": "for publishing"
}
]
},
"options": {
"returnFirstMatch": true
}
},
"type": "n8n-nodes-base.googleSheets",
"typeVersion": 4.5,
"position": [
520,
0
],
"id": "84ae7366-0198-4ce5-b236-f6dab5fa3480",
"name": "Google Sheets",
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"mode": "raw",
"jsonOutput": "{\n \"instagram\": \"956\",\n \"youtube\": \"218\",\n \"tiktok\": \"1119\",\n \"facebook\": \"1092\",\n \"facebook_page_id\": \"130049253738890\",\n \"threads\": \"284\",\n \"twitter\": \"784\",\n \"linkedin\": \"969\",\n \"pinterest\": \"228\",\n \"pinterest_board_id\": \"1017321072016836595\",\n \"bluesky\": \"166\"\n}\n",
"options": {}
},
"type": "n8n-nodes-base.set",
"typeVersion": 3.4,
"position": [
680,
0
],
"id": "6e4a3604-f38f-4b64-a48b-ecb549ad4361",
"name": "Set Blotato IDs"
},
{
"parameters": {
"method": "POST",
"url": "https://backend.blotato.com/v2/media",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "blotato-api-key",
"value": " "
}
]
},
"sendBody": true,
"bodyParameters": {
"parameters": [
{
"name": "url",
"value": "={{ $('Google Sheets').item.json.final_output }}"
}
]
},
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
840,
0
],
"id": "1c9ec3a8-2043-4e07-aa02-47c4cf537524",
"name": "Ready Video in Blotato"
},
{
"parameters": {
"method": "POST",
"url": "https://backend.blotato.com/v2/posts",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "blotato-api-key",
"value": "your-api-key-here"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={\n \"post\": {\n \"target\": {\n \"targetType\": \"youtube\",\n \"title\": \"{{ $('Google Sheets').item.json.idea }}\",\n \"privacyStatus\": \"unlisted\",\n \"shouldNotifySubscribers\":false\n },\n \"content\": {\n \"text\": \"{{ $('Google Sheets').item.json.caption }}\",\n \"platform\": \"youtube\",\n \"mediaUrls\": [\"{{ $json.url }}\"]\n },\n \"accountId\": \"{{ $('Set Blotato IDs').item.json.youtube }}\"\n }\n}",
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
1200,
-220
],
"id": "31538bb3-6b80-4c17-844d-08b9708b4667",
"name": "\ud83d\udd3aYOUTUBE"
},
{
"parameters": {
"method": "POST",
"url": "https://backend.blotato.com/v2/posts",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "blotato-api-key",
"value": "your-api-key-here"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={\n \"post\": {\n \"target\": {\n \"targetType\": \"instagram\"\n },\n \"content\": {\n \"text\": \"{{ $('Google Sheets').item.json.caption }}\",\n \"platform\": \"instagram\",\n \"mediaUrls\": [\"{{ $json.url }}\"]\n },\n \"accountId\": \"{{ $('Set Blotato IDs').item.json.instagram }}\"\n }\n}\n",
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
1360,
-220
],
"id": "e1930ee7-965d-4e1d-ab50-b62fe4ba2d1d",
"name": "\ud83d\udcf7 INSTAGRAM"
},
{
"parameters": {
"method": "POST",
"url": "https://backend.blotato.com/v2/posts",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "blotato-api-key",
"value": "your-api-key-here"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={\n \"post\": {\n \"target\": {\n \"targetType\": \"tiktok\",\n \"isYourBrand\": false,\n \"disabledDuet\": false,\n \"privacyLevel\": \"PUBLIC_TO_EVERYONE\",\n \"isAiGenerated\": true,\n \"disabledStitch\": false,\n \"disabledComments\": false,\n \"isBrandedContent\": false\n },\n \"content\": {\n \"text\": \"{{ $('Google Sheets').item.json.caption }}\",\n \"platform\": \"tiktok\",\n \"mediaUrls\": [\"{{ $json.url }}\"]\n },\n \"accountId\": \"{{ $('Set Blotato IDs').item.json.tiktok }}\"\n }\n} ",
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
1520,
-220
],
"id": "9f5658b7-22ab-463d-97ca-87d532d951cc",
"name": "\ud83c\udfb5 TIKTOK"
},
{
"parameters": {
"method": "POST",
"url": "https://backend.blotato.com/v2/posts",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "blotato-api-key",
"value": "your-api-key-here"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={\n \"post\": {\n \"target\": {\n \"pageId\": \"{{ $('Set Blotato IDs').item.json.facebook_page_id }}\",\n \"targetType\": \"facebook\"\n },\n \"content\": {\n \"text\": \"{{ $('Google Sheets').item.json.caption }}\",\n \"platform\": \"facebook\",\n \"mediaUrls\": [\"{{ $json.url }}\"]\n },\n \"accountId\": \"{{ $('Set Blotato IDs').item.json.facebook }}\"\n }\n}\n",
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
1200,
0
],
"id": "0b967127-fc12-41a4-bd0c-d1106ade2f3e",
"name": "\ud83d\udcd8 FACEBOOK"
},
{
"parameters": {
"method": "POST",
"url": "https://backend.blotato.com/v2/posts",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "blotato-api-key",
"value": "your-api-key-here"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={\n \"post\": {\n \"target\": {\n \"targetType\": \"threads\"\n },\n \"content\": {\n \"text\": \"{{ $('Google Sheets').item.json.caption }}\",\n \"platform\": \"threads\",\n \"mediaUrls\": [\"{{ $json.url }}\"]\n },\n \"accountId\": \"{{ $('Set Blotato IDs').item.json.threads }}\"\n }\n}\n",
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
1360,
0
],
"id": "63a492fc-4071-4afb-9cfb-b4d20d3ce93b",
"name": "\ud83e\uddf5 THREADS"
},
{
"parameters": {
"method": "POST",
"url": "https://backend.blotato.com/v2/posts",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "blotato-api-key",
"value": "your-api-key-here"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={\n \"post\": {\n \"target\": {\n \"targetType\": \"linkedin\"\n },\n \"content\": {\n \"text\": \"{{ $('Google Sheets').item.json.caption }}\",\n \"platform\": \"linkedin\",\n \"mediaUrls\": [ \"{{ $json.url }}\" ]\n },\n \"accountId\": \"{{ $('Set Blotato IDs').item.json.linkedin }}\"\n }\n}\n",
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
1200,
220
],
"id": "a7d16cf2-d3dd-4a44-9b47-98bc5917773f",
"name": "\ud83d\udc54 LINKEDIN"
},
{
"parameters": {
"method": "POST",
"url": "https://backend.blotato.com/v2/posts",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "blotato-api-key",
"value": "your-api-key-here"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={\n \"post\": {\n \"target\": {\n \"targetType\": \"pinterest\",\n \"boardId\": \"{{ $('Set Blotato IDs').item.json.pinterest_board_id }}\"\n },\n \"content\": {\n \"text\": \"{{ $('Google Sheets').item.json.caption }}\",\n \"platform\": \"pinterest\",\n \"mediaUrls\": [\"{{ $json.url }}\"]\n },\n \"accountId\": \"{{ $('Set Blotato IDs').item.json.pinterest }}\"\n }\n}\n",
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
1360,
220
],
"id": "e38851bb-735e-46e3-bb62-45c3c563cf0e",
"name": "\ud83d\udccd PINTEREST"
},
{
"parameters": {
"method": "POST",
"url": "https://backend.blotato.com/v2/posts",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "blotato-api-key",
"value": "your-api-key-here"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={\n \"post\": {\n \"target\": {\n \"targetType\": \"bluesky\"\n },\n \"content\": {\n \"text\": \"{{ $('Google Sheets').item.json.caption }}\",\n \"platform\": \"bluesky\",\n \"mediaUrls\": [\"{{ $json.url }}\"]\n },\n \"accountId\": \"{{ $('Set Blotato IDs').item.json.bluesky }}\"\n }\n}\n",
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
1520,
220
],
"id": "9c54766a-2728-4075-a96c-a98c87ec1b60",
"name": "\u2601\ufe0f BLUESKY"
},
{
"parameters": {
"method": "POST",
"url": "https://backend.blotato.com/v2/posts",
"sendHeaders": true,
"headerParameters": {
"parameters": [
{
"name": "blotato-api-key",
"value": "your-api-key-here"
}
]
},
"sendBody": true,
"specifyBody": "json",
"jsonBody": "={\n \"post\": {\n \"target\": {\n \"targetType\": \"twitter\"\n },\n \"content\": {\n \"text\": \"{{ $('Google Sheets').item.json.caption }}\",\n \"platform\": \"twitter\",\n \"mediaUrls\": [\"{{ $json.url }}\"]\n },\n \"accountId\": \"{{ $('Set Blotato IDs').item.json.twitter }}\"\n }\n}\n",
"options": {}
},
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 4.2,
"position": [
1520,
0
],
"id": "d28a037e-dd04-4a49-a1fa-0a5f8f520c0e",
"name": "\u2716\ufe0f TWITTER"
},
{
"parameters": {
"operation": "update",
"documentId": {
"__rl": true,
"value": "1-Pg0atARGiLZMUmc9rT7xpCxhPesYzYmcGGyp4aYbcE",
"mode": "list",
"cachedResultName": "R24 | Faceless POV Video AI Agent",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1-Pg0atARGiLZMUmc9rT7xpCxhPesYzYmcGGyp4aYbcE/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": "gid=0",
"mode": "list",
"cachedResultName": "Sheet1",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1-Pg0atARGiLZMUmc9rT7xpCxhPesYzYmcGGyp4aYbcE/edit#gid=0"
},
"columns": {
"mappingMode": "defineBelow",
"value": {
"id": "={{ $('Google Sheets').item.json.id }}",
"publishing": "done"
},
"matchingColumns": [
"id"
],
"schema": [
{
"id": "id",
"displayName": "id",
"required": false,
"defaultMatch": true,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "idea",
"displayName": "idea",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "caption",
"displayName": "caption",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "production",
"displayName": "production",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "environment_prompt",
"displayName": "environment_prompt",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "publishing",
"displayName": "publishing",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "final_output",
"displayName": "final_output",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true
},
{
"id": "row_number",
"displayName": "row_number",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"readOnly": true,
"removed": true
}
],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {}
},
"type": "n8n-nodes-base.googleSheets",
"typeVersion": 4.5,
"position": [
1700,
0
],
"id": "ec5e8a4c-eebc-43c6-87ce-e3cbe8a61796",
"name": "Update Gsheet",
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"content": "image and text only",
"height": 200,
"width": 300,
"color": 7
},
"type": "n8n-nodes-base.stickyNote",
"typeVersion": 1,
"position": [
2140,
240
],
"id": "d92e5636-36ea-4f12-ba35-2913f7ac0c4a",
"name": "Sticky Note2"
}
],
"connections": {
"Schedule Trigger": {
"main": [
[
{
"node": "Google Sheets",
"type": "main",
"index": 0
}
]
]
},
"Google Sheets": {
"main": [
[
{
"node": "Set Blotato IDs",
"type": "main",
"index": 0
}
]
]
},
"Set Blotato IDs": {
"main": [
[
{
"node": "Ready Video in Blotato",
"type": "main",
"index": 0
}
]
]
},
"Ready Video in Blotato": {
"main": [
[
{
"node": "\ud83c\udfb5 TIKTOK",
"type": "main",
"index": 0
},
{
"node": "\ud83d\udd3aYOUTUBE",
"type": "main",
"index": 0
},
{
"node": "Update Gsheet",
"type": "main",
"index": 0
},
{
"node": "\ud83d\udcf7 INSTAGRAM",
"type": "main",
"index": 0
},
{
"node": "\u2716\ufe0f TWITTER",
"type": "main",
"index": 0
},
{
"node": "\ud83d\udcd8 FACEBOOK",
"type": "main",
"index": 0
},
{
"node": "\ud83e\uddf5 THREADS",
"type": "main",
"index": 0
},
{
"node": "\ud83d\udccd PINTEREST",
"type": "main",
"index": 0
},
{
"node": "\u2601\ufe0f BLUESKY",
"type": "main",
"index": 0
},
{
"node": "\ud83d\udc54 LINKEDIN",
"type": "main",
"index": 0
}
]
]
}
},
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "8a21bc70-d4a6-4419-a7f8-d9679c512d77",
"meta": {
"templateCredsSetupCompleted": true
},
"id": "6JEynjk5FcKXqONq",
"tags": []
}
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.
googleSheetsOAuth2Api
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
How this works
This workflow automates the publishing of video content across multiple social platforms, saving hours of manual uploading and ensuring consistent scheduling for creators and marketers. It pulls video details from a Google Sheet, prepares the asset in Blotato for distribution, and then posts directly to YouTube, Instagram, TikTok, and Facebook via API calls. Ideal for content teams managing regular uploads, the key step is the sequenced HTTP requests that handle platform-specific formatting and authentication seamlessly.
Use this workflow for recurring video series where you need reliable, hands-off distribution to social channels without switching apps. Avoid it for one-off posts or platforms requiring complex custom graphics, as it focuses on straightforward video sharing. Common variations include adding email notifications after successful publishes or integrating with a content calendar tool for dynamic scheduling adjustments.
About this workflow
R25 | The Ultimate Publishing Agent. Uses scheduleTrigger, googleSheets, httpRequest, stickyNote. Scheduled trigger; 15 nodes.
Source: https://github.com/Zie619/n8n-workflows — 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.
Linkedin Workflow. Uses httpRequest, googleSheets. Scheduled trigger; 39 nodes.
BSW Growth Agent · Lite (Free Tier). Uses googleSheets, googleDrive, httpRequest, gmail. Scheduled trigger; 21 nodes.
Founder's Discovery Engine. Uses googleSheets, googleDrive, httpRequest, gmail. Scheduled trigger; 21 nodes.
E-Commerce Auto Sync — Shopify ↔ Amazon + Claude Descriptions. Uses shopify, httpRequest, googleSheets. Scheduled trigger; 13 nodes.
This workflow is a plug-and-play customer contact automation system designed for Magento 2 store owners, marketers, and CRM teams. It fetches customer records registered within the last 24 hours (from