DEV Community

Kelvin
Kelvin

Posted on

How to Get TikTok Data Without the Official API (Video Stats, User Profiles, and More)

TikTok's official API is locked down. The Research API requires academic affiliation. The Business API requires partnership approval. And even if you get access, rate limits and data restrictions make it hard to build anything useful.

If you just need public video stats, user profiles, or a list of someone's recent videos, there's a much simpler path.

The Problem

Here's what TikTok's official options look like in 2026:

  • Research API: Academic affiliation required. Commercial use denied.
  • Business API: Partnership approval. Wait time: weeks to months.
  • Login Kit / Graph API: Only for apps with TikTok login integration.

Meanwhile, all you want is: "How many likes does this video have?" or "How many followers does this creator have?"

A Simpler Alternative

I built a TikTok Scraper API that returns public TikTok data through simple GET requests. No TikTok credentials, no approval process, no OAuth.

Three endpoints:

  • GET /video?url=... — Full video details: likes, comments, shares, plays, cover image, music, hashtags, duration
  • GET /user?username=... — User profile: followers, following, total likes, video count, bio, verified status
  • GET /user/videos?username=...&count=10 — Recent videos with all metadata

Quick Start

Python — Get Video Stats

import requests

headers = {
    "X-RapidAPI-Key": "YOUR_API_KEY",
    "X-RapidAPI-Host": "YOUR_API_HOST"
}

video = requests.get(
    "https://YOUR_API_HOST/video",
    params={"url": "https://www.tiktok.com/@khaby.lame/video/7356311827498498336"},
    headers=headers
).json()

print(f"Likes: {video['likes']:,}")
print(f"Comments: {video['comments']:,}")
print(f"Shares: {video['shares']:,}")
print(f"Plays: {video['plays']:,}")
Enter fullscreen mode Exit fullscreen mode

Python — Analyze a Creator

user = requests.get(
    "https://YOUR_API_HOST/user",
    params={"username": "khaby.lame"},
    headers=headers
).json()

print(f"Followers: {user['followers']:,}")
print(f"Total Likes: {user['totalLikes']:,}")
print(f"Videos: {user['videoCount']}")
print(f"Verified: {user['verified']}")
Enter fullscreen mode Exit fullscreen mode

JavaScript — Get User's Recent Videos

const response = await fetch(
  'https://YOUR_API_HOST/user/videos?username=khaby.lame&count=5',
  {
    headers: {
      'X-RapidAPI-Key': 'YOUR_API_KEY',
      'X-RapidAPI-Host': 'YOUR_API_HOST'
    }
  }
);

const data = await response.json();
data.videos.forEach(v => {
  console.log(`${v.title}${v.plays.toLocaleString()} plays`);
});
Enter fullscreen mode Exit fullscreen mode

What You Can Build With This

Influencer Dashboard: Pull follower counts and engagement rates for a list of creators. Compare their performance over time.

Content Research Tool: Fetch a creator's recent videos, rank by engagement, identify what formats and topics perform best.

Competitor Tracker: Monitor competitor TikTok accounts. Get notified when they post new content or hit engagement milestones.

Marketing Report Generator: Automatically pull campaign video stats into a report — likes, shares, comments, plays — without manual screenshots.

Pricing

Plan Price Requests/month
Basic Free 50
Pro $7 2,000
Ultra $15 8,000

Free tier to test. No credit card required for the basic plan.

Try it on RapidAPI →

Questions or feature requests? Drop a comment below.

Top comments (0)