# Fixed reference example. Playground inputs do not update this sample.
curl --request GET \
--url 'https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor?burst_text_rate_max=0.8&burst_text_rate_min=0.1&cpe_max=5&cpe_min=0.1&cpm_max=100&cpm_min=10&expected_play_max=1000000&expected_play_min=100000&extra_filter=%5B%7B%22field_name%22%3A%22content_theme_labels_180d%22%2C%22field_value%22%3A%22%5B%5C%22%E7%94%9F%E6%B4%BB%E5%A5%BD%E7%89%A9%E8%AF%84%E6%B5%8B%5C%22%5D%22%7D%2C%7B%22field_name%22%3A%22watcher_gender_female_rate_v2__ge%22%2C%22field_value%22%3A%220.6%22%7D%2C%7B%22field_name%22%3A%22link_crowd_profile%22%2C%22field_value%22%3A%22%5B60%2C55%2C53%2C57%5D%22%7D%5D&fans_max=1000000&fans_min=10000&gender=2&interact_rate_max=0.5&interact_rate_min=0.02&keyword=Gaming&marketing_target=3&page=1&persona_tags=1129%2C110401&play_over_rate_max=0.9&play_over_rate_min=0.05&price_max=100000&price_min=1000&price_type=9&sort_field=score&sort_type=2&tag=1&task_category=6' \
--header 'Authorization: Bearer <token>'curl --request GET \
--url https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"cache_message": "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_zh": "本次响应已缓存,可通过下方 URL 直接查看,有效期 24 小时,访问缓存链接无额外费用。缓存仅用于请求溯源,不影响接口数据的时效性,也不会再次通过接口返回。",
"cache_url": "<string>",
"code": 200,
"data": "<unknown>",
"docs": "<string>",
"message": "Request successful. This request will incur a charge.",
"message_zh": "请求成功,本次请求将被计费。",
"params": {},
"request_id": "<string>",
"router": "",
"support": "Discord: https://discord.gg/aMEAS8Xsvz",
"time": "<string>",
"time_stamp": 123,
"time_zone": "America/Los_Angeles"
}douyin search_anchor
Search Anchor
# Fixed reference example. Playground inputs do not update this sample.
curl --request GET \
--url 'https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor?burst_text_rate_max=0.8&burst_text_rate_min=0.1&cpe_max=5&cpe_min=0.1&cpm_max=100&cpm_min=10&expected_play_max=1000000&expected_play_min=100000&extra_filter=%5B%7B%22field_name%22%3A%22content_theme_labels_180d%22%2C%22field_value%22%3A%22%5B%5C%22%E7%94%9F%E6%B4%BB%E5%A5%BD%E7%89%A9%E8%AF%84%E6%B5%8B%5C%22%5D%22%7D%2C%7B%22field_name%22%3A%22watcher_gender_female_rate_v2__ge%22%2C%22field_value%22%3A%220.6%22%7D%2C%7B%22field_name%22%3A%22link_crowd_profile%22%2C%22field_value%22%3A%22%5B60%2C55%2C53%2C57%5D%22%7D%5D&fans_max=1000000&fans_min=10000&gender=2&interact_rate_max=0.5&interact_rate_min=0.02&keyword=Gaming&marketing_target=3&page=1&persona_tags=1129%2C110401&play_over_rate_max=0.9&play_over_rate_min=0.05&price_max=100000&price_min=1000&price_type=9&sort_field=score&sort_type=2&tag=1&task_category=6' \
--header 'Authorization: Bearer <token>'curl --request GET \
--url https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"cache_message": "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_zh": "本次响应已缓存,可通过下方 URL 直接查看,有效期 24 小时,访问缓存链接无额外费用。缓存仅用于请求溯源,不影响接口数据的时效性,也不会再次通过接口返回。",
"cache_url": "<string>",
"code": 200,
"data": "<unknown>",
"docs": "<string>",
"message": "Request successful. This request will incur a charge.",
"message_zh": "请求成功,本次请求将被计费。",
"params": {},
"request_id": "<string>",
"router": "",
"support": "Discord: https://discord.gg/aMEAS8Xsvz",
"time": "<string>",
"time_stamp": 123,
"time_zone": "America/Los_Angeles"
}code is 200.
Example
curl "https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor?keyword=games" \
-H "Authorization: Bearer YOUR_API_KEY"
Request contract
- Method and path: GET /apis/v1/tikhub/douyin/xingtu_v2/search_anchor
- Availability: enabled
- Request URL template:
https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_anchor - author_list_id: query; optional
- burst_text_rate_max: query; optional
- burst_text_rate_min: query; optional
- cpe_max: query; optional
- cpe_min: query; optional
- cpm_max: query; optional
- cpm_min: query; optional
- expected_play_max: query; optional
- expected_play_min: query; optional
- extra_filter: query; optional
- fans_max: query; optional
- fans_min: query; optional
- first_industry_id: query; optional
- gender: query; optional
- interact_rate_max: query; optional
- interact_rate_min: query; optional
- keyword: query; required
- marketing_target: query; optional
- page: query; optional
- persona_tags: query; optional
- play_over_rate_max: query; optional
- play_over_rate_min: query; optional
- price_max: query; optional
- price_min: query; optional
- price_type: query; optional
- sort_field: query; optional
- sort_type: query; optional
- tag: query; optional
- task_category: query; optional
- Runtime facts: 85ae03121f63417c9ff9d57a0fd59fdc6386fd71e2dc732a002843e6d8979d87
{
"operationId": "get_tikhub_douyin_xingtu_v2_search_anchor",
"method": "GET",
"path": "/apis/v1/tikhub/douyin/xingtu_v2/search_anchor",
"servers": [
{
"url": "https://api.aisa.one"
}
],
"parameters": [
{
"description": "Featured creator list ID",
"in": "query",
"name": "author_list_id",
"required": false,
"schema": {
"description": "Featured creator list ID",
"title": "Author List Id",
"type": [
"string",
"null"
]
}
},
{
"description": "Maximum viral-post rate, 0-1 decimal",
"example": 0.8,
"in": "query",
"name": "burst_text_rate_max",
"required": false,
"schema": {
"description": "Maximum viral-post rate, 0-1 decimal",
"maximum": 1,
"minimum": 0,
"title": "Burst Text Rate Max",
"type": [
"number",
"null"
]
}
},
{
"description": "Minimum viral-post rate, 0-1 decimal",
"example": 0.1,
"in": "query",
"name": "burst_text_rate_min",
"required": false,
"schema": {
"description": "Minimum viral-post rate, 0-1 decimal",
"maximum": 1,
"minimum": 0,
"title": "Burst Text Rate Min",
"type": [
"number",
"null"
]
}
},
{
"description": "Maximum expected CPE",
"example": 5,
"in": "query",
"name": "cpe_max",
"required": false,
"schema": {
"description": "Maximum expected CPE",
"title": "Cpe Max",
"type": [
"number",
"null"
]
}
},
{
"description": "Minimum expected CPE",
"example": 0.1,
"in": "query",
"name": "cpe_min",
"required": false,
"schema": {
"description": "Minimum expected CPE",
"title": "Cpe Min",
"type": [
"number",
"null"
]
}
},
{
"description": "Maximum expected CPM",
"example": 100,
"in": "query",
"name": "cpm_max",
"required": false,
"schema": {
"description": "Maximum expected CPM",
"title": "Cpm Max",
"type": [
"number",
"null"
]
}
},
{
"description": "Minimum expected CPM",
"example": 10,
"in": "query",
"name": "cpm_min",
"required": false,
"schema": {
"description": "Minimum expected CPM",
"title": "Cpm Min",
"type": [
"number",
"null"
]
}
},
{
"description": "Maximum expected plays",
"example": 1000000,
"in": "query",
"name": "expected_play_max",
"required": false,
"schema": {
"description": "Maximum expected plays",
"title": "Expected Play Max",
"type": [
"integer",
"null"
]
}
},
{
"description": "Minimum expected plays",
"example": 100000,
"in": "query",
"name": "expected_play_min",
"required": false,
"schema": {
"description": "Minimum expected plays",
"title": "Expected Play Min",
"type": [
"integer",
"null"
]
}
},
{
"description": "Extra profile filters as a JSON-array string; field_name and field_value must be non-empty strings",
"example": "[{\"field_name\":\"content_theme_labels_180d\",\"field_value\":\"[\\\"生活好物评测\\\"]\"},{\"field_name\":\"watcher_gender_female_rate_v2__ge\",\"field_value\":\"0.6\"},{\"field_name\":\"link_crowd_profile\",\"field_value\":\"[60,55,53,57]\"}]",
"in": "query",
"name": "extra_filter",
"required": false,
"schema": {
"description": "Extra profile filters as a JSON-array string; field_name and field_value must be non-empty strings",
"title": "Extra Filter",
"type": [
"string",
"null"
]
}
},
{
"description": "Maximum followers",
"example": 1000000,
"in": "query",
"name": "fans_max",
"required": false,
"schema": {
"description": "Maximum followers",
"title": "Fans Max",
"type": [
"integer",
"null"
]
}
},
{
"description": "Minimum followers",
"example": 10000,
"in": "query",
"name": "fans_min",
"required": false,
"schema": {
"description": "Minimum followers",
"title": "Fans Min",
"type": [
"integer",
"null"
]
}
},
{
"description": "Industry ID",
"in": "query",
"name": "first_industry_id",
"required": false,
"schema": {
"description": "Industry ID",
"title": "First Industry Id",
"type": [
"integer",
"null"
]
}
},
{
"description": "Creator gender, 1=male, 2=female",
"example": 2,
"in": "query",
"name": "gender",
"required": false,
"schema": {
"description": "Creator gender, 1=male, 2=female",
"title": "Gender",
"type": [
"integer",
"null"
]
}
},
{
"description": "Maximum interaction rate, 0-1 decimal",
"example": 0.5,
"in": "query",
"name": "interact_rate_max",
"required": false,
"schema": {
"description": "Maximum interaction rate, 0-1 decimal",
"maximum": 1,
"minimum": 0,
"title": "Interact Rate Max",
"type": [
"number",
"null"
]
}
},
{
"description": "Minimum interaction rate, 0-1 decimal (e.g. 0.02=2%)",
"example": 0.02,
"in": "query",
"name": "interact_rate_min",
"required": false,
"schema": {
"description": "Minimum interaction rate, 0-1 decimal (e.g. 0.02=2%)",
"maximum": 1,
"minimum": 0,
"title": "Interact Rate Min",
"type": [
"number",
"null"
]
}
},
{
"description": "Search keyword: nickname, Douyin ID, Xingtu ID or live content word",
"example": "Gaming",
"in": "query",
"name": "keyword",
"required": true,
"schema": {
"description": "Search keyword: nickname, Douyin ID, Xingtu ID or live content word",
"title": "Keyword",
"type": "string"
}
},
{
"description": "Marketing target",
"example": 3,
"in": "query",
"name": "marketing_target",
"required": false,
"schema": {
"default": 3,
"description": "Marketing target",
"title": "Marketing Target",
"type": "integer"
}
},
{
"description": "Page number",
"example": 1,
"in": "query",
"name": "page",
"required": false,
"schema": {
"default": 1,
"description": "Page number",
"title": "Page",
"type": "integer"
}
},
{
"description": "Persona IDs (persona/education/certification/tone). Comma=match any; semicolon=group AND, e.g. `1129,110401;110213`",
"example": "1129,110401",
"in": "query",
"name": "persona_tags",
"required": false,
"schema": {
"description": "Persona IDs (persona/education/certification/tone). Comma=match any; semicolon=group AND, e.g. `1129,110401;110213`",
"title": "Persona Tags",
"type": [
"string",
"null"
]
}
},
{
"description": "Maximum play-completion rate, 0-1 decimal",
"example": 0.9,
"in": "query",
"name": "play_over_rate_max",
"required": false,
"schema": {
"description": "Maximum play-completion rate, 0-1 decimal",
"maximum": 1,
"minimum": 0,
"title": "Play Over Rate Max",
"type": [
"number",
"null"
]
}
},
{
"description": "Minimum play-completion rate, 0-1 decimal",
"example": 0.05,
"in": "query",
"name": "play_over_rate_min",
"required": false,
"schema": {
"description": "Minimum play-completion rate, 0-1 decimal",
"maximum": 1,
"minimum": 0,
"title": "Play Over Rate Min",
"type": [
"number",
"null"
]
}
},
{
"description": "Maximum anchor price; price_type must also be provided when this field is supplied",
"example": 100000,
"in": "query",
"name": "price_max",
"required": false,
"schema": {
"description": "Maximum anchor price; price_type must also be provided when this field is supplied",
"minimum": 0,
"title": "Price Max",
"type": [
"integer",
"null"
]
}
},
{
"description": "Minimum anchor price; price_type must also be provided when this field is supplied",
"example": 1000,
"in": "query",
"name": "price_min",
"required": false,
"schema": {
"description": "Minimum anchor price; price_type must also be provided when this field is supplied",
"minimum": 0,
"title": "Price Min",
"type": [
"integer",
"null"
]
}
},
{
"description": "Live-stream price type, fixed to 9; used only in combination with price_min/price_max",
"example": 9,
"in": "query",
"name": "price_type",
"required": false,
"schema": {
"anyOf": [
{
"allOf": [
{
"enum": [
9
],
"title": "XingtuAnchorPriceType",
"type": "integer"
}
],
"description": "Live-stream price type, fixed to 9; used only in combination with price_min/price_max",
"title": "Price Type"
},
{
"enum": [
null
],
"type": [
"string",
"null"
]
}
],
"description": "Live-stream price type, fixed to 9; used only in combination with price_min/price_max",
"title": "Price Type"
}
},
{
"description": "Sort field, default score (comprehensive)",
"example": "score",
"in": "query",
"name": "sort_field",
"required": false,
"schema": {
"default": "score",
"description": "Sort field, default score (comprehensive)",
"title": "Sort Field",
"type": "string"
}
},
{
"description": "Sort type: 1=asc, 2=desc",
"example": 2,
"in": "query",
"name": "sort_type",
"required": false,
"schema": {
"default": 2,
"description": "Sort type: 1=asc, 2=desc",
"title": "Sort Type",
"type": "integer"
}
},
{
"description": "Creator category IDs, comma-separated, e.g. `1,6`",
"example": "1",
"in": "query",
"name": "tag",
"required": false,
"schema": {
"description": "Creator category IDs, comma-separated, e.g. `1,6`",
"title": "Tag",
"type": [
"string",
"null"
]
}
},
{
"description": "Cooperation target",
"example": 6,
"in": "query",
"name": "task_category",
"required": false,
"schema": {
"default": 6,
"description": "Cooperation target",
"title": "Task Category",
"type": "integer"
}
}
],
"security": [
{
"bearerAuth": []
}
],
"x-aisa-status": "enabled",
"x-aisa-pricing": {
"cost_contract": "fixed_success",
"customer_multiplier": 1.0,
"customer_pricing": "provider_cost_multiplier",
"default_request_estimate_usd": 0.001,
"estimate_source": "profile_seed",
"evidence_source": "request_snapshot"
},
"components": {
"securitySchemes": {
"bearerAuth": {
"scheme": "bearer",
"type": "http"
}
}
}
}
Cost and request rules
Published reference price: $0.001 USD per successful request. Account-specific pricing and final settlement may differ. Published reference values are not an account-specific quote or a settled charge. For endpoints supporting X-AISA-Cost-Mode: quote, obtain a free quote for your exact request before execution; reconcile the settled cost with response metadata and Usage Logs. USD amounts use 1,000,000 integer micro-USD per dollar.- Default request reference estimate (USD): 0.001
- Cost contract: fixed_success
- Published reference multiplier: 1.0
- Settlement evidence source: request_snapshot
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Featured creator list ID
Maximum viral-post rate, 0-1 decimal
0 <= x <= 1Minimum viral-post rate, 0-1 decimal
0 <= x <= 1Maximum expected CPE
Minimum expected CPE
Maximum expected CPM
Minimum expected CPM
Maximum expected plays
Minimum expected plays
Extra profile filters as a JSON-array string; field_name and field_value must be non-empty strings
Maximum followers
Minimum followers
Industry ID
Creator gender, 1=male, 2=female
Maximum interaction rate, 0-1 decimal
0 <= x <= 1Minimum interaction rate, 0-1 decimal (e.g. 0.02=2%)
0 <= x <= 1Search keyword: nickname, Douyin ID, Xingtu ID or live content word
Marketing target
Page number
Persona IDs (persona/education/certification/tone). Comma=match any; semicolon=group AND, e.g. 1129,110401;110213
Maximum play-completion rate, 0-1 decimal
0 <= x <= 1Minimum play-completion rate, 0-1 decimal
0 <= x <= 1Maximum anchor price; price_type must also be provided when this field is supplied
x >= 0Minimum anchor price; price_type must also be provided when this field is supplied
x >= 0Live-stream price type, fixed to 9; used only in combination with price_min/price_max
9 Sort field, default score (comprehensive)
Sort type: 1=asc, 2=desc
Creator category IDs, comma-separated, e.g. 1,6
Cooperation target
Response
Successful Response
Return
- Anchor search result data (anchor info, live price, ACU/PCU, avg viewers, etc.)
Cache message (EN-US)
Cache message (ZH-CN)
The URL to access the cached result
HTTP status code
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.
Link to the API Swagger documentation for this endpoint
Response message (EN-US)
Response message (ZH-CN)
The parameters used in the request
Unique request identifier
The endpoint that generated this response
Support message
The time the response was generated
The timestamp the response was generated
The timezone of the response time