---
title: "获取视频号合集列表/Get WeChat Channels User Collections"
method: POST
path: "/api/v1/wechat_channels/v2/fetch_user_collections"
tags: ["WeChat-Channels-V2-API"]
---

# 获取视频号合集列表/Get WeChat Channels User Collections

`POST /api/v1/wechat_channels/v2/fetch_user_collections`

## Request

- Base URL: `https://api.tikhub.io` (the document declares no server; this is the origin it was published from)
- URL: `https://api.tikhub.io/api/v1/wechat_channels/v2/fetch_user_collections`
- Auth: HTTP bearer

# [中文]
### 用途:
- 获取创作者主页的「合集」列表。每个合集的 `topic_id` 可传 `fetch_collection_videos` 取该合集内的视频。
- 价格：0.01$/次
- ⏱️ 由于微信服务器原因，本接口响应较慢，请将客户端请求超时（timeout）设置为 30 秒；timeout 设置过小会造成已扣费但收不到响应的情况。
- ⚠️ 大整数 ID 精度：响应中的 `topic_id` 等为 64 位大整数，超出 JavaScript 安全整数范围（2^53-1）。请始终以**字符串**方式接收 / 传递这类 ID（解析 JSON 用 json-bigint 或按文本取值），勿让其经过 JS `Number`。Swagger UI 文档页对超大整数会末位舍入显示，属正常现象，不影响接口实际返回的数据。
### 参数:
- username: 视频号 finder username（`v2_…@finder` 格式）。示例 `v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder`（人民日报）。
- raw: 可选，默认 True。True=原始响应；False=精简解析结构。
### 返回:
- 合集列表

### 响应结构与 JSON Path:
#### `raw=false`（精简，snake_case）:
- `$.data.username` —— finder username
- `$.data.count` —— 合集总数（示例 6）
- `$.data.collections[]` —— 合集数组，逐个（N 为下标）:
    - `$.data.collections[N].topic_id` —— 合集 ID（纯数字，传 `fetch_collection_videos`，示例 `14616794565351966924`）
    - `$.data.collections[N].name` —— 合集名（如「早安中国」）
    - `$.data.collections[N].desc` —— 合集简介（可能为空串）
    - `$.data.collections[N].cover_url` —— 合集封面
    - `$.data.collections[N].feed_count` —— 合集内视频数
    - `$.data.collections[N].topic_type` —— 合集类型（示例 16，与 `fetch_collection_videos` 的 `topic_type` 对应）
#### `raw=true`（完整原始响应，camelCase）:
- `$.data.collectionCount` → `count`
- `$.data.collectionInfo[]` → `collections[]`，逐个:
    - `$.data.collectionInfo[N].collectionTopicId` → `topic_id`（数字；另有 `collectionTopicIdStr` 字符串别名）
    - `$.data.collectionInfo[N].collectionName` → `name`
    - `$.data.collectionInfo[N].collectionDesc` → `desc`
    - `$.data.collectionInfo[N].coverImgUrl` → `cover_url`
    - `$.data.collectionInfo[N].feedCount` → `feed_count`
    - `$.data.collectionInfo[N].collectionTopicType` → `topic_type`
    - 另含 `lastUpdateTime` / `readCount` / `categoryId` 等原始字段
- `$.data.lastBuffer` —— 合集列表翻页游标（通常为空，合集数少不需翻页）

# [English]
### Purpose:
- Get the "Collections" list on a creator's homepage. Pass each collection's `topic_id` to `fetch_collection_videos` to get its videos.
- Price: $0.01 per request
- ⏱️ Due to WeChat server latency, this endpoint responds slowly; please set your client request timeout to 30 seconds — a timeout that is too small may result in being billed without receiving the response.
- ⚠️ Large-integer ID precision: IDs such as `topic_id` in the response are 64-bit big integers beyond JavaScript's safe-integer range (2^53-1). Always receive / pass such IDs as **strings** (parse JSON with json-bigint or read them as text), never through JS `Number`. Swagger UI rounds the trailing digits of huge integers in its docs view — this is expected and does not affect the actual data returned by the API.
### Parameters:
- username: WeChat Channels finder username (`v2_…@finder` format). E.g. `v2_060000231003b20faec8c6e4811dc1d4c602ee30b0771bbcf220c67926bb76ab7702ac335a53@finder` (People's Daily).
- raw: Optional, default True. True=raw response; False=simplified parsed structure.
### Return:
- Collection list

### Response structure & JSON Path:
#### `raw=false` (simplified, snake_case):
- `$.data.username` — finder username
- `$.data.count` — total collections (e.g. 6)
- `$.data.collections[]` — collection array, per item (N is the index):
    - `$.data.collections[N].topic_id` — collection ID (numeric, pass to `fetch_collection_videos`, e.g. `14616794565351966924`)
    - `$.data.collections[N].name` — collection name (e.g. "早安中国")
    - `$.data.collections[N].desc` — collection description (may be empty string)
    - `$.data.collections[N].cover_url` — collection cover
    - `$.data.collections[N].feed_count` — number of videos in the collection
    - `$.data.collections[N].topic_type` — collection type (e.g. 16, matches `topic_type` of `fetch_collection_videos`)
#### `raw=true` (full raw response, camelCase):
- `$.data.collectionCount` → `count`
- `$.data.collectionInfo[]` → `collections[]`, per item:
    - `$.data.collectionInfo[N].collectionTopicId` → `topic_id` (number; `collectionTopicIdStr` provides a string alias)
    - `$.data.collectionInfo[N].collectionName` → `name`
    - `$.data.collectionInfo[N].collectionDesc` → `desc`
    - `$.data.collectionInfo[N].coverImgUrl` → `cover_url`
    - `$.data.collectionInfo[N].feedCount` → `feed_count`
    - `$.data.collectionInfo[N].collectionTopicType` → `topic_type`
    - Also raw fields like `lastUpdateTime` / `readCount` / `categoryId`
- `$.data.lastBuffer` — pagination cursor of the collection list (usually empty; few collections, no pagination needed)

## Request body

- FetchUserCollectionsRequest
  - `username` string, required: 视频号 finder username（v2_…@finder 格式）/WeChat Channels finder username (v2_…@finder format)
  - `raw` boolean: True=原始响应；False=精简解析结构/True=raw response; False=simplified parsed structure

## Response `200`

Successful Response

- ResponseModel
  - `code` integer: HTTP status code | HTTP状态码
  - `request_id` string, nullable: Unique request identifier | 唯一请求标识符
  - `message` string: Response message (EN-US) | 响应消息 (English)
  - `message_zh` string: Response message (ZH-CN) | 响应消息 (中文)
  - `support` string: Support message | 支持消息
  - `time` string: The time the response was generated | 生成响应的时间
  - `time_stamp` integer: The timestamp the response was generated | 生成响应的时间戳
  - `time_zone` string: The timezone of the response time | 响应时间的时区
  - `docs` string, nullable: Link to the API Swagger documentation for this endpoint | 此端点的 API Swagger 文档链接
  - `cache_message` string, nullable: Cache message (EN-US) | 缓存消息 (English)
  - `cache_message_zh` string, nullable: Cache message (ZH-CN) | 缓存消息 (中文)
  - `cache_url` string, nullable: The URL to access the cached result | 访问缓存结果的 URL
  - `router` string: The endpoint that generated this response | 生成此响应的端点
  - `params` unknown
  - `data` unknown

## Other responses

- `422`: Validation Error

## Changes

- **2026-10-08** `96a122a5f220`: 2 info
  - added the optional property `detail/items/ctx` to the response with the `422` status
  - added the optional property `detail/items/input` to the response with the `422` status
- **2026-09-01** `50f9ec6e1cd3`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/tikhub/apis/tikhub-douyin-tiktok-xiaohongshu-lemon8-bilibili-kuaishou-pi/changes/api/v1/wechat_channels/v2/fetch_user_collections/post.md)

---

[API](https://skmtc.dev/tikhub/apis/tikhub-douyin-tiktok-xiaohongshu-lemon8-bilibili-kuaishou-pi.md) - [All operations](https://skmtc.dev/tikhub/apis/tikhub-douyin-tiktok-xiaohongshu-lemon8-bilibili-kuaishou-pi/llms.txt) - [OpenAPI document](https://skmtc.dev/tikhub/apis/tikhub-douyin-tiktok-xiaohongshu-lemon8-bilibili-kuaishou-pi/revisions/86a3483c705a?raw)
