Fetching latest headlines…
How to Get TikTok Profile Data via API (With Code Examples)
NORTH AMERICA
🇺🇸 United StatesJune 29, 2026

How to Get TikTok Profile Data via API (With Code Examples)

0 views0 likes0 comments
Originally published byDev.to

TikTok's official API is restricted to approved partners and requires a lengthy review process. For most developers, marketers, and builders who just want basic public profile data — follower counts, engagement figures, recent videos — that approval never comes.

The TikTok Data Pro API on RapidAPI solves this. It exposes a clean REST endpoint that returns structured TikTok profile data for any public account. This guide shows you exactly how to use it, with working code examples in cURL, JavaScript, and Python.

What data does the API return?

A single call to /v1/profile returns:

Profile fields:

  • followers, following, totalLikes, totalVideos
  • name, nickname, bio, verified
  • profileUrl, avatar

Recent posts array — each with plays, likes, comments, shares, createdAt, videoUrl

Getting started

Subscribe to the free tier (500 calls, no credit card) at: https://rapidapi.com/bhaumikdhameliya30/api/tiktok-data-pro

Code examples

cURL

curl --request GET \
  --url 'https://tiktok-data-pro.p.rapidapi.com/v1/profile?username=khaby.lame' \
  --header 'x-rapidapi-host: tiktok-data-pro.p.rapidapi.com' \
  --header 'x-rapidapi-key: YOUR_API_KEY'

JavaScript

const response = await fetch(
  'https://tiktok-data-pro.p.rapidapi.com/v1/profile?username=khaby.lame',
  {
    headers: {
      'x-rapidapi-host': 'tiktok-data-pro.p.rapidapi.com',
      'x-rapidapi-key': 'YOUR_API_KEY',
    },
  }
);
const data = await response.json();
console.log(data.data.followers);
console.log(data.posts);

Python

import requests

response = requests.get(
    "https://tiktok-data-pro.p.rapidapi.com/v1/profile",
    params={"username": "khaby.lame"},
    headers={
        "x-rapidapi-host": "tiktok-data-pro.p.rapidapi.com",
        "x-rapidapi-key": "YOUR_API_KEY",
    },
)
data = response.json()
print(data["data"]["followers"])
print(data["data"]["totalLikes"])

Sample response

{
  "success": true,
  "username": "khaby.lame",
  "data": {
    "followers": 160600000,
    "totalLikes": 2600000000,
    "totalVideos": 1314,
    "verified": true
  },
  "posts": [
    {
      "plays": 6100000,
      "likes": 463900,
      "comments": 4696,
      "shares": 14000
    }
  ]
}

Calculating engagement rate

function engagementRate(posts, followers) {
  const avg = posts.reduce((s, p) => s + p.likes + p.comments + p.shares, 0) / posts.length;
  return ((avg / followers) * 100).toFixed(2);
}

Or use the free calculator (no code needed): https://scrapiq.in/tools/tiktok-engagement-calculator

Get started

500 free API calls, no credit card: https://rapidapi.com/bhaumikdhameliya30/api/tiktok-data-pro

Originally published at scrapiq.in

Comments (0)

Sign in to join the discussion

Be the first to comment!