Terakhir diperbarui
Kreator
Profil kreator yang tersimpan, perubahan, graf follow, dan analitik.
Setiap operasi diautentikasi dengan API key (Authorization: Bearer <key>) dan error memakai amplop bersama yang dijelaskan di Error. Dibuat dari dokumen OpenAPI milik API.
Cari kreator
/v1/creatorsPotongan handle atau nama tampilan, tidak peka huruf besar/kecil, pengikut terbanyak lebih dulu. q yang kosong menelusuri seluruh kumpulan yang tersimpan.
Parameter query
| Name | Type | Description |
|---|---|---|
qOptional | string | Handle (dengan atau tanpa @) atau sebagian nama tampilan. |
limitOptional | integer | Jumlah hasil maksimum. Rentang 1–100. Default: 20 |
Permintaan
curl "https://api.toktokdata.live/v1/creators" \ -H "Authorization: Bearer $ROOMSCOPE_API_KEY"Respons
{ "data": { "query": "linh.live", "results": [ { "tiktokUserId": "990000000000000001", "uniqueId": "linh.live", "displayName": "Linh Live", "region": "VN", "avatarUrl": null, "followerCount": 123456, "verified": true } ] }, "provenance": { "observedAt": "2026-11-01T10:36:44.935Z", "freshness": "near_realtime", "source": "public_creator_profile", "sourceKind": "derived", "coverageStatus": "observed", "methodologyVersion": "creators-v1", "window": null }}Error
400Parameter atau body tidak valid;codemenyebutkan masalahnya.401API key tidak ada atau tidak dikenal.402Dompet kredit workspace tidak dapat menutup biaya panggilan ini;resetAtmenunjukkan kapan kredit di-reset.403Key tidak memiliki scope tersebut, atau paket tidak mencakup fitur ini.429Laju permintaan terlampaui; patuhiRetry-After.
Ambil profil kreator
/v1/creators/{uid}Profil publik yang tersimpan beserta riwayat terbaru penghitungnya.
Parameter path
| Name | Type | Description |
|---|---|---|
uidRequired | string | Handle kreator tanpa @ (linh.live) atau user id TikTok numerik. |
Permintaan
curl "https://api.toktokdata.live/v1/creators/linh.live" \ -H "Authorization: Bearer $ROOMSCOPE_API_KEY"Respons
{ "data": { "creator": { "tiktokUserId": "990000000000000001", "uniqueId": "linh.live", "secUid": null, "displayName": "Linh Live", "region": "VN", "language": null, "signature": "Daily LIVE from Hanoi", "avatarUrl": null, "followerCount": 123456, "followingCount": 321, "awemeCount": 3, "totalFavorited": 9876543, "favoritingCount": null, "verified": true, "customVerify": null, "enterpriseVerifyReason": null, "instagramId": null, "youtubeChannelId": null, "twitterId": null, "firstSeenAt": "2026-10-02T10:51:44.935Z", "lastRefreshedAt": "2026-11-01T10:36:44.935Z", "history": [] } }, "provenance": { "observedAt": "2026-11-01T10:36:44.935Z", "freshness": "near_realtime", "source": "public_creator_profile", "sourceKind": "derived", "coverageStatus": "observed", "methodologyVersion": "creators-v1", "window": null }}Error
400Parameter atau body tidak valid;codemenyebutkan masalahnya.401API key tidak ada atau tidak dikenal.402Dompet kredit workspace tidak dapat menutup biaya panggilan ini;resetAtmenunjukkan kapan kredit di-reset.403Key tidak memiliki scope tersebut, atau paket tidak mencakup fitur ini.429Laju permintaan terlampaui; patuhiRetry-After.
Analisis video seorang kreator
/v1/creators/{uid}/analysisLaporan engagement yang dihitung hanya dari video yang tersimpan: total, median, frekuensi posting.
Parameter path
| Name | Type | Description |
|---|---|---|
uidRequired | string | Handle kreator tanpa @ (linh.live) atau user id TikTok numerik. |
Permintaan
curl "https://api.toktokdata.live/v1/creators/linh.live/analysis" \ -H "Authorization: Bearer $ROOMSCOPE_API_KEY"Respons
{ "data": { "creator": { "tiktokUserId": "990000000000000001", "uniqueId": "linh.live", "displayName": "Linh Live", "avatarUrl": null, "region": "VN", "verified": true, "followerCount": 123456, "followingCount": 321, "awemeCount": 3, "totalFavorited": 9876543, "firstSeenAt": "2026-10-02T10:51:44.935Z", "lastRefreshedAt": "2026-11-01T10:36:44.935Z" }, "sample": { "videosAnalyzed": 3, "oldestVideoAt": "2026-10-29T10:51:44.935Z", "newestVideoAt": "2026-10-31T10:51:44.935Z", "spanDays": 2, "shareOfCatalog": 1 }, "engagement": { "totalPlays": 60000, "totalLikes": 6000, "totalComments": 600, "totalShares": 0, "avgPlays": 20000, "medianPlays": 20000, "avgLikes": 2000, "avgComments": 200, "avgShares": 0, "engagementRate": 0.11, "likeRate": 0.1, "commentRate": 0.01, "shareRate": 0, "viewsPerFollower": 0.162 }, "cadence": { "postsPerWeek": 7, "avgDaysBetweenPosts": 1, "longestGapDays": 1, "busiestWeekday": 4, "postsByWeekday": [ 0, 0 ] }, "topByPlays": [ { "videoId": "7990000000000000003", "description": "Video 3", "createTime": "2026-10-29T10:51:44.935Z", "playCount": 30000, "diggCount": 3000, "commentCount": 300, "shareCount": null, "engagementRate": 0.11 }, { "videoId": "7990000000000000002", "description": "Video 2", "createTime": "2026-10-30T10:51:44.935Z", "playCount": 20000, "diggCount": 2000, "commentCount": 200, "shareCount": null, "engagementRate": 0.11 } ], "topByEngagement": [ { "videoId": "7990000000000000001", "description": "Video 1", "createTime": "2026-10-31T10:51:44.935Z", "playCount": 10000, "diggCount": 1000, "commentCount": 100, "shareCount": null, "engagementRate": 0.11 }, { "videoId": "7990000000000000002", "description": "Video 2", "createTime": "2026-10-30T10:51:44.935Z", "playCount": 20000, "diggCount": 2000, "commentCount": 200, "shareCount": null, "engagementRate": 0.11 } ], "audience": null, "growth": null, "limits": [ { "code": "thin-video-sample", "message": "Only 3 video(s) analysed — too few to describe the account's typical performance." }, { "code": "single-observation", "message": "This account has been observed only once, so no follower growth can be shown yet." } ] }, "provenance": { "observedAt": "2026-11-01T10:36:44.935Z", "freshness": "near_realtime", "source": "derived_creator_analysis", "sourceKind": "derived", "coverageStatus": "partial", "methodologyVersion": "analysis-v1", "window": null }}Error
400Parameter atau body tidak valid;codemenyebutkan masalahnya.401API key tidak ada atau tidak dikenal.402Dompet kredit workspace tidak dapat menutup biaya panggilan ini;resetAtmenunjukkan kapan kredit di-reset.403Key tidak memiliki scope tersebut, atau paket tidak mencakup fitur ini.429Laju permintaan terlampaui; patuhiRetry-After.
Daftar perubahan profil
/v1/creators/{uid}/changesPerubahan handle, nama, bio, dan verifikasi yang teramati dari waktu ke waktu, dari yang terbaru.
Parameter path
| Name | Type | Description |
|---|---|---|
uidRequired | string | Handle kreator tanpa @ (linh.live) atau user id TikTok numerik. |
Parameter query
| Name | Type | Description |
|---|---|---|
limitOptional | integer | Jumlah perubahan maksimum. Rentang 1–200. Default: 50 |
Permintaan
curl "https://api.toktokdata.live/v1/creators/linh.live/changes" \ -H "Authorization: Bearer $ROOMSCOPE_API_KEY"Respons
{ "data": { "tiktokUserId": "990000000000000001", "uniqueId": "linh.live", "changes": [] }, "provenance": { "observedAt": "2026-10-02T10:51:44.935Z", "freshness": "stale", "source": "public_creator_profile", "sourceKind": "derived", "coverageStatus": "partial", "methodologyVersion": "creators-v1", "window": null }}Error
400Parameter atau body tidak valid;codemenyebutkan masalahnya.401API key tidak ada atau tidak dikenal.402Dompet kredit workspace tidak dapat menutup biaya panggilan ini;resetAtmenunjukkan kapan kredit di-reset.403Key tidak memiliki scope tersebut, atau paket tidak mencakup fitur ini.429Laju permintaan terlampaui; patuhiRetry-After.
Daftar pengikut seorang kreator
/v1/creators/{uid}/followersPengikut yang tersimpan, dengan bentuk yang sama seperti following.
Parameter path
| Name | Type | Description |
|---|---|---|
uidRequired | string | Handle kreator tanpa @ (linh.live) atau user id TikTok numerik. |
Parameter query
| Name | Type | Description |
|---|---|---|
cursorOptional | string | Cursor opaque dari nextCursor halaman sebelumnya. |
limitOptional | integer | Entri per halaman. |
Permintaan
curl "https://api.toktokdata.live/v1/creators/linh.live/followers" \ -H "Authorization: Bearer $ROOMSCOPE_API_KEY"Respons
{ "data": { "tiktokUserId": "990000000000000001", "uniqueId": "linh.live", "direction": "following", "entries": [], "nextCursor": null, "hasMore": false, "totalReported": null, "storedCount": 0, "isPrivate": false }, "provenance": { "observedAt": "2026-11-01T11:18:49.084Z", "freshness": "stale", "source": "public_follow_graph", "sourceKind": "derived", "coverageStatus": "not-covered", "methodologyVersion": "follow-list-v1", "window": null }}Error
400Parameter atau body tidak valid;codemenyebutkan masalahnya.401API key tidak ada atau tidak dikenal.402Dompet kredit workspace tidak dapat menutup biaya panggilan ini;resetAtmenunjukkan kapan kredit di-reset.403Key tidak memiliki scope tersebut, atau paket tidak mencakup fitur ini.429Laju permintaan terlampaui; patuhiRetry-After.
Daftar akun yang diikuti seorang kreator
/v1/creators/{uid}/followingGraf follow yang tersimpan. Akun privat mengembalikan isPrivate: true tanpa entri.
Parameter path
| Name | Type | Description |
|---|---|---|
uidRequired | string | Handle kreator tanpa @ (linh.live) atau user id TikTok numerik. |
Parameter query
| Name | Type | Description |
|---|---|---|
cursorOptional | string | Cursor opaque dari nextCursor halaman sebelumnya. |
limitOptional | integer | Entri per halaman. |
Permintaan
curl "https://api.toktokdata.live/v1/creators/linh.live/following" \ -H "Authorization: Bearer $ROOMSCOPE_API_KEY"Respons
{ "data": { "tiktokUserId": "990000000000000001", "uniqueId": "linh.live", "direction": "following", "entries": [], "nextCursor": null, "hasMore": false, "totalReported": null, "storedCount": 0, "isPrivate": false }, "provenance": { "observedAt": "2026-11-01T11:18:49.084Z", "freshness": "stale", "source": "public_follow_graph", "sourceKind": "derived", "coverageStatus": "not-covered", "methodologyVersion": "follow-list-v1", "window": null }}Error
400Parameter atau body tidak valid;codemenyebutkan masalahnya.401API key tidak ada atau tidak dikenal.402Dompet kredit workspace tidak dapat menutup biaya panggilan ini;resetAtmenunjukkan kapan kredit di-reset.403Key tidak memiliki scope tersebut, atau paket tidak mencakup fitur ini.429Laju permintaan terlampaui; patuhiRetry-After.
Ambil pemberi hadiah teratas seorang kreator
/v1/creators/{uid}/giftersPemberi hadiah di room LIVE kreator selama 7 atau 30 hari terakhir, diurutkan berdasarkan berlian: jumlah hadiah, sesi, hadiah terakhir, dan kreator dari room terakhir tempat mereka memberi hadiah. Dibaca dari sesi yang direkam RoomScope, sehingga cakupannya selalu partial. Memerlukan paket Pro atau lebih tinggi.
Parameter path
| Name | Type | Description |
|---|---|---|
uidRequired | string | Handle kreator tanpa @ (linh.live) atau user id TikTok numerik. |
Parameter query
| Name | Type | Description |
|---|---|---|
windowOptional | "7d" | "30d" | 7d atau 30d.Default: 7d |
limitOptional | integer | Jumlah baris maksimum. Rentang …–100. Default: 20 |
Permintaan
curl "https://api.toktokdata.live/v1/creators/linh.live/gifters" \ -H "Authorization: Bearer $ROOMSCOPE_API_KEY"Respons
{ "data": { "creatorUid": "7012345678901234567", "uniqueId": "linh.live", "window": "7d", "gifters": [ { "gifterUserId": "6987001122334455667", "gifterUniqueId": "minh.fan", "gifterNickname": "Minh", "avatarUrl": null, "diamondTotal": 18450, "giftCount": 312, "sessions": 4, "lastGiftAt": "2026-11-02T15:41:07.512Z", "lastRoomCreator": "linh.live" } ] }, "provenance": { "observedAt": "2026-11-02T15:41:07.512Z", "freshness": "historical", "source": "platform_observed_gifter_events", "sourceKind": "derived", "coverageStatus": "partial", "methodologyVersion": "gifters-observed-v1", "window": { "from": "2026-10-27T04:00:00.000Z", "to": "2026-11-03T04:00:00.000Z", "label": "7d" } }}Error
400Parameter atau body tidak valid;codemenyebutkan masalahnya.401API key tidak ada atau tidak dikenal.402Dompet kredit workspace tidak dapat menutup biaya panggilan ini;resetAtmenunjukkan kapan kredit di-reset.403Key tidak memiliki scope tersebut, atau paket tidak mencakup fitur ini.429Laju permintaan terlampaui; patuhiRetry-After.
Ambil insight seorang kreator
/v1/creators/{uid}/insightsRiwayat handle, berlian harian 30 hari terakhir (dari yang terbaru), snapshot liga harian, dan room LIVE kreator. liveExact bernilai true jika skor hari itu dibaca saat papan di-reset; jika tidak, liveScore adalah skor tertinggi yang terbaca hari itu. observedCoins menghitung berlian yang direkam RoomScope di sesi LIVE kreator. Handle yang sudah berubah tetap dapat di-resolve melalui riwayat alias.
Parameter path
| Name | Type | Description |
|---|---|---|
uidRequired | string | Handle kreator tanpa @ (linh.live) atau user id TikTok numerik. |
Permintaan
curl "https://api.toktokdata.live/v1/creators/linh.live/insights" \ -H "Authorization: Bearer $ROOMSCOPE_API_KEY"Respons
{ "data": { "creator": { "uid": "6990000000000000001", "uniqueId": "linh.live" }, "aliases": [ { "uniqueId": "linh.live", "firstSeenAt": "2026-10-12T09:15:02.118Z", "lastSeenAt": "2026-11-01T14:02:41.530Z" }, { "uniqueId": "linh.official", "firstSeenAt": "2026-09-30T11:40:19.004Z", "lastSeenAt": "2026-10-12T08:55:47.912Z" } ], "daily": [ { "boardDay": "2026-10-31", "countryCode": "VN", "tiktokScore": 184250, "observedCoins": 171932, "liveScore": 184250, "liveExact": true, "leagueClass": "B2" }, { "boardDay": "2026-10-30", "countryCode": "VN", "tiktokScore": 97410, "observedCoins": null, "liveScore": 97410, "liveExact": false, "leagueClass": "B2" } ], "league": [ { "day": "2026-10-31", "leagueClass": "B2", "leagueRank": 14, "leagueCountry": "VN", "followers": 412880 } ], "roomOwner": { "roomId": "7432000000000000001", "ownerUid": "6990000000000000001", "ownerUniqueId": "linh.live", "claimantUid": null, "reason": "claim_confirmed", "checkedAt": "2026-11-01T14:00:03.221Z" } }, "provenance": { "observedAt": "2026-11-01T14:02:41.530Z", "freshness": "near_realtime", "source": "creator_analytics", "sourceKind": "derived", "coverageStatus": "observed", "methodologyVersion": "creator-analytics-v1", "window": { "from": "2026-10-02T14:02:41.530Z", "to": "2026-11-01T14:02:41.530Z", "label": "30d" } }}Error
400Parameter atau body tidak valid;codemenyebutkan masalahnya.401API key tidak ada atau tidak dikenal.402Dompet kredit workspace tidak dapat menutup biaya panggilan ini;resetAtmenunjukkan kapan kredit di-reset.403Key tidak memiliki scope tersebut, atau paket tidak mencakup fitur ini.429Laju permintaan terlampaui; patuhiRetry-After.
Ambil waktu terbaik untuk mulai LIVE
/v1/insights/best-timeBerlian dan jam pemberi hadiah dari sesi LIVE yang terekam di sebuah wilayah selama windowDays hari terakhir, per hari dalam seminggu (0 = Senin) dan jam UTC. Dihitung ulang setiap hari; cells kosong selama belum ada yang terekam untuk wilayah tersebut.
Parameter query
| Name | Type | Description |
|---|---|---|
regionOptional | string | Kode wilayah ISO 3166-1 alpha-2. Default: VN |
Permintaan
curl "https://api.toktokdata.live/v1/insights/best-time" \ -H "Authorization: Bearer $ROOMSCOPE_API_KEY"Respons
{ "data": { "region": "VN", "windowDays": 28, "computedAt": "2026-11-01T01:00:04.870Z", "cells": [ { "weekday": 0, "hour": 12, "diamonds": 418230, "gifterHours": 1874 }, { "weekday": 0, "hour": 13, "diamonds": 652910, "gifterHours": 2410 }, { "weekday": 0, "hour": 14, "diamonds": 701455, "gifterHours": 2689 } ] }, "provenance": { "observedAt": "2026-11-01T01:00:04.870Z", "freshness": "near_realtime", "source": "creator_analytics", "sourceKind": "derived", "coverageStatus": "observed", "methodologyVersion": "creator-analytics-v1", "window": { "from": "2026-10-04T01:00:04.870Z", "to": "2026-11-01T01:00:04.870Z", "label": "28d" } }}Error
400Parameter atau body tidak valid;codemenyebutkan masalahnya.401API key tidak ada atau tidak dikenal.402Dompet kredit workspace tidak dapat menutup biaya panggilan ini;resetAtmenunjukkan kapan kredit di-reset.403Key tidak memiliki scope tersebut, atau paket tidak mencakup fitur ini.429Laju permintaan terlampaui; patuhiRetry-After.
Ambil kehadiran LIVE per jam
/v1/insights/presencePer jam, berapa banyak kreator berperingkat yang dipantau di wilayah tersebut yang sedang live, dari yang terlama.
Parameter query
| Name | Type | Description |
|---|---|---|
regionOptional | string | Kode wilayah ISO 3166-1 alpha-2. Default: VN |
hoursOptional | integer | Berapa jam ke belakang. Rentang 1–168. Default: 48 |
Permintaan
curl "https://api.toktokdata.live/v1/insights/presence" \ -H "Authorization: Bearer $ROOMSCOPE_API_KEY"Respons
{ "data": { "region": "VN", "hours": 48, "points": [ { "hourStart": "2026-11-01T12:00:00.000Z", "liveCreators": 214, "trackedCreators": 1630 }, { "hourStart": "2026-11-01T13:00:00.000Z", "liveCreators": 251, "trackedCreators": 1642 }, { "hourStart": "2026-11-01T14:00:00.000Z", "liveCreators": 268, "trackedCreators": 1655 } ] }, "provenance": { "observedAt": "2026-11-01T14:05:01.402Z", "freshness": "near_realtime", "source": "creator_analytics", "sourceKind": "derived", "coverageStatus": "observed", "methodologyVersion": "creator-analytics-v1", "window": { "from": "2026-10-30T14:05:01.402Z", "to": "2026-11-01T14:05:01.402Z", "label": "48h" } }}Error
400Parameter atau body tidak valid;codemenyebutkan masalahnya.401API key tidak ada atau tidak dikenal.402Dompet kredit workspace tidak dapat menutup biaya panggilan ini;resetAtmenunjukkan kapan kredit di-reset.403Key tidak memiliki scope tersebut, atau paket tidak mencakup fitur ini.429Laju permintaan terlampaui; patuhiRetry-After.