Reddit hub

Reddit transcript API

Pass a Reddit post permalink or hosted video URL and get caption text as plainText plus timed segments when tracks exist.

GET /v1/reddit/posts/transcript

1 credit Failed requests are free

About this endpoint

GET /v1/reddit/posts/transcript takes a required url: a public post permalink or a direct hosted video URL. Optional language is a two-letter ISO 639-1 code when more than one caption track exists. On a completed 200, branch on data.lookupStatus (found / not_found / lookup_failed). When the post resolves, data.post carries id, url, and nullable videoId. data.transcript is either null or { plainText, language, segments } with text / startMs / endMs per segment.

found does not guarantee a non-null transcript — the post can resolve while captions are missing. Unlike LinkedIn or Rumble, a completed lookup still bills the flat credit even when transcript is null. There is no useAiFallback. Confirm with meta.creditsCharged, and keep meta.requestId when a row looks wrong.

Reddit transcript API FAQ

How do I get a Reddit post transcript via API?

Call GET /v1/reddit/posts/transcript with your Social Fetch API key (x-api-key) and a public post or hosted video url. Optionally pass language as a two-letter ISO 639-1 code. Read data.lookupStatus, then data.post and data.transcript. See the API docs for parameters and examples.

How much does the Reddit transcript endpoint cost?

Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged — that field is the billing source of truth.

What URL formats does the Reddit transcript API accept?

Public Reddit post permalinks and direct hosted video URLs. Pass one link as url. Private, deleted, or otherwise unresolved media come back as not_found.

What format is the Reddit transcript response?

When captions are available, data.transcript has plainText, language (ISO 639-1 when reported), and segments (text, startMs, endMs). When captions are missing after a resolved post, transcript is null. Always check data.lookupStatus before assuming speech text arrived.

Does a found Reddit transcript lookup always return text?

No. lookupStatus of found means the post resolved. data.transcript can still be null when captions are not exposed. You still pay the credit for a completed lookup (unlike LinkedIn/Rumble found-only billing). Persist meta.requestId when you need to debug a miss.

When should I pass the language query param?

Use optional language (exactly two letters, ISO 639-1) when you want to prefer a caption track among several. Omit it when you do not care which language track is chosen.

Reddit transcript vs Reddit post comments?

Use GET /v1/reddit/posts/transcript for spoken text from a video post. Use GET /v1/reddit/posts/comments for the comment tree on a permalink. They are different paths on the Reddit hub.