Package Information
Released: 1 mo ago
Downloads: 0 weekly / 0 monthly
Latest Version: 0.1.2
Documentation
n8n-nodes-threads-publisher
An n8n community node for publishing and managing content on Meta Threads via the Threads API.
Designed to run alongside n8n-nodes-instagram-publisher — both nodes use separate OAuth2 credential types, so there is no conflict.
Features
Resources & Operations
| Resource | Operation | Description |
|---|---|---|
| Post | Create | Publish text, image, video, or carousel posts |
| Post | Get | Retrieve a post by ID with selectable fields |
| Post | Delete | Delete a post by ID |
| Profile | Get My Profile | Retrieve your account info (name, bio, followers) |
| Profile | Get My Threads | List all posts you have published |
| Reply | Get Replies | Fetch top-level replies on a thread |
| Reply | Get Conversation | Fetch the full reply tree (replies + sub-replies) |
| Reply | Hide Reply | Hide a reply from public view |
| Reply | Unhide Reply | Restore a previously hidden reply |
| Insights | Get Thread Insights | Engagement metrics for a specific post (likes, views, reposts, replies, quotes) |
| Insights | Get Profile Insights | Account-level metrics (follower count, profile views, etc.) |
| Quota | Check Publishing Limit | See how many posts you have used in the current 24-hour window |
UX Design
- Resource → Operation hierarchy — browse by what you want to do, not a flat list of 15+ options
- Post Type dropdown — choose Text / Image / Video / Carousel from one place; only the relevant fields appear
- Selectable fields — pick exactly what data you want returned using multi-select checkboxes
- Smart defaults — sensible field selections pre-checked so you can run the node immediately
- Return All / Limit toggle — paginate through all results or cap at a number
- Date range picker — filter profile insights to a specific time window
- Hint text — guidance on character limits, URL requirements, and format constraints shown inline
Prerequisites
- A Meta Developer App with the Threads use case enabled
- A Threads Business or Creator account linked to your app
- The following OAuth2 permissions approved for your app:
threads_basicthreads_content_publishthreads_read_replies(for Get Replies / Get Conversation)threads_manage_replies(for Hide / Unhide Reply)threads_manage_insights(for Insights operations)
Installation
Via n8n UI (Community Nodes)
- Open n8n → Settings → Community Nodes
- Click Install
- Enter
n8n-nodes-threads-publisher - Restart n8n
Via npm (self-hosted)
npm install n8n-nodes-threads-publisher
Credential Setup
- In n8n → Credentials → Add Credential → Threads OAuth2 API
- Enter your Meta App's Client ID and Client Secret
- Set the redirect URI shown in n8n inside your Meta App dashboard
- Click Connect to complete the OAuth2 flow
Long-Lived Tokens (optional)
Short-lived tokens expire in ~1 hour. Exchange for a 60-day token:
GET https://graph.threads.net/access_token
?grant_type=th_exchange_token
&client_secret={app-secret}
&access_token={short-lived-token}
Refresh before expiry:
GET https://graph.threads.net/refresh_access_token
?grant_type=th_refresh_token
&access_token={long-lived-token}
Media Requirements
| Type | Requirements |
|---|---|
| Image | JPEG or PNG, max 8 MB, publicly accessible URL |
| Video | MP4 (H.264), max 5 minutes, publicly accessible URL |
| Carousel | 2–10 items (images and videos can be mixed) |
| Text | Max 500 characters; URLs expand automatically |
Development
# Install dependencies
npm install --ignore-scripts
# Build TypeScript → dist/
npm run build
# Watch mode
npm run dev
# Lint
npm run lint
npm run lint:fix
Local Testing with n8n
npm run build
npm link
# In your n8n installation
npm link n8n-nodes-threads-publisher
# Then restart n8n
Publishing to npm
Manual release (recommended for getting started)
Go to GitHub → Actions → Publish to npm → Run workflow → select patch, minor, or major.
This will:
- Run
npm run build - Bump the version in
package.json - Create a git tag (
vX.Y.Z) - Publish to npm
- Push the tag back to GitHub
Automatic release via Conventional Commits
When you push to main, semantic-release automatically:
- Analyzes commit messages following the Conventional Commits format
- Determines the next version (
fix:→ patch,feat:→ minor,feat!:→ major) - Generates
CHANGELOG.mdentries - Bumps
package.json - Publishes to npm
- Creates a GitHub Release
Commit message format:
feat: add carousel support
fix: correct status polling timeout
feat!: breaking change in credential scope
Required GitHub Secrets
| Secret | Description |
|---|---|
NPM_TOKEN |
Your npm access token (from npmjs.com → Access Tokens → Granular) |
The GITHUB_TOKEN is provided automatically by GitHub Actions.
Support the Creator
If you find this node useful and it saves you time, please consider supporting its continued development!
License
MIT
Related
n8n-nodes-instagram-publisher— Instagram Graph API publisher for n8n- Meta Threads API Docs
- n8n Community Nodes Docs
- Conventional Commits