n8n
The official n8n community node for FoPost, with a signature-verified trigger.
n8n-nodes-fopost is the official n8n community node. It schedules and publishes posts, manages connected accounts and media, reads analytics, and starts workflows from FoPost publishing events.
Needs Node.js 20 or newer and n8n 1.x.
This is a 0.x release. Resources, operations, and their fields are still settling and a minor version may change them.
Published on npm. Source and issues: github.com/fopost/fopost-n8n. MIT licensed.
Install
Through n8n's Community Nodes UI:
- Go to Settings → Community Nodes.
- Select Install.
- Enter
n8n-nodes-fopostas the npm package name. - Agree to the risks of using community nodes and select Install.
For a self-hosted instance you can install it manually instead:
npm install n8n-nodes-fopostCredentials
- Create a key at Settings → API Keys in the FoPost dashboard, with the scopes your workflow needs (
posts,accounts,analytics,webhooks, and so on). A key can be bound to a single workspace, which confines every request to it. - In n8n, create a new FoPost API credential and paste the key.
The key travels as the X-API-Key header on every request. The credential's Test button calls GET /v1/workspaces, so a green check means the key is live and has at least read access.
Base URL defaults to https://api.fopost.com and only needs changing for a non-production deployment.
Operations
| Resource | Operations |
|---|---|
| Post | Create · Get · Get Many · Update · Delete · Publish · Cancel · Duplicate · Preflight · Get Deliveries |
| Account | Get · Get Many · Get Health · Validate · Refresh Token |
| Workspace | Get · Get Many · Create |
| Media | Upload · Get Many · Delete |
| Label | Get Many · Create · Delete |
| Analytics | Get Overview · Get Time Series · Get Top Posts |
| Automation | Get · Get Many · Toggle · Trigger |
Worth knowing:
- Workspace, account, and label pickers are live dropdowns. The account and label lists reload when you change the selected workspace.
- Publishing is two steps.
Createmakes a draft or scheduled post;Publishqueues it for delivery. Publish answers when delivery is queued, not when the post is live. Use the trigger orGet Deliveriesto learn the outcome. - Preflight checks a post against every target platform's rules without sending anything, and Publish → Dry Run validates delivery the same way.
- Media Upload reads an incoming binary field and stores the file in the workspace media library, returning a URL you can attach to a post.
- Return All pages through the API for you; leave it off and set a Limit instead.
- Continue On Fail is honoured: a failing item is emitted as
{ "error": "..." }rather than stopping the run.
Trigger
The FoPost Trigger node registers a webhook when the workflow is activated and removes it when the workflow is deactivated. Pick a workspace and the events you care about:
post.published: a post went live on every target accountpost.failed: every delivery of a post failedpost.partially_failed: some deliveries of a post faileddelivery.published,delivery.failed,delivery.delayed: a single account deliveryaccount.health_changed: a connected account changed connection health, including disconnects
Every incoming request is verified before the workflow runs: FoPost signs the raw request body with HMAC-SHA256 using the secret it issues at webhook creation and sends it as X-FoPost-Signature: sha256=<hex>. A request whose signature does not match is answered with 401 and starts nothing.
Example workflows
Importable workflow JSON lives in examples/:
create-and-publish-post.json: create a draft, then publish itreact-to-published-posts.json: start a workflow when a post goes live
Next
Related documentation
- SDKs & Integrations
Official FoPost clients for TypeScript, Python, PHP, Ruby, Go, Rust, Java, .NET, Swift, Kotlin, Dart, and Elixir, framework integrations from Laravel to Next.js, and tooling for the CLI, CI, Terraform, and the automation platforms.
- SDKs Overview
Every official FoPost client, what it covers, and how to pick one.
- TypeScript SDK
The official TypeScript and Node.js client for the FoPost API.
- Python SDK
The official Python client for the FoPost API.
- PHP SDK
The official PHP client for the FoPost API, with no framework and no HTTP library.
- Ruby SDK
The official Ruby client for the FoPost API, with no runtime dependencies.
- Go SDK
The official Go client for the FoPost API.
- Rust SDK
The official Rust client for the FoPost API, async and built on reqwest.