100 free credits on signup · no card required

Instagram Summary API

One URL in. Clean JSON out.

Give this endpoint a public Instagram reel URL and it returns a ~150-word summary plus three to five key points, derived from the reel's transcript. Read the availability note before you build on it: transcription currently runs in subtitles-only mode, and Instagram reels rarely carry machine-readable captions, so a large share of calls return a 404 saying no transcript is available. Those failures are not charged, but you should not assume a given reel will work.

Credits 42 / reel
Input ?url=
Cache
GET · BEARER
Request composing…
Cached forever
same bytes every call
Works with your stack
cURL Python Node.js Zapier n8n Make MCP
One key · one credit balance · plain REST

The difference

Stop parsing markup. Start reading fields.

On the left, what a headless browser hands you. On the right, what the endpoint hands you.

Scraping it yourself raw HTML · every call
<article class="_aagv _ab8w x1n2onr6" role="presentation"><div class="x9f619 xjbqb8w x78zum5"><div class="_aagu"><img alt="Photo by @creator" class="x5yr21d xu96u03" src="https://scontent.cdninstagram.com/v/t51...blob"/></div><section class="x6s0dn4 x78zum5 xdt5ytf"><span class="x1lliihq _aacl _aaco">55,210 likes</span><div class="_a9zs"><span dir="auto">Three settings you should change today</span></div><span class="_aacl _aaco x1i10hfl">View all 981 comments</span></section><time class="_aaqe" datetime="2026-07-03T12:00:00.000Z">18h</time></div><script type="application/json" data-sjs>{"require":[["ScheduledServerJS","handle",null,[{"__bbox"...
×Class names rotate; your selectors break weekly ×Headless browsers, proxies, blocks to babysit ×Counts arrive as strings, not numbers
One GET request 3 typed fields
{
"data": {
"platform": "instagram",
"entity_id": "C8xQvZ2sVAb",
"language": "en",
"summary": "A quick tutorial covering three commonly missed configuration steps, with a before/after comparison and a call to check the pinned comment for the full guide."
},
"request_id": "req_01JZX4M8Q2TE9W"
}
Stable field names, documented nulls No proxies, no browser, no login session Counters are integers you can sort on

The payload

What comes back

{ data, meta?, request_id }
01 Summary, key points, language

One object: the summary prose, a short array of key points, and the language code the transcript was detected in. There is no per-sentence structure and no timestamps here. If you need the spoken words positioned in time, the Instagram Transcript API is the endpoint that returns them.

02 Capped at 24,000 characters

The summary is generated by a small language model reading the transcript text, capped at the first 24,000 characters. For a 30-second reel that is the whole thing; for a long-form video post the tail can fall outside the window. The model is told to produce a ~150 word summary and three to five bullets, and it usually does, but exact length varies per call.

03 No captions, no summary

Getting there requires a transcript to exist first. The pipeline pulls the reel, looks for captions the platform already carries, and summarizes what it finds. Where no captions exist, the chain stops with a 404 and nothing is billed. Speech-to-text on the audio track is disabled at present, which is why Instagram — a platform that does not reliably expose subtitle files publicly — is the weakest of the four platforms we support here.

Field explorer Pick a key to see its type and the caveats.
string|null Nullable Per item
language

Detected language of the source transcript as a short code, e.g. "en". Null when the transcript carried no language tag.

{
"summary": "A quick tutorial covering three commonly missed configuration steps, with a before/after comparison and a call to check the pinned comment for the full guide.",
"key_points": ["…"],
"language": "en"
}
Good fit

Reach for this when

  • Triaging a backlog of saved reels: read the summary and key points instead of watching each one, then decide which few are worth your time.
  • Adding a text description to a link-preview card, newsletter roundup, or internal Slack digest where the reel itself cannot be embedded.
  • Feeding a RAG index or classifier that works on prose. Summaries are far cheaper to embed than full transcripts and lose less than you would expect for topical retrieval.
  • Accessibility and search: giving reels in a content library a text body that is actually indexable.
Different job?

There's an endpoint for that

  • You need the exact words the creator said, or quotes you can attribute. Use the Instagram Transcript API — this endpoint paraphrases, and a language model's paraphrase is not a quote.
  • You want the caption, likes, comments and view count. That is the Instagram Stats API, which costs a fraction of this and never depends on a transcript.
  • You want summaries at scale and reliability matters more than platform. The TikTok Summary API sits on the same pipeline but TikTok ships subtitles with its public data, so success rates there are materially higher.
  • The reel has no speech — a music-only clip, a silent carousel, a static image post. There is nothing to transcribe and nothing to summarize.

Pricing

Start free, pay for what comes back

One summary is 42 credits — about 21¢ on the monthly plan, 19¢ on annual. Most Instagram reels carry no readable captions, so expect 404s; those failed calls are never charged.

Estimate your bill
$117/ month
30 reels/day × 42 credits × 365 days = 459,900 credits/yr, or $1,398/yr on the annual plan plus 448 top-up blocks Whichever plan is cheaper for that volume, divided by 12.
30
102,000
Credits / yr 459,900
Plan Annual $54/yr
Per reel 21¢

Estimate only, on a full-year basis. 42 credits per returned reel. Monthly: $5 per 1,000 credits with $4/1,000 top-ups. Annual: $54 per 12,000 credits with $3/1,000 top-ups. We show whichever plan is cheaper for your annual volume, divided by 12. Failed calls are never charged; cache hits cost the same as fresh calls.

Free trial
100 credits

On signup, no card. Your key is on screen immediately.

Get your free API key
Monthly $5/mo 1,000 credits. Top-ups $4 per extra 1,000.
Annual $54/yr 12,000 credits. Top-ups $3 per extra 1,000.

Entry price, side by side

Cheapest way to start

Verified July 2026 from each vendor's live pricing page
ScraperSocial
$5 / mo 1,000 credits · 100 free credits, no card
Supadata
$5 / mo 300 credits, annual commitment · 100 free/mo
SocialKit
$29 / mo 12,000 credits · 20 free credits
Dumpling AI
$40 / mo Billed annually · free tier size unpublished
ScrapeCreators
$47 pack 25,000 credits, no subscription · 100 free once

Credits are not equivalent units across vendors — each meters differently. Price your own workload on both before deciding on entry price alone. At high volume, several of these are cheaper per credit than we are.

Engineering notes

Docs you can build on

We document exactly how every endpoint behaves — nulls, caching, billing — so what you ship on day one is still running in month six. No surprises, no support tickets.

Failed calls are never charged Public data only, no login session Built for parallel traffic

Speech-to-text is switched off. The transcript layer reads captions the platform already publishes; it does not listen to audio. TikTok generally carries those captions. Instagram generally does not expose them in public data, so most Instagram reels currently produce no transcript and therefore no summary.

The failure is clean and specific: HTTP 404 with a message saying no transcript is available for this content. Handle it as an expected branch in your code, not an exception. And check the response before you plan a batch run — do not build a queue of 10,000 reels on the assumption that they will resolve.

A language model wrote this text. It compresses, it reorders, and on a rambling or heavily jargoned reel it can flatten a nuance that mattered. Do not paste the output into anything where a misattributed claim would be a problem — moderation decisions, legal review, anything published as the creator's words.

Numbers and proper nouns are where small models slip most often. If a figure in the summary is load-bearing for you, pull the transcript and check it.

Summaries are stored under an immutable cache class with no expiry. A reel's spoken content does not change after posting, so the second call for the same URL returns the stored copy in milliseconds with x-cache: hit.

A cache hit still costs 42 credits. If you are calling the same reel repeatedly, store the result on your side. fresh=true forces a regeneration at the same price, which is only worth doing if you suspect the stored summary was produced from a partial transcript.

This is one of the most expensive calls in the catalogue because it is three operations behind one URL: fetching the reel, obtaining the transcript, and an LLM pass over it. At $0.005 per credit that is about 21 cents per reel on the monthly plan, 19 cents on annual.

If you plan to need both the transcript and the summary for the same reel, call the transcript endpoint first. The transcript is stored permanently, and a later summary call reuses it rather than repeating the fetch.

We read logged out, the same as any visitor. Private accounts, deleted posts, and age- or region-gated content return an error rather than a partial result, and are not charged. There is no login, no session, and no way to reach content that a browser in incognito mode could not.

Questions

Frequently asked

Partially, and we would rather say so. The summary depends on a transcript, and transcription runs in subtitles-only mode with speech-to-text disabled. Instagram rarely publishes readable caption files, so many reels return a 404 saying no transcript is available. Calls that fail cost nothing. If reliability matters today, the TikTok Summary API runs the same pipeline against a platform that does ship subtitles.

Send a GET to /v1/instagram/summary with the public reel URL and your API key. If a transcript can be obtained, you get back a summary string, a key_points array, and the detected language. No Instagram developer account, no OAuth, no app review. Expect and handle a 404 for reels where no transcript exists.

42 credits per reel. Credits are $0.005 each on the monthly plan and $0.0045 on annual, so roughly 21 cents or 19 cents per call. The price covers the reel fetch, the transcript, and the language model pass. Cached summaries cost the same as fresh ones. Errors, including the no-transcript 404, are never charged.

Good enough to triage with, not good enough to quote. It is written by a small language model from the transcript text, so it captures the topic and main beats reliably but can blur specifics — figures, names, and conditional claims especially. Treat it as an abstract. When exact wording matters, fetch the transcript and read the source line.

Yes, where a transcript exists in that language. The language field tells you what the source transcript was detected as. The summary itself is generated from that transcript and generally follows the source language rather than translating to English, though the model is not instructed either way, so do not depend on it. Translate downstream if you need a guaranteed output language.

You get an error, not an empty summary. A music-only reel, a silent clip, or a still image has nothing to transcribe, so the chain stops before the model ever runs and the call is not billed. This is also true of reels whose audio is speech but whose captions are unavailable — the reason differs, the outcome for your code does not.

Cached permanently. A reel's spoken content is fixed once posted, so the first successful call is stored and every later call for that URL returns it with x-cache: hit. Pass fresh=true to regenerate. It costs the same 42 credits, so only do it if you have reason to believe the stored summary came from a truncated or partial transcript.

Next

Pairs well with

Full Instagram API reference →
/v1/instagram/transcript
Instagram Transcript API Full transcript of an Instagram reel with timestamped segments. 40 cr / reel
/v1/instagram/stats
Instagram Stats API Likes, comments and view counts for an Instagram post or reel. 1 cr / post
/v1/tiktok/summary
TikTok Summary API Short AI summary of a TikTok video, built on its transcript. 10 cr / video
/v1/tiktok/transcript
TikTok Transcript API Full transcript of a TikTok video with timestamped segments. 8 cr / video

More Instagram endpoints

/v1/instagram/transcript Full transcript of an Instagram reel with timestamped segments. 40 credits / reel /v1/instagram/stats Likes, comments and view counts for an Instagram post or reel. 1 credit / post /v1/instagram/comments Paginated comments on an Instagram post; charged per comment returned. 3 credits / comment /v1/instagram/channel-stats Follower counts, bio and profile metadata for an Instagram account. 3 credits / profile /v1/instagram/channel-posts Latest posts from an Instagram account with per-post metrics. 2 credits / post /v1/instagram/channel-reels Latest reels from an Instagram account with per-reel metrics. 3 credits / reel /v1/instagram/reels-search Keyword search over Instagram reels. 3 credits / result /v1/instagram/download Resolves a downloadable media URL for an Instagram reel (URL expires within 1h). 40 credits / video

Try the Instagram Summary endpoint free

100 trial credits on signup — no card, key on screen immediately.

1 Sign up free no card · 30 seconds
2 Copy your key sk_live_...
3 GET the endpoint /v1/instagram/summary
Get your free API key