Instagram Media API — Fetch Images and Video Assets
Documentation menu
FetchLayer FetchLayer API

Stream an image or video asset

Re-fetches one asset and streams it back, with Range requests supported. Instagram’s own asset URLs are signed and expire, so every asset in a response carries a downloadUrl pointing here instead. Only Instagram’s own CDN hosts can be fetched; anything else is a 400 saying so. Billing: 1 credit.

GET /media Utilities
https://api.fetchlayer.dev/instagram/media
OpenAPI JSON

Headers

Authorization string required

Bearer token — your FetchLayer API key.

Parameters

url string required

The asset URL, taken from an asset’s downloadUrl or from a profilePicUrl or coverUrl. Must be an Instagram CDN host.

Response Fields

media

Stream an image or video asset

(binary) file

The bytes, streamed. Content-Type, Content-Length, Content-Range and Accept-Ranges are passed through, so byte-range seeking works.

Request

curl -X GET "https://api.fetchlayer.dev/instagram/media?url=https%3A%2F%2Fscontent-muc2-1.cdninstagram.com%2Fv%2Ft51.82787-15%2F..." \
  -H "Authorization: Bearer ss-your-key"

Response

{
  "note": "Binary data streamed back with the upstream content type."
}