How to Get TikTok Followers via API
How to Get TikTok Followers via API
Retrieving a list of followers for a TikTok account is one of the most common programmatic tasks — for analytics dashboards, creator tools, audience research, and CRM integrations. This guide covers every approach available in 2026, including what the official TikTok APIs can and cannot do, and how to get full follower lists with code examples in Python and JavaScript.
Does the Official TikTok API Provide a Follower List?
Short answer: no.
TikTok offers two official API programs for developers:
- TikTok for Developers (OAuth Display API). Intended for apps that act on behalf of a logged-in user. It exposes basic profile fields and (with additional scopes) video listings for the authenticated user. It does not expose that user's follower list, and it cannot query other accounts.
- TikTok Research API. Available to approved academic researchers only. It covers video queries, user info lookups, and comment retrieval — still with no public follower list endpoint, plus a 1,000-requests-per-day cap and weeks-to-months approval process.
Neither program lets you pull the list of accounts that follow an arbitrary public TikTok user. If you need that data, you need an alternative to the official APIs.
Follower Count vs. Follower List
These are two different problems with two different solutions. Clarifying which one you actually need saves a lot of wasted exploration:
| Need | Official TikTok API | Third-party API |
|---|---|---|
| Follower count for your own authenticated account | Partial (Display API scope required) | Yes |
| Follower count for any public account | No | Yes (profile endpoint) |
| Follower list (usernames, profile links) | No | Yes (dedicated endpoint) |
| Follower growth over time | No | Yes (manual polling + storage) |
| Demographics of followers | No (Research API aggregates only) | No public API exposes this |
If you just need the count, a single profile lookup is enough. If you need the list, you need an endpoint that returns paginated follower objects.
Getting Follower Count (Simple Case)
import requests
profile = requests.get(
'https://api.lamatok.com/v1/user/by/username',
params={'username': 'natgeo'},
headers={'x-access-key': 'YOUR_LAMATOK_KEY'},
).json()
print(f"Follower count: {profile.get('follower_count'):,}")
print(f"Following count: {profile.get('following_count'):,}")
One call, returns the latest numbers plus bio, verification, video count, and a few dozen other fields.
Getting the Full Follower List
LamaTok exposes two follower endpoints — one takes a username, one takes a secUid (TikTok's stable internal user identifier). If you already have the secUid from a previous call, use that variant to skip a lookup.
Python:
import requests
KEY = 'YOUR_LAMATOK_KEY'
USERNAME = 'natgeo'
all_followers = []
cursor = None
while True:
params = {'username': USERNAME}
if cursor:
params['cursor'] = cursor
page = requests.get(
'https://api.lamatok.com/v1/user/followers/by/username',
params=params,
headers={'x-access-key': KEY},
).json()
all_followers.extend(page.get('user_list', []))
if not page.get('has_more'):
break
cursor = page.get('min_time') or page.get('cursor')
print(f"Collected {len(all_followers)} followers")
JavaScript / Node:
const fetch = require('node-fetch');
const KEY = 'YOUR_LAMATOK_KEY';
const USERNAME = 'natgeo';
const all = [];
let cursor = null;
while (true) {
const params = new URLSearchParams({ username: USERNAME });
if (cursor) params.set('cursor', cursor);
const resp = await fetch(
`https://api.lamatok.com/v1/user/followers/by/username?${params}`,
{ headers: { 'x-access-key': KEY } },
);
const page = await resp.json();
all.push(...(page.user_list || []));
if (!page.has_more) break;
cursor = page.min_time || page.cursor;
}
console.log(`Collected ${all.length} followers`);
The response is paginated — one page typically returns several dozen follower objects with username, nickname, secUid, avatar URL, and a few flags (verified, private, etc.). Follow the cursor until has_more is false.
If You Need the "Following" List Instead
The symmetric endpoint exposes the accounts a user follows. Same parameters, same pagination pattern:
page = requests.get(
'https://api.lamatok.com/v1/user/following/by/username',
params={'username': 'natgeo'},
headers={'x-access-key': KEY},
).json()
Practical Notes
- TikTok's own UI hides follower lists on very large accounts. If you browse a 10M-follower creator on the TikTok app, you can only scroll through a small subset. APIs (including LamaTok) iterate through the same underlying data, but the provider's infrastructure has to work harder for very large lists — pagination takes longer, and some creators have privacy settings that restrict the visible slice.
- Rate limits are per-account on your side. LamaTok's per-second throttle is set by your plan. For large follower lists (millions) you'll want to implement throttling to stay within your per-second budget and run the export as a background job.
- The
secUidparameter is faster. If you're iterating many users, resolve usernames tosecUidonce and use theby/secUidvariant thereafter — it skips the internal username → user lookup.
Summary
The official TikTok APIs do not expose follower lists. The TikTok Research API has limited endpoints and approval gates; the Display API is limited to the authenticated user's own data.
For programmatic follower lists of any public TikTok account, use a dedicated API like LamaTok. The /v1/user/followers/by/username (or by/secUid) endpoint returns paginated follower objects, and a simple cursor loop covers the full list. Signup includes 100 free requests — enough to validate the integration end-to-end before you deposit anything. Full reference: api.lamatok.com/docs.