Paste a Rumble video URL and get its transcript back as JSON when the video has captions, or get its top-level comments with likes and dislikes. It is a plain REST call with one API key, so you can extract Rumble transcripts in a script instead of copying text by hand or running a headless browser. Both endpoints take the same public video URL, so you can collect the text and the reactions for one video with two calls.
| Endpoint | What it returns | Credits/call | USD/call (Freelance plan) |
|---|---|---|---|
/v1/rumble/video_captions | Transcript | 1 | $0.0017 |
/v1/rumble/video_comments | Comments | 1 | $0.0017 |
/v1/rumble/video_captionsTranscript 1,000 calls = 1,000 credits = $1.67 on the Freelance plan.
| Parameter | Type | Required | Description |
|---|---|---|---|
url | string | yes | Rumble video URL. |
Sample response (trimmed):
{
"id": "v79xhhm",
"url": "https://rumble.com/v79xhhm-discovery-why-glenn-wants-israel-to-sue-the-new-york-times.html",
"language": "English (auto)",
"transcript": "WEBVTT\r\n\r\n00:00:06.890 --> 00:00:11.050\r\nLet's get into these questions, and we'll try and get through as many as we can.\r\n\r\n00:00:11.190 --> 00:00:15.650\r\nT..."
}/v1/rumble/video_commentsComments 1,000 calls = 1,000 credits = $1.67 on the Freelance plan.
| Parameter | Type | Required | Description |
|---|---|---|---|
url | string | yes | Rumble video URL. |
curl -H "X-Scapi-Key: $SCAPI_KEY" "https://api.scrapall.bipsport.com/scapi/v1/rumble/video_captions"import os, requests
r = requests.get("https://api.scrapall.bipsport.com/scapi/v1/rumble/video_captions",
headers={"X-Scapi-Key": os.environ["SCAPI_KEY"]})
print(r.json())Call the transcript endpoint with the video URL. When Rumble exposes captions for that video, the response contains the transcript text as JSON that you can store, search or pass to a language model.
If Rumble does not expose captions for the video, the transcript field is null. Check that field in your code instead of treating it as an error, and skip or flag those videos in your pipeline.
The comments endpoint returns top-level comments for a video URL with the comment text, author, createdAt, createdAtText, likeCount and dislikeCount, so you can sort comments by engagement or by date.
The comments endpoint returns top-level comments. Plan your analysis around top-level threads rather than full reply trees.
No. You only send the public video URL and your API key header. There is no Rumble login, cookie or browser session involved, and each successful call is billed on its own.
Open the Buy page, pick the Freelance plan and pay in USDT on TRC20 or ERC20. The key is shown once, right after the payment is confirmed on-chain.
The cost table on this page lists credits per call for each endpoint. The Freelance plan is $45 for 27,000 credits per 30 days.
Full reference: all rumble endpoints.