SocialToAIStart freeConsole
POST/v1/call/douyin.kol_scoresPreview

Douyin KOL index scores API (Xingtu)

Only on Douyin.

The Douyin KOL index scores API (Xingtu) returns the six scores Xingtu gives a Douyin creator, by Xingtu creator ID: the overall Xingtu score and those for reach, seeding, conversion, cooperation and value for money, each with the score, the average of comparable creators, the rank and how far from the top that rank is. One call costs 5 credits ($0.01 to $0.017 depending on the pack); failed calls are free. Last tested 2026-10-17.

100 credits on sign-up, no card needed
5 creditsper call
One objectreturned per call
2026-10-17last tested
1.1 KBsample response, 1 item

Last updated:

Preview: this interface is not marked stable yet, so its parameters and fields may still change. It is charged like any other call, and a failed call is not charged.

Request and response

curl https://api.socialtoai.com/v1/call/douyin.kol_scores \  -H "Authorization: Bearer $SOCIALTOAI_KEY" \  -H "Content-Type: application/json" \  -d '{    "id": "6763236383382306828"  }'
import osimport requestsresponse = requests.post(    "https://api.socialtoai.com/v1/call/douyin.kol_scores",    headers={"Authorization": f"Bearer {os.environ['SOCIALTOAI_KEY']}"},    json={        "id": "6763236383382306828",    },)print(response.json())
# Connected over MCP? Ask in plain words.Use the Douyin Xingtu creator index scores interface (douyin.kol_scores) with id: 6763236383382306828.# Your AI calls the call tool with:{  "id": "6763236383382306828"}
Sign in to run5 creditsOpens in the Playground with these parameters after you sign in. It never runs by itself.
200 OK1.1 KB5 credits
{  "op": "douyin.kol_scores",  "platform": "douyin",  "status": "ok",  "items": [    {      "platform": "douyin",      "id": "…",      "ref": "…",      "approx": [],      "type": "entry",      "entry_type": "xingtu_creator_scores",      "title": null,      "url": null,      "rank": null,      "heat": null,      "fields": {        "overall": {          "score": 90.9,          "average": 56.2,          "rank": 12,          "rank_share": 0        },        "reach": {          "score": 98.77,          "average": 53.08,          "rank": 232,          "rank_share": 0.0001        },        "seeding": {          "score": 98.68,          "average": 53.26,          "rank": 280,          "rank_share": 0.0001        },        "conversion": {          "score": 98.92,          "average": 55.24,          "rank": 164,          "rank_share": 0.0001        },        "cooperation": {          "score": 89.49,          "average": 75.55,          "rank": 1038,          "rank_share": 0.0005        },        "value_for_money": {          "score": 68.64,          "average": 64.09,          "rank": 50209,          "rank_share": 0.023        }      }    }  ],  "unavailable": [],  "cost_credits": 5}
entry_type
xingtu_creator_scores

Names and text were removed from the sample; the numbers are as recorded.

Sample dataFull response

1 parameter.
All required.

Send them as a JSON body with POST. Your key goes in the Authorization header, never in the URL.

NameTypeRequiredDefaultDescription
idstringRequired—Xingtu creator ID, a string of digits; not the Douyin account ID: take it from the Xingtu creator search

Where to get what you send.

id

Xingtu creator ID, a string of digits; not the Douyin account ID: take it from the Xingtu creator search (e.g. 6763236383382306828)

Every item these return carries its ref; send it as it is:

The fields of each item.
What Douyin cannot give is marked.

FieldTypeMeaning
items[].titlestringThe entry's title or name.
items[].urlstringA link that opens it; null where the platform's list has none.
items[].rankintegerPosition on a board, from 1.
items[].heatintegerThe platform's heat score.
items[].fields.overall.scorenumberThe overall Xingtu score, 0 to 100.
items[].fields.overall.averagenumberWhat comparable creators average on the overall Xingtu score.
items[].fields.overall.rankintegerThe creator's rank on the overall Xingtu score; 1 is the highest.
items[].fields.overall.rank_sharenumberHow near the top that rank is, 0 to 1: 0.05 means the top 5%.
items[].fields.reach.scorenumberThe reach score, 0 to 100.
items[].fields.reach.averagenumberWhat comparable creators average on the reach score.
items[].fields.reach.rankintegerThe creator's rank on the reach score; 1 is the highest.
items[].fields.reach.rank_sharenumberHow near the top that rank is, 0 to 1: 0.05 means the top 5%.
items[].fields.seeding.scorenumberThe seeding score, 0 to 100.
items[].fields.seeding.averagenumberWhat comparable creators average on the seeding score.
items[].fields.seeding.rankintegerThe creator's rank on the seeding score; 1 is the highest.
items[].fields.seeding.rank_sharenumberHow near the top that rank is, 0 to 1: 0.05 means the top 5%.
items[].fields.conversion.scorenumberThe conversion score, 0 to 100.
items[].fields.conversion.averagenumberWhat comparable creators average on the conversion score.
items[].fields.conversion.rankintegerThe creator's rank on the conversion score; 1 is the highest.
items[].fields.conversion.rank_sharenumberHow near the top that rank is, 0 to 1: 0.05 means the top 5%.
items[].fields.cooperation.scorenumberThe cooperation score, 0 to 100.
items[].fields.cooperation.averagenumberWhat comparable creators average on the cooperation score.
items[].fields.cooperation.rankintegerThe creator's rank on the cooperation score; 1 is the highest.
items[].fields.cooperation.rank_sharenumberHow near the top that rank is, 0 to 1: 0.05 means the top 5%.
items[].fields.value_for_money.scorenumberThe value-for-money score, 0 to 100.
items[].fields.value_for_money.averagenumberWhat comparable creators average on the value-for-money score.
items[].fields.value_for_money.rankintegerThe creator's rank on the value-for-money score; 1 is the highest.
items[].fields.value_for_money.rank_sharenumberHow near the top that rank is, 0 to 1: 0.05 means the top 5%.
nullFields Douyin cannot give

Douyin gives every field of this call. Where one item lacks a value, that field is null.

Every item also has platform, id, ref, approx and type; the response around the items is the same on every call. Response format

What to expect.

One call returns one object, with no pages, for 5 credits.

1 call per second per key, 5 after a purchase; going over is not charged. Rate limits

A failed call costs 0 credits and is never retried on its own. Error codes

Once connected over MCP, these questions use it.

  1. Get the six scores Xingtu gives a Douyin creator, by Xingtu creator ID: 6763236383382306828.
    call {"op":"douyin.kol_scores","id":"6763236383382306828"}
    5 credits
  2. Search Douyin creators on Xingtu by words in their name: 美食, then for the first 3: get the six scores Xingtu gives a Douyin creator, by Xingtu creator ID.
    call {"op":"douyin.kol_search","query":"美食"}call {"op":"douyin.kol_scores","id":"<ref>"} × 3
    18 credits

Questions.
Short answers.

Everything on Douyin
Do I need a Douyin account or Douyin's own API access?
No. You only need a SocialToAI key. The call returns content and account information publicly visible on Douyin; you never sign in to Douyin or apply for anything there.
What does “Preview” mean here?
Preview: this interface is not marked stable yet, so its parameters and fields may still change. It is charged like any other call, and a failed call is not charged.

Your AI is one URL away
from all of social media.

100 credits on sign-up, no card needed