# Kick Trending Clips Scraper — Viral by View Velocity (`tactful_anvil/kick-trending-clips-scraper`) Actor

Find what to clip RIGHT NOW: Kick trending clips ranked by views-per-hour (not stale totals). Global, per-category or per-channel, with video download URL, thumbnails, filters and monitor mode. Built for clippers earning per view. HTTP-only, no login. $2.00/1,000 clips.

- **URL**: https://apify.com/tactful\_anvil/kick-trending-clips-scraper.md
- **Developed by:** [Mr Zack](https://apify.com/tactful_anvil) (community)
- **Categories:**
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.00 / 1,000 clip results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Kick Trending Clips Scraper — what should I clip right now? $2.00/1,000 clips

The question every clipper asks every morning: **"what's going viral on Kick right now?"** This Actor answers it in one run: trending Kick clips — global, per category, or per channel — ranked by **view velocity (views per hour)**, not by stale total views. A 2-hour-old clip doing 500 views/hour beats a week-old clip with a big total. That's the clip you want to repost while it's still rising.

Every row includes the **direct video URL** and thumbnail, so your pipeline can go straight from "found it" to "editing it". Plain HTTP against Kick's public JSON API. No login, no API key, no browser, no proxies.

**$2.00 per 1,000 clips + $0.001 per start.** Scanning is free — you only pay for the ranked rows you receive. `maxClips` is a hard cost cap.

### Who uses this

- **Clippers & content farmers** — running clipping campaigns (Whop Content Rewards & co.) that pay per view: find rising moments before they're saturated, download, cut, post.
- **Streamer editors & agencies** — daily digest of what popped from your roster's streams without scrubbing VODs.
- **Meme pages & aggregators** — fresh viral supply for TikTok/Shorts/Reels, filtered to ≤60s.
- **Researchers & AI agents** — structured stream-culture trend data with predictable cost.

### What you get per clip

| Field | Example | Notes |
|---|---|---|
| `rank` | `1` | position after ranking |
| `clipId` | `clip_01M14…` | stable dedupe key |
| `title` | `he actually did it` | |
| `channel` / `channelSlug` | `xQc` | who was live |
| `creator` | `ClipGoblinJoe` | who clipped it |
| `category` / `categorySlug` | `Just Chatting` | |
| `views` / `likes` | `120400` | |
| `ageHours` | `3.2` | how fresh |
| `viewsPerHour` | `37625` | **the velocity signal** |
| `durationSeconds` | `30` | |
| `isMature` | `false` | filter for brand-safe campaigns |
| `clipPageUrl` | | share/verify link |
| `videoUrl` | | **direct video URL (m3u8)** |
| `thumbnailUrl`, `livestreamId`, `createdAt`, `scrapedAt` | | |

Every field always present (nullable, never missing).

### Input

```json
{
  "mode": "global",
  "time": "day",
  "sortBy": "velocity",
  "maxDurationSeconds": 60,
  "excludeMature": true,
  "maxClips": 50
}
```

- **mode** — `global` (all of Kick), `category` (e.g. `["just-chatting", "slots-casino"]`), or `channel` (e.g. `["xqc"]`).
- **sortBy** — `velocity` (default, catches what's rising NOW) or `views`.
- **minViews / minViewsPerHour / maxDurationSeconds / excludeMature** — quality knobs. ≤60s + non-mature = Shorts-ready.
- **scanDepth** — how deep to scan before ranking (free); **maxClips** — how many ranked rows you pay for.
- **onlyNew** — monitor mode: remembers returned `clipId`s, later runs only output (and charge) genuinely new clips.

### How to schedule this Actor (recommended)

Viral moments live and die in hours — this is built to run on a schedule:

1. Open the Actor → **Try for free**, set your categories/channels and filters.
2. Save as a task → **Schedules** → e.g. `0 */2 * * *` (every 2 hours) with `"onlyNew": true`.
3. Add an integration (Slack, Discord webhook, Google Sheets) — new rising clips land where you work, with video links ready.

Monitoring global trending every 2 hours with `maxClips: 25` costs about **$3/month**.

### Pairs perfectly with

- **[Whop Content Rewards Scraper](https://apify.com/tactful_anvil/whop-content-rewards-scraper)** — find clipping campaigns that pay per view, then use this Actor to find the content to clip. Campaign → content → payout.

### For AI agents & MCP

- Minimal input that just works: `{}` — global day trending by velocity.
- Predictable cost: exactly `$0.002 × clips` + `$0.001` per run.
- Stable flat schema; `clipId` is the dedupe key; `RUN_SUMMARY` in the key-value store.

### Fair use & data source

Only public data from Kick's public API (the same data shown on kick.com). Reasonable rate limits. No login, no personal data beyond public usernames. Respect Kick's ToS and creators' rights when reusing content — clipping campaigns normally grant this permission explicitly.

# Actor input Schema

## `mode` (type: `string`):

Where to look for clips.

## `categories` (type: `array`):

Kick category slugs, e.g. \["just-chatting", "slots-casino"].

## `channels` (type: `array`):

Kick channel slugs, e.g. \["xqc", "adinross"].

## `time` (type: `string`):

Kick clip window. day = the freshest viral moments.

## `sortBy` (type: `string`):

Velocity surfaces clips going viral NOW instead of old clips with big totals.

## `minViews` (type: `integer`):

Skip clips below this view count.

## `minViewsPerHour` (type: `integer`):

Skip clips below this velocity.

## `maxDurationSeconds` (type: `integer`):

Skip clips longer than this (0 = no limit). Shorts/TikTok clippers often want <= 60.

## `excludeMature` (type: `boolean`):

Skip clips flagged 18+ — most brand campaigns require this.

## `maxClips` (type: `integer`):

Hard cost cap: at most this many ranked clips ($2.00 per 1,000).

## `scanDepth` (type: `integer`):

How many clips to scan before filtering/ranking. Scanning is free; you only pay for returned rows.

## `onlyNew` (type: `boolean`):

Skip clips already returned by previous runs. Schedule hourly and only pay for genuinely new viral moments.

## Actor input object example

```json
{
  "mode": "global",
  "time": "day",
  "sortBy": "velocity",
  "minViews": 0,
  "minViewsPerHour": 0,
  "maxDurationSeconds": 0,
  "excludeMature": false,
  "maxClips": 100,
  "scanDepth": 300,
  "onlyNew": false
}
```

# Actor output Schema

## `clips` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("tactful_anvil/kick-trending-clips-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("tactful_anvil/kick-trending-clips-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call tactful_anvil/kick-trending-clips-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,tactful_anvil/kick-trending-clips-scraper"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/ePhMWYsa32mZalTWa/builds/oZgdiPOcjtwvLEJk3/openapi.json
