Instagram Reels Downloader
Pricing
$4.99/month + usage
Instagram Reels Downloader
π Enterprise-grade Instagram Reels downloader: fast, secure, plug-and-play. Extract, download & archive high-quality Reels at scale with proxy rotation, smart retries, filename safety, and quiet logsβbuilt for dependable, automated production workflows. πβ‘οΈπ₯
0.0 (0)
Pricing
$4.99/month + usage
0
1
1
Last modified
3 days ago
π Instagram Reels Downloader
Download Instagram Reels β fast, secure, and production-ready.
π One-line summary
A plug-and-play Apify Console Actor that extracts and optionally downloads Instagram Reels (only /reel/ links), delivering clean, production-ready datasets and downloadable media with configurable resolution and safe proxy support.
π‘ Use cases / When to use
- Quickly archive public Reels for editorial review or content moderation.
- Bulk-download Reels for media analysis or offline processing.
- Integrate Reel extraction into ETL pipelines that need consistent metadata and file outputs.
- Run scheduled checks for newly published Reels from a curated list of links.
β‘ Quick Start (Console β one-click)
- Open this Actor in Apify Console.
- Paste a list of Instagram /reel/ links into the Start URLs input.
- (Optional) Add a cookie file path for private Reels, select desired resolution, and enable
Download. - Click Run Actor β results appear in the Dataset in seconds.
Instant results, minimal setup β designed for non-developers and teams.
βοΈ Quick Start (CLI + API)
The examples below show how to run this Actor from the CLI and using the Apify client (replace placeholders with your values).
CLI
$apify run --actor <ACTOR_ID> --input input.example.json
Python (apify-client)
from apify_client import ApifyClientclient = ApifyClient('<APIFY_TOKEN>')run = client.actor('your-username/instagram-reels-downloader').call(input=input_json)print(run)
π Inputs (fields & schema)
This Actor accepts a JSON input with the following key fields (see input.example.json for a copy):
startUrlsβ array of Instagram/reel/links (required)desired_resolutionβ one of1080p,720p,480p,360p(default:1080p)downloadβ boolean: iftrue, saves files to Actor storage (default:true)merge_if_ffmpegβ boolean: iftrue, merges separated audio + video (default:true)cookie_fileβ optional string path for cookies to access private ReelsproxyConfigurationβ optional proxy settings object (Console editor provided)
βοΈ Configuration
| π Name | π Type | β Required | βοΈ Default | π Example | π§ Notes |
|---|---|---|---|---|---|
| startUrls | array | β Yes | β | ["https://www.instagram.com/reel/ABC123/"] | Provide only /reel/ links; others are skipped |
| desired_resolution | string | βοΈ Optional | 1080p | 720p | Picks closest available format if exact match unavailable |
| download | boolean | βοΈ Optional | true | false | When false, actor only extracts metadata and direct URLs |
| merge_if_ffmpeg | boolean | βοΈ Optional | true | true | Requires platform FFmpeg support to merge files |
| cookie_file | string | βοΈ Optional | null | /path/to/cookies.txt | Use for private or age-gated Reels |
| proxyConfiguration | object | βοΈ Optional | {} | { "useApifyProxy": true } | Use Console proxy editor for secure credentials |
Example Console setup: Paste reel links into Start URLs, set desired_resolution to 1080p, then click Run Actor.
π Outputs (Dataset / KV examples)
After each run, results are saved to the Actor Dataset as JSON objects. Example dataset entry:
{"url": "https://www.instagram.com/reel/C5xAbCdE123/","title": "A short clip","uploader": "creator_handle","thumbnail": "https://.../thumb.jpg","duration": 15,"requested_resolution": "1080p","download_links": {"merged_video": "https://.../media.mp4","video_without_audio": "https://.../video.mp4","audio": "https://.../audio.mp4"},"downloaded_file": "A_short_clip_merged.mp4"}
Non-reel URLs are skipped silently β only Reel entries appear in the final dataset.
π Environment Variables
Store secrets as platform secrets or in the Console UI β never place them in plaintext input.
APIFY_TOKENβ your Apify account token (used by CLI/API)- Use the Console proxy editor to store proxy credentials securely (recommended)
βΆοΈ How to Run (Console, CLI, API)
Console β paste Reel links and Run.
CLI β apify run with input.example.json (see example above).
API β call .actor('your-username/instagram-reels-downloader').call(input) using your Apify client.
β° Scheduling & Webhooks
- Schedule regular runs in the Console using the Scheduler tab.
- Add a webhook to receive run-complete notifications and process new dataset items downstream.
πΎοΈ Logs & Troubleshooting
- The Actor is designed to be quiet in logs for easier scanning; errors are surfaced as dataset items rather than noisy stack traces.
- If results are missing: ensure the links are valid
/reel/URLs and that your proxy (if any) is functioning. - For private Reels, provide a valid cookie file path in
cookie_file.
π Permissions & Storage Notes
- Files saved by the Actor are stored in the runβs storage and can be downloaded from the Console.
- Keep cookies and proxy credentials in secure storage only (Platform secrets or Console editor).
- This Actor respects platform usage policies β use responsibly and avoid abusive scraping.
π Changelog / Versioning
v0.2β Reels-only labeling, refined inputs, clearer proxy guidancev0.1β Initial release
π Notes / TODOs
- TODO: Add optional bulk profile scraping mode (requires additional consent).
- TODO: Add built-in cookie uploader in the Console for easier private Reel access.
π Proxy Configuration
Enable Apify Proxy in the Console with one click: use Proxy configuration and select the RESIDENTIAL group for best reliability.
Custom proxy example (store as secret, do not paste in inputs):
<PROXY_USER:PASS@HOST:PORT>
Env examples (when using external clients):
export HTTP_PROXY=http://<PROXY_USER:PASS@HOST:PORT>export HTTPS_PROXY=http://<PROXY_USER:PASS@HOST:PORT>
Security note: Store proxy credentials as secrets using the Consoleβs secure fields β do not embed them in run inputs.
TODO: Consider proxy rotation for large-scale runs to minimize rate-limits.
π References
- Apify Actor README guidelines β https://docs.apify.com/actors
- Apify Input/Output schema docs β https://docs.apify.com/actors/input-output
- Apify CLI & API usage β https://docs.apify.com/actors/cli
π€ What I inferred from main.py
- This Actor exclusively processes Instagram
reelURLs and skips other post types. - It supports optional cookie-based access for private Reels and optional merging of separate audio/video files.
- The Actor prefers a default resolution of
1080pand provides retry/backoff behavior for robustness.
input.example.json
{"startUrls": ["https://www.instagram.com/reel/DPAtiRgEy9D/","https://www.instagram.com/reel/DN0TD6u5MhM/"],"desired_resolution": "1080p","download": true,"merge_if_ffmpeg": true,"cookie_file": "","proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
CONFIG.md (optional)
# Configuration notes- Use the Console to set proxy and cookie_file values.- If you need private Reel access, export cookies from your browser as a `cookies.txt` file and provide its path in `cookie_file`.- If you see missing entries, re-run after 1-2 minutes to bypass short-term rate limits.
On this page
-
π Instagram Reels Downloader
- π One-line summary
- π‘ Use cases / When to use
- β‘ Quick Start (Console β one-click)
- βοΈ Quick Start (CLI + API)
- π Inputs (fields & schema)
- βοΈ Configuration
- π Outputs (Dataset / KV examples)
- π Environment Variables
- βΆοΈ How to Run (Console, CLI, API)
- β° Scheduling & Webhooks
- πΎοΈ Logs & Troubleshooting
- π Permissions & Storage Notes
- π Changelog / Versioning
- π Notes / TODOs
- π Proxy Configuration
- π References
- π€ What I inferred from main.py
Share Actor:
