Watch It? Track It.

O catálogo lista todos os registos, os mais populares primeiro: num ficheiro por tipo para transferências em massa e em páginas de 250 para navegação. É reconstruído diariamente numa nova pasta, pelo que os ficheiros de uma compilação nunca mudam; só o manifesto muda.

Ficheiros

  • 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

Como o ler

  1. Leia v1/catalog/manifest.json para obter o id da compilação atual, o tamanho de página e o número de registos e de páginas de cada tipo.
  2. Transfira v1/catalog/{build}/{type}/all.json para obter todos os registos de um tipo, ou v1/catalog/{build}/{type}/{n}.json para a página n (a começar em 1).

Os ficheiros completos são grandes: cerca de 7 MB cada para séries e filmes e 30 MB para pessoas, um terço disso ou menos quando comprimidos.

Entradas

Cada entrada é uma matriz (array):

PosiçãoTipoDescrição
0numberId do registo.
1stringSlug do registo.
2stringNome em inglês, ou outro nome quando não existe um em inglês.
3number | nullAno, para títulos.
4numberPontuação de popularidade do TheTVDB. A lista está ordenada por esta pontuação.
5string | nullCaminho da miniatura.

Exemplo

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