TikTok Email Scraper API
Our TikTok email scraper reads a creator's public bio and returns the contact email, the single bio link, the business category, and commerce flags as JSON from one request, using the same profile page our profile endpoint reads.
Why TikTok Email data fights back
TikTok has no public "business email" field logged-out, so the only email a scraper can honestly return is one the creator typed into their visible bio. That text hydrates from an embedded blob that datacenter IPs get verify-walled from, so a plain fetch returns nothing.
Fire your first TikTok Email Scraper API call
curl "https://api.tiktokscraperapi.com/api/v1/tiktok/email?username=washingtonpost&api_key=$API_KEY" import requests
BASE = "https://api.tiktokscraperapi.com/api/v1"
API_KEY = "YOUR_API_KEY"
# Pass a bare @username, or a full profile URL via the url param.
data = requests.get(
f"{BASE}/tiktok/email",
params={"username": "washingtonpost", "api_key": API_KEY},
timeout=30,
).json()
if data["email"]:
print(data["nickname"], "->", data["email"], f"(from {data['email_source']})")
else:
print(data["nickname"], "published no email; bio link:", data["bioLink"]) Parameters
| Parameter | Required | Default | Notes |
|---|---|---|---|
username | optional | - | The @handle, with or without the leading @, e.g. washingtonpost. Required unless you pass url. |
url | optional | - | A full TikTok profile URL, e.g. https://www.tiktok.com/@washingtonpost. The handle is parsed out of it. One of username or url is required. |
country | optional | us | Two-letter country code for the exit region the request is routed through. Defaults to US, where TikTok serves the populated page. |
api_key | required | - | Your API key, passed as a query parameter. Get one free at signup. |
What the TikTok Email Scraper API hands back
{
"uniqueId": "washingtonpost",
"url": "https://www.tiktok.com/@washingtonpost",
"socialPlatform": "tiktok",
"email": "universe@washpost.com",
"bio": "We are a newspaper.\n📩 universe@washpost.com",
"bioLink": "https://linktr.ee/wpuniverse",
"category": "Media & Entertainment",
"is_commerce_account": true,
"nickname": "The Washington Post",
"verified": true,
"email_source": "bio",
"price": null,
"currency": "USD",
"rating": null,
"reviews_count": null
} | Field | Type | Description |
|---|---|---|
uniqueId | string | The creator @handle the contact data belongs to. |
email | string | The contact email parsed from the bio, plaintext or de-obfuscated (name [at] brand [dot] com forms). Null when the creator published none. |
bio | string | The full bio text the email and links were read from. |
bioLink | string | The single external bio link (Linktree, site, or shop). Null when absent. |
category | string | The business or creator category label on commerce and pro accounts, e.g. Media & Entertainment. |
is_commerce_account | boolean | True when TikTok flags the account as a commerce or business account. |
nickname | string | The display name shown on the profile. |
verified | boolean | True when the account carries the verified badge. |
email_source | string | Where the email came from, "bio" for a no-auth surface, or null when no email was found. |
url | string | The canonical profile URL. |
Where teams put TikTok Email data to work
Creator outreach
Influencer lead lists
Brand and commerce filtering
CRM enrichment
Link-in-bio harvesting
Coverage checks
Why build on our TikTok Email Scraper API
We read the same public profile page our profile endpoint reads, regex the bio for a plaintext or lightly obfuscated address, and surface the bio link, category, and commerce flag alongside it. When a creator published no email we return email null rather than inventing one, which is the honest ceiling for a logged-out surface.
Bio email extraction
Bio link and category
Commerce flags
Honest null handling
Residential anti-bot
Pay for success
TikTok Email Scraper API vs rolling your own
| Our API | DIY (requests / headless) | Manual lookup | |
|---|---|---|---|
| Input by handle or URL | Yes, username or url | Manual page fetch and parse | Open each profile by hand |
| Bio email | Parsed, de-obfuscated | You write the regex | Copy from the bio |
| Obfuscated forms | Handled (at / dot forms) | You handle each case | Read and rewrite manually |
| Bio link and category | Returned in one call | Extra parsing per field | Copy each separately |
| Anti-bot and proxies | Built in, US residential | You build and maintain it | Not applicable |
| Scale | Batch by handle list | Bound by your proxy pool | One profile at a time |
Start free, then pay per call
| Plan | Price | Best for |
|---|---|---|
| Free | 1,000 requests | Testing and small jobs |
| Pro | $0.60 / 1k | Production workloads |
| Pay-as-you-go | $0.90 / 1k | Spiky or one-off volume |
Median response 2.6s. You only pay for successful requests.
FAQ
A TikTok email scraper is a tool that reads a creator's public profile and extracts the contact email they published in their bio. Our TikTok email scraper API takes an @username or profile URL and returns the email, the bio text it came from, the bio link, the business category, commerce flags, and verified status as JSON.
From the creator's public bio only. TikTok has no logged-out "business email" button field, so the honest ceiling for a no-auth surface is the address a creator typed into their visible bio. We parse plaintext addresses and common obfuscations like "name [at] brand [dot] com" and return email_source as "bio" when we find one.
The response returns email as null and email_source as null. We do not guess or synthesise an address from other text. Most personal accounts publish no email, so you should expect null for those and rely on the bioLink and category fields instead.
Yes, within reason. Beyond plaintext addresses, the parser rebuilds lightly obfuscated forms where both an at-surrogate and a dot-surrogate are present, such as "name (at) brand dot com" or "name [at] brand [dot] com". It is deliberately conservative so it never mints a false email from ordinary prose.
Our endpoint reads only the public bio a logged-out visitor can see, and returns the contact details a creator chose to publish there. You are responsible for using contact data lawfully, including under GDPR, CAN-SPAM, and TikTok's terms. This is general information, not legal advice, so confirm your specific use with counsel.
Yes. Every response includes bioLink (the single external link, such as a Linktree or store URL), category (the business or creator label on commerce and pro accounts), and is_commerce_account. These come back whether or not an email was found, so the call is still useful for creators who publish a link but no address.