Social media posting API for shipping content across every channel
Create social posts from your product, route them to connected accounts, and keep platform-specific payload rules visible without building every native API yourself.
Last updated: May 2026
1const response = await fetch("https://api.bundle.social/api/v1/post", {2 method: "POST",3 headers: {4 "x-api-key": process.env.BUNDLE_SOCIAL_API_KEY,5 "Content-Type": "application/json"6 },7 body: JSON.stringify({8 teamId: "team_123",9 title: "Launch update",10 postDate: "2026-05-14T10:00:00.000Z",11 status: "SCHEDULED",12 socialAccountTypes: ["TWITTER", "LINKEDIN", "INSTAGRAM"],13 data: {14 TWITTER: { text: "Launch update is live." },15 LINKEDIN: { text: "We shipped a new product workflow today." },16 INSTAGRAM: { type: "POST", text: "Launch day.", uploadIds: ["upload_123"] }17 }18 })19});Posting directly to every native API
What bundle.social handles
Posting is the core workflow, not a side endpoint
bundle.social treats every post as a tracked object with platform payloads, status, connected account context, and room for scheduling or analytics later.
Workflow
How it works
Connect accounts once, then create and schedule posts with channel-specific fields from one API.
Create an API key
Generate an organization API key and use it from your backend with the x-api-key header.
Connect accounts
Connect the social accounts your product, agent, or customer workflow should manage.
Run the workflow
Call the API with platform-specific data while bundle.social tracks status, context, and dashboard visibility.
Capabilities
Posting primitives for API-first social products
Create posts, attach media, choose platforms, and inspect status from the same API workflow.
Multi-platform post payloads
Create one post with channel-specific data for Instagram, TikTok, LinkedIn, X, Facebook, YouTube, and more. Maintain one integration while supporting 14+ platforms.
Connected account routing
Posts target team-scoped accounts so your product does not store platform credentials or account mappings. We handle token refreshes and OAuth flows.
Media-ready publishing
Reference upload IDs for videos, images, carousels, documents, and thumbnails after assets are uploaded once. Avoid timeout errors on large video files.
Lifecycle status
Track draft, scheduled, processing, posted, retrying, and failed states per post. Use our webhooks to get real-time updates in your own product.
Developer example
Create a multi-platform social post
Examples use bundle.social's public API shape: API key authentication, a post date, selected social account types, and platform-specific data.
1const response = await fetch("https://api.bundle.social/api/v1/post", {2 method: "POST",3 headers: {4 "x-api-key": process.env.BUNDLE_SOCIAL_API_KEY,5 "Content-Type": "application/json"6 },7 body: JSON.stringify({8 teamId: "team_123",9 title: "Launch update",10 postDate: "2026-05-14T10:00:00.000Z",11 status: "SCHEDULED",12 socialAccountTypes: ["TWITTER", "LINKEDIN", "INSTAGRAM"],13 data: {14 TWITTER: { text: "Launch update is live." },15 LINKEDIN: { text: "We shipped a new product workflow today." },16 INSTAGRAM: { type: "POST", text: "Launch day.", uploadIds: ["upload_123"] }17 }18 })19});Supported content
Honest limitations
- Native platform permissions and account eligibility still decide what can publish.
- Some content types require uploaded media before post creation.
- Platform-specific rules still apply to captions, tags, privacy settings, and media dimensions.
Guarantees
Developer-first infrastructure
2% error rate
We handle the platform edge cases, media processing, and rate limits so your requests succeed.
Verbose errors
When native APIs fail, we return human-readable error messages and actionable recovery steps.
Flat pricing
No per-post counting. Predictable pricing for teams managing many users, workspaces, and connected accounts.
Same-day support
Direct access to the engineers building the API. We respond to technical issues the same day. Sometimes the same hour. Test us c;
Resources
Technical guides & documentation
FAQ
Questions developers ask before building
Can I post to multiple social platforms with one API call?
Yes. A post can include multiple socialAccountTypes and a data block for each platform you want to publish to.
Do I need to handle native OAuth tokens?
No. bundle.social handles connected account storage and lets your API key create posts for accounts already connected to the team.
Can posts be scheduled later?
Yes. Use the same post object with a future postDate and SCHEDULED status when the workflow needs scheduling.