TikTok Influencer Research via API Without Scraping
Research TikTok influencers programmatically: pull profiles, analyze posts, calculate engagement rates, and vet follower quality. No scraping, no proxies.
Vetting TikTok influencers via API costs $0.005 per request and returns structured data: follower counts, engagement metrics, video history, and audience signals. No browser automation, no CAPTCHA solving, no risk of TikTok blocking your IP range.
The Scraping Problem
TikTok aggressively blocks automated browsers. Residential proxies help but add $50-200/month in bandwidth costs. Selectors break every time TikTok ships a frontend update. Agencies running influencer vetting at scale report spending more time maintaining scrapers than analyzing the data they collect.
The API Approach
Scavio provides 11 TikTok endpoints at 1 credit each. For influencer vetting, the core workflow is: search users by niche keyword, pull profiles for candidates, fetch recent posts to assess content quality, and check follower counts for audience size.
Step 1: Find Creators by Niche
import requests, os
API_KEY = os.environ["SCAVIO_API_KEY"]
BASE = "https://api.scavio.dev"
HEADERS = {"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"}
def search_creators(keyword, count=20):
resp = requests.post(f"{BASE}/api/v1/tiktok/search/users",
headers=HEADERS, json={"keyword": keyword, "count": count})
users = resp.json()["data"]["user_list"]
return [{"username": u["user_info"]["unique_id"],
"followers": u["user_info"]["follower_count"],
"sec_uid": u["user_info"]["sec_uid"],
"bio": u["user_info"].get("signature", "")}
for u in users]
creators = search_creators("skincare routine")
for c in creators:
print(f"@{c['username']} | {c['followers']:,} followers")Step 2: Pull Profile Details
def get_creator_profile(username):
resp = requests.post(f"{BASE}/api/v1/tiktok/profile",
headers=HEADERS, json={"username": username})
user = resp.json()["data"]["user"]
return {
"followers": user["follower_count"],
"following": user["following_count"],
"total_videos": user["aweme_count"],
"total_likes": user["total_favorited"],
"bio_url": user.get("bio_url", ""),
"sec_uid": user["sec_uid"],
}Step 3: Assess Content Quality
def recent_posts(sec_uid, count=10):
resp = requests.post(f"{BASE}/api/v1/tiktok/user/posts",
headers=HEADERS,
json={"sec_user_id": sec_uid, "count": count, "sort_type": "0"})
posts = resp.json()["data"]["aweme_list"]
return [{"desc": p["desc"][:100],
"views": p["statistics"]["play_count"],
"likes": p["statistics"]["digg_count"],
"comments": p["statistics"]["comment_count"],
"shares": p["statistics"]["share_count"]}
for p in posts]
def engagement_rate(posts, followers):
if not posts or followers == 0:
return 0
total_engagement = sum(p["likes"] + p["comments"] + p["shares"]
for p in posts)
return (total_engagement / len(posts)) / followers * 100Full Vetting Pipeline
def vet_influencer(username):
profile = get_creator_profile(username)
posts = recent_posts(profile["sec_uid"])
er = engagement_rate(posts, profile["followers"])
avg_views = sum(p["views"] for p in posts) / len(posts) if posts else 0
return {
"username": username,
"followers": profile["followers"],
"total_likes": profile["total_likes"],
"engagement_rate": round(er, 2),
"avg_views": int(avg_views),
"recent_post_count": len(posts),
"has_bio_link": bool(profile["bio_url"]),
}
# Cost: 1 (search) + 1 (profile) + 1 (posts) = 3 credits = $0.015
result = vet_influencer("charlidamelio")
print(result)Cost Comparison
Vetting 100 influencers costs about $1.50 with Scavio (3 credits each). TikAPI charges $49/month flat regardless of volume. Apify TikTok actors cost $0.002/request but require separate Apify platform subscription ($49/month minimum for reliable runs). Manual research with a VA costs $15-25/hour and covers roughly 10-15 profiles per hour.
Limitations
The API returns public profile data only. You cannot access private accounts, DM history, or TikTok Creator Marketplace analytics. For creator-level ad performance data, you need the official TikTok Business API which requires a registered TikTok app and creator authorization.