How it works
This is an asynchronous job. You don’t get the posts instantly.- Start: You trigger a job (“Go fetch 50 posts from Instagram”).
- Wait: We queue it, talk to the platform, and crunch the data.
- Poll: You check if we’re done.
- Fetch: You download the results.
Step 1: Start the Job
Endpoint:POST /api/v1/post-history-import
- Free: 5 posts / month (Demo mode)
- Pro: 100 posts / month
- Business: 250 posts / month
Why limits? Historical imports are expensive on API tokens. We have to be stingy here to keep the service cheap for everyone.
Step 2: Check Status
Endpoint:GET /api/v1/post-history-import?teamId=...
You’ll see a list of jobs with statuses:
PENDING: In queue.FETCHING_POSTS: Talking to Instagram…COMPLETED: Done!FAILED: Something exploded.RATE_LIMITED: Platform said “slow down”. We paused it for you.
Step 3: Get the Loot
Endpoint:GET /api/v1/post-history-import/posts
Once status is COMPLETED, call this to get the actual data.
Handling Rate Limits
If a job hitsRATE_LIMITED, don’t panic. It means we hit the platform’s cap (e.g. LinkedIn API limits).
- We automatically pause the job.
- We set a
rateLimitResetAttimestamp. - You can retry it after that time.