curl -X GET "https://api.hooked.so/v1/social/account/list?platform=tiktok&limit=10" \
-H "x-api-key: your_api_key_here"
const response = await fetch('https://api.hooked.so/v1/social/account/list?platform=tiktok&limit=10', {
headers: { 'x-api-key': 'your_api_key_here' }
});
const { data } = await response.json();
console.log(data.total, data.accounts.map((a) => a.username));
import requests
response = requests.get(
'https://api.hooked.so/v1/social/account/list',
params={'platform': 'youtube', 'limit': 10, 'offset': 0},
headers={'x-api-key': 'your_api_key_here'}
)
for account in response.json()['data']['accounts']:
print(account['username'], account['stats']['followers'])
{
"success": true,
"data": {
"accounts": [
{
"id": "cm7g8h9i0j1k2l3m4n5o6p7q8",
"username": "fitnessguru",
"platform": "tiktok",
"displayName": "Fitness Guru",
"bio": "Helping you get fit one video at a time",
"avatarUrl": "https://p16-sign.tiktokcdn.com/...",
"isVerified": true,
"stats": { "followers": 1500000, "following": 250, "videos": 342, "likes": 45000000 },
"analytics": { "engagementRate": 12.5, "viralityScore": 78.3, "avgViews": 890000 },
"topHashtags": [],
"keywords": [],
"keywordsStatus": "processing",
"lastAnalyzed": "2026-10-01T10:30:00.000Z",
"createdAt": "2026-10-01T10:30:00.000Z",
"profileUrl": "https://www.tiktok.com/@fitnessguru"
}
],
"total": 1,
"limit": 10,
"offset": 0
}
}
Account Analysis
List Accounts
List the social accounts your team has analyzed
GET
/
v1
/
social
/
account
/
list
curl -X GET "https://api.hooked.so/v1/social/account/list?platform=tiktok&limit=10" \
-H "x-api-key: your_api_key_here"
const response = await fetch('https://api.hooked.so/v1/social/account/list?platform=tiktok&limit=10', {
headers: { 'x-api-key': 'your_api_key_here' }
});
const { data } = await response.json();
console.log(data.total, data.accounts.map((a) => a.username));
import requests
response = requests.get(
'https://api.hooked.so/v1/social/account/list',
params={'platform': 'youtube', 'limit': 10, 'offset': 0},
headers={'x-api-key': 'your_api_key_here'}
)
for account in response.json()['data']['accounts']:
print(account['username'], account['stats']['followers'])
{
"success": true,
"data": {
"accounts": [
{
"id": "cm7g8h9i0j1k2l3m4n5o6p7q8",
"username": "fitnessguru",
"platform": "tiktok",
"displayName": "Fitness Guru",
"bio": "Helping you get fit one video at a time",
"avatarUrl": "https://p16-sign.tiktokcdn.com/...",
"isVerified": true,
"stats": { "followers": 1500000, "following": 250, "videos": 342, "likes": 45000000 },
"analytics": { "engagementRate": 12.5, "viralityScore": 78.3, "avgViews": 890000 },
"topHashtags": [],
"keywords": [],
"keywordsStatus": "processing",
"lastAnalyzed": "2026-10-01T10:30:00.000Z",
"createdAt": "2026-10-01T10:30:00.000Z",
"profileUrl": "https://www.tiktok.com/@fitnessguru"
}
],
"total": 1,
"limit": 10,
"offset": 0
}
}
Overview
Lists the TikTok and YouTube accounts your team has analyzed with Analyze Account, newest first. Reading the list costs nothing.curl -X GET "https://api.hooked.so/v1/social/account/list?platform=tiktok&limit=10" \
-H "x-api-key: your_api_key_here"
const response = await fetch('https://api.hooked.so/v1/social/account/list?platform=tiktok&limit=10', {
headers: { 'x-api-key': 'your_api_key_here' }
});
const { data } = await response.json();
console.log(data.total, data.accounts.map((a) => a.username));
import requests
response = requests.get(
'https://api.hooked.so/v1/social/account/list',
params={'platform': 'youtube', 'limit': 10, 'offset': 0},
headers={'x-api-key': 'your_api_key_here'}
)
for account in response.json()['data']['accounts']:
print(account['username'], account['stats']['followers'])
{
"success": true,
"data": {
"accounts": [
{
"id": "cm7g8h9i0j1k2l3m4n5o6p7q8",
"username": "fitnessguru",
"platform": "tiktok",
"displayName": "Fitness Guru",
"bio": "Helping you get fit one video at a time",
"avatarUrl": "https://p16-sign.tiktokcdn.com/...",
"isVerified": true,
"stats": { "followers": 1500000, "following": 250, "videos": 342, "likes": 45000000 },
"analytics": { "engagementRate": 12.5, "viralityScore": 78.3, "avgViews": 890000 },
"topHashtags": [],
"keywords": [],
"keywordsStatus": "processing",
"lastAnalyzed": "2026-10-01T10:30:00.000Z",
"createdAt": "2026-10-01T10:30:00.000Z",
"profileUrl": "https://www.tiktok.com/@fitnessguru"
}
],
"total": 1,
"limit": 10,
"offset": 0
}
}
Errors
| Status | When |
|---|---|
| 401 | Missing or invalid API key (code: "not_authenticated") |
| 403 | The team does not have the Hooked app product (code: "entitlement_required") |
| 500 | { "success": false, "message": "Failed to fetch accounts", "error": "..." } |
Authorizations
Query Parameters
Filter by platform (case-insensitive). Any other value is ignored and all platforms are returned.
Available options:
tiktok, youtube Page size (1-100). Invalid values fall back to the default.
Required range:
1 <= x <= 100Rows to skip. Invalid values fall back to 0.
Required range:
x >= 0