Skip to main content
POST
douyin fetch_item_audience_portrait
Fetch item audience portrait Pricing — billed per successful call; the final charge scales by your plan multiplier. Charged only when the upstream response body code is 200.
Response structure is not yet fully documented — refer to the actual API response.

Example

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json

Item audience portrait request parameters

User's Douyin Creator Platform Cookie (required, transmitted in request body)

Example:

"Your_Cookie_Here"

item_id
string
required

Item ID

Example:

"7559536212910853422"

Response

Successful response. The outer object follows ResponseModel; the endpoint-specific payload is in data.

Return Data Description

Returns audience portrait data with multiple dimensions:

1. Active Distribution (active):

  • key: Time period identifier ("2"=morning, "3"=afternoon, "4"=evening, "-1"=other)
  • value: Active user ratio in this period (decimal between 0-1)

2. Gender Distribution (gender):

  • ratio_list: Gender ratio list
    • key: "male" or "female"
    • value: Gender user ratio (decimal between 0-1)
  • tgi_list: Gender TGI index list (Target Group Index)
    • key: Gender identifier
    • value: TGI value (100=average, >100=above average)

3. Region Distribution (province):

  • ratio_list: Province ratio list
    • key: Province name (e.g., "浙江", "广东", "北京")
    • value: Province user ratio (decimal between 0-1)
  • tgi_list: Province TGI index list
    • key: Province name
    • value: TGI value (reflects regional user activity)

4. Age Distribution (age):

  • ratio_list: Age range ratio list
    • key: Age range ("-18", "18-23", "24-30", "31-40", "41-50", "50-")
    • value: Age range user ratio (decimal between 0-1)
  • tgi_list: Age range TGI index list
    • key: Age range
    • value: TGI value (reflects age group preference)

5. Other Dimensions:

  • career: Career distribution (may be empty)
  • city_level: City level distribution (contains ratio_list and tgi_list)
  • new_user: New user ratio (may be empty)

TGI Index Explanation:

  • TGI = 100: Group performance matches platform average
  • TGI > 100: Group ratio is higher than platform average, core audience
  • TGI < 100: Group ratio is lower than platform average
  • Higher TGI indicates greater interest in this content type

Note: If some data is empty or zero, possible reasons:

  • Item just published with insufficient sample size
  • No data available for this dimension or below statistical threshold
  • Few users in certain regions or age groups
code
integer
default:200

HTTP status code

request_id
string | null

Unique request identifier

message
string
default:Request successful. This request will incur a charge.

Response message (EN-US)

message_zh
string
default:请求成功,本次请求将被计费。

Response message (ZH-CN)

support
string
default:Discord: https://discord.gg/aMEAS8Xsvz

Support message

time
string

The time the response was generated

time_stamp
integer

The timestamp the response was generated

time_zone
string
default:America/Los_Angeles

The timezone of the response time

docs
string | null

Link to the API Swagger documentation for this endpoint

cache_message
string | null
default:This response is cached and accessible via the URL below for 24 hours at no extra cost. The cache is for request tracing only — it doesn't affect the API's data freshness and won't be returned through the API again.

Cache message (EN-US)

cache_message_zh
string | null
default:本次响应已缓存,可通过下方 URL 直接查看,有效期 24 小时,访问缓存链接无额外费用。缓存仅用于请求溯源,不影响接口数据的时效性,也不会再次通过接口返回。

Cache message (ZH-CN)

cache_url
string | null

The URL to access the cached result

router
string
default:""

The endpoint that generated this response

params
any
default:{}

The parameters used in the request

data
any

Endpoint-specific response payload. The official shared model does not declare a fixed type or field set. Use the operation's documented return fields or response example; an operation-specific schema, when present, describes the documented fields. Undocumented fields must be read from the actual response rather than assumed.