How to post to Facebook from n8n
n8n-nodes-postwire) with Networks set to Facebook, or send one HTTP Request to https://postwire.io/api/post: it publishes text, a photo or a video to your Facebook Page with a PostWire API key, so the workflow needs no Meta developer app. The node can write the post for you — short, with the hook in the first 125 characters — and the HTTP Request also publishes Reels and Stories. n8n's built-in route is the Facebook Graph API node: a generic GET / POST / DELETE request whose credential asks for a Meta for Developers account and a Meta app of your own.Typical trigger: a new product in your store, a new article in an RSS feed, an approved row in a sheet. The same node sends that news to Instagram, LinkedIn or Telegram in the same step, each with its own text.
Updated . Written from PostWire's own code; vendor prices read on Oct 12, 2026. Live networks: TikTok, Instagram, YouTube, LinkedIn (personal profiles), Facebook Pages, Bluesky, Mastodon, Telegram, Discord, and X on paid plans.
Step by step
- Create a free PostWire account
Open postwire.io/dashboard.html, type your email and press Create my free account. PostWire emails you a link to confirm the address; connecting accounts and publishing unlock once it is confirmed. No password and no card (free plan: 1 business, 20 posts a month, 5 AI drafts a day (about 20 a month), 2 networks per post, 3 scheduled posts at a time — every network connects free, no card).
- Connect your Facebook Page
In the dashboard open Accounts and press Connect on Facebook. Facebook shows "Continue as <your name>", then asks which Pages PostWire may use: tick the Page you want to post to and press Save. Pages you manage directly and Pages inside a Business Portfolio both appear. PostWire never sees your Facebook password.
- Copy your API key
In the dashboard, open API & MCP and press Copy key on the API key card. It is sent as
Authorization: Bearer pw_live_…(theX-API-Keyheader also works). Keep it server-side. - Install the node (self-hosted n8n)
In n8n: Settings → Community nodes → Install, enter
n8n-nodes-postwire, and add a PostWire API credential with the key. The node is not verified by n8n yet, so it installs on self-hosted n8n; on n8n Cloud use the HTTP Request in step 6. - Configure Post → Publish
Networks: Facebook. Content: Smart Distribute: Write a Native Post per Network, with the Idea from the previous node (e.g.
{{ $json.title }} — {{ $json.url }}). Media: None for a text post, or URL / Binary File for a photo or a video (Media Type: Detect Automatically). The Facebook draft is short — 40 to 80 characters when the idea allows, under 250 otherwise — with the hook in the first 125 characters, where the mobile feed cuts, and 1 to 3 hashtags; a link can stay in the body. To send your own words, set Content to Same Text on Every Network. Under Options, Dry Run checks everything without publishing. - On n8n Cloud, or for a Reel or a Story: one HTTP Request node
POST to the REST API with header
Authorization: Bearer pw_live_….options.facebook.post_typepicks the format:feed(the default),reels(needs a video) orstory(a photo or a video):POST https://postwire.io/api/post Authorization: Bearer pw_live_… Content-Type: application/json // A photo post on the Page, the text as its caption { "platforms": ["facebook"], "text": "{{ $json.post }}", "photo_url": "{{ $json.image }}", "idempotency_key": "{{ $json.id }}" } // A Reel { "platforms": ["facebook"], "text": "Saturday's open day in 20 seconds.", "video_url": "https://…/open-day.mp4", "options": { "facebook": { "post_type": "reels" } } } - Read the result, or schedule it
A feed post returns its id and its link,
https://facebook.com/…. A Reel answersprocessing, because Facebook processes the video after it receives it. To publish later, use Post → Schedule with When: At a Specific Time or In the Next Free Queue Slot. To react when a post lands, start a second workflow with the PostWire Trigger node (Post Published, Post Failed).
A retry with the same Idempotency Key is refused for 24 hours, so a re-run never posts twice; with Smart Distribute the node sets one per execution. Connection → Check Health in a weekly workflow tells you when Facebook needs a new sign-in, before a scheduled post is due.
Three ways to post to Facebook from n8n
n8n's own documentation and each vendor's page, read on Oct 12, 2026.
| Route | Meta app of your own | Writes the post | Free to start |
|---|---|---|---|
| PostWire | No — a PostWire API key | Yes — Smart Distribute | Free plan: 20 posts a month |
| n8n's Facebook Graph API node | Yes — a Meta for Developers account and a Meta app | No — you build the request | Part of n8n |
| Upload-Post (HTTP Request) | No — an Upload-Post API key | Not listed on its page | Free plan: 2 profiles, 10 uploads a month |
Checked on Oct 12, 2026 (2026-10-12) on each vendor's own pricing or docs page, linked in the first column and below. Monthly billing in USD unless noted. "Not listed" means we could not find it on their page, not that it is missing.
Where PostWire is ahead
- No Meta app to create. n8n's credential guide for its Facebook Graph API node starts with a Meta for Developers account and a Meta app.
- A node with a Facebook option, not a raw request: you pick Facebook under Networks. n8n's Facebook Graph API node takes the host, the method, the node and the edge of a Graph API call.
- The post is written in the node, for Facebook: short, hook in the first 125 characters, 1 to 3 hashtags.
- Reels and Stories from the same API, with one field,
post_type. - 20 posts a month on the free plan. Upload-Post's free plan has 10 uploads a month.
- Nine more networks from the same node, each with its own version of the news: TikTok, Instagram, YouTube, LinkedIn, Bluesky, Mastodon, Telegram, Discord, and X on paid plans.
- n8n docs — Facebook Graph API node (operations GET, POST, DELETE; Host URL, Graph API Version, Node, Edge, Send Binary File): docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.facebookgraphapi/
- n8n docs — Facebook Graph API credentials ("you'll need a Meta for Developers account and a Meta app"): docs.n8n.io/integrations/builtin/credentials/facebookgraph/
- Upload-Post — n8n Facebook upload (HTTP Request to its API; Reels, videos, images to Pages): www.upload-post.com/n8n/facebook-upload/
- Upload-Post plans (llms-full.txt: Free 2 profiles, 10 uploads a month; Basic $24 a month): www.upload-post.com/llms-full.txt
What you send, and what appears on the Page
| You send | The Page gets | From |
|---|---|---|
| Text only | A text post | The node or HTTP |
| Text and a photo | A photo post, the text as its caption | The node or HTTP |
| Text and a video | A video post, the text as its description | The node or HTTP |
A video with post_type: "reels" | A Reel | HTTP |
A photo or a video with post_type: "story" | A Story | HTTP |
For a Reel or a video Story, Facebook fetches the video from its link; when it cannot, PostWire uploads the file to Facebook itself and says so in the result. Source: PostWire's Facebook publisher, read Oct 12, 2026.
With n8n's own Facebook Graph API node
n8n has no "Facebook post" node. It ships a Facebook Graph API node, and its documentation (read Oct 12, 2026) describes a generic request: you choose the Host URL, the HTTP Request Method (GET, POST or DELETE), the Graph API Version, the Node — "for example /<page-id>/feed" — and the Edge, and you build the rest of the Graph API call yourself.
Its credential guide starts with the prerequisites: "you'll need a Meta for Developers account and a Meta app", which you create in Meta's App Dashboard, adding Facebook Login for Business when you use OAuth2 (n8n's Facebook Graph API credentials guide). What Meta asks of such an app before it can post for other people: Facebook's app approval.
With the PostWire node there is one credential, an API key, and the same node writes the post and publishes that news to nine more networks.
What it does not do
PostWire publishes and schedules posts on a Facebook Page you manage. It does not post to personal profiles — Facebook lets no app do that — or to Groups, it does not create ads, and it does not read or answer comments or Messenger conversations. One photo or one video per Facebook post.
Questions people ask
Can n8n post to Facebook?
Yes, in three ways: n8n's built-in Facebook Graph API node (a POST to /
Is there a Facebook node in n8n?
n8n ships a Facebook Graph API node and a Facebook Trigger node. The Graph API node is a generic request — method, node and edge — so posting to a Page means building the call to /
Do I need a Meta developer app to post to Facebook from n8n?
With n8n's own Facebook Graph API node, yes: its credential guide lists a Meta for Developers account and a Meta app as prerequisites. With the PostWire node you connect your Page once in PostWire's dashboard and the workflow uses an API key.
Can I post to a personal Facebook profile or a Group from n8n?
No. Facebook lets no app post to a personal profile, and PostWire does not post to Groups. It publishes to a Facebook Page you manage; creating a Page is free at facebook.com/pages/create.
Can I post Facebook Reels from n8n?
Yes, with an HTTP Request to https://postwire.io/api/post: send video_url and options.facebook.post_type set to "reels". "story" publishes a photo or a video as a Story. The answer says processing while Facebook prepares the video.
Does it work on n8n Cloud?
PostWire's community node is not verified by n8n yet, so it installs on self-hosted n8n only. On n8n Cloud, use the HTTP Request node against https://postwire.io/api/post with the same fields.
How much does it cost?
The free plan includes Facebook Pages, the API and the n8n node: 1 business, 20 posts a month, 5 AI drafts a day, 2 networks per post, no card. Starter is $9 a month for 3 businesses and Pro $29 for 10, with every network in each post; paid plans have a 14-day refund.
Try it on one business, free.
The free plan is 1 business, 20 posts a month, 5 AI drafts a day (about 20 a month) and 2 networks per post — every network connects free, no card, no time limit. Paid plans start at $9 a month and have a 14-day refund; Pro can be tried free for 7 days, with a card at checkout and nothing charged that day.