# 快手 热榜 API (kuaishou.trending)

- Canonical page: https://everyinfra.com/kuaishou-api/trending
- Endpoint: POST /api/v1/social with {"platform": "kuaishou", "action": "trending", "params": {...}}
- Price: $0.000806 per call ($0.81 per 1,000 requests); failed and empty results are not charged
- Returns: list, default 50, max 50 per call (larger values are capped)
- Mode: sync; add "mode": "async" for slow tasks

快手热榜不需要参数，每次返回整张热榜，每条带名次、标题、热度值、角标 `label`（置顶、新、独家等原文）、配图 `cover_url`，以及这条热点下的作品 ID 列表 `video_ids`。它回答「快手此刻最热的是什么、相关视频在哪」，适合热点追踪和内容运营：看到一个话题，马上就能顺着作品 ID 去读视频和评论。条数默认 50，上限也是 50。

`video_ids` 是 3x 开头的短 ID，可以直接传给快手的视频详情和评论；有时榜单不带作品 ID，这时没有这个字段。传的时候把作品 ID 填进视频详情或评论的链接参数，一次传一个；`cover_url` 是热点的配图，做带图的热点日报可以直接用作缩略图。

## Health

- Live health (24h percent, hourly and daily trends): https://api.everyinfra.com/api/v1/social/availability?platform=kuaishou&action=trending

## Parameters

| name | type | required | default | description |
|---|---|---|---|---|
| limit | integer (1–50) | no | 50 | 这次调用最多返回的条数，整数，1–50；不传按默认值，实际返回可能少于这个数。超过上限照收，按上限返回。 |

## Response fields (items in `results`)

| field | meaning |
|---|---|
| rank | 榜单名次，从 1 开始，按快手榜单顺序（trending、hot_boards：置顶的那条排第 1）。 |
| title | 标题。平台无标题概念时（如纯文本帖）为 null。 |
| hot_value | 热度（trending、hot_boards）：快手热榜显示的热度值，页面上写成「1244.2万」，这里换成整数 12442000；置顶那条可能没有。只在榜单内可比。 |
| label | 热榜角标，原文：置顶 / 新 / 独家 等（trending；hot_boards 只标置顶）；没有角标时没有这个字段。 |
| cover_url | 封面图（trending 上是这条热点的配图）。 |
| video_ids | 这条热点下的作品 ID 列表（trending，3x 开头的短 ID），可直接传给 video、comments 的 url；有时榜单不带作品 ID，这时没有这个字段。 |
| platform | 数据来源平台标识，与请求里的 platform 一致（如 xiaohongshu、tiktok）。 |

## Example

```bash
curl -X POST 'https://api.everyinfra.com/api/v1/social' \
  -H "Authorization: Bearer $EVERYINFRA_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "platform": "kuaishou",
  "action": "trending",
  "params": {}
}'
```

```python
import os
import requests

response = requests.post(
    "https://api.everyinfra.com/api/v1/social",
    headers={"Authorization": f"Bearer {os.environ['EVERYINFRA_API_KEY']}"},
    json={
        "platform": "kuaishou",
        "action": "trending",
        "params": {},
    },
    timeout=120,
)
print(response.status_code)
print(response.json())
```

## Response example

No real sample for these example parameters yet: structure only, every value is a placeholder (…).

```text
{
  "id": "req_…",
  "platform": "kuaishou",
  "action": "trending",
  "results": [
    {
      "rank": …,
      "title": …,
      "hot_value": …,
      "label": …,
      "cover_url": …,
      "video_ids": …,
      "platform": …
    }
  ],
  "count": …,
  "billing": {
    "charged": …,
    "charged_usd": …,
    "balance_after_usd": …,
    …
  },
  "quota": { … }
}
```

## FAQ

### `video_ids` 拿到后怎么用？

每个 ID 都能直接传给快手的视频详情或评论，读到这条热点下的具体视频和观众反应，不用再拿热点标题去搜索、猜哪条视频对应它。`video_ids` 是列表，一条热点可能对应好几个作品，要逐个展开。没有这个字段的热点，只能另拿 `title` 去找视频。只展开 `rank` 靠前的几条热点，就不用为整张榜的每个作品 ID 各调一次视频详情。

### `label` 有哪些取值？

它保留快手热榜角标的原文，比如置顶、新、独家；没有角标的条目没有这个字段。统计一段时间里各种角标出现的次数，可以看出热榜上新话题冒出来的速度。热点榜那一页的角标只标置顶，想统计「新」「独家」的出现次数，只能用热榜这一页。统计时把置顶那一行单独拿出来，再按 `rank` 分段，看「新」角标多出现在榜单前段还是后段。标着「独家」的行也可以单独筛出来跟踪。

### 热榜和热点榜该用哪个？

要顺着热点去读视频，用热榜，它带作品 ID 和配图；想按文娱、社会、有用等分类看话题，或者需要浏览量，用热点榜。两张榜的热度值都只在各自榜内比较。热榜这一页不用传任何参数，没有可选的分类；读到的 `hot_value` 是整数，置顶那一行可能没有，算平均热度或画曲线前先排除掉。需要配图做展示时也选热榜，热点榜每条只有文字和数字。

## Also

- Capability catalog (no key): https://api.everyinfra.com/api/v1/social/catalog?platform=kuaishou
- OpenAPI: https://everyinfra.com/openapi.json · Agents guide: https://everyinfra.com/agents.md
