نظرة عامة
يوفر TikTool فئتين من بيانات لوحات الصدارة عبر واجهة API الخاصة بالموقع على tik.tools. نقطتا الاتصال تعيدان بيانات ترتيب تنافسي لحظية لصناع محتوى TikTok LIVE مرتبة حسب أرباح الماسات.
لوحات الصدارة الإقليمية
ترتيب يومي لأفضل 100 صانع محتوى حسب إجمالي الماسات المكتسبة، مقسم حسب المنطقة الجغرافية. يُحدَّث باستمرار طوال اليوم. متاح لمشتركي Basic و Pro و Ultra.
- أفضل 100 صانع محتوى في كل منطقة
- الترتيب، النقاط (الماسات)، حالة البث، معرّف الغرفة
- 44 منطقة حول العالم
- تُحدَّث البيانات باستمرار
ترتيب الدوري
بيانات ترتيب تنافسي حسب الفئة (A1-D5) لصناع المحتوى المتنافسين في دوريات TikTok LIVE. تكشف من في كل فئة تنافسية في أي منطقة. يتطلب باقة Ultra للمطورين. Agency PASS (tik.tools/vip) اشتراك في الموقع: يمنح وصولًا إلى بيانات الدوري عبر واجهة الموقع، وليس وصولًا برمجيًا عبر API.
- 18 فئة دوري: A1, A2, A3, B1, B2, B3, B4, B5, C1, C2, C3, C4, C5, D1, D2, D3, D4, D5
- إدخالات مرتبة لكل فئة مع حالة البث
- عرض جزئي للباقات الأدنى (5 إدخالات)
- تُحدَّث البيانات بشكل متكرر
tik.tools (وليس api.tik.tools) وتستخدم مصادقة قائمة على الجلسة. استدعِها من خادمك بملف تعريف ارتباط جلسة صالح تحصل عليه بتسجيل الدخول إلى tik.tools بحساب مطور مدفوع. كل باقات المطورين المدفوعة (Basic و Pro و Ultra) لها وصول إلى نقاط اتصال لوحات الصدارة الإقليمية. نقاط اتصال الدوري تتطلب باقة Ultra للمطورين. اشتراك Agency PASS (على tik.tools/vip) منتج منفصل خاص بالموقع: يمنح وصولًا إلى بيانات الدوري عبر واجهة موقع tik.tools، وليس عبر واجهة API للمطورين هذه.مرجع المناطق
تتوفر 44 لوحة صدارة إقليمية. استخدم المعرّف في رابط نقطة اتصال لوحة الدولة، و رمز المنطقة في نقاط اتصال الدوري.
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 Africaنقطة الاتصال: لوحة الصدارة الإقليمية
https://tik.tools/api/leaderboards/country/:slugكل الباقات المدفوعةتعيد لوحة أفضل 100 لليوم الحالي في منطقة ما. الإدخالات مرتبة تنازليًا حسب score (إجمالي الماسات المكتسبة اليوم).
معاملات المسار
slugstringمعرّف المنطقة من جدول مرجع المناطق أعلاه (مثل balkans و north-america)مخطط الاستجابة
[].ranknumberالموقع في لوحة الصدارة (1 = الأعلى ربحًا)[].uniqueIdstringاسم مستخدم TikTok (بدون @)[].nicknamestringالاسم المعروض على TikTok[].scorenumberإجمالي الماسات المكتسبة اليوم في هذه المنطقة[].isLivebooleanهل صانع المحتوى يبث الآن[].roomIdstring | nullمعرّف غرفة البث إذا كان يبث الآن، وإلا 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]' : ''}`)
}نقاط اتصال الدوري
hasFullAccess في الاستجابة false، وسيبيّن maskedCount عدد الإدخالات المخفية. ملاحظة: اشتراك Agency PASS (tik.tools/vip) يمنح وصولًا إلى بيانات الدوري عبر الموقع، لكنه ليس اشتراكًا في API للمطورين.4أ. عرض دوريات منطقة
https://tik.tools/api/leaderboards/leagues/:regionUltra فقطيعرض فئات الدوري المتاحة لمنطقة معينة، مع عدد صناع المحتوى في كل فئة ووقت آخر تحديث للبيانات.
معاملات المسار
regionstringرمز المنطقة (مثل BK و BC و US+) من جدول مرجع المناطقمخطط الاستجابة
[].classTypenumberمعرّف رقمي للفئة (انظر مرجع classType أدناه)[].classLabelstringاسم الفئة المقروء (مثل "A1" و "B5")[].countnumberعدد صناع المحتوى في هذه الفئة حاليًا[].updatedAtstringطابع زمني 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`)
}4ب. جلب إدخالات الدوري
https://tik.tools/api/leaderboards/league/:region/:classTypeUltra فقطتعيد القائمة المرتبة لصناع المحتوى في فئة دوري محددة لمنطقة ما. هذه نقطة الاتصال الأساسية لبناء أدوات تراعي الدوري ولوحات مراقبة صناع المحتوى.
معاملات المسار
regionstringرمز المنطقة (مثل BK و US+)classTypenumberمعرّف رقمي للفئة (2000=A1، 1900=A2، 1100=B5، إلخ)مخطط الاستجابة
hasFullAccessbooleantrue إذا كانت باقتك تملك وصولًا كاملًا، و false = وضع العرض الجزئي (5 إدخالات)maskedCountnumberعدد الإدخالات المخفية بسبب قيود الباقة (0 إذا كان hasFullAccess)totalCountnumberإجمالي عدد صناع المحتوى في هذه الفئةentries[].ranknumberالموقع داخل هذه الفئةentries[].userIdstringمعرّف مستخدم TikTok الرقمي (معرّف ثابت لا يتغير أبدًا)entries[].uniqueIdstringاسم مستخدم TikTok بدون @ (يمكن للمستخدم تغييره)entries[].nicknamestringالاسم المعروض (يمكن للمستخدم تغييره)entries[].scorenumberالماسات المكتسبة في فترة الدوري الحاليةentries[].isLivebooleanهل صانع المحتوى يبث الآنمثال على الاستجابة
{
"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 هي الفئة الأعلى: نخبة صناع المحتوى الأعلى ربحًا للماسات. و D5 هي نقطة الدخول إلى منافسة الدوري.
2000A1فئة النخبة. الأعلى ربحًا في المنطقة. أعلى منافسة وأعلى متطلبات ماسات للتصنيف.1900A2فئة متقدمة. صناع محتوى راسخون وأرباحهم عالية يسعون للصعود إلى A1.1800A3فئة A راسخة. أرباح عالية ثابتة تحافظ على مكانها في نطاق النخبة.1500B1قمة نطاق B. صناع محتوى على بعد صعود واحد من فئات A.1400B2فئة B العليا. أرباح قوية تتنافس على B1.1300B3فئة B الوسطى. أرباح ثابتة في منتصف نطاق B.1200B4فئة B الدنيا. صناع محتوى يتقدمون نحو فئات B العليا.1100B5مدخل فئة B. صناع محتوى بأرباح قوية وثابتة طوال فترة الدوري.1000C1قمة نطاق C. صناع محتوى نشطون يتقدمون نحو نطاق B.900C2فئة C العليا. أرباح متوسطة تتنافس على الصعود إلى C1.800C3فئة C الوسطى. أرباح منتظمة في منتصف نطاق C.700C4فئة C الدنيا. صناع محتوى يصعدون نحو فئات C العليا.600C5مدخل فئة C. صعدوا مؤخرًا من نطاق D.500D1قمة نطاق D. صناع محتوى بدأوا يحققون أرباحًا ملموسة في المنطقة.400D2فئة D العليا. صناع محتوى جدد أو بأرباح أقل.300D3فئة D الوسطى. صناع محتوى يستقرون في منافسة الدوري.200D4فئة D الدنيا. أرباح الدوري في بدايتها.100D5دوري المبتدئين. نقطة البداية لصناع المحتوى المؤهلين للدوري.مثال عملي: اعثر على كل صناع محتوى A1 الذين يبثون الآن في البلقان
يعرض هذا المثال الكامل متعدد الخطوات النمط الموصى به: اكتشف الفئات المتاحة، واعثر على الفئة التي تحتاجها، واجلب إدخالاتها، ثم صفِّ من يبثون الآن. يعمل مع أي منطقة وأي فئة.
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`)
}حدود الطلبات وأفضل الممارسات
مواقع لوحة الصدارة تتغير تدريجيًا. خزّن النتائج مؤقتًا لمدة 10-30 ثانية قبل الجلب مجددًا لتتجنب إغراق API بطلبات غير ضرورية.
تتغير لوحات الدوري ببطء، لذا لا فائدة من استطلاع نقاط اتصال الدوري أكثر من مرة كل بضع دقائق.
يمكن استطلاع كل المناطق وعددها 44 بالتوازي. إذا احتجت بيانات عدة مناطق، أرسل الطلبات في وقت واحد بدلًا من إرسالها واحدًا تلو الآخر.
عندما تكون قيمة isLive هي true في إدخال لوحة الصدارة، يمكنك فتح WebSocket لصانع المحتوى فورًا باستخدام uniqueId الخاص به ومفتاح API الخاص بك.
ملفات تعريف ارتباط الجلسة تمنح وصولًا إلى حسابك. خزّنها في متغيرات البيئة، ولا تضعها أبدًا في الكود المصدري أو في مستودعات عامة.
ليست كل فئة موجودة في كل منطقة. استدعِ نقطة اتصال العرض أولًا دائمًا لتتأكد من قيم classType المتاحة في منطقتك المستهدفة.