New:Microsoft Teams Notifications Are Now Available in Socket.Learn more
Get Started

bulkpublish

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

bulkpublish

Social media automation API for AI agents, LLMs, and developers. Publish to 15 platforms programmatically.

latest
Source
npmnpm
Version
1.14.0
Version published
Maintainers
1
Created
Source

BulkPublish Node.js SDK

Official TypeScript/Node.js SDK for the BulkPublish social media API. Automate publishing to 15 platforms — built for developers, scripts, AI agents, LLMs, and agentic workflows.

Installation

npm install bulkpublish

Requires Node.js 18+. Zero dependencies — uses native fetch.

Quick Start

import { BulkPublish } from 'bulkpublish';

const bp = new BulkPublish({ apiKey: 'bp_your_key_here' });

// List connected social media channels
const { channels } = await bp.channels.list();

// Upload media
const { file } = await bp.media.upload('./photo.jpg');

// Schedule a post to multiple platforms
const post = await bp.posts.create({
  content: 'Hello from the BulkPublish API!',
  channels: [
    { channelId: channels[0].id, platform: channels[0].platform },
    { channelId: channels[1].id, platform: channels[1].platform },
  ],
  mediaFiles: [file.id],
  scheduledAt: '2026-04-10T09:00:00Z',
  timezone: 'America/New_York',
  status: 'scheduled',
});

Post Type Overrides

// Post a reel to Instagram
const post = await bp.posts.create({
  content: 'Check this out!',
  channels: [{ channelId: 1, platform: 'instagram' }],
  mediaFiles: [mediaId],
  postTypeOverrides: { instagram: 'reel' },
});

Built for Automation

BulkPublish is designed for programmatic social media management — no browser sessions, no UI, no OAuth flows at runtime. Connect your accounts once in the dashboard, then automate everything:

  • AI agents — Use with Claude (MCP server), GPT (function calling), LangChain, or any LLM with tool use
  • Server-side scripts — Cron jobs, CI/CD pipelines, content syndication
  • Bulk operations — Iterate over data and schedule hundreds of posts programmatically
  • Analytics pipelines — Pull engagement data into your own dashboards or AI analysis (check supportedMetrics before treating a 0 as a measurement — platforms report different subsets)

Full TypeScript Types

Every request and response is fully typed. Works great with IDE autocomplete and LLM code generation:

import type { Post, Channel, CreatePostParams } from 'bulkpublish';

Available Resources

ResourceMethods
bp.postscreate, list, get, update, delete, publish, retry, approve, reject, bulk, queueSlot, metrics, story
bp.channelslist, get, delete, health
bp.mediaupload, list, get, delete, getLabels, setLabels, createMultipart, completeMultipart, abortMultipart
bp.analyticssummary, engagement, refresh, account
bp.labelslist, create, update, delete
bp.scheduleslist, create, update, delete
bp.channelSetslist, create, update, delete — saved channel groups for one-click targeting
bp.rssFeedslist, create, update, delete — RSS/Atom autopost feeds (new items become posts; optional fieldMapping controls caption template, media, truncation, per-channel overrides)

Platform Requirements

PlatformPost TypesMediaRequired FieldsChar Limit
Facebookpost, reel, storyOptional (reel/story need media)63,206
Instagramfeed_photo, feed_video, reel, story, carouselRequired (type-specific)2,200
X / TwittertweetOptional (max 4 images or 1 video)280
YouTubevideo, shortVideo requiredplatformSpecific.youtube.title5,000
TikTokvideo, photo_slideshowVideo or images required2,200
LinkedInpost, multi_image, pdf_carousel, articleVaries by typeurl for article3,000
Pinterestpin, video_pin, carouselRequiredplatformSpecific.pinterest.title500
Threadstext, image, video, carouselOptional500
BlueskypostOptional (max 4 images or 1 video)300
GMBstandard, event, offerOptional (image only)dates for event1,500
MastodonpostOptional (max 4 images or 1 video)500

Important:

  • YouTube and TikTok only accept video — do not include them for image-only posts
  • Instagram defaults to feed_photo — set postTypeOverrides for video content
  • Use platformContent for shorter text on low-limit platforms (Bluesky 300, Pinterest 500)

Resources

License

MIT

Keywords

bulkpublish

FAQs

Package last updated on 31 Aug 2026

Related posts