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:

  1. Go to Settings → Community Nodes.
  2. Select Install.
  3. Enter n8n-nodes-fopost as the npm package name.
  4. 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-fopost

Credentials

  1. 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.
  2. 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

ResourceOperations
PostCreate · Get · Get Many · Update · Delete · Publish · Cancel · Duplicate · Preflight · Get Deliveries
AccountGet · Get Many · Get Health · Validate · Refresh Token
WorkspaceGet · Get Many · Create
MediaUpload · Get Many · Delete
LabelGet Many · Create · Delete
AnalyticsGet Overview · Get Time Series · Get Top Posts
AutomationGet · 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. Create makes a draft or scheduled post; Publish queues it for delivery. Publish answers when delivery is queued, not when the post is live. Use the trigger or Get Deliveries to 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 account
  • post.failed: every delivery of a post failed
  • post.partially_failed: some deliveries of a post failed
  • delivery.published, delivery.failed, delivery.delayed: a single account delivery
  • account.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 it
  • react-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.

Was this helpful?

On this page