Workflow

Daily TikTok Creator Vetting Workflow

Workflow that vets TikTok creator candidates daily. Checks engagement rates, follower quality, and content consistency before campaign commitments.

Overview

Influencer marketing teams review creator profiles manually, spending hours per candidate. This workflow automates daily vetting of creator candidates: pull profiles, analyze engagement rates, check posting consistency, and flag red flags. Vet 20 creators daily for $3 (profile + recent posts per creator).

Trigger

Daily cron at 9 AM UTC or triggered when new creators are added to the candidate list.

Schedule

Daily at 9 AM UTC

Workflow Steps

1

Load Creator Candidate List

Read the list of TikTok usernames to vet from the database or spreadsheet. Each entry includes the creator username and the campaign they are being considered for.

2

Pull Creator Profiles

Fetch each creator's profile via TikTok API. Extract follower count, total likes, video count, and bio information.

3

Analyze Recent Content

Pull the last 20 posts for each creator. Calculate average views, engagement rate, and posting frequency.

4

Score and Flag Issues

Score each creator on engagement rate, consistency, and follower-to-engagement ratio. Flag potential fake followers or inconsistent posting.

5

Generate Vetting Report

Compile a ranked report of all vetted creators with scores, flags, and recommendations for the marketing team.

Python Implementation

Python
import requests, os

API_KEY = os.environ["SCAVIO_API_KEY"]
TT_H = {"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"}

def vet_creator(username: str) -> dict:
    # Profile
    profile = requests.post(
        "https://api.scavio.dev/api/v1/tiktok/profile",
        headers=TT_H, json={"username": username}, timeout=15,
    ).json()
    stats = profile.get("user_info", {}).get("stats", {})
    followers = stats.get("follower_count", 0)
    # Recent posts
    posts = requests.post(
        "https://api.scavio.dev/api/v1/tiktok/user-posts",
        headers=TT_H, json={"username": username}, timeout=15,
    ).json().get("videos", [])
    avg_views = sum(v.get("stats", {}).get("play_count", 0) for v in posts) / max(len(posts), 1)
    engagement = avg_views / max(followers, 1)
    flags = []
    if engagement < 0.01:
        flags.append("low_engagement")
    if followers > 100000 and engagement < 0.005:
        flags.append("possible_fake_followers")
    return {"username": username, "followers": followers, "avg_views": int(avg_views),
            "engagement_pct": round(engagement * 100, 2), "posts_analyzed": len(posts), "flags": flags,
            "score": "pass" if not flags else "review"}

candidates = ["creator1", "creator2", "creator3"]
for c in candidates:
    result = vet_creator(c)
    print(f"@{result['username']}: {result['score']} | {result['engagement_pct']}% engagement | flags: {result['flags']}")

JavaScript Implementation

JavaScript
const H = {'Authorization': 'Bearer ' + process.env.SCAVIO_API_KEY, 'Content-Type': 'application/json'};
async function vetCreator(username) {
  const pr = await fetch('https://api.scavio.dev/api/v1/tiktok/profile', {method:'POST', headers:H, body:JSON.stringify({username})});
  const p = await pr.json();
  const followers = p.user_info?.stats?.follower_count||0;
  const vr = await fetch('https://api.scavio.dev/api/v1/tiktok/user-posts', {method:'POST', headers:H, body:JSON.stringify({username})});
  const posts = (await vr.json()).videos||[];
  const avgViews = posts.reduce((s,v)=>s+(v.stats?.play_count||0),0)/Math.max(posts.length,1);
  const engagement = avgViews/Math.max(followers,1);
  const flags = [];
  if (engagement<0.01) flags.push('low_engagement');
  if (followers>100000 && engagement<0.005) flags.push('possible_fake_followers');
  return {username, followers, avgViews:Math.round(avgViews), engagement:(engagement*100).toFixed(2), flags, score:flags.length?'review':'pass'};
}
const r = await vetCreator('example_creator');
console.log('@'+r.username+': '+r.score+' | '+r.engagement+'% | flags: '+r.flags.join(','));

Platforms Used

TikTok

Trending video, creator, and product discovery

Frequently Asked Questions

Influencer marketing teams review creator profiles manually, spending hours per candidate. This workflow automates daily vetting of creator candidates: pull profiles, analyze engagement rates, check posting consistency, and flag red flags. Vet 20 creators daily for $3 (profile + recent posts per creator).

This workflow uses a daily cron at 9 am utc or triggered when new creators are added to the candidate list.. Daily at 9 AM UTC.

This workflow uses the following Scavio platforms: tiktok. Each platform is called via the same unified API endpoint.

Yes. Scavio's free tier includes 250 credits per month with no credit card required. That is enough to test and validate this workflow before scaling it.

Daily TikTok Creator Vetting Workflow

Workflow that vets TikTok creator candidates daily. Checks engagement rates, follower quality, and content consistency before campaign commitments.