Watch It? Track It.

Le catalogue répertorie tous les enregistrements, les plus populaires d'abord : dans un fichier par type pour les téléchargements en masse, et en pages de 250 pour la navigation. Il est reconstruit chaque jour dans un nouveau dossier, donc les fichiers d'un build ne changent jamais ; seul le manifeste change.

Fichiers

  • 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

Comment le lire

  1. Lisez v1/catalog/manifest.json pour obtenir l'identifiant du build actuel, la taille des pages et, pour chaque type, le nombre d'enregistrements et de pages.
  2. Téléchargez v1/catalog/{build}/{type}/all.json pour tous les enregistrements d'un type, ou v1/catalog/{build}/{type}/{n}.json pour la page n (à partir de 1).

Les fichiers complets sont volumineux : environ 7 MB chacun pour les séries et les films et 30 MB pour les personnes, un tiers de cela ou moins une fois compressés.

Entrées

Chaque entrée est un tableau :

PositionTypeDescription
0numberIdentifiant de l'enregistrement.
1stringSlug de l'enregistrement.
2stringNom anglais, ou un autre nom s'il n'y en a pas en anglais.
3number | nullAnnée, pour les titres.
4numberScore de popularité TheTVDB. La liste est triée selon ce score.
5string | nullChemin de la vignette.

Exemple

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())