TikTok profile region API

The country TikTok recorded for an account's newest video, as a two-letter code in location and extra.region, with the account's name, avatar and counts.

100 free credits. No card needed.

Each request1 credit
Fields in each profile20
A failed requestFree
A cached repeatFree

What you get in each profile

Every count

Followers and following as plain numbers, such as 162.9M followers on the sample.

locationUS

Where

The place as TikTok shows it, such as US.

Pictures

Links to the profile picture.

Link

A link to the profile on TikTok.

Account flags

Whether the account is verified or private.

Account type

What kind of account it is, such as creator.

Handle

The handle, such as khaby.lame.

Name

The display name, such as Khabane lame.

Bio

The bio as written.

What you can build with it

A roster split by market

Get a two-letter country for each account, US for the sample, and group a creator roster by where its newest videos were posted from.

Fields on this profileSample

US

newest_video

khaby.lame

A country check before a local launch

A roster meant for one country can be checked against where each creator's newest video was recorded, then confirmed with the creator before money moves.

Creator vetting
Fields on this profileSample

US

false

true

The video behind the country

extra.region_video_id and extra.region_video_url name the video the country came from, and extra.region_video_published_at says when it went up, so you can judge how current the answer is.

Fields on this profileSample

7704740944427388191

2026-11-05

How it works

  1. 1

    Get a key

    Sign up and get 100 free credits. No card needed.

    Your API key100 free credits
  2. 2

    Send a handle

    Pass handle (khaby.lame).

    khaby.lame
  3. 3

    Read the JSON

    One profile comes back in data.

    handlenameurl

Request and response

Request
1curl -G "https://api.socialscrape.dev/v1/tiktok/profile/region" \2  -d handle=khaby.lame \3  -H "x-api-key: $SOCIALSCRAPE_API_KEY"
Response200 OKSample values
{
  "ok": true,
  "credits_charged": 1,
  "data": {
    "name": "Khabane lame",
    "handle": "khaby.lame",
    "stats": { "followers": 162900000,
      "following": 82 },
    "location": "US",
    "url": "https://www.tiktok.com/@khaby.lame",
    "kind": "creator",
    "bio": "Se vuoi ridere sei nel posto...",
    ...
  }
}

Use it from your AI agent

Ask in plain words

Ask your agent for TikTok profile region in plain words, and the SocialScrape MCP server makes the call.

Set up the MCP server

One tool call

TikTok profile region, given a handle.

Same price as the API

1 credit a call; a repeat within 1 days is free.

Runs on your machine

Your key stays in your agent's settings.

Pay only for data you get

One profile1 credit
The same request within max_age_daysFree
A failed requestFree
Free credits for new accounts100

Starter

18,000 credits a month

GrowthMost popular

50,000 credits a month

Scale

150,000 credits a month

$27/mo

$73/mo

$209/mo

$1.50 per 1,000
$1.46 per 1,000
$1.39 per 1,000
Resets monthly
Resets monthly
Resets monthly
No rate limits
No rate limits
No rate limits

Over 1M credits a month? Talk to us. Or see full pricing.

Questions

Is the region where the TikTok account was registered?

No. It is the country TikTok recorded for the account's newest video, and extra.region_is_account_registration is false to say so. A creator who travels, or posts through a VPN, can show another country.

What if the newest video has no country?

The next two videos are tried. An account with no videos, or none that carries a country, answers not_found, and a private account answers private, neither of them charged.

Can I pass a TikTok user id for the region?

No, this call takes handle only, with or without the leading @.

What does it return?

It describes that one video, not the account: it is not the country the account registered with and may not be where the person lives, and a creator who travels, or posts through a VPN, can show another country (extra.region_source is newest_video, extra.region_video_id names the video). If the newest video has no country the next two are tried. An account with no videos, or none that carries a country, answers not_found; a private account answers private. Looked up by handle only. The profile has up to 20 fields, and the sample fills handle, name, url, kind, bio, avatar_url, verified and is_private and 2 more.

What do I send?

handle (required): Username, with or without the leading @.

Which errors can it return?

invalid_params and not_found. None is charged, and the errors list says which to retry.

Is there an SDK call for it?

client.tiktok.profile_region(...) in Python and client.tiktok.profileRegion() in TypeScript.

Same key works everywhere

100 free credits. No card needed.

Start pulling social data.