Watch It? Track It.

يسرد الفهرس كل السجلات، الأكثر شعبية أولًا: في ملف واحد لكل نوع للتنزيل الجماعي، وفي صفحات من 250 سجلًا للتصفح. يُعاد بناؤه يوميًا في مجلد جديد، فلا تتغير ملفات أي بناء أبدًا؛ وحده ملف البيان (manifest) يتغير.

الملفات

  • https://api.watchittrackit.com/v1/catalog/manifest.json
  • https://api.watchittrackit.com/v1/catalog/{build}/{type}/all.json
  • https://api.watchittrackit.com/v1/catalog/{build}/{type}/{n}.json

طريقة القراءة

  1. اقرأ v1/catalog/manifest.json لمعرفة معرّف البناء الحالي وحجم الصفحة وعدد السجلات والصفحات لكل نوع.
  2. نزّل v1/catalog/{build}/{type}/all.json للحصول على كل سجلات نوع ما، أو v1/catalog/{build}/{type}/{n}.json للصفحة n (بدءًا من 1).

الملفات الكاملة كبيرة: نحو 7 MB لكل من المسلسلات والأفلام و30 MB للأشخاص، وثلث ذلك أو أقل عند ضغطها.

الإدخالات

كل إدخال عبارة عن مصفوفة:

الموضعالنوعالوصف
0numberمعرّف السجل.
1stringالمعرّف النصي للسجل.
2stringالاسم الإنجليزي، أو اسم آخر إذا لم يوجد اسم إنجليزي.
3number | nullالسنة، للأعمال.
4numberدرجة الشعبية في TheTVDB. القائمة مرتبة وفقها.
5string | nullمسار الصورة المصغّرة.

مثال

const BASE = "https://api.watchittrackit.com/v1/catalog"
const manifest = await fetch(`${BASE}/manifest.json`).then((r) => r.json())
// { "build": "20261001-063000", "pageSize": 250,
//   "types": { "tv": { "count": 70734, "pages": 283 }, "movie": { … }, "person": { … } } }

// Page 1 of TV shows, most popular first
const page = await fetch(`${BASE}/${manifest.build}/tv/1.json`).then((r) => r.json())
// [[81189, "breaking-bad", "Breaking Bad", 2008, 3287090, "/images/tv/81189/….t.jpg"], …]

// Every movie at once
const movies = await fetch(`${BASE}/${manifest.build}/movie/all.json`).then((r) => r.json())