TikTok profile following API
Walk the outbound following graph for a TikTok handle: paginated public accounts they follow, with profile URLs, light metrics, and optional region or language when TikTok exposes them.
GET /v1/tiktok/profiles/{handle}/following1 credit Failed requests are free
About this endpoint
GET /v1/tiktok/profiles/{handle}/following is the outbound list. Pass the TikTok username (with or without a leading @) and read data.accounts plus data.page (hasMore, nextCursor). When available, data.totalAccounts is the aggregate following count for the seed. Each account can include handle, displayName, bio, avatarUrl, profileUrl, optional platformUserId and secUid, verified, optional privateAccount, optional region and language, optional accountCreatedAt, and metrics (followers, following, posts). Optional query params are cursor and trim only — unlike the followers route, there is no userId shortcut on this path.
Treat data.lookupStatus as the gate before you write edges. found means this page of follows could be returned. hidden means the following list is not available even when the seed profile may still resolve elsewhere. private and not_found are separate outcomes; do not collapse them into an empty accounts array. Pagination is cursor-based: when hasMore is true, pass nextCursor as cursor on the next request and keep the same handle. Each page bills separately — use the credit amount shown on this page and confirm with meta.creditsCharged. Inbound followers (who follows the seed) are GET /v1/tiktok/profiles/{handle}/followers. Counts without either list live on GET /v1/tiktok/profiles/{handle}.
TikTok profile following API FAQ
How do I list accounts a TikTok profile follows via API?
Call GET /v1/tiktok/profiles/{handle}/following with your Social Fetch API key (x-api-key). Pass the TikTok username as the path parameter, with or without a leading @. Read data.lookupStatus, then data.accounts and data.page. Continue with cursor from data.page.nextCursor while hasMore is true.
How much does the TikTok profile following API cost?
Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged — that field is the billing source of truth. Each paginated page is a separate billed request.
What does each outbound following-row account include?
handle, displayName, bio, avatarUrl, profileUrl, optional platformUserId and secUid, verified, optional privateAccount, optional region and language, optional accountCreatedAt, and metrics (followers, following, posts). Optional details may carry extra TikTok-native fields that were not mapped into the canonical shape. With trim=true, some optional identity fields may be omitted.
How does pagination work on the TikTok following route?
When data.page.hasMore is true, pass data.page.nextCursor as the cursor query param on the next request. Keep the same handle across pages. There is no userId query param on this route (that shortcut exists on the followers sibling only). The cursor is opaque. TikTok may stop exposing a list before the aggregate count is reached, so an empty accounts page means the end of the list even if the previous page reported hasMore: true. Empty pages are billed like any other page, so stop as soon as you receive one; data.totalAccounts is null when TikTok does not return a count.
What does lookupStatus mean when a following list is restricted?
found means the following list could be returned for that handle. hidden means TikTok is not exposing who the account follows. private means the account is private. not_found means no public profile matched. Branch on lookupStatus before treating an empty accounts array as "follows nobody."
How is this different from the followers list or profile metrics?
This route pages the outbound following graph under data.accounts (who the seed follows) — useful for affinity and competitor peer maps. Inbound followers are GET /v1/tiktok/profiles/{handle}/followers under data.followers. Aggregate following counts without the list are on GET /v1/tiktok/profiles/{handle} under data.metrics.
Do I need TikTok OAuth to map who a profile follows?
No. You authenticate to Social Fetch with an API key. The route reads publicly available following-list data when TikTok exposes it; it does not act on behalf of a logged-in TikTok user.
Can I use this to build TikTok competitor or brand-affinity maps?
Yes. Teams page following for several seed handles, upsert each account by handle or platformUserId, then compute overlap (shared follows), filter on region / verified / metrics.posts, and deepen selected nodes with the profile or videos routes. Keep meta.requestId if you need support on a failed page.
Other TikTok endpoints
- ProfileGET /v1/tiktok/profiles/{handle}
- Profile videosGET /v1/tiktok/profiles/{handle}/videos
- Profile followersGET /v1/tiktok/profiles/{handle}/followers
- Profile regionGET /v1/tiktok/profiles/{handle}/region
- Profile audienceGET /v1/tiktok/profiles/{handle}/audience
- Profile engagementGET /v1/tiktok/profiles/{handle}/engagement
- Live streamGET /v1/tiktok/profiles/{handle}/live
- Live infoGET /v1/tiktok/live