Instagram Media Archive Downloader
Download public Instagram post, Reel, cover, and carousel media into customer-owned run storage with ordered manifests, file hashes, limits, and truthful retrieval status.
- users, last 30 days
- 2
- runs, last 30 days
- 20
- runs, all time
- 29
- users, all time
- 2
Live figures from Apify's public API, refreshed every hour.
Instagram Media Archive Downloader specifications
| Platform | |
|---|---|
| Apify actor | data-slayer/instagram-media-archive-downloader |
| Price | from $3.00 per 1,000 results, plus $0.00005 per run start |
| Inputs | postUrlsdownloadVideosdownloadImagesmaxFilesmaxFileSizeMbmaxTotalSizeMb |
| Output | 17 documented fields per row |
| Export formats | JSON, CSV, Excel, XML, HTML |
| Instagram login or cookies | Not required |
| Integrations | Apify REST API, JavaScript and Python clients, n8n, Make, Zapier |
| Last updated | September 29, 2026 (version 1.0.6) |
Run it from code
Replace the example input with your own. You need an Apify API token, which you can create in your Apify account settings.
curl -X POST "https://api.apify.com/v2/acts/data-slayer~instagram-media-archive-downloader/run-sync-get-dataset-items" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"postUrls": [
"https://www.instagram.com/reel/DdRf9lktEb1/",
"https://www.instagram.com/p/DdY0AWwF5pG/"
]
}'{
"manifestId": string,
"sourceInputs": array,
"sourcePostId": string | null,
"shortCode": string,
"postUrl": string,
"postType": string,
"retrievalStatus": string,
"isComplete": boolean,
"expectedAssetCount": integer | null,
"storedAssetCount": integer,
"skippedAssetCount": integer,
"failedAssetCount": integer,
"missingCarouselPositions": array,
"assets": array,
// + 3 more fields
}Input parameters
6 parameters you can set for each run.
| parameter | type | description |
|---|---|---|
postUrlsrequired | array | Instagram posts or Reels Add 1–10 public Instagram post, Reel, or TV URLs, or bare shortcodes. Duplicate posts are processed once. |
downloadVideos | boolean | Download videos Store Reel, video-post, and carousel-slide MP4 files when available. default: true |
downloadImages | boolean | Download images and covers Store photo posts, carousel images, and available video or Reel cover images. default: true |
maxFiles | integer | Maximum files Stop starting new downloads after this many unique media files. Every skipped asset is listed in the manifest. default: 100 |
maxFileSizeMb | integer | Maximum size per file (MB) Skip a file when its declared or streamed size exceeds this limit. One MB equals 1,000,000 bytes. Other files continue. default: 100 |
maxTotalSizeMb | integer | Maximum total download size (MB) Stop starting new downloads when stored bytes reach this run-wide limit. One MB equals 1,000,000 bytes. Every remaining asset is listed as not attempted. default: 500 |
Output fields
Each result is one row with these 17 fields, taken from the scraper's dataset schema.
| field | type | description |
|---|---|---|
manifestId | string | Manifest ID |
sourceInputs | array | Source inputs |
sourcePostId | string | null | Source post ID |
shortCode | string | Shortcode |
postUrl | string | Instagram post |
postType | string | Post type |
retrievalStatus | string | Retrieval status |
isComplete | boolean | Complete |
expectedAssetCount | integer | null | Expected assets |
storedAssetCount | integer | Stored assets |
skippedAssetCount | integer | Skipped assets |
failedAssetCount | integer | Failed assets |
missingCarouselPositions | array | Missing carousel positions |
assets | array | Stored and attempted assets |
error | object | null | Public error |
retrievedAt | string | Retrieved at |
retentionNote | string | Retention note |
Pricing
Pay-per-event pricing, billed through your Apify account. Where plan tiers are listed, paid Apify plans get a lower price per event.
| event | price | per 1,000, by Apify plan |
|---|---|---|
| Public post resolved One resolved source-post manifest saved, including a truthful partial manifest; unavailable/invalid/not-attempted inputs are not charged | $0.004 each |
|
| 10 MiB stored Each started 10 MiB of cumulative successfully stored bytes, rounded once per run | $0.012 each |
|
| Actor Start Charged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event). | $0.00005 per run |
|
Questions
How much does Instagram Media Archive Downloader cost?
Instagram Media Archive Downloader uses pay-per-event pricing on Apify. The main charge is $0.004 per public post resolved, which is $4.00 per 1,000. On higher Apify plans the price drops to $3.00 per 1,000. Each run also has a start fee of $0.00005.
Do I need to log in to Instagram or share cookies?
No. Instagram Media Archive Downloader works without your Instagram login or cookies. You only need an Apify account to run it.
Can I use Instagram Media Archive Downloader through an API?
Yes. Send a POST request to the Apify API with your input and read the results as JSON, or use Apify's official clients for JavaScript and Python. The code examples on this page are ready to copy.
What data does Instagram Media Archive Downloader return?
Each result is a structured row. Its dataset schema lists 17 fields, including manifestId, sourceInputs, sourcePostId, shortCode, and postUrl.
What formats can I export?
Results are stored in an Apify dataset. You can read it through the API as JSON, or download it as CSV, Excel, XML or HTML.
More Instagram scrapers
All Instagram scrapersGet full details from any Instagram post or Reel by URL — no login. 128 fields: likes, comments, views, shares, saves, reposts, captions, audio metadata, video URLs, and creator profiles. Bulk URL input. Includes repost_count missing from Apify's own scraper. JSON/CSV/Excel.
- runs/30d
- 317.1K
- users/30d
- 1,600
Instagramfrom $1.50 / 1K resultsScrape all posts from any Instagram profile — no login. Get likes, comments, shares, captions with parsed hashtags & mentions, tagged users, collaborators, carousel media, video URLs, and timestamps. 107 fields per post including a 24-field creator profile. JSON/CSV/Excel.
- runs/30d
- 153.2K
- users/30d
- 350
Instagramfrom $1.50 / 1K resultsInstagram Profile Scraper
Account Age & Verified Emails
Scrape public Instagram profiles in bulk. Get the published account-creation month, registration country, username-change count, followers, bio, links, public email and phone, with optional email verification. No login or cookies.
- runs/30d
- 40.9K
- users/30d
- 196
Instagramfrom $1.50 / 1K resultsSearch Instagram Reels by keyword and discover trending content — no login, no cookies. Get play counts, likes, comments, shares, video URLs, captions, hashtags, audio/music info, and creator profiles. Find viral reels in any niche. 125+ data points per reel. JSON/CSV/Excel.
- runs/30d
- 31.3K
- users/30d
- 751
Instagramfrom $1.50 / 1K resultsInstagram Profile Reels Scraper
No Login
Scrape all Reels from any Instagram profile by username — no login. Get play counts, likes, comments, shares, captions, hashtags, audio metadata, video URLs, and timestamps. 125+ fields per Reel. Competitor content analysis and influencer research. JSON/CSV/Excel.
- runs/30d
- 25.6K
- users/30d
- 139
Instagramfrom $1.50 / 1K resultsInstagram Stories Scraper
No Login
Capture Instagram Stories from any public profile before they disappear — no login. Get story media URLs, timestamps, stickers, mentions, music info, links, and swipe-up data. Competitive intelligence and brand monitoring for ephemeral content. No cookies. JSON/CSV/Excel.
- runs/30d
- 19.6K
- users/30d
- 196
Instagramfrom $1.50 / 1K results