Import Post History

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

API key authScheduled publishing14 platforms
Quick start
API request
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

Native social APIs paginate historical posts differently across platforms, making consistent imports complex.
Import jobs are long-running operations that block simple request-response patterns.
Teams typically build custom scrapers or rely on data exports that go stale immediately.

What bundle.social handles

Trigger a post history import with one API call and poll for completion without managing the pagination yourself.
Access imported posts through the dashboard and API once the import job completes.
Combine imported history with new scheduled posts for a single source of truth.

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.

01

Connect the account

The social account must be connected before an import can be triggered.

02

Trigger the import

POST to the import endpoint for the connected account. A job ID is returned immediately.

03

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.

TypeScript
API request
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

Historical postsPost metadataEngagement snapshotsAccount post lists

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.