Οδηγός για developers

API κατατάξεων & λίγκας

Δεδομένα κατατάξεων TikTok LIVE σε πραγματικό χρόνο. Πάρε ημερήσιες κατατάξεις σε 44 περιοχές, live δεδομένα για τις κατηγορίες λίγκας και παρακολούθησε την απόδοση των creators.

ΣΕ ΚΑΘΕ ΣΥΝΔΡΟΜΗ ΜΟΝΟ ULTRA - Λίγκες

Επισκόπηση

Το TikTool δίνει δύο κατηγορίες δεδομένων κατάταξης μέσα από το API του site στο tik.tools. Και τα δύο endpoints επιστρέφουν σε πραγματικό χρόνο δεδομένα ανταγωνιστικής κατάταξης για creators του TikTok LIVE, ταξινομημένα με βάση τα κέρδη σε διαμάντια.

Σε κάθε συνδρομή

Κατατάξεις ανά περιοχή

Ημερήσια κατάταξη των top 100 creators με βάση τα συνολικά διαμάντια που έβγαλαν, ανά γεωγραφική περιοχή. Ενημερώνεται συνεχώς όλη τη μέρα. Διαθέσιμο για συνδρομητές Basic, Pro και Ultra.

  • Top 100 creators ανά περιοχή
  • Θέση, σκορ (διαμάντια), live status, room ID
  • 44 περιοχές σε όλο τον κόσμο
  • Τα δεδομένα ανανεώνονται συνεχώς
Μόνο με πακέτο Ultra για developers

Κατατάξεις λίγκας

Δεδομένα ανταγωνιστικής κατάταξης ανά κατηγορία (A1-D5) για creators που αγωνίζονται στις λίγκες του TikTok LIVE. Δείχνει ποιος είναι σε κάθε ανταγωνιστικό επίπεδο σε οποιαδήποτε περιοχή. Απαιτεί πακέτο Ultra για developers. Το Agency PASS (tik.tools/vip) είναι συνδρομή στο site - δίνει πρόσβαση στα δεδομένα λίγκας μέσα από το site, όχι προγραμματιστική πρόσβαση μέσω API.

  • 18 κατηγορίες λίγκας: A1, A2, A3, B1, B2, B3, B4, B5, C1, C2, C3, C4, C5, D1, D2, D3, D4, D5
  • Ταξινομημένες εγγραφές ανά κατηγορία με live status
  • Teaser πίσω από τζάμι για τα χαμηλότερα πακέτα (5 εγγραφές)
  • Τα δεδομένα ανανεώνονται συχνά
Έλεγχος ταυτότητας: Αυτά τα endpoints βρίσκονται στο tik.tools (όχι στο api.tik.tools) και χρησιμοποιούν authentication με session. Κάλεσέ τα από τον server σου με έγκυρο session cookie, που παίρνεις κάνοντας σύνδεση στο tik.tools με επί πληρωμή λογαριασμό developer. Όλα τα επί πληρωμή πακέτα developer (Basic, Pro, Ultra) έχουν πρόσβαση στα endpoints κατατάξεων ανά περιοχή. Τα endpoints λίγκας απαιτούν το πακέτο Ultra για developers. Η συνδρομή Agency PASS (στο tik.tools/vip) είναι ξεχωριστό προϊόν μόνο για το site - δίνει πρόσβαση στα δεδομένα λίγκας μέσα από το site του tik.tools, όχι μέσω αυτού του API για developers.

Λίστα περιοχών

Υπάρχουν 44 κατατάξεις περιοχών. Βάλε το Slug στο URL του endpoint κατάταξης χώρας και τον Κωδικός περιοχής στα endpoints λίγκας.

SlugΚωδικός περιοχήςΠεριγραφή
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: Κατάταξη περιοχής

GEThttps://tik.tools/api/leaderboards/country/:slugΣε κάθε συνδρομή

Επιστρέφει την top-100 κατάταξη της ημέρας για μια περιοχή. Οι εγγραφές είναι ταξινομημένες κατά score (συνολικά διαμάντια σήμερα) με φθίνουσα σειρά.

Παράμετροι path

ΠαράμετροςΤύποςΠεριγραφή
slugstringSlug περιοχής από τον πίνακα περιοχών παραπάνω (π.χ. balkans, north-america)

Σχήμα απάντησης

ΠεδίοΤύποςΠεριγραφή
[].ranknumberΘέση στην κατάταξη (1 = αυτός που βγάζει τα περισσότερα)
[].uniqueIdstringUsername στο TikTok (χωρίς @)
[].nicknamestringΌνομα που εμφανίζεται στο TikTok
[].scorenumberΣυνολικά διαμάντια σήμερα σε αυτή την περιοχή
[].isLivebooleanΑν ο creator κάνει live αυτή τη στιγμή
[].roomIdstring | nullID του live room αν κάνει live, αλλιώς null

Παράδειγμα απάντησης

