Video Download API documentation

EasyDown REST API platform guide

Instagram Download API for Reels, Videos and Photos

One REST request supports post, Reel, embed, and share URLs. Carousel order is preserved so integrations can display or store the complete public post instead of only the first item.

Use the EasyDown Instagram Download API to parse public Reels, video posts, photos, and carousels into complete image, video, cover, and metadata arrays.

Instagram video download API · Instagram Reels download API

Production REST endpoint

POST https://api.easydown.org/api/v1/parse

Supported public URL formats

instagram.com/p/{code}instagram.com/reel/{code}instagram.com/reels/{code}instagram.com/share/...

Real request example

https://www.instagram.com/reel/DY2PcmxiBE2/

curl -X POST https://api.easydown.org/api/v1/parse \
  -H "Authorization: Bearer ed_live_xxx" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://www.instagram.com/reel/DY2PcmxiBE2/"}'

Platform response example

The shared envelope stays stable while this platform determines which media arrays and attributes are populated.

Media behavior

The response can contain both images[] and videos[] for mixed or carousel posts. Available cover and thumbnail candidates remain separate from downloadable post media.

{
  "status": 200,
  "data": {
    "platform": "instagram",
    "title": "Example instagram public post",
    "thumbnail": "https://cdn.example.com/thumbnail.jpg",
    "duration": 24,
    "images": [
      {
        "url": "https://cdn.example.com/content-image.jpg",
        "width": 1080,
        "height": 1350
      }
    ],
    "videos": [
      {
        "url": "https://cdn.example.com/video.mp4",
        "quality": "HD",
        "mimeType": "video/mp4",
        "width": 1080,
        "height": 1920,
        "hasAudio": true,
        "source": "direct"
      }
    ],
    "audios": []
  },
  "msg": "success"
}

Download and proxy rules

Use a backend request with Referer: https://www.instagram.com/ and a browser User-Agent. Direct browser previews can fail because Instagram CDNs enforce CORS, CORP, cookies, or expiring signatures.

Recommended backend request headers

User-Agent: Mozilla/5.0 Referer: https://www.instagram.com/ Origin: https://www.instagram.com/ Range: bytes=0-

Unsupported or unavailable content

Profiles, Highlights, Explore pages, direct messages, private posts, login-only media, and expired Stories are not supported.

Only process public media you have the right to use. EasyDown does not bypass privacy controls, DRM, deleted content, or platform access restrictions.

Platform-specific troubleshooting

Use the full public post or Reel URL rather than an account profile.

Proxy CDN media through your backend when the browser reports CORS or CORP.

Re-parse the post after an Instagram CDN URL expires.

REST integration workflow

  1. 1

    Create a private API token and allow this platform in its permissions.

  2. 2

    POST one complete public post URL to the shared endpoint.

  3. 3

    Select and proxy the required items from images, videos, and audios.

Download API questions

Which Instagram URLs does the download API support?

Supported public single-post formats include instagram.com/p/{code}, instagram.com/reel/{code}, instagram.com/reels/{code}, instagram.com/share/.... Profiles, Highlights, Explore pages, direct messages, private posts, login-only media, and expired Stories are not supported.

What media does the Instagram Download API return?

The response can contain both images[] and videos[] for mixed or carousel posts. Available cover and thumbnail candidates remain separate from downloadable post media.

How should my application download returned Instagram media URLs?

Use a backend request with Referer: https://www.instagram.com/ and a browser User-Agent. Direct browser previews can fail because Instagram CDNs enforce CORS, CORP, cookies, or expiring signatures.

How is a successful Instagram API request billed?

A response containing at least one image, video, or audio URL costs 1 credit. Failed, unsupported, authentication, and empty-media results do not consume credits.