npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

n8n-nodes-postifys

v0.6.10

Published

n8n community node for publishing Facebook, Instagram, YouTube, Pinterest, LinkedIn, and TikTok posts through Postifys.

Readme

n8n-nodes-postifys

Publish Facebook, Instagram, YouTube, Pinterest, LinkedIn, and TikTok posts from n8n through Postifys.

API documentation: https://postifys.com/api-docs

Features

  • Credential type for your Postifys API key
  • Credential test using your Postifys server
  • Media → Upload — upload any image or video URL to Postifys and return a hosted media URL
  • Dynamic dropdowns for connected Facebook Pages, Instagram accounts, YouTube channels, Pinterest accounts/boards, LinkedIn accounts, and TikTok accounts
  • Auto field mapping for common input fields such as url, media_url, serve_url, drive_link, title, and caption
  • Normalized post output with success, platform, operation, postId, status, url, historyId, and raw
  • Post -> Get Status operation for polling a configurable Postifys status endpoint
  • Instagram video/Reel posts can run asynchronously and return a postId immediately for status polling
  • Simple media output with only name and serve_url
  • Publish Facebook Page images
  • Publish Facebook Page Reels
  • Publish Instagram images
  • Publish Instagram videos/Reels
  • Upload YouTube videos
  • Publish Pinterest image pins
  • Publish LinkedIn member posts
  • Publish TikTok videos

Prerequisites

  1. Log in to Postifys at https://postifys.com/login
  2. Open https://postifys.com/settings and create an API key
  3. Connect your Facebook Pages and Instagram professional accounts in Postifys
  4. Connect your YouTube channel in Postifys if you want to upload YouTube videos
  5. Connect your Pinterest account(s) in Postifys if you want to publish pins
  6. Connect your LinkedIn account(s) in Postifys if you want to publish LinkedIn member posts
  7. Read the full REST API reference at https://postifys.com/api-docs

Credentials

Create a new Postifys API credential in n8n.

| Field | Value | |---|---| | API Key | Your key from Postifys Settings | | Postifys Server | https://postifys.com |

The credential test calls:

GET /api/key/test
Authorization: Bearer YOUR_API_KEY

The media upload operation uses Postifys Server and calls the Postifys media queue.

Recommended workflow

Use two Postifys nodes in sequence when a platform needs a direct public media URL:

  1. Postifys — Resource: Media, Operation: Upload, URL: your image/video URL
    → queues the media on Postifys, waits until it is ready, and outputs name and serve_url
  2. Postifys — Resource: Post, pick your platform, set Media/Video/Image URL to ={{ $json.serve_url }}

Do not pass raw drive.google.com, Dropbox, or rednote.postifys.com/media/temp/... links directly to post nodes. Upload them with Media -> Upload first, then use the returned Postifys serve_url (https://postifys.com/media/tmp/...).

For batch workflows, leave Auto Map Input Fields enabled:

  • Media upload can read common fields such as url, source_url, drive_link, or path
  • Posting reads url, media_url, serve_url, and other common direct media fields
  • Blank captions/titles can fall back to title or caption
  • Rows without media can be skipped instead of failing the whole workflow

Status Polling

Use Resource: Post -> Operation: Get Status after a create step if your Postifys server exposes a status endpoint. The default path is:

GET /api/posts/status?postId=POST_ID&platform=instagram

You can change Status Endpoint Path to match the deployed Postifys API, for example a future /api/history/status route.

Node Usage

Add the Postifys node.

Facebook

  • Resource: Post
  • Operation: Create
  • Platform: Facebook
  • Facebook Page: select a connected Page
  • Media Type: Image or Video / Reel
  • Text: post text
  • Media URLs: ={{ $json.serve_url }} from the upload node

The node calls:

POST /api/facebook/post

Instagram

  • Resource: Post
  • Operation: Create
  • Platform: Instagram
  • Instagram Account: select a connected Instagram professional account
  • Media Type: Image or Video / Reel
  • Text: caption text
  • Media URLs: ={{ $json.serve_url }} from the upload node
  • Post Asynchronously: enabled for videos/Reels to avoid long n8n request timeouts

The node calls:

POST /api/instagram/post

YouTube

  • Resource: Post
  • Operation: Create
  • Platform: YouTube
  • YouTube Channel: select the connected channel
  • Title: video title
  • Description: video description
  • Video URL: ={{ $json.serve_url }} from the upload node
  • Thumbnail URL: optional public image URL for a custom thumbnail
  • Privacy Status: Private, Unlisted, or Public
  • Tags: comma-separated list
  • Category ID: default 22
  • Notify Subscribers: optional

The node calls:

POST /api/youtube/post

Pinterest

  • Resource: Post
  • Operation: Create
  • Platform: Pinterest
  • Pinterest Account: select a connected Pinterest account
  • Pinterest Board: select a board for the chosen account
  • Title: pin title
  • Description: optional pin description
  • Link: optional destination URL
  • Image URL: ={{ $json.serve_url }} from the upload node

The node calls:

POST /api/pinterest/post

LinkedIn

  • Resource: Post
  • Operation: Create
  • Platform: LinkedIn
  • LinkedIn Account: select a connected LinkedIn member account
  • LinkedIn Post Type: Text, Image, Video, or Link Preview
  • Text: required post text
  • Image URL: ={{ $json.serve_url }} for image posts
  • Video URL: ={{ $json.serve_url }} for video posts
  • Title: optional image or link title
  • Link: required for link preview posts

The node calls:

POST /api/linkedin/post

If you connect multiple Pinterest accounts in Postifys, choose the account first so the board dropdown loads boards for that account.

TikTok

  • Resource: Post
  • Operation: Create
  • Platform: TikTok
  • TikTok Account: select a connected TikTok account
  • Caption: optional caption text
  • Video URL: ={{ $json.serve_url }} from the upload node
  • TikTok Privacy: Public to Everyone, Mutual Follow Friends, or Self Only

The node calls:

POST /api/tiktok/post

Output Shape

Post operations return normalized fields:

{
  "success": true,
  "platform": "instagram",
  "operation": "create",
  "postId": "POST_OR_HISTORY_ID",
  "status": "PROCESSING",
  "url": "",
  "historyId": "POSTIFYS_HISTORY_ID",
  "raw": {}
}

Use raw when you need the full Postifys/platform response.

Install in n8n

In n8n, go to Settings → Community Nodes, then install:

n8n-nodes-postifys

Development

npm install
npm run build
npm test
npm run release:check

License

MIT