[
  {
    "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
  }
]

Παραδείγματα κώδικα

// 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]' : ''}`)
}

Endpoints λίγκας

Απαιτείται Ultra. Τα endpoints λίγκας απαιτούν πακέτο Ultra για developers. Τα requests από πακέτα Basic και Pro παίρνουν teaser 5 εγγραφών - το πεδίο hasFullAccess στην απάντηση θα είναι false και το maskedCount θα δείχνει πόσες εγγραφές είναι κρυμμένες. Σημείωση: η συνδρομή Agency PASS (tik.tools/vip) δίνει πρόσβαση στα δεδομένα λίγκας μέσα από το site, αλλά δεν είναι συνδρομή API για developers.

4a. Λίστα λιγκών μιας περιοχής

GEThttps://tik.tools/api/leaderboards/leagues/:regionΜόνο Ultra

Δείχνει τις διαθέσιμες κατηγορίες λίγκας σε μια περιοχή, πόσοι creators είναι σε κάθε κατηγορία και πότε ενημερώθηκαν τελευταία φορά τα δεδομένα.

Παράμετροι path

ΠαράμετροςΤύποςΠεριγραφή
regionstringΚωδικός περιοχής (π.χ. BK, BC, US+) από τον πίνακα περιοχών

Σχήμα απάντησης

ΠεδίοΤύποςΠεριγραφή
[].classTypenumberΑριθμητικό αναγνωριστικό κατηγορίας (δες τη λίστα classType παρακάτω)
[].classLabelstringΌνομα κατηγορίας για ανθρώπους (π.χ. "A1", "B5")
[].countnumberΠόσοι creators είναι τώρα σε αυτή την κατηγορία
[].updatedAtstringTimestamp ISO 8601 της τελευταίας ανανέωσης

Παράδειγμα απάντησης

