Prezentare generală
TikTool oferă două categorii de date de clasament prin API-ul site-ului de la tik.tools. Ambele endpoint-uri returnează în timp real date de clasament competitiv pentru creatorii TikTok LIVE, ordonate după Diamantele câștigate.
Clasamente regionale
Clasamente zilnice cu primii 100 de creatori după totalul de Diamante câștigate, împărțite pe regiuni geografice. Actualizate continuu pe parcursul zilei. Disponibile pentru abonații Basic, Pro și Ultra.
- Primii 100 de creatori din fiecare regiune
- Poziție, scor (Diamante), status LIVE, ID cameră
- 44 de regiuni din toată lumea
- Datele se actualizează continuu
Clasamente de ligă
Date de clasament competitiv pe clase (A1-D5) pentru creatorii care concurează în ligile TikTok LIVE. Arată cine se află în fiecare nivel competitiv, în orice regiune. Necesită planul Ultra pentru dezvoltatori. Agency PASS (tik.tools/vip) este un abonament pentru site - oferă acces la datele de ligă în interfața site-ului, nu acces programatic prin API.
- 18 divizii de ligă: A1, A2, A3, B1, B2, B3, B4, B5, C1, C2, C3, C4, C5, D1, D2, D3, D4, D5
- Intrări ordonate pe fiecare clasă, cu status LIVE
- Previzualizare parțială pentru planurile inferioare (5 intrări)
- Datele se actualizează frecvent
tik.tools (nu pe api.tik.tools) și folosesc autentificare pe bază de sesiune. Apelează-le de pe serverul tău cu un cookie de sesiune valid, obținut prin conectarea la tik.tools cu un cont de dezvoltator plătit. Toate planurile plătite pentru dezvoltatori (Basic, Pro, Ultra) au acces la endpoint-urile de clasament regional. Endpoint-urile de ligă necesită planul Ultra pentru dezvoltatori. Abonamentul Agency PASS (la tik.tools/vip) este un produs separat, doar pentru site - oferă acces la datele de ligă prin interfața site-ului tik.tools, nu prin acest API pentru dezvoltatori.Referință regiuni
Sunt disponibile 44 de clasamente regionale. Folosește Slug în URL-ul endpoint-ului de clasament pe țară și Cod regiune în endpoint-urile de ligă.
north-americaUS+North AmericacanadaCACanadabrazil-regionBRBrazilmexicoMXMexicolatin-americaLATAMLatin Americacolombia-peru-dominican-republicCO+Colombia, Peru & Dominican RepublicjamaicaJMJamaicaaustralia-pacificAU+Australia & Pacificjapan-regionJPJapansouth-korea-regionKRSouth Koreataiwan-regionTWTaiwanindonesia-regionIDIndonesiamalaysia-regionMYMalaysiasingaporeSGSingaporephilippines-regionPHPhilippinesthailand-regionTHThailandvietnam-regionVNVietnamnepalNPNepalbangladesh-bhutan-maldivesBD+Bangladesh, Bhutan & MaldivesazerbaijanAZAzerbaijankazakhstanKZKazakhstankyrgyzstanKGKyrgyzstanbelarusBYBelarusukraineUAUkrainecentral-asiaCCACentral AsiadachDE+Germany & DACHswitzerlandCHSwitzerlandiberiaES+Iberiacentral-europeHU+Central EuropelusophonePT+Lusophonefrance-regionFR+FrancebelgiumBEBelgiumnetherlands-regionNLNetherlandsunited-kingdom-regionUK+United Kingdomireland-baltics-maltaIE+Ireland, Baltics & Maltaitaly-regionIT+ItalyswedenSESwedenscandinaviaSE+Nordicspoland-regionPLPolandromania-regionRORomaniabalkansBKBalkansturkey-regionTRTurkeymiddle-east-africaMENAMiddle East & Africanigeria-ghana-kenya-south-africaNG+Nigeria, Ghana, Kenya & South AfricaEndpoint: Clasament regional
https://tik.tools/api/leaderboards/country/:slugToate planurile plătiteReturnează clasamentul top 100 al zilei curente pentru o regiune. Intrările sunt ordonate descrescător după score (totalul de Diamante câștigate azi).
Parametri de cale
slugstringSlug-ul regiunii din tabelul Referință regiuni de mai sus (de ex. balkans, north-america)Schema răspunsului
[].ranknumberPoziția în clasament (1 = cel mai mare câștig)[].uniqueIdstringNumele de utilizator TikTok (fără @)[].nicknamestringNumele afișat pe TikTok[].scorenumberTotalul de Diamante câștigate azi în această regiune[].isLivebooleanDacă creatorul este LIVE în acest moment[].roomIdstring | nullID-ul camerei LIVE dacă transmite acum, altfel nullExemplu de răspuns
[
{
"rank": 1,
"uniqueId": "top_creator",
"nickname": "Top Creator",
"score": 284500,
"isLive": true,
"roomId": "7384920175638291456"
},
{
"rank": 2,
"uniqueId": "second_place",
"nickname": "Second Place",
"score": 198200,
"isLive": false,
"roomId": null
}
]Exemple de cod
// Node.js - fetch Balkans leaderboard
const response = await fetch('https://tik.tools/api/leaderboards/country/balkans', {
headers: {
'x-api-key': 'YOUR_ULTRA_API_KEY',
}
})
const entries = await response.json()
for (const entry of entries) {
console.log(`#${entry.rank} @${entry.uniqueId} - ${entry.score} diamonds${entry.isLive ? ' [LIVE]' : ''}`)
}Endpoint-uri de ligă
hasFullAccess din răspuns va fi false, iar maskedCount va indica numărul de intrări ascunse. Notă: abonamentul Agency PASS (tik.tools/vip) oferă acces la datele de ligă pe site, dar nu este un abonament API pentru dezvoltatori.4a. Listează ligile unei regiuni
https://tik.tools/api/leaderboards/leagues/:regionDoar UltraListează clasele de ligă disponibile pentru o regiune, inclusiv câți creatori sunt în fiecare clasă și când au fost actualizate ultima dată datele.
Parametri de cale
regionstringCodul regiunii (de ex. BK, BC, US+) din tabelul Referință regiuniSchema răspunsului
[].classTypenumberIdentificator numeric al clasei (vezi Referință classType mai jos)[].classLabelstringNumele clasei, ușor de citit (de ex. "A1", "B5")[].countnumberNumărul de creatori aflați acum în această clasă[].updatedAtstringMarcaj de timp ISO 8601 al ultimei actualizări a datelorExemplu de răspuns
[
{ "classType": 2000, "classLabel": "A1", "count": 12, "updatedAt": "2026-05-11T14:30:00.000Z" },
{ "classType": 1900, "classLabel": "A2", "count": 28, "updatedAt": "2026-05-11T14:30:00.000Z" },
{ "classType": 1100, "classLabel": "B5", "count": 55, "updatedAt": "2026-05-11T14:30:00.000Z" },
{ "classType": 1000, "classLabel": "C1", "count": 83, "updatedAt": "2026-05-11T14:30:00.000Z" }
]// Node.js - list leagues for Balkans (BK)
const response = await fetch('https://tik.tools/api/leaderboards/leagues/BK', {
headers: { 'x-api-key': 'YOUR_ULTRA_API_KEY' }
})
const leagues = await response.json()
for (const league of leagues) {
console.log(`${league.classLabel} (type ${league.classType}): ${league.count} creators`)
}4b. Obține intrările unei ligi
https://tik.tools/api/leaderboards/league/:region/:classTypeDoar UltraReturnează lista ordonată a creatorilor dintr-o anumită clasă de ligă pentru o regiune. Acesta este endpoint-ul principal pentru instrumente bazate pe ligi și panouri de monitorizare a creatorilor.
Parametri de cale
regionstringCodul regiunii (de ex. BK, US+)classTypenumberIdentificator numeric al clasei (2000=A1, 1900=A2, 1100=B5 etc.)Schema răspunsului
hasFullAccessbooleanTrue dacă planul tău are acces complet; false = mod previzualizare (5 intrări)maskedCountnumberNumărul de intrări ascunse din cauza limitărilor planului (0 dacă hasFullAccess)totalCountnumberNumărul total de creatori din această clasăentries[].ranknumberPoziția în cadrul acestei claseentries[].userIdstringID-ul numeric de utilizator TikTok (ID stabil de backend, nu se schimbă niciodată)entries[].uniqueIdstringNumele de utilizator TikTok fără @ (poate fi schimbat de utilizator)entries[].nicknamestringNumele afișat (poate fi schimbat de utilizator)entries[].scorenumberDiamantele câștigate în perioada curentă a ligiientries[].isLivebooleanDacă creatorul este LIVE în acest momentExemplu de răspuns
{
"hasFullAccess": true,
"maskedCount": 0,
"totalCount": 12,
"entries": [
{
"rank": 1,
"userId": "6841523190294479361",
"uniqueId": "league_leader",
"nickname": "League Leader",
"score": 1840000,
"isLive": true
},
{
"rank": 2,
"userId": "6712309845712006148",
"uniqueId": "second_in_a1",
"nickname": "Second In A1",
"score": 1620000,
"isLive": false
}
]
}// Node.js - fetch A1 league entries for Balkans
const response = await fetch('https://tik.tools/api/leaderboards/league/BK/2000', {
headers: { 'x-api-key': 'YOUR_ULTRA_API_KEY' }
})
const data = await response.json()
if (!data.hasFullAccess) {
console.warn(`Teaser mode: ${data.maskedCount} entries hidden. Upgrade to Ultra for full access.`)
}
console.log(`A1 Balkans - ${data.totalCount} creators total`)
for (const entry of data.entries) {
const liveTag = entry.isLive ? ' [LIVE]' : ''
console.log(`#${entry.rank} @${entry.uniqueId} - ${entry.score.toLocaleString()} diamonds${liveTag}`)
}Referință classType
Clasele de ligă asociază valorile numerice classType cu niveluri competitive. A1 este nivelul cel mai înalt - creatorii de elită care câștigă cele mai multe Diamante. D5 este punctul de intrare în competiția ligii.
2000A1Nivel de elită. Cei mai mari câștigători din regiune. Cea mai mare concurență și cele mai mari praguri de Diamante pentru clasare.1900A2Nivel superior. Creatori consacrați, cu câștiguri mari, care țintesc promovarea în A1.1800A3Clasa A consacrată. Câștigători constanți, care își păstrează locul în zona de elită.1500B1Vârful zonei B. Creatori aflați la o promovare distanță de diviziile A.1400B2Clasa B superioară. Câștigători puternici care concurează pentru B1.1300B3Clasa B de mijloc. Câștigători constanți la mijlocul zonei B.1200B4Clasa B inferioară. Creatori care urcă spre diviziile B superioare.1100B5Intrarea în clasa B. Creatori cu câștiguri puternice și constante pe parcursul perioadei ligii.1000C1Vârful zonei C. Câștigători activi care urcă spre zona clasei B.900C2Clasa C superioară. Câștigători moderați care concurează pentru promovarea în C1.800C3Clasa C de mijloc. Câștigători obișnuiți la mijlocul zonei C.700C4Clasa C inferioară. Creatori care urcă spre diviziile C superioare.600C5Intrarea în clasa C. Promovați recent din zona D.500D1Vârful zonei D. Creatori care încep să câștige semnificativ în regiune.400D2Clasa D superioară. Câștigători noi sau cu volum mai mic.300D3Clasa D de mijloc. Creatori care se acomodează cu competiția ligii.200D4Clasa D inferioară. Câștigători aflați la început în ligă.100D5Liga de intrare. Punctul de plecare pentru creatorii eligibili pentru ligă.Exemplu practic: găsește toți creatorii A1 care sunt LIVE acum în Balcani
Acest exemplu complet, în mai mulți pași, arată tiparul recomandat: descoperă clasele disponibile, găsește-o pe cea de care ai nevoie, preia-i intrările, apoi filtrează creatorii LIVE. Funcționează pentru orice combinație de regiune și clasă.
isLive === true// Complete example: Find all A1 creators live in Balkans right now
const BASE = 'https://tik.tools'
const REGION = 'BK'
const HEADERS = { 'x-api-key': 'YOUR_ULTRA_API_KEY' }
async function getA1LiveCreators() {
// Step 1: Fetch available leagues for Balkans
const leaguesRes = await fetch(`${BASE}/api/leaderboards/leagues/${REGION}`, {
headers: HEADERS
})
const leagues = await leaguesRes.json()
// Step 2: Find the A1 class (classType 2000)
const a1 = leagues.find(l => l.classLabel === 'A1')
if (!a1) {
console.log('A1 class not found in Balkans')
return []
}
console.log(`Found A1 class: ${a1.count} creators, last updated ${a1.updatedAt}`)
// Step 3: Fetch A1 entries
const entriesRes = await fetch(
`${BASE}/api/leaderboards/league/${REGION}/${a1.classType}`,
{ headers: HEADERS }
)
const data = await entriesRes.json()
if (!data.hasFullAccess) {
console.warn(`Only showing ${data.entries.length} of ${data.totalCount} entries (teaser mode)`)
}
// Step 4: Filter for creators currently live
const liveCreators = data.entries.filter(e => e.isLive)
return liveCreators
}
const live = await getA1LiveCreators()
console.log(`\n${live.length} A1 creator(s) live in Balkans right now:\n`)
for (const creator of live) {
console.log(` #${creator.rank} @${creator.uniqueId} - ${creator.score.toLocaleString()} diamonds`)
}
// Connect to their streams via TikTool WebSocket
for (const creator of live) {
console.log(` wss://api.tik.tools?uniqueId=${creator.uniqueId}&apiKey=YOUR_API_KEY`)
}Limite de rată și bune practici
Pozițiile din clasament se schimbă treptat. Păstrează datele în cache 10-30 de secunde înainte de o nouă cerere, ca să nu suprasoliciți API-ul inutil.
Clasamentele de ligă se schimbă încet, așa că nu câștigi nimic interogând endpoint-urile de ligă mai des de o dată la câteva minute.
Toate cele 44 de regiuni pot fi interogate în paralel. Dacă ai nevoie de date din mai multe regiuni, trimite cererile simultan, nu una după alta.
Când isLive este true pentru o intrare din clasament, poți deschide imediat un WebSocket către acel creator folosind uniqueId și cheia ta API.
Cookie-urile de sesiune oferă acces la contul tău. Păstrează-le în variabile de mediu, niciodată în codul sursă sau în repository-uri publice.
Nu orice clasă există în fiecare regiune. Apelează întotdeauna mai întâi endpoint-ul de listare ca să confirmi ce valori classType sunt disponibile în regiunea ta.