One URL in. Clean JSON out.
Give this endpoint a public Instagram reel or video post URL and it returns a ~150-word summary plus three to five key points, derived from the reel's transcript. The price is 4 credits plus 20 credits per started minute of video: the per-minute part is the transcript, which is produced per minute upstream, and the 4 covers the reel and the summary pass. A 30-second reel is 24 credits. Failed calls are not charged.
Use via MCP: Instagram MCP server gives Claude, Cursor and any MCP client this endpoint as a tool.
The difference
On the left, what a headless browser hands you. On the right, what the endpoint hands you.
<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"... {"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"}
The payload
One object: the summary prose, a short array of key points, a language field, and duration_sec, the length of the video that the per-minute part of the price was computed from. There is no per-sentence structure and no timestamps here. If you need the spoken words themselves, the Instagram Transcript API returns them.
The summary is generated by a small language model reading the transcript text, capped at the first 24,000 characters. For a reel that is the whole thing; for a long 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.
Getting there requires a transcript to exist first. If the reel has already been transcribed, by this endpoint or by the transcript endpoint, that stored transcript is reused and the per-minute charge is for its stored duration. Otherwise the transcript is produced on this call, which is where the per-minute price comes from.
Length of the video in seconds. The per-minute charge is 20 credits for each started minute of this; null only for transcripts stored before the field existed, which bill as one minute.
Pricing
One summary is 4 credits plus 20 per started minute of video — 24 credits for anything under a minute, about 12¢ on the monthly plan, 10.8¢ on annual. Failed calls are never charged.
Estimate only, on a full-year basis. 4 credits per returned reel. Monthly: $5 per 1,000 credits with $5/1,000 top-ups. Annual: $54 per 12,000 credits with $4.50/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.
On signup, no card, up to 5 items a call. Your key is on screen immediately.
Get your free API keyEntry price, side by side
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
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.
The transcript behind the summary is produced per minute of video upstream, and that is passed through as 20 credits per started minute. Seconds round up: a 20-second reel and a 59-second reel both bill one minute (24 credits), a 61-second reel bills two (44), and the ten-minute cap means the most one call can cost is 204.
duration_sec in the response is the length the charge was computed from. The credit gate applies the same rule up front: a balance below 24 credits is refused with a 402 rather than part-charged.
Both /reel/ and /p/ URLs work for video content. A photo, a carousel or a post with no video is refused with a 422 and is not charged, as is any video longer than ten minutes. Private accounts, deleted posts and anything behind a login are unreachable: we read the same public pages a logged-out browser can open.
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.
When there is no speech, the upstream transcription still processes the audio, bills the minute, and usually returns a stray syllable rather than nothing. The summary pass then summarises that. We cannot tell it apart from a very short real transcript, so the call is a charged 200. If a reel is obviously music only, skip 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, and bills the same 4 plus 20 per started minute of the stored duration.
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 producing it again.
Questions
4 credits plus 20 credits for each started minute of video. Most reels are under a minute, so most calls are 24 credits, about 12¢ on the monthly plan and 10.8¢ on annual. A 90-second reel is 44 credits and the ten-minute cap puts the ceiling at 204. The duration_sec field shows the length the charge came from. Cached summaries cost the same as fresh ones. Errors are never charged.
Yes. The transcript it depends on is produced through our upstream per-minute transcription for public reels and video posts, which is why the price has a per-minute component. The earlier limitation where Instagram returned 404 for lack of captions no longer applies.
Send a GET to /v1/instagram/summary with the public reel URL and your API key. You get back a summary string, a key_points array, language (null on Instagram) and duration_sec. No Instagram developer account, no OAuth, no app review. Handle a 422 for non-video or over-long posts and a 404 for the rare reel where no text comes back.
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. The transcript is in whatever language is spoken, and the summary generally follows the source language rather than translating to English, though the model is not instructed either way, so do not depend on it. The language field is null on Instagram because the transcript source does not report one; detect it from the text if you need the tag.
A photo or carousel is refused with a 422 and not charged. A video with music and no speech is different: the audio is still processed and billed per minute, the transcript comes back as a stray syllable or a few words of noise, and the summary summarises that. Skip reels you know are music only.
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 at the same price. Pass fresh=true to regenerate; it costs the same, so only do it if you have reason to believe the stored summary came from a truncated transcript.
Next
25 trial credits on signup — no card, key on screen immediately.