Rumble hub

Rumble transcript API

Read existing Rumble caption tracks as plainText plus optional timed segments — no charge when captions are missing.

GET /v1/rumble/videos/transcript

1 credit when a transcript is found; no charge when captions are unavailable.

About this endpoint

`GET /v1/rumble/videos/transcript` takes a required public video `url`. On a found lookup, `data.transcript` includes `language` (when reported), `plainText`, and optional `segments` (`text`, `startMs`, `endMs`). `data.video` carries the resolved id and canonical URL. Branch on `data.lookupStatus` (`found` / `not_found` / `lookup_failed`) before you write rows.

This route only returns captions that already exist on the video. There is no `useAiFallback` speech-to-text path. Billing is 1 credit when a transcript is found and 0 when captions are unavailable — confirm with `meta.creditsCharged`. For title, metrics, and `captionTracks` listings without the spoken body, use `GET /v1/rumble/videos`. Comments are `GET /v1/rumble/videos/comments`.

Rumble transcript API FAQ

How do I get a Rumble video transcript via API?

Call `GET /v1/rumble/videos/transcript` with your Social Fetch API key (`x-api-key`) and a public video `url`. Read `data.lookupStatus`, then `data.transcript.plainText` or `data.transcript.segments`. See the API docs for parameters and examples.

How much does the Rumble transcript endpoint cost?

1 credit when a transcript is found; 0 credits when a transcript is unavailable, as documented on this page. Confirm every response with meta.creditsCharged — that field is the billing source of truth.

What does the Rumble transcript response look like?

When found, `data.transcript` includes `language` (when reported), `plainText`, and optional `segments` (`text`, `startMs`, `endMs`). `data.video` carries the resolved video id and URL. Always branch on `data.lookupStatus` before treating the transcript as present.

What URL formats does the Rumble transcript API accept?

Public Rumble video URLs (watch-page links to a single video). Pass one `url` per request. Private or deleted videos resolve as `not_found` rather than a fake empty transcript.

Do I pay when Rumble has no captions?

No. When captions are unavailable, `lookupStatus` is not `found` and the operation charges 0 credits. Persist `meta.requestId` when you need to debug a miss, and still check `meta.creditsCharged`.

Does this run speech-to-text when Rumble has no captions?

No. This route returns captions when they exist. There is no TikTok-style `useAiFallback` on Rumble transcripts. If you need title and engagement without caption text, use `GET /v1/rumble/videos` instead.

How is this different from Rumble video detail?

`GET /v1/rumble/videos` returns metadata, channel, metrics, and `captionTracks` listings. `GET /v1/rumble/videos/transcript` returns the spoken caption content (`plainText` and timed segments when available). Call video detail for views and title; call transcript for caption text.