TikTok profile audience API
Fetch country-level audience demographics for a TikTok handle as structured location rows in the shared Social Fetch JSON envelope.
GET /v1/tiktok/profiles/{handle}/audience30 credits per successful request.
About this endpoint
Sponsorship scoring, geo-targeted outreach, and creator CRM enrichment often need where a TikTok audience sits, not just the follower total on the profile card. You already have a handle; you want country shares you can store, sort, and gate campaigns on. Pulling that from creator analytics yourself usually means OAuth, creator login, or brittle scrapes of surfaces that were never meant as an API.
`GET /v1/tiktok/profiles/{handle}/audience` takes a TikTok handle (with or without a leading `@`) and returns `data.audienceLocations` when the lookup resolves: each row has `country`, `countryCode`, `count`, and `percentage` (a string like `"15.96%"`). Compact identity sits under `data.profile` (`platform`, `handle`, `profileUrl`). Branch on `data.lookupStatus` before you write rows: `found` and `not_found` are explicit outcomes. On `not_found`, `profile` and `audienceLocations` are null.
This is location mix for one handle, not a paginated list of follower accounts. For the inbound follower graph use `GET /v1/tiktok/profiles/{handle}/followers`. Aggregate counts without geography live on `GET /v1/tiktok/profiles/{handle}`. Pricing is on the credit badge for this operation; bill from `meta.creditsCharged` on every response.
TikTok profile audience API FAQ
How do I get TikTok audience demographics by handle via API?
Call `GET /v1/tiktok/profiles/{handle}/audience` 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.audienceLocations` and `data.profile` when the status is `found`.
How much does the TikTok profile audience 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.
What does each audience location row include?
country (display name), countryCode (ISO code), count (audience count for that country), and percentage (share as a string, for example `"6.00%"`). Rows arrive under `data.audienceLocations`.
What does lookupStatus mean on the TikTok audience route?
`found` means audience demographics could be resolved for that handle. `not_found` means no audience data matched; `profile` and `audienceLocations` are null. Always branch on `lookupStatus` before treating a null or empty locations array as "zero countries."
How is this different from listing a profile's followers?
This route returns country-level audience mix for one handle. The people behind the follower count are `GET /v1/tiktok/profiles/{handle}/followers` (paginated profile rows). Aggregate follower totals without geography are on `GET /v1/tiktok/profiles/{handle}` under `data.metrics`.
Do I need TikTok OAuth to fetch profile audience demographics?
No. You authenticate to Social Fetch with an API key. The route returns audience location data when available for the handle; it does not act on behalf of a logged-in TikTok user.
Can I use this for sponsorship geo-fit scoring?
Yes. Teams store top `countryCode` / `percentage` rows next to a creator record, then filter or score against campaign target markets. Keep `meta.requestId` if you need support on a failed lookup.
Other TikTok endpoints
- ProfileGET /v1/tiktok/profiles/{handle}
- Profile videosGET /v1/tiktok/profiles/{handle}/videos
- Profile followersGET /v1/tiktok/profiles/{handle}/followers
- Profile followingGET /v1/tiktok/profiles/{handle}/following
- Profile regionGET /v1/tiktok/profiles/{handle}/region
- Live streamGET /v1/tiktok/profiles/{handle}/live
- User searchGET /v1/tiktok/users/search
- Search videosGET /v1/tiktok/search