Instagram Reels API: user reels, search and trending reels as JSON

Pull public Instagram Reels data with REST calls: the reels of a handle, a keyword search, the current trending reels, or all reels that use one audio track. Each call returns JSON with view and like counts, so you can spot what works without scrolling the app.

Buy credits

Use cases

Endpoints and cost

EndpointWhat it returnsCredits/callUSD/call (Freelance plan)
/v1/instagram/user_reelsReels1$0.0017
/v1/instagram/reels_search_plusSearch Reels1$0.0017
/v1/instagram/reels_trendingTrending Reels1$0.0017
/v1/instagram/audio_reelsGet Reels By Audio Id1$0.0017

Endpoint details

/v1/instagram/user_reels

Reels 1,000 calls = 1,000 credits = $1.67 on the Freelance plan.

ParameterTypeRequiredDescription
user_idstringnoInstagram user id. Use this for faster response times.
handlestringnoInstagram handle. Use user_id for faster response times.
require_play_countsbooleannoOnly the literal query value 'true' enables this check. It requires a numeric, nonnegative play_count on every returned Reel, in both full responses (items[].me
trimbooleannoSet to true for a trimmed down version of the response
max_idstringnoMax id to get more reels. Get 'max_id' from previous response.

Sample response (trimmed):

{
 "items": [
  {
   "id": "3641924023820356866_21393171",
   "code": "DKKtpqaxg0C",
   "taken_at": 1748371310,
   "created_at": "2025-05-27T18:41:50.000Z",
   "caption": {
    "bit_flags": 0,
    "created_at": 1748371312,
    "created_at_utc": 1748371312,
    "did_report_as_spam": false,
    "is_ranked_comment": false,
    "pk": "18079986955772842",
    "share_enabled": false,
    "content_type": "comment",
    "media_id": "3641924023820356866",
    "status": "Active",
    "type": 1,
    "user_id": "21393171",
    "strong_id": "18079986955772842",
    "text": "Summer brings out all the girlies, soda, and global warming!!!🤗☀️\n\n#states #utah #idaho #california #oregon #newyork #minnesota #arizona #alaska #girlies #ja...",
    "user": {
     "pk": "21393171",
     "pk_id": "21393171",
     "id": "21393171",
     "full_name": "Jane Williamson",
     "is_private": false,
     "is_unpublished": false,
     "strong_id": "21393171",
     "fbid_v2": "17841400515130334",
     "username": "jane",
     "is_verified": true,
     "profile_pic_id": "3583980709961915639_21393171",
     "profile_pic_url": "https://scontent-lga3-2.cdninstagram.com/v/t51.2885-19/482782944_496357423346018_5818268903424754264_n.jpg?stp=dst-jpg_s150x150_tt6&_nc_ht=scontent-lga3-2.cd..."
    },
    "is_covered": false,
    "private_reply_status": 0
   },
   "view_count": 1685367,
   "ig_play_count": 1685367,
   "c

/v1/instagram/reels_search_plus

Search Reels 1,000 calls = 1,000 credits = $1.67 on the Freelance plan.

ParameterTypeRequiredDescription
querystringyesThe keyword to search for
date_postedstringnoGoogle-indexed date window. Recent hour/day filters are not supported because Google does not index Instagram reels reliably enough in those windows.
pagenumbernoThe page number to return. Must be between 1 and 11; page 12 or greater returns a 400 response.

/v1/instagram/reels_trending

Trending Reels 1,000 calls = 1,000 credits = $1.67 on the Freelance plan.

ParameterTypeRequiredDescription
trimstringno

/v1/instagram/audio_reels

Get Reels By Audio Id 1,000 calls = 1,000 credits = $1.67 on the Freelance plan.

ParameterTypeRequiredDescription
audio_idstringyesThe audio id from the Instagram audio page URL.
next_cursorstringnoPagination cursor returned by Instagram from the previous response.

Example: curl

curl -H "X-Scapi-Key: $SCAPI_KEY" "https://api.scrapall.bipsport.com/scapi/v1/instagram/user_reels"

Example: Python

import os, requests
r = requests.get("https://api.scrapall.bipsport.com/scapi/v1/instagram/user_reels",
    headers={"X-Scapi-Key": os.environ["SCAPI_KEY"]})
print(r.json())

FAQ

Can I upload reels with this API?

No. These endpoints only read public reels data. Publishing is done with the official Instagram Graph API on your own account.

Can I find all reels that use one audio?

Yes. The audio reels endpoint takes an audio id and returns reels that use it, see the parameters on this page.

Do I need a Meta developer app?

No. One Scrapall API key header is enough; there is no Meta app review or Instagram login on your side.

How do I pay and get my API key?

Open the Buy page, pick the Freelance plan and pay in USDT on TRC20 or ERC20. The key is shown once, right after the payment is confirmed on-chain.

How many credits does one call use?

The cost table on this page lists credits per call for each endpoint. The Freelance plan is $45 for 27,000 credits per 30 days.

Get an API key and credits

Full reference: all instagram endpoints.