[
  { "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. Εγγραφές λίγκας

GEThttps://tik.tools/api/leaderboards/league/:region/:classTypeΜόνο Ultra

Επιστρέφει την ταξινομημένη λίστα creators μιας συγκεκριμένης κατηγορίας λίγκας σε μια περιοχή. Είναι το βασικό endpoint για εργαλεία που λαμβάνουν υπόψη τις λίγκες και για dashboards παρακολούθησης creators.

Παράμετροι path

ΠαράμετροςΤύποςΠεριγραφή
regionstringΚωδικός περιοχής (π.χ. BK, US+)
classTypenumberΑριθμητικό αναγνωριστικό κατηγορίας (2000=A1, 1900=A2, 1100=B5 κ.λπ.)

Σχήμα απάντησης

ΠεδίοΤύποςΠεριγραφή
hasFullAccessbooleanTrue αν το πακέτο σου έχει πλήρη πρόσβαση· false = λειτουργία teaser (5 εγγραφές)
maskedCountnumberΠόσες εγγραφές κρύβονται λόγω περιορισμών πακέτου (0 αν hasFullAccess)
totalCountnumberΣυνολικός αριθμός creators σε αυτή την κατηγορία
entries[].ranknumberΘέση μέσα σε αυτή την κατηγορία
entries[].userIdstringΑριθμητικό user ID στο TikTok (σταθερό ID backend, δεν αλλάζει ποτέ)
entries[].uniqueIdstringUsername/handle στο TikTok χωρίς @ (το αλλάζει ο χρήστης)
entries[].nicknamestringΌνομα εμφάνισης (το αλλάζει ο χρήστης)
entries[].scorenumberΔιαμάντια στην τρέχουσα περίοδο της λίγκας
entries[].isLivebooleanΑν ο creator κάνει live αυτή τη στιγμή

Παράδειγμα απάντησης

{
  "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}`)
}

Λίστα classType

Οι κατηγορίες λίγκας αντιστοιχίζουν αριθμητικές τιμές classType σε ανταγωνιστικά επίπεδα. Το A1 είναι το ψηλότερο επίπεδο - οι κορυφαίοι creators που βγάζουν τα περισσότερα διαμάντια. Το D5 είναι η είσοδος στον ανταγωνισμό της λίγκας.

classTypeΚατηγορίαΠεριγραφή
2000A1Κορυφαίο επίπεδο. Αυτοί που βγάζουν τα περισσότερα στην περιοχή. Ο πιο σκληρός ανταγωνισμός, οι υψηλότερες απαιτήσεις σε διαμάντια για μια θέση.
1900A2Ανώτερο επίπεδο. Καθιερωμένοι creators με υψηλά κέρδη που κυνηγούν άνοδο στο A1.
1800A3Καθιερωμένη κατηγορία A. Σταθερά υψηλά κέρδη, κρατούν τη θέση τους στην ελίτ.
1500B1Κορυφή της B. Creators μία άνοδο μακριά από τις κατηγορίες A.
1400B2Πάνω μέρος της B. Δυνατά κέρδη, παλεύουν για το B1.
1300B3Μέση της B. Σταθερά κέρδη στη μέση της κατηγορίας B.
1200B4Κάτω μέρος της B. Creators που ανεβαίνουν προς τις πάνω κατηγορίες B.
1100B5Είσοδος στην B. Creators με δυνατά, σταθερά κέρδη σε όλη την περίοδο της λίγκας.
1000C1Κορυφή της C. Ενεργοί creators που χτίζουν τον δρόμο προς την κατηγορία B.
900C2Πάνω μέρος της C. Μέτρια κέρδη, παλεύουν για άνοδο στο C1.
800C3Μέση της C. Τακτικά κέρδη στη μέση της κατηγορίας C.
700C4Κάτω μέρος της C. Creators που ανεβαίνουν προς τις πάνω κατηγορίες C.
600C5Είσοδος στην C. Ανέβηκαν πρόσφατα από την κατηγορία D.
500D1Κορυφή της D. Creators που αρχίζουν να βγάζουν αξιόλογα κέρδη στην περιοχή.
400D2Πάνω μέρος της D. Νεότεροι creators ή με μικρότερο όγκο κερδών.
300D3Μέση της D. Creators που βρίσκουν τα πατήματά τους στη λίγκα.
200D4Κάτω μέρος της D. Πρώτα κέρδη στη λίγκα.
100D5Είσοδος στη λίγκα. Το σημείο εκκίνησης για creators που μπαίνουν στη λίγκα.
Δεν υπάρχουν απαραίτητα και οι 18 κατηγορίες σε κάθε περιοχή. Κάλεσε πρώτα το endpoint List Leagues για να δεις ποιες κατηγορίες υπάρχουν στην περιοχή-στόχο σου και μετά φέρε αυτή που χρειάζεσαι.

Πρακτικό παράδειγμα: όλοι οι creators A1 που κάνουν live τώρα στα Βαλκάνια

Αυτό το πλήρες παράδειγμα πολλών βημάτων δείχνει τον προτεινόμενο τρόπο: βρες τις διαθέσιμες κατηγορίες, εντόπισε αυτή που χρειάζεσαι, φέρε τις εγγραφές της και μετά φίλτραρε τους live creators. Δουλεύει για κάθε συνδυασμό περιοχής και κατηγορίας.

1
Φέρε τις διαθέσιμες λίγκες για την περιοχή BK (Βαλκάνια)
2
Βρες την εγγραφή A1 και επιβεβαίωσε ότι υπάρχει
3
Φέρε τις εγγραφές της λίγκας A1
4
Φίλτραρε τους creators με 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`)
}

Rate limits και καλές πρακτικές

Κάνε cache τις απαντήσεις στον client

Οι θέσεις στην κατάταξη αλλάζουν σταδιακά. Κάνε cache για 10-30 δευτερόλεπτα πριν ξαναφέρεις δεδομένα, για να μη βομβαρδίζεις το API χωρίς λόγο.

Τα δεδομένα λίγκας ανανεώνονται με σταθερό πρόγραμμα

Οι πίνακες λίγκας αλλάζουν αργά, οπότε δεν κερδίζεις τίποτα αν κάνεις polling στα endpoints λίγκας πιο συχνά από κάθε λίγα λεπτά.

Κάνε polling στις περιοχές ανεξάρτητα

Μπορείς να κάνεις polling και στις 44 περιοχές παράλληλα. Αν χρειάζεσαι δεδομένα από πολλές περιοχές, στείλε τα requests ταυτόχρονα αντί για ένα-ένα.

Σύνδεση με isLive + roomId

Όταν το isLive είναι true σε μια εγγραφή της κατάταξης, μπορείς να ανοίξεις αμέσως WebSocket σε αυτόν τον creator με το uniqueId του και το API key σου.

Φύλαγε τα session cookies με ασφάλεια

Τα session cookies δίνουν πρόσβαση στον λογαριασμό σου. Κράτα τα σε environment variables, ποτέ σε source code ή σε δημόσια repositories.

Πρώτα η λίστα λιγκών, μετά οι εγγραφές

Δεν υπάρχει κάθε κατηγορία σε κάθε περιοχή. Κάλεσε πάντα πρώτα το endpoint της λίστας για να επιβεβαιώσεις ποιες τιμές classType υπάρχουν στην περιοχή-στόχο σου.

Συχνές ερωτήσεις

Ποια πακέτα δίνουν πρόσβαση στο leaderboard API;

Τι χρειάζεται για πρόσβαση στα δεδομένα κατάταξης λίγκας;

Πόσο συχνά ενημερώνονται τα δεδομένα κατάταξης;

Πόσες περιοχές υπάρχουν;

Μπορώ να δω από την κατάταξη αν ένας creator είναι live τώρα;

Δεν εμφανίζονται όλες οι τιμές classType στην περιοχή μου. Γιατί;

Μπορώ να κάνω polling και στις 44 περιοχές μαζί;