Ghid pentru dezvoltatori

API clasamente și ligi

Date de clasament TikTok LIVE în timp real. Obține clasamentele zilnice din 44 de regiuni, interoghează live datele claselor de ligă și urmărește performanța creatorilor.

TOATE PLANURILE PLĂTITE DOAR ULTRA - Ligi

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.

Toate planurile plătite

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
Doar planul Ultra pentru dezvoltatori

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
Autentificare: Aceste endpoint-uri sunt pe 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ă.

SlugCod regiuneDescriere
north-americaUS+North America
canadaCACanada
brazil-regionBRBrazil
mexicoMXMexico
latin-americaLATAMLatin America
colombia-peru-dominican-republicCO+Colombia, Peru & Dominican Republic
jamaicaJMJamaica
australia-pacificAU+Australia & Pacific
japan-regionJPJapan
south-korea-regionKRSouth Korea
taiwan-regionTWTaiwan
indonesia-regionIDIndonesia
malaysia-regionMYMalaysia
singaporeSGSingapore
philippines-regionPHPhilippines
thailand-regionTHThailand
vietnam-regionVNVietnam
nepalNPNepal
bangladesh-bhutan-maldivesBD+Bangladesh, Bhutan & Maldives
azerbaijanAZAzerbaijan
kazakhstanKZKazakhstan
kyrgyzstanKGKyrgyzstan
belarusBYBelarus
ukraineUAUkraine
central-asiaCCACentral Asia
dachDE+Germany & DACH
switzerlandCHSwitzerland
iberiaES+Iberia
central-europeHU+Central Europe
lusophonePT+Lusophone
france-regionFR+France
belgiumBEBelgium
netherlands-regionNLNetherlands
united-kingdom-regionUK+United Kingdom
ireland-baltics-maltaIE+Ireland, Baltics & Malta
italy-regionIT+Italy
swedenSESweden
scandinaviaSE+Nordics
poland-regionPLPoland
romania-regionRORomania
balkansBKBalkans
turkey-regionTRTurkey
middle-east-africaMENAMiddle East & Africa
nigeria-ghana-kenya-south-africaNG+Nigeria, Ghana, Kenya & South Africa

Endpoint: Clasament regional

GEThttps://tik.tools/api/leaderboards/country/:slugToate planurile plătite

Returnează 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

ParametruTipDescriere
slugstringSlug-ul regiunii din tabelul Referință regiuni de mai sus (de ex. balkans, north-america)

Schema răspunsului

CâmpTipDescriere
[].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 null

Exemplu 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ă

Necesită Ultra. Endpoint-urile de ligă necesită un plan Ultra pentru dezvoltatori. Cererile din planurile Basic și Pro primesc o previzualizare de 5 intrări - câmpul 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

GEThttps://tik.tools/api/leaderboards/leagues/:regionDoar Ultra

Listează 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

ParametruTipDescriere
regionstringCodul regiunii (de ex. BK, BC, US+) din tabelul Referință regiuni

Schema răspunsului

CâmpTipDescriere
[].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 datelor

Exemplu 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

GEThttps://tik.tools/api/leaderboards/league/:region/:classTypeDoar Ultra

Returnează 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

ParametruTipDescriere
regionstringCodul regiunii (de ex. BK, US+)
classTypenumberIdentificator numeric al clasei (2000=A1, 1900=A2, 1100=B5 etc.)

Schema răspunsului

CâmpTipDescriere
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 clase
entries[].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 ligii
entries[].isLivebooleanDacă creatorul este LIVE în acest moment

Exemplu 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.

classTypeClasăDescriere
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ă.
Nu toate cele 18 divizii sunt neapărat prezente în fiecare regiune. Apelează mai întâi endpoint-ul Listează ligile ca să afli ce clase există în regiunea ta, apoi preia clasa de care ai nevoie.

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ă.

1
Preia ligile disponibile pentru regiunea BK (Balcani)
2
Găsește intrarea A1 și confirmă că există
3
Preia intrările ligii A1
4
Filtrează creatorii cu 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

Păstrează răspunsurile în cache pe client

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.

Datele de ligă se actualizează după un program fix

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.

Interoghează regiunile independent

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.

Folosește isLive + roomId pentru conectare

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.

Stochează în siguranță cookie-urile de sesiune

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.

Listează ligile înainte să preiei intrările

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.

Întrebări frecvente

Ce planuri includ acces la API-ul de clasamente?

De ce ai nevoie pentru a accesa datele clasamentelor de ligă?

Cât de des se actualizează datele de clasament?

Câte regiuni sunt disponibile?

Pot afla din clasament dacă un creator este LIVE acum?

Nu toate valorile classType apar pentru regiunea mea. De ce?

Pot interoga toate cele 44 de regiuni deodată?