InstagramPOST /v1/instagram/reels_search

Instagram Reels Search Scraper API

Find Instagram reels for a keyword through search-engine results, then open each reel for its owner, caption, likes, comments, views, duration, audio, cover image and MP4 link.

Cost
3 credits
Failed requests
Refunded
Cache hits
Free
Response fields
7
Limits
Up to 10 reels · search-engine coverage
All limits

What the Instagram Reels Search Scraper API does

The Instagram Reels Search Scraper API finds public reels for a keyword and returns each one with owner, caption, like and comment counts, plays when available, publish time, duration, size, sound, cover image and an MP4 link. Instagram's own search requires a login, so reels are found through a public search engine's index and then opened on Instagram one by one. That has honest consequences: coverage, freshness and order follow the index, new reels appear with a delay and popular reels are not guaranteed. Filter with date_posted (last-week, last-month or last-year) and page through up to 10 result pages of about 10 reels each. A call can take 10 to 30 seconds. Each request costs 3 credits, and a fully blocked search is refunded.

What you get

Top-level fields of the response. Every field is typed and documented; nullable fields are null when the platform does not show them.

FieldTypeDescription
querystringQuery as searched (whitespace-collapsed, site: operators removed)
date_postedstring | null'last-week', 'last-month', 'last-year' or null (any time)
pageintegerResults page returned
reelsarray<object> (20 fields each)Reels in search-engine order, at most limit
reels_foundintegerDistinct reels found on this results page, before limit
reels_fetchedintegerReels whose details were read (details_available true)
has_morebooleanThe search engine has another results page (request page + 1)

Request example

Send the API key as a Bearer token. The body is a small JSON object.

curl -X POST https://api.scrapeeverything.com/v1/instagram/reels_search \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"dogs","date_posted":"last-month"}'
ParameterRequiredDescription
queryYesKeyword or phrase to search for, 1-100 characters. site: and !bang operators are ignored.
date_postedNoOnly reels the search engine dates within this window: last-week, last-month or last-year. Omit for any time.
pageNoSearch results page, about 10 reels per page. Values outside 1-10 are rejected.
limitNoHow many of the page's reels to open for full details.

What it costs

Each successful request costs 3 credits. Your first 100 credits are free. With credit packs, 1,000 requests to this endpoint cost:

  • Builder pack

    $4.68

    25,000 credits for $39.00

  • Growth pack

    $3.57

    100,000 credits for $119.00

  • Scale pack

    $2.69

    500,000 credits for $449.00

See pricing for all packs and rate limits.

Use cases

  • Discover creators who publish reels about a topic, product category or location.
  • Find recent reels that mention your brand or a competitor's product.
  • Collect reels on a niche for content and format research.

Limitations: Unofficial API: not affiliated with or endorsed by the platform. Public data only, as a logged-out visitor sees it. Private accounts return profile fields only; posts show at most 15 newest comments; items Instagram hides from logged-out visitors are missing.

  • Instagram's own search needs a login, so reels are found through a public search engine's index (DuckDuckGo, query site:instagram.com/reel <query>). Coverage, freshness and order follow that index, not Instagram: new reels show up with a delay and popular reels are not guaranteed.
  • date_posted uses the date the search engine assigns to each page, which is usually but not always the posting date. Check taken_at for the exact publish time.
  • Up to limit reels are opened on Instagram one by one, so a call can take 10-30 seconds. A reel that cannot be read stays in the list with its search_title and search_snippet, details_available false and the reason in details_error.
  • video_url is a signed CDN link that stops working at video_url_expires_at, usually within a few days. Download it before then, for example: curl -L -o reel.mp4 "<video_url>"
  • page above 1 needs an extra search request and is blocked by the search engine more often. If the search engine blocks the request, or Instagram blocks every reel on the page, the call fails (usually TARGET_BLOCKED) and the credits are refunded.

Questions

Does it use Instagram's search?

No. Instagram search needs a login, so reels are found through a public search engine's index. Results follow that index, so new reels show up with a delay.

How many reels do I get per request?

Up to 10 per results page (limit sets how many are opened). Use page 1 to 10 for more; has_more tells you whether another page exists.

Why do some reels have no details?

A reel that cannot be read stays in the list with its search_title and search_snippet, details_available false and the reason in details_error, for example NOT_A_REEL or PRIVATE_ACCOUNT.

How much does the Instagram Reels Search Scraper API cost?

3 credits per successful request. Credits are bought in one-time packs and never expire. New accounts get 100 free credits. No payment details needed.

Am I charged for failed requests?

No. If the platform blocks the request, it times out or something fails on our side, the credits are refunded automatically. A definitive answer such as "this account does not exist" is billed because the lookup completed.

Can I re-read a result without paying again?

Yes. Send cache_days (1 to 14) and a repeat request for the same target within that window is served from your cache for free.

More Instagram endpoints

Start with 100 free credits.

Continue with Google, create an API key and send your first request in under a minute.

Get 100 free credits