Kuaishou (China)
Kuaishou User Search API
Find Kuaishou (China) creators by name, handle or topic and get 20 accounts a page — display name, public handle (kwaiId), bio, follower count, video count, verified flag and the numeric user id — as JSON. This is the creator-discovery entry point: the ids it returns are what Profile, User Posts and User Live Status all take. Costs 10 credits per page; Kuaishou is priced per endpoint (1, 2, 10 or 40) and all four search endpoints are the 10. Cursor-paginated.
Authorizations
AuthorizationstringheaderrequiredBearer authentication header of the form Bearer <token>, where <token> is your Scavio API key (e.g. Bearer sk_live_your_key).
Body
application/jsonkeywordstringrequiredSearch keyword, 1 to 200 characters — a display name, a public handle (kwaiId), or a topic. Kuaishou is a Chinese-language platform: Chinese queries return the deep catalogue, and a Latin-script query returns whatever Kuaishou itself matches, which is usually much thinner. If you already hold a share link, Resolve Share Link costs 1 credit instead of 10.
Example: 人工智能
cursorstringOpaque pagination cursor. Omit it for the first page, then pass back the pcursor value from the previous response. The response field is called pcursor, not next_cursor. Do not send recoPcursor — that is a separate cursor for Kuaishou's recommendation stream. A pcursor of "no_more" means there are no further pages.
Example: 1
Request
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
# 10 credits for the search, then 1 credit a page for each creator's posts.
page = client.kuaishou.search_users(keyword="人工智能")
for item in page["data"].get("mixFeeds", []):
if item.get("itemType") != 4: # skip non-user cards
continue
user = item["user"]
if user["fansCount"] < 50_000:
continue
print(user["user_name"], user["kwaiId"], user["fansCount"])
posts = client.kuaishou.user_posts(user_id=str(user["user_id"])) # 1 credit
print(len(posts["data"].get("feeds", [])), "recent posts")
cursor = page["data"].get("pcursor") # NOT next_cursor / recoPcursorResponse