Instagram Profile Download API
Export a public Instagram profile as a ZIP file with photos, reels, videos, captions, post metadata,
manifest.json, and posts.csv. Authenticated runs are recommended in async mode and
charge 10 credits when a downloadable ZIP is produced.
POST
/v1/instagram/profile-download
Canonical execution route: /v1/tasks/instagram-profile-download/runs. For the live task contract,
inspect GET /v1/tasks/instagram-profile-download.
Execution notes
- Use authenticated API access for full-profile exports.
- Async execution is recommended for large profiles.
- Marketing-site free exports are capped separately to the first 20 posts and do not use this API route.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| profile | string | Yes | Instagram username, @handle, or full profile URL. |
| _run.async | boolean | No | Set to true to return immediately with a run envelope and poll later. |
Response
Result Fields
download_url - Temporary signed ZIP URL.download_url_expires_at - Expiry for the signed download URL.expires_at - Export artifact retention expiry.truncated - Whether the final ZIP is partial.result_summary - Counts for posts, media, downloads, skips, and estimated bytes.Code Examples
curl -X POST "https://api.browsable.app/v1/instagram/profile-download" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"profile":"natgeo","_run":{"async":true}}'Try it Out
API Playground
Error Codes
400 Bad Request
The JSON body does not match the task input schema.
401 Unauthorized
Missing or invalid API key.
403 Forbidden
Your account cannot execute the task, usually because of access or credits.
429 / upstream throttling
Instagram may temporarily limit full-profile exports. Poll the run and inspect the final error or partial ZIP result.