StoriesFly logo
Content API

Download Instagram Content

Proxy download from Instagram CDN. Pass a CDN URL from stories, posts, or highlights to get the binary media file. Supports images and videos. URL must be from cdninstagram.com, fbcdn.net, or instagram.com.

GET/api/download
Auth: X-Api-Key header or Bearer JWTRate limits: Free: 25/day, Starter: 500/day, Growth: 5K/day, Scale: 50K/day. Burst: 60/min.

Parameters

NameInTypeRequiredDescription
urlquerystring (URI)YesInstagram CDN URL to download

Response

json
Binary media (image/jpeg, image/png, video/mp4) with appropriate Content-Type header

Code Examples

cURL
curl "https://storiesfly.com/api/download?url=https://cdninstagram.com/..." \
  -H "X-Api-Key: sf_live_your_key_here" \
  -o media.jpg
JavaScript
const res = await fetch(
  `https://storiesfly.com/api/download?url=${encodeURIComponent(cdnUrl)}`,
  { headers: { "X-Api-Key": "sf_live_your_key_here" } }
);
const blob = await res.blob();
// Save or process the media file
Python
import requests

response = requests.get(
    "https://storiesfly.com/api/download",
    params={"url": "https://cdninstagram.com/..."},
    headers={"X-Api-Key": "sf_live_your_key_here"}
)
with open("media.jpg", "wb") as f:
    f.write(response.content)

FAQ

Why do I need a proxy download?
Instagram CDN URLs have expiring tokens and CORS restrictions. The download proxy handles authentication and serves the content with proper headers for client-side consumption.
What domains are allowed?
Only URLs from cdninstagram.com, fbcdn.net, and instagram.com are accepted. Other domains are rejected with a 403 error.

Related Endpoints

Ready to integrate?

Create a free API key and start making requests in minutes.

Last updated: March 4, 2026