Solution

TikTok UGC Collection via API

Brands running UGC campaigns on TikTok need to collect all creator-submitted content for review, reporting, and repurposing. Manual collection (visiting each creator's profile, dow

The Problem

Brands running UGC campaigns on TikTok need to collect all creator-submitted content for review, reporting, and repurposing. Manual collection (visiting each creator's profile, downloading videos, recording metrics) takes hours for campaigns with 20+ creators. Missing a creator's post means incomplete campaign reporting.

The Scavio Solution

Use Scavio TikTok API to automatically collect UGC from all campaign creators. Query each creator's recent posts, filter for campaign-related content using hashtag matching, and aggregate metrics. One script replaces hours of manual collection.

Before

Before automation, the social media manager spent 4 hours after each campaign manually checking 30 creator profiles, screenshotting metrics, and compiling a spreadsheet. 2-3 creator posts were routinely missed.

After

After automation, all 30 creators' content is collected in 3 minutes for $0.15 (30 queries at $0.005). Every post with the campaign hashtag is captured. Metrics are aggregated automatically. The manager reviews the report instead of building it.

Who It Is For

Social media managers running TikTok UGC campaigns. Marketing agencies managing influencer content collection. D2C brands scaling TikTok creator partnerships.

Key Benefits

  • Collect all UGC from 30+ creators in minutes vs hours
  • Campaign hashtag matching ensures no posts are missed
  • Automated metrics aggregation: views, likes, comments per creator
  • Cost: $0.005/creator query vs hours of manual collection
  • Repeatable process for every campaign

Python Example

Python
import requests
import json
from datetime import datetime

API_KEY = "your_scavio_api_key"
CAMPAIGN_HASHTAG = "YourCampaign"

def collect_ugc(creators: list[str]) -> dict:
    all_ugc = []
    for creator in creators:
        res = requests.post(
            "https://api.scavio.dev/api/v1/tiktok/user/posts",
            headers={"Authorization": f"Bearer {API_KEY}"},
            json={"username": creator},
            timeout=15,
        )
        if not res.ok:
            continue
        posts = res.json().get("posts", [])
        campaign_posts = [p for p in posts if CAMPAIGN_HASHTAG.lower() in " ".join(p.get("hashtags", [])).lower()]
        for p in campaign_posts:
            all_ugc.append({
                "creator": creator,
                "video_id": p.get("id"),
                "description": p.get("description", ""),
                "views": p.get("views", 0),
                "likes": p.get("likes", 0),
                "comments": p.get("comments", 0),
            })
    total_views = sum(u["views"] for u in all_ugc)
    return {"campaign": CAMPAIGN_HASHTAG, "creators_checked": len(creators), "ugc_found": len(all_ugc), "total_views": total_views, "posts": all_ugc}

report = collect_ugc(["creator_a", "creator_b", "creator_c"])
print(f"UGC collected: {report['ugc_found']} posts, {report['total_views']} total views")

JavaScript Example

JavaScript
const API_KEY = "your_scavio_api_key";
const CAMPAIGN_HASHTAG = "YourCampaign";

async function collectUGC(creators) {
  const ugc = [];
  for (const creator of creators) {
    const res = await fetch("https://api.scavio.dev/api/v1/tiktok/user/posts", {
      method: "POST",
      headers: { Authorization: `Bearer ${API_KEY}`, "content-type": "application/json" },
      body: JSON.stringify({ username: creator }),
    });
    if (!res.ok) continue;
    const posts = (await res.json()).posts ?? [];
    for (const p of posts) {
      if ((p.hashtags ?? []).some((h) => h.toLowerCase().includes(CAMPAIGN_HASHTAG.toLowerCase()))) {
        ugc.push({ creator, videoId: p.id, views: p.views ?? 0, likes: p.likes ?? 0 });
      }
    }
  }
  return ugc;
}

const ugc = await collectUGC(["creator_a", "creator_b"]);
console.log(`Collected ${ugc.length} UGC posts`);

Platforms Used

TikTok

Trending video, creator, and product discovery

Frequently Asked Questions

Brands running UGC campaigns on TikTok need to collect all creator-submitted content for review, reporting, and repurposing. Manual collection (visiting each creator's profile, downloading videos, recording metrics) takes hours for campaigns with 20+ creators. Missing a creator's post means incomplete campaign reporting.

Use Scavio TikTok API to automatically collect UGC from all campaign creators. Query each creator's recent posts, filter for campaign-related content using hashtag matching, and aggregate metrics. One script replaces hours of manual collection.

Social media managers running TikTok UGC campaigns. Marketing agencies managing influencer content collection. D2C brands scaling TikTok creator partnerships.

Yes. Scavio's free tier includes 250 credits per month with no credit card required. That is enough to validate this solution in your workflow.

TikTok UGC Collection via API

Use Scavio TikTok API to automatically collect UGC from all campaign creators. Query each creator's recent posts, filter for campaign-related content using hashtag matching, and ag