> **For coding agents and LLMs:** This is one Social Fetch marketing page (markdown export). For API orientation start with [`/llms.txt`](https://www.socialfetch.dev/llms.txt); for auth and crawl rules use [`/agents.txt`](https://www.socialfetch.dev/agents.txt); for every operation use [`/llms-endpoints.txt`](https://www.socialfetch.dev/llms-endpoints.txt).

## This page

- **On-site (HTML):** <https://www.socialfetch.dev/platforms/rumble/videos>
- **Markdown (.mdx) URL:** <https://www.socialfetch.dev/platforms/rumble/videos.mdx>

---

# Rumble Video API

Pass a public Rumble watch URL and get video metadata, uploader channel, and engagement metrics in the shared Social Fetch envelope.

`GET /v1/rumble/videos` takes a required `url` query param (a public Rumble video link). On a found lookup you get `data.video` with id, canonical url, title, description, thumbnail, duration (seconds plus a formatted label), publish time, resolution, embed and share URLs, `isLive`, nested `metrics` (views, likes, dislikes), `channel` (name, handle, url), and `captionTracks` when subtitle files are listed. Branch on `data.lookupStatus` before you write rows — HTTP 200 alone does not mean the video resolved.

Bill from `meta.creditsCharged`. This route is single-video detail. Spoken text is `GET /v1/rumble/videos/transcript`. Comment threads are `GET /v1/rumble/videos/comments`. Channel upload lists are `GET /v1/rumble/channels/videos`. Keyword discovery is `GET /v1/rumble/search`. Same API key across the Rumble tag.

## Request

- **Endpoint:** `GET /v1/rumble/videos`
- **Credits:** 1 credit
Failed requests are free
- **Input:** by video URL
- **Full reference:** [docs](https://www.socialfetch.dev/docs/api/v1/rumble/videos/get)
- **Platform page:** [/platforms/rumble](https://www.socialfetch.dev/platforms/rumble)

## FAQ

### How do I get Rumble video metadata via API?

Call GET /v1/rumble/videos with your Social Fetch API key (x-api-key) and a public video url query param. Read data.lookupStatus, then data.video (title, metrics, channel, captionTracks). See the API docs for parameters and examples.

### How much does the Rumble video 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 does the Rumble video response include?

When found: data.video with id, url, title, description, thumbnailUrl, durationSeconds, durationFormatted, publishedAt, metrics (views, likes, dislikes), width, height, channel, captionTracks, embedUrl, shareUrl, and isLive. Always branch on data.lookupStatus first.

### What URL formats does the Rumble Video 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 object.

### Does a completed lookup always mean the video was found?

No. HTTP 200 means the request finished. Check data.lookupStatus: found means you got video details; not_found means the URL did not resolve. Persist meta.requestId when you need to debug a miss.

### How is this different from the Rumble transcript endpoint?

This route returns video metadata, channel, engagement metrics, and caption track listings. GET /v1/rumble/videos/transcript returns the spoken text (plainText and timed segments when available). Call video detail when you need views and title; call transcript when you need caption content.

### Can I list every upload from a channel on this route?

No. This endpoint fetches one video by URL. For a channel's upload list use GET /v1/rumble/channels/videos. For keyword discovery use GET /v1/rumble/search.

### Do I need a Rumble developer key to look up a video?

No. You authenticate to Social Fetch with an API key. The route reads public video data; it does not act on behalf of a logged-in Rumble user.
