Social media post history API for importing historical posts
Trigger an async import of historical posts from a connected social account, poll for status, and access the imported post list in one workflow.
Last updated: May 2026
1// Step 1: Trigger async import for a connected account2const trigger = await fetch(3 "https://api.bundle.social/api/v1/social-account/acc_123/import-posts",4 {5 method: "POST",6 headers: { "x-api-key": process.env.BUNDLE_SOCIAL_API_KEY }7 }8);9const { importId } = await trigger.json();1011// Step 2: Poll until complete12const status = await fetch(13 `https://api.bundle.social/api/v1/social-account/acc_123/import-posts/${importId}`,14 { headers: { "x-api-key": process.env.BUNDLE_SOCIAL_API_KEY } }15);16const { state, importedCount } = await status.json();Pulling historical post data natively
What bundle.social handles
Historical data should be part of your workflow, not a one-off export
Importing post history gives your reporting and analytics a starting point. bundle.social handles the pagination and state management so your team gets the data without the plumbing.
Workflow
How it works
Connect accounts once, then create and schedule posts with channel-specific fields from one API.
Connect the account
The social account must be connected before an import can be triggered.
Trigger the import
POST to the import endpoint for the connected account. A job ID is returned immediately.
Poll and read
Poll the import status endpoint. When the state is complete, access imported posts through the post list API.
Capabilities
Post history import built for reporting workflows
Trigger, poll, and access historical post data without building your own pagination or state management.
One-call import trigger
POST to the import endpoint and receive a job ID immediately. No pagination or cursor management required.
Poll until complete
Check import status with a single GET endpoint and read posts once the state reaches COMPLETED.
Unified post list access
Imported history appears in the same post list endpoint as posts your team scheduled in bundle.social.
Developer example
Trigger an import and check status
Examples use bundle.social's public API shape: API key authentication, a post date, selected social account types, and platform-specific data.
1// Trigger2const trigger = await fetch(3 "https://api.bundle.social/api/v1/social-account/acc_instagram_123/import-posts",4 {5 method: "POST",6 headers: { "x-api-key": process.env.BUNDLE_SOCIAL_API_KEY }7 }8);9const { importId } = await trigger.json();1011// Poll (repeat until state === "COMPLETED")12const poll = async () => {13 const res = await fetch(14 `https://api.bundle.social/api/v1/social-account/acc_instagram_123/import-posts/${importId}`,15 { headers: { "x-api-key": process.env.BUNDLE_SOCIAL_API_KEY } }16 );17 return res.json();18};Supported content
Honest limitations
- The amount of history available depends on the native platform's API and the connected account's permissions.
- Import jobs are asynchronous. Do not assume completion immediately after triggering.
- Some platforms limit how far back post history can be fetched.
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;
FAQ
Questions developers ask before building
How long does an import take?
It depends on the account's post volume and the platform's API. Poll the status endpoint until the state returns COMPLETED.
How far back does the import go?
This depends on the native platform. Each platform has its own historical data window and API limits.
Can I import history across multiple teams?
Yes, across teams. Trigger a separate import job for each team's connected account. Each returns its own importId for independent polling.
What do I do with imported posts?
Imported posts appear in your post list and feed into analytics and reporting workflows alongside newly created scheduled posts.
Which platforms support post history import?
Supported platforms are listed in the bundle.social docs. Availability depends on each native platform's API access rules.