Skip to content
HoneyguideOpen on Apify (opens in a new tab)

Instagram

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

PlatformInstagram
Apify actordata-slayer/instagram-media-archive-downloader
Pricefrom $3.00 per 1,000 results, plus $0.00005 per run start
InputspostUrlsdownloadVideosdownloadImagesmaxFilesmaxFileSizeMbmaxTotalSizeMb
Output17 documented fields per row
Export formatsJSON, CSV, Excel, XML, HTML
Instagram login or cookiesNot required
IntegrationsApify REST API, JavaScript and Python clients, n8n, Make, Zapier
Last updatedSeptember 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.

POST /v2/acts/data-slayer~instagram-media-archive-downloader/run-sync-get-dataset-items
request
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/"
    ]
  }'
each result row17 fields
{
  "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.

parametertypedescription
postUrlsrequiredarray

Instagram posts or Reels

Add 1–10 public Instagram post, Reel, or TV URLs, or bare shortcodes. Duplicate posts are processed once.

downloadVideosboolean

Download videos

Store Reel, video-post, and carousel-slide MP4 files when available.

default: true

downloadImagesboolean

Download images and covers

Store photo posts, carousel images, and available video or Reel cover images.

default: true

maxFilesinteger

Maximum files

Stop starting new downloads after this many unique media files. Every skipped asset is listed in the manifest.

default: 100

maxFileSizeMbinteger

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

maxTotalSizeMbinteger

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.

fieldtypedescription
manifestIdstringManifest ID
sourceInputsarraySource inputs
sourcePostIdstring | nullSource post ID
shortCodestringShortcode
postUrlstringInstagram post
postTypestringPost type
retrievalStatusstringRetrieval status
isCompletebooleanComplete
expectedAssetCountinteger | nullExpected assets
storedAssetCountintegerStored assets
skippedAssetCountintegerSkipped assets
failedAssetCountintegerFailed assets
missingCarouselPositionsarrayMissing carousel positions
assetsarrayStored and attempted assets
errorobject | nullPublic error
retrievedAtstringRetrieved at
retentionNotestringRetention 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.

eventpriceper 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
Free
$4.00
Bronze
$3.60
Silver
$3.30
Gold
$3.00
Platinum
$3.00
Diamond
$3.00
10 MiB stored

Each started 10 MiB of cumulative successfully stored bytes, rounded once per run

$0.012 each
Free
$12.00
Bronze
$10.50
Silver
$9.50
Gold
$8.70
Platinum
$8.70
Diamond
$8.70
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
Free
$0.05
Bronze
$0.05
Silver
$0.05
Gold
$0.05
Platinum
$0.05
Diamond
$0.05

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 scrapers
  • Get 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 results
  • Scrape 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 results
  • Instagram 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 results
  • Search 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 results
  • 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 results
  • 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