Skip to main content

Auto-post X videos with OpenRouter AI captions & Google Sheets deduplication

Workflow preview

Workflow preview
100%
Auto-post X videos with OpenRouter AI captions & Google Sheets deduplication preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

Who’s it for Marketers, creators, and social managers who want hands off reposting of a specific X (Twitter) user’s videos — with on brand AI captions and clean, deduplicated logs. What it does / H...

Best for

  • Social Media automation workflows
  • AI Chatbot automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.scheduletrigger, n8n-nodes-base.httprequest, n8n-nodes-base.code, n8n-nodes-base.googlesheets, n8n-nodes-base.set, n8n-nodes-base.if, @n8n/n8n-nodes-langchain.agent, n8n-nodes-base.twitter

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by masaya kawabe.

Original n8n.io source

1.1 Workflow description

Title
Auto-post X videos with OpenRouter AI captions & Google Sheets deduplication
Workflow name
Auto-post X videos with OpenRouter AI captions & Google Sheets deduplication

Who’s it for

Marketers, creators, and social managers who want hands-off reposting of a specific X (Twitter) user’s videos — with on-brand AI captions and clean, deduplicated logs.

What it does / How it works

On a schedule, the workflow resolves a target user, fetches recent tweets with media, filters to video posts, and writes them to Google Sheets for tracking and dedupe. It then builds a shareable video URL, generates a short caption via an AI model (OpenRouter), posts to your X account, and updates the sheet with completion status. Sticky notes inside the workflow explain each step, setup tasks, and best practices.

How to set up

Add credentials: Twitter (X) OAuth2, Google Sheets OAuth2, OpenRouter.

Replace the demo Google Sheet with your own (document ID & sheet name).

Set the target X username (or parameterize it).

Adjust the schedule (interval/cron) and run a test execution.

Verify logs and posting format, then enable.

Requirements

Twitter (X) OAuth2 credential

Google Sheets OAuth2 credential

OpenRouter credential (choose an affordable model)

How to customize

Edit the caption prompt (tone, hashtags count, CTAs, compliance lines).

Add filters (language, min/max tweet age, exclude replies/retweets, since_id).

Extend logging (timestamps, posted text, account, errors).

Introduce a dry-run boolean to skip posting while testing.

Swap the caption model or add retry rules for robustness.

Security: Don’t hardcode tokens in HTTP nodes. Use n8n Credentials only and remove personal IDs before publishing.

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Schedule Trigger

Type / Role
n8n-nodes-base.scheduleTrigger - scheduleTrigger
Config choices
Version 1.2

Block 2 - Get User ID

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 3 - Get Tweets with Videos

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 4 - Filter Video Tweets

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 5 - Check Existing URLs

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.5

Block 6 - Edit Fields

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3.4

Block 7 - Append or update row in sheet

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.7

Block 8 - Check New Videos

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2

Block 9 - Generate Tweet Text

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 2

Block 10 - Post to X

Type / Role
n8n-nodes-base.twitter - twitter
Config choices
Version 2

Block 11 - Update Spreadsheet

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.5

Block 12 - OpenRouter Chat Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatOpenRouter - lmChatOpenRouter
Config choices
Version 1

Block 13 - 🟨 Sticky: Overview

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 14 - Sticky: Schedule Trigger

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 15 - Sticky: Get User ID

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 16 - Sticky: Get Tweets with Videos

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 17 - Sticky: Filter Video Tweets

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 18 - Sticky: Check Existing URLs

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 19 - Sticky: Edit Fields

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 20 - Sticky: Append/Update (setURL)

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 21 - Sticky: Check New Videos

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 22 - Sticky: OpenRouter Chat Model

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 23 - Sticky: Generate Tweet Text

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 24 - Sticky: Post to X

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Showing the first 24 of 25 workflow blocks. Download the JSON for the full node graph.

3. Summary Table

Workflow Auto-post X videos with OpenRouter AI captions & Google Sheets deduplication
Complexity advanced
Nodes 25
Categories Social Media, AI Chatbot
Author masaya kawabe
Published 16 Oct 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/9748/9748.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Auto-post X videos with OpenRouter AI captions & Google Sheets deduplication do?

Who’s it for Marketers, creators, and social managers who want hands off reposting of a specific X (Twitter) user’s videos — with on brand AI captions and clean, deduplicated logs. What it does / H...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Social Media, AI Chatbot use case.