Kick VOD Scraper avatar

Kick VOD Scraper

Pricing

from $3.10 / 1,000 vod fetcheds

Go to Apify Store
Kick VOD Scraper

Kick VOD Scraper

Fetch every saved VOD for one or more Kick channels, one row per video, optionally with full per-VOD detail (category, thumbnails, viewer stats, live status). Accepts a numeric channel id or slug (auto-resolved). No login or API key needed. Split from romy/kick-all-in-one-api into a focused Actor.

Pricing

from $3.10 / 1,000 vod fetcheds

Rating

0.0

(0)

Developer

Romy

Romy

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

14 days ago

Last modified

Categories

Share

What does Kick VOD Scraper do?

Kick VOD Scraper takes one or more Kick channel ids or slugs and pushes every saved VOD (video-on-demand) for that channel, one dataset row per VOD, optionally enriched with full per-VOD detail (category, thumbnail set, viewer stats, live status).

It talks directly to the same internal API the official Kick Android app uses (mobile.kick.com, kick.com), reverse-engineered by capturing and analyzing live traffic from the real app. No Kick account, no API key. This is the VOD slice of Kick All-in-One API, split out as its own focused Actor.

Why use Kick VOD Scraper?

  • Accepts a channel slug or numeric id — pass either "kaneljoseph" or "18750821"; slugs are resolved to the numeric id automatically (the underlying videos endpoint needs the numeric id, confirmed live)
  • Optional full detail per VOD in parallel — one extra call per VOD, fetched concurrently, not sequentially
  • No account needed — every request works fully anonymously
  • Use cases: VOD archival/indexing, content research, building a channel's video history for analytics

Input

FieldTypeDescription
channelIdsstring[]Required. Each entry is a numeric Kick channel id or a channel slug.
includeDetailbooleanFetch full per-VOD detail via an extra call per video. Default true.

Example:

{
"channelIds": ["kaneljoseph", "18750821"],
"includeDetail": true
}

Output

One dataset row per VOD:

{
"channelId": 18750821,
"sourceIdentifier": "kaneljoseph",
"video": {
"id": "01a04b02-d928-7657-aa48-6b98184d5b10",
"title": "IT TAKES TWO MARATHON WITH SUKI MELLOW...",
"duration": 154507,
"start_time": "2026-08-29T00:54:33Z",
"thumbnail": { "src": "https://images.kick.com/video_thumbnails/.../720.webp" }
},
"detail": { "...": "full videoDetail response, present only if includeDetail is true" }
}

Known limitations

  • This endpoint has no pagination of any kind, confirmed live by the parent Actor's own testing of every plausible param name (page, cursor, after, offset, limit) — every one was silently ignored. It always returns the same up-to-30 most recent VODs for a channel. This is a real Kick backend limitation, not a gap in this Actor, so no maxPages/maxItems input exists here.
  • A channel with zero VODs pushes no rows for that channel id (logged, not an error).
  • This is an unofficial, reverse-engineered integration, not affiliated with or endorsed by Kick Streaming, Inc.

Pricing

Pay-per-event. You are charged a video event ($0.004 on the FREE tier) for each VOD row pushed. See the Actor's Pricing tab for current rates.