The job
Creators put their business email and links in their bio and link-in-bio page. Read what they published, and nothing else.
Endpoints
| Endpoint | Returns | Cost |
|---|---|---|
GET /v1/creators/emails | Find a creator's public emails | 1 credit |
GET /v1/creators/social-profiles | Find a creator's other social profiles | 1 credit |
GET /v1/linktree | Linktree page | 1 credit |
GET /v1/tiktok/profile | TikTok profile | 1 credit |
GET /v1/instagram/profile | Instagram profile | 1 credit |
Failed requests and cached repeats cost 0 credits. Send max_age_days to accept a recent cached copy. See credits and caching.
Recipe
- Start from a handle you already have.
- Read the addresses and profiles they publish.
- Keep the source url next to every address.
Preview
The API is in early access. Calls use
api.socialscrape.io and return the shapes in the reference.Python
import os
import requests
API = "https://api.socialscrape.io"
HEADERS = {"x-api-key": os.environ["SOCIALSCRAPE_API_KEY"]}
def get(path, **params):
res = requests.get(API + path, headers=HEADERS, params=params, timeout=60)
res.raise_for_status()
return res.json()["data"]
# Find a creator's public emails
contacts = get("/v1/creators/emails", handle="khaby.lame", platform="tiktok")
# Find a creator's other social profiles
linked = get("/v1/creators/social-profiles", handle="khaby.lame", platform="tiktok")
print(contacts)
for p in linked["items"]:
print(p["platform"], p["url"])TypeScript
const API = "https://api.socialscrape.io";
const headers = { "x-api-key": process.env.SOCIALSCRAPE_API_KEY! };
async function get(path: string, params: Record<string, string | number | boolean>) {
const query = new URLSearchParams(Object.entries(params).map(([k, v]) => [k, String(v)]));
const res = await fetch(`${API}${path}?${query}`, { headers });
if (!res.ok) throw new Error(`${res.status} ${await res.text()}`);
return (await res.json()).data;
}
// Find a creator's public emails
const contacts = await get("/v1/creators/emails", { handle: "khaby.lame", platform: "tiktok" });
// Find a creator's other social profiles
const linked = await get("/v1/creators/social-profiles", { handle: "khaby.lame", platform: "tiktok" });
console.log(contacts);
for (const p of linked.items) console.log(p.platform, p.url);Good to know
Only addresses a creator published themselves are returned, each with where it was seen. Your outreach still has to follow the law where the person lives. See the acceptable use policy.