n8n
n8n node for social media posting
Our community node, @status200uploads/n8n-nodes-status200uploads, adds a Status 200 Uploads node to n8n: it publishes, schedules, checks and cancels posts, imports media from a URL, and reads your profiles and posts, with your rl_ API key. One node sends one post to one network. n8n verified it on 26 October 2026, so on n8n Cloud an owner or admin adds it from the nodes panel; on self-hosted n8n it installs under Settings, Community Nodes.
- Tested on with self-hosted n8n.
- Checked on
What you need
- Plan
- On every plan, Free included.
- Self-hosted n8n
- n8n 2.x that you run yourself, and an owner or admin of it to install the node (or use n8n Cloud, next). Older n8n versions are not tested.
- Or n8n Cloud
- Instead of self-hosted n8n: n8n verified the node on 26 October 2026. On n8n Cloud, an owner or admin opens the nodes panel (+), searches for Status 200 Uploads and clicks Install; every member can then use it. Our own live test ran on self-hosted n8n (29 September 2026); we have not run it on n8n Cloud ourselves yet.
- The node
- @status200uploads/n8n-nodes-status200uploads, version 0.1.3 on npm (https://www.npmjs.com/package/@status200uploads/n8n-nodes-status200uploads), the version n8n verified. 0.1.3 is not live-tested yet: the live test of 29 September 2026 ran 0.1.0; 0.1.1 and 0.1.3 changed nothing in how the node works, and 0.1.2 moved two fields of Account: Get Posting Options under Options.
- An API key
- An rl_ key from the dashboard, under API (Generate Key), for the "Status 200 Uploads API" credential.
Install the node · Add your key · Add a Post: Create node per network · Follow each post until it is done
Every network you connected
Tested on 29 September 2026 with self-hosted n8n.
How to connect
Install the node
On n8n Cloud, an owner or admin opens the nodes panel, searches for Status 200 Uploads and clicks Install (n8n verified the node on 26 October 2026). On self-hosted n8n, an owner or admin opens Settings, Community Nodes, Install, and enters @status200uploads/n8n-nodes-status200uploads. In queue mode, install it with npm in ~/.n8n/nodes instead, as the node's README says.
Tested on with self-hosted n8n.
Add your key
Create a "Status 200 Uploads API" credential and paste your rl_ key. n8n tests it by reading your profiles; a wrong or revoked key fails there, before any workflow runs.
Tested on with self-hosted n8n.
Add a Post: Create node per network
Pick the account from the list, the platform, the text and the media (Media URLs or File IDs), and the fields the network needs: TikTok Privacy Level (from the account) and YouTube Privacy Status. When is Now, or At a Set Time. To cross-post, use one node per network.
Follow each post until it is done
Post: Get by the answer's status200.post_id, then an IF node on {{ $json.done || $runIndex >= 20 }}, and a Wait node of 30 seconds back to Post: Get. That waits up to 10 minutes and never sends the post twice.
What it can do
| What | Where | Details |
|---|---|---|
| Post: Create | Every network you connected | Publish a post now, schedule it (When: At a Set Time, up to 365 days ahead) or only check it (Check Only (Dry Run)), with an automatic Idempotency-Key. |
| Post: Get, Get Many and Cancel | Every network you connected | Read a post or a scheduled post and how it went, list your posts newest first, and stop a scheduled or queued post that has not gone out. |
| Account: Get Many and Get Posting Options | Every network you connected | List your profiles and their networks, and what a profile may do on each network, such as the TikTok privacy levels and the Pinterest boards. |
| Media: Import From URL and Get | Every network you connected | Import an image or a video from a public URL and wait until it is ready, then pass its file id to Post: Create; Media: Get reads an import. |
| HTTP Request node (any n8n) | Every network you connected | POST https://status200uploads.com/api/v2/posts with the Authorization and Idempotency-Key headers and the post as JSON: the same REST API the node calls, on any n8n. |
A worked example: the same text to X and LinkedIn
The node's README example: a manual trigger and one Post: Create node per network. Import it with n8n's Import from File or paste it on the canvas, pick your account in each node, and run it. The live test sent real X, LinkedIn and Facebook posts this way. X needs the X add-on.
{
"name": "Post the same text to X and LinkedIn",
"nodes": [
{
"parameters": {},
"name": "When clicking Execute workflow",
"type": "n8n-nodes-base.manualTrigger",
"typeVersion": 1,
"position": [0, 0]
},
{
"parameters": {
"account": { "__rl": true, "mode": "list", "value": "" },
"platform": "x",
"text": "Our new guide is out: https://example.com/guide"
},
"name": "Publish to X",
"type": "@status200uploads/n8n-nodes-status200uploads.status200Uploads",
"typeVersion": 1,
"position": [240, -100]
},
{
"parameters": {
"account": { "__rl": true, "mode": "list", "value": "" },
"platform": "linkedin",
"text": "Our new guide is out: https://example.com/guide"
},
"name": "Publish to LinkedIn",
"type": "@status200uploads/n8n-nodes-status200uploads.status200Uploads",
"typeVersion": 1,
"position": [240, 100]
}
],
"connections": {
"When clicking Execute workflow": {
"main": [[
{ "node": "Publish to X", "type": "main", "index": 0 },
{ "node": "Publish to LinkedIn", "type": "main", "index": 0 }
]]
}
}
}Limits and safe retries
One node sends one post to one network from one profile. Posts to the same network are spaced 20 seconds apart by the API, so several nodes on one network wait for each other.
The automatic Idempotency-Key is made from the workflow, the execution, the node, the item and the request: with Retry On Fail on, a retry in the same execution gets the first answer back instead of posting twice. Keep $now and random values out of the node's fields, or each retry is a new post.
With the HTTP Request node, add the Idempotency-Key header yourself (for example {{ $json.id }}-tiktok) before you turn on Retry On Fail (Max Tries 5, Wait Between Tries 5000 ms). Without the header, turn Retry On Fail off.
Reads are limited to 60 a minute per account, all your keys together: one read every 30 seconds per post leaves plenty of room.
A 202 answer is never a failure: the post is on its way, scheduled or queued. Your plan's posts and daily limits apply, and a post over the day's limit is queued for the next day.
Troubleshooting
- The node is not in the list on n8n Cloud.
- Only an owner or admin of the instance can install it: nodes panel, search Status 200 Uploads, Install. If it does not appear at all, the owner turns on Verified community nodes under Instance settings in the n8n Cloud console. Meanwhile the HTTP Request node with the REST API does the same.
- The credential test fails.
- The rl_ key is mistyped or revoked. Copy it again from the dashboard under API, and save the credential again.
- A retry posted twice.
- A field used $now or a random value, so each try was a different request. Work out times in an earlier node and keep the Post: Create fields the same on every try.
- The HTTP Request node answers 422 idempotency_key_reused.
- The same key came with a different body. Keep the body the same on every try, or build the key from something that changes with the post.
- The X node is refused.
- X needs the X add-on on your account. The answer's message and next step say what is missing.
Questions
Yes. n8n verified it on 26 October 2026: an owner or admin adds it from the nodes panel, and every member can then use it. Our own live test ran on self-hosted n8n (29 September 2026); we have not run it on n8n Cloud ourselves yet. Without the node, the HTTP Request node does the same with our REST API.
0.1.3: the newest on npm, and the version n8n verified, which n8n Cloud installs. It is not live-tested yet: our live test ran 0.1.0; 0.1.1 and 0.1.3 changed nothing in how the node works, and 0.1.2 moved two fields of Account: Get Posting Options under Options. On self-hosted n8n 2.x, install it under Settings, Community Nodes, Install.
Yes. The node uses the REST API, which is on every plan, Free included. Your plan's posts and daily limits apply.
No. One node sends one post to one network from one profile. To cross-post, add one Post: Create node per network after the same trigger.
Not with the automatic Idempotency-Key, as long as no field uses $now or a random value: a retry in the same execution gets the first answer back.
Two templates are in the templates folder of our public repository (https://github.com/iBoyDroid/status-200-uploads/tree/main/n8n/templates): one cross-posts text and an image to X, LinkedIn and Facebook, the other posts a short video to TikTok, Instagram Reels and YouTube Shorts and waits until each network is done.