---
title: "创作时长分布/Content creative duration"
method: POST
path: "/api/v1/douyin/index/fetch_content_creative_duration"
tags: ["Douyin-Index-API"]
---

# 创作时长分布/Content creative duration

`POST /api/v1/douyin/index/fetch_content_creative_duration`

## 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/douyin/index/fetch_content_creative_duration`
- Auth: HTTP bearer

# [中文]
### 用途:
- 获取指定垂类下视频时长分布数据
- 用于了解该垂类创作者偏好的视频时长结构
### 参数:
- tag_id: 垂类ID（**必填，不支持 0=全部**，需传入具体垂类 ID，可通过 fetch_item_filter_options 获取）
- period: 时间粒度，"week"=按周（end_date 必须为周日）, "month"=按月（end_date 必须为月末）
- end_date: 结束日期 YYYYMMDD，需与 period 对齐
### 返回:
- 各时长区间（如 0-15 秒/15-60 秒/60-180 秒/大于 180 秒）的视频数量与占比

# [English]
### Purpose:
- Get video duration distribution for a category
- Helps understand creators' preferred video lengths in this category
### Parameters:
- tag_id: Category ID (**required, does NOT support 0=all**, must pass a specific category ID)
- period: "week" (end_date must be a Sunday) or "month" (end_date must be month-end)
- end_date: End date YYYYMMDD, must align with period
### Return:
- Video count and ratio per duration bucket (e.g. 0-15s, 15-60s, 60-180s, >180s)

# [示例/Example]
tag_id = "601"
period = "week"
end_date = "20260412"

## Query parameters

- `tag_id` string, required: 垂类ID，**必填，不支持 0=全部**（同 fetch_item_query 的 category_id 但不接受 0）/Category ID, **required, does NOT support 0=all**. Get full list via fetch_item_filter_options (excluding id=0)
- `period` 'week' | 'month': 时间粒度/Period: week=周, month=月
- `end_date` string, required: 结束日期/End date YYYYMMDD

## 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/douyin/index/fetch_content_creative_duration/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)
