curl --request GET \
--url https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_creator \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_creator"
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_creator', 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_creator",
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_creator"
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_creator")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_creator")
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_creator
达人搜索
curl --request GET \
--url https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_creator \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_creator"
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_creator', 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_creator",
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_creator"
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_creator")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_creator")
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 为 200 时计费。
示例
curl "https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_creator" \
-H "Authorization: Bearer YOUR_API_KEY"
请求规范
- 方法与路径: GET /apis/v1/tikhub/douyin/xingtu_v2/search_creator
- 可用状态: enabled
- 请求 URL 模板:
https://api.aisa.one/apis/v1/tikhub/douyin/xingtu_v2/search_creator - author_list_id: query; 可选
- burst_text_rate_max: query; 可选
- burst_text_rate_min: query; 可选
- cpe_max: query; 可选
- cpe_min: query; 可选
- cpm_max: query; 可选
- cpm_min: query; 可选
- expected_play_max: query; 可选
- expected_play_min: query; 可选
- extra_filter: query; 可选
- fans_max: query; 可选
- fans_min: query; 可选
- first_industry_id: query; 可选
- gender: query; 可选
- interact_rate_max: query; 可选
- interact_rate_min: query; 可选
- keyword: query; 可选
- marketing_target: query; 可选
- page: query; 可选
- persona_tags: query; 可选
- play_over_rate_max: query; 可选
- play_over_rate_min: query; 可选
- price_max: query; 可选
- price_min: query; 可选
- price_type: query; 可选
- seach_type: query; 可选
- sort_field: query; 可选
- sort_type: query; 可选
- tag: query; 可选
- task_category: query; 可选
- time_range_days: query; 可选
- Runtime 事实版本: 85ae03121f63417c9ff9d57a0fd59fdc6386fd71e2dc732a002843e6d8979d87
{
"operationId": "get_tikhub_douyin_xingtu_v2_search_creator",
"method": "GET",
"path": "/apis/v1/tikhub/douyin/xingtu_v2/search_creator",
"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 as a decimal between 0 and 1.",
"example": 0.8,
"in": "query",
"name": "burst_text_rate_max",
"required": false,
"schema": {
"description": "Maximum viral-post rate as a decimal between 0 and 1.",
"maximum": 1,
"minimum": 0,
"title": "Burst Text Rate Max",
"type": [
"number",
"null"
]
}
},
{
"description": "Minimum viral-post rate as a decimal between 0 and 1.",
"example": 0.1,
"in": "query",
"name": "burst_text_rate_min",
"required": false,
"schema": {
"description": "Minimum viral-post rate as a decimal between 0 and 1.",
"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 encoded as a JSON-array string. Each item must include non-empty string field_name and field_value; related-tier filters may also include rel_id. Supports content themes, viewer/follower profiles, audience groups, locations, and dynamic filter options.",
"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 encoded as a JSON-array string. Each item must include non-empty string field_name and field_value; related-tier filters may also include rel_id. Supports content themes, viewer/follower profiles, audience groups, locations, and dynamic filter options.",
"title": "Extra Filter",
"type": [
"string",
"null"
]
}
},
{
"description": "Maximum follower count, for example 200000 for at most 200,000 followers.",
"example": 1000000,
"in": "query",
"name": "fans_max",
"required": false,
"schema": {
"description": "Maximum follower count, for example 200000 for at most 200,000 followers.",
"title": "Fans Max",
"type": [
"integer",
"null"
]
}
},
{
"description": "Minimum follower count, for example 100000 for at least 100,000 followers.",
"example": 10000,
"in": "query",
"name": "fans_min",
"required": false,
"schema": {
"description": "Minimum follower count, for example 100000 for at least 100,000 followers.",
"title": "Fans Min",
"type": [
"integer",
"null"
]
}
},
{
"description": "Industry ID, 0=unlimited\n\nUsage: First-level industry ID; `0` means unrestricted.",
"example": 0,
"in": "query",
"name": "first_industry_id",
"required": false,
"schema": {
"default": 0,
"description": "Industry ID, 0=unlimited\n\nUsage: First-level industry ID; `0` means unrestricted.",
"title": "First Industry Id",
"type": "integer"
}
},
{
"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 as a decimal between 0 and 1.",
"example": 0.5,
"in": "query",
"name": "interact_rate_max",
"required": false,
"schema": {
"description": "Maximum interaction rate as a decimal between 0 and 1.",
"maximum": 1,
"minimum": 0,
"title": "Interact Rate Max",
"type": [
"number",
"null"
]
}
},
{
"description": "Minimum interaction rate as a decimal between 0 and 1; 0.02 means 2%.",
"example": 0.02,
"in": "query",
"name": "interact_rate_min",
"required": false,
"schema": {
"description": "Minimum interaction rate as a decimal between 0 and 1; 0.02 means 2%.",
"maximum": 1,
"minimum": 0,
"title": "Interact Rate Min",
"type": [
"number",
"null"
]
}
},
{
"description": "Optional keyword; empty means filter-only browsing. seach_type=2 matches nickname, =3 matches content",
"example": "Fitness",
"in": "query",
"name": "keyword",
"required": false,
"schema": {
"default": "",
"description": "Optional keyword; empty means filter-only browsing. seach_type=2 matches nickname, =3 matches content",
"title": "Keyword",
"type": "string"
}
},
{
"description": "Marketing target",
"example": 1,
"in": "query",
"name": "marketing_target",
"required": false,
"schema": {
"default": 1,
"description": "Marketing target",
"title": "Marketing Target",
"type": "integer"
}
},
{
"description": "Page number starting from 1.",
"example": 1,
"in": "query",
"name": "page",
"required": false,
"schema": {
"default": 1,
"description": "Page number starting from 1.",
"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 as a decimal between 0 and 1.",
"example": 0.9,
"in": "query",
"name": "play_over_rate_max",
"required": false,
"schema": {
"description": "Maximum play-completion rate as a decimal between 0 and 1.",
"maximum": 1,
"minimum": 0,
"title": "Play Over Rate Max",
"type": [
"number",
"null"
]
}
},
{
"description": "Minimum play-completion rate as a decimal between 0 and 1.",
"example": 0.05,
"in": "query",
"name": "play_over_rate_min",
"required": false,
"schema": {
"description": "Minimum play-completion rate as a decimal between 0 and 1.",
"maximum": 1,
"minimum": 0,
"title": "Play Over Rate Min",
"type": [
"number",
"null"
]
}
},
{
"description": "Maximum creator price. Supply price_type whenever this field is set.",
"example": 100000,
"in": "query",
"name": "price_max",
"required": false,
"schema": {
"description": "Maximum creator price. Supply price_type whenever this field is set.",
"minimum": 0,
"title": "Price Max",
"type": [
"integer",
"null"
]
}
},
{
"description": "Minimum creator price. Supply price_type whenever this field is set.",
"example": 1000,
"in": "query",
"name": "price_min",
"required": false,
"schema": {
"description": "Minimum creator price. Supply price_type whenever this field is set.",
"minimum": 0,
"title": "Price Min",
"type": [
"integer",
"null"
]
}
},
{
"description": "Creator video price tier: 1=1-20 seconds, 2=21-60 seconds, 3=60 seconds or above; used only in combination with price_min/price_max",
"example": 2,
"in": "query",
"name": "price_type",
"required": false,
"schema": {
"anyOf": [
{
"allOf": [
{
"enum": [
1,
2,
3
],
"title": "XingtuCreatorPriceType",
"type": "integer"
}
],
"description": "Creator video price tier: 1=1-20 seconds, 2=21-60 seconds, 3=60 seconds or above; used only in combination with price_min/price_max",
"title": "Price Type"
},
{
"enum": [
null
],
"type": [
"string",
"null"
]
}
],
"description": "Creator video price tier: 1=1-20 seconds, 2=21-60 seconds, 3=60 seconds or above; used only in combination with price_min/price_max",
"title": "Price Type"
}
},
{
"description": "Search mode: 2=by nickname, 3=by content\n\nUsage: `2`=nickname (default), `3`=content.",
"example": 2,
"in": "query",
"name": "seach_type",
"required": false,
"schema": {
"allOf": [
{
"enum": [
2,
3
],
"title": "XingtuCreatorSearchType",
"type": "integer"
}
],
"default": 2,
"description": "Search mode: 2=by nickname, 3=by content\n\nUsage: `2`=nickname (default), `3`=content."
}
},
{
"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\n\nUsage: `1`=ascending, `2`=descending.",
"example": 2,
"in": "query",
"name": "sort_type",
"required": false,
"schema": {
"default": 2,
"description": "Sort type: 1=asc, 2=desc\n\nUsage: `1`=ascending, `2`=descending.",
"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": 1,
"in": "query",
"name": "task_category",
"required": false,
"schema": {
"default": 1,
"description": "Cooperation target",
"title": "Task Category",
"type": "integer"
}
},
{
"description": "Content time range; only effective when seach_type=3\n\nUsage: Content range of `30`, `90`, or `180` days; only applies to content search.",
"example": 180,
"in": "query",
"name": "time_range_days",
"required": false,
"schema": {
"allOf": [
{
"enum": [
30,
90,
180
],
"title": "XingtuContentSearchTimeRange",
"type": "integer"
}
],
"default": 180,
"description": "Content time range; only effective when seach_type=3\n\nUsage: Content range of `30`, `90`, or `180` days; only applies to content search."
}
}
],
"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"
}
}
}
}
费用与请求规则
公开参考价格:每次成功请求 $0.001 USD。 最终费用以账户适用价格及实际结算为准。 公开参考值不是你的账户报价或最终扣费。对于支持 X-AISA-Cost-Mode: quote 的接口,执行前请针对完整请求获取免费报价;执行后通过响应费用元数据和 Usage Logs 核对结算费用。1 USD 等于 1,000,000 个整数 micro-USD。- 默认请求参考估价(USD): 0.001
- 计费依据: fixed_success
- 公开参考倍率: 1.0
- 结算证据来源: request_snapshot
授权
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
查询参数
Featured creator list ID
Maximum viral-post rate as a decimal between 0 and 1.
0 <= x <= 1Minimum viral-post rate as a decimal between 0 and 1.
0 <= x <= 1Maximum expected CPE
Minimum expected CPE
Maximum expected CPM
Minimum expected CPM
Maximum expected plays
Minimum expected plays
Extra profile filters encoded as a JSON-array string. Each item must include non-empty string field_name and field_value; related-tier filters may also include rel_id. Supports content themes, viewer/follower profiles, audience groups, locations, and dynamic filter options.
Maximum follower count, for example 200000 for at most 200,000 followers.
Minimum follower count, for example 100000 for at least 100,000 followers.
Industry ID, 0=unlimited
Usage: First-level industry ID; 0 means unrestricted.
Creator gender, 1=male, 2=female
Maximum interaction rate as a decimal between 0 and 1.
0 <= x <= 1Minimum interaction rate as a decimal between 0 and 1; 0.02 means 2%.
0 <= x <= 1Optional keyword; empty means filter-only browsing. seach_type=2 matches nickname, =3 matches content
Marketing target
Page number starting from 1.
Persona IDs (persona/education/certification/tone). Comma=match any; semicolon=group AND, e.g. 1129,110401;110213
Maximum play-completion rate as a decimal between 0 and 1.
0 <= x <= 1Minimum play-completion rate as a decimal between 0 and 1.
0 <= x <= 1Maximum creator price. Supply price_type whenever this field is set.
x >= 0Minimum creator price. Supply price_type whenever this field is set.
x >= 0Creator video price tier: 1=1-20 seconds, 2=21-60 seconds, 3=60 seconds or above; used only in combination with price_min/price_max
1, 2, 3 Search mode: 2=by nickname, 3=by content
Usage: 2=nickname (default), 3=content.
2, 3 Sort field, default score (comprehensive)
Sort type: 1=asc, 2=desc
Usage: 1=ascending, 2=descending.
Creator category IDs, comma-separated, e.g. 1,6
Cooperation target
Content time range; only effective when seach_type=3
Usage: Content range of 30, 90, or 180 days; only applies to content search.
30, 90, 180 响应
Successful Response
Return
- Creator results, pagination information, and related metrics.
Cache message (EN-US)
Cache message (ZH-CN)
The URL to access the cached result
HTTP 状态码
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