Quale si adatta a un progetto di serie TV

TheTVDB è incentrato sulle serie TV e conserva più ordinamenti degli episodi per una serie, tra cui trasmissione, DVD e assoluto, dietro un modello a chiave API. Controlla la loro documentazione sulla licenza prima di pianificare un prodotto commerciale. Scegli amodb quando vuoi serie, film e persone con una sola chiave, percorsi TMDB v3 e 14 lingue. Scegli TheTVDB quando la numerazione alternativa esatta è al centro della tua app, perché amodb elenca i gruppi di episodi di una serie ma non serve ciò che contengono.

Come si corrispondono i dati delle serie

I concetti coincidono, ma i nomi sono diversi. Questa tabella copre ciò che di solito legge un'app per serie TV.

EsigenzaApproccio TheTVDBChiamata amodb
Una serieScheda della serie tramite ID TVDBGET /3/tv/1396, dopo una ricerca tvdb_id
Elenco delle stagioniVedi la loro documentazioneArray seasons nei dettagli della serie
Una stagione con gli episodiVedi la loro documentazioneGET /3/tv/1396/season/1
Un episodioVedi la loro documentazioneGET /3/tv/1396/season/1/episode/1
Quali ordinamenti esistonoOrdinamenti per trasmissione, DVD e assolutoGET /3/tv/1396/episode_groups
Episodi di un ordinamentoVedi la loro documentazioneNon offerto, /3/tv/episode_group/{id} risponde 404
Prossimo episodio in ondaVedi la loro documentazionenext_episode_to_air nei dettagli della serie

I campi degli episodi usano i nomi TMDB: air_date, episode_number, season_number, runtime e still_path. Gli external_ids di stagioni ed episodi sono tutti nulli, quindi l'ID TVDB di una singola stagione o di un episodio non si può leggere da amodb. Fai invece il join su season_number e episode_number. I dettagli sono nella pagina stagioni ed episodi.

Cosa restituisce l'elenco dei gruppi di episodi

La chiamata di elenco mostra quali ordinamenti esistono per una serie. Non restituisce gli episodi che contengono.

CampoSignificato
idID del gruppo, una stringa
nameNome dell'ordinamento, come DVD / PVOD
descriptionTesto della fonte, spesso vuoto
typeUn numero che indica che tipo di ordinamento è
episode_countEpisodi nell'ordinamento
group_countBlocchi nell'ordinamento, come le stagioni
networkUn oggetto con l'emittente, oppure null

Questa è una risposta reale per Breaking Bad.

JSON
{
  "id": 1396,
  "results": [
    {
      "description": "Seasons grouped as they appear on DVD, as well as paid video-on-demand services, such as Prime Video and YouTube.",
      "episode_count": 62,
      "group_count": 6,
      "id": "69f50757054263b7bc87e32a",
      "name": "DVD / PVOD",
      "network": null,
      "type": 3
    }
  ]
}

Alcune serie restituiscono un solo ordine di trasmissione e altre più d'uno, e alcune restituiscono un array results vuoto. Prova le serie che ti interessano. Poiché il contenuto di un gruppo non è offerto, un'app che ha bisogno del numero DVD o assoluto di ogni episodio non può ottenerlo da amodb.

Confronto delle funzionalità

FunzionalitàTheTVDBamodb
Modello di prezzoModello a chiave API, per la licenza vedi la loro documentazionePeriodi prepagati da 1 a 24 mesi
Piano gratuitoVedi la loro documentazioneNessuno, e nessuna prova
AutenticazioneChiave API, per il flusso vedi la loro documentazioneapi_key o header Bearer
Formato della rispostaJSON, vedi la loro documentazioneJSON nel formato TMDB v3
LingueVedi la loro documentazione14 lingue dell'interfaccia
FilmVedi la loro documentazioneSì
Serie TVSì, è il suo focus principaleSì, con stagioni ed episodi
PersoneVedi la loro documentazioneSì
ImmaginiVedi la loro documentazioneimg.amodb.dev, senza chiave
ValutazioniVedi la loro documentazioneIMDb e altre quattro fonti, quando sono note
Limite di richiesteVedi la loro documentazione20, 40 o 120 al minuto per chiave
Uso commercialePer la licenza vedi la loro documentazionePiani a pagamento, vedi i prezzi
CompatibilitàLa sua APILetture TMDB v3 e OMDb

Dove amodb è diverso

  • Una chiave per tutto il catalogo. Una serie, il suo cast, i suoi trailer e un film che condivide un attore usano lo stesso URL di base e lo stesso limite.
  • Le valutazioni accanto alla guida agli episodi. append_to_response=ratings sui dettagli di una serie aggiunge IMDb e altri punteggi in una sola chiamata.
  • Header semplici per regolare il ritmo. X-RateLimit-Remaining e X-RateLimit-Reset dicono a un job di sincronizzazione quante richieste restano nella finestra di 60 secondi.
  • Nomi originali conservati. Una serie mantiene original_name mentre name segue il tuo language, il che aiuta quando mostri un titolo nativo.

Dove TheTVDB è più adatto

  • L'ordinamento è il prodotto. Se i tuoi utenti discutono di ordine DVD contro trasmissione contro assoluto, TheTVDB lo tratta come parte centrale del suo modello. amodb nomina gli ordinamenti di una serie ma non ne restituisce gli episodi, e i gruppi esistenti cambiano da serie a serie.
  • Integrazioni esistenti. Se la tua pipeline salva già gli ID TheTVDB e legge i suoi ordinamenti, tieni quella parte e aggiungi amodb per i dati extra.
  • Focus sulle serie TV. Se non mostri mai film o persone, una fonte costruita attorno alle serie ha meno da imparare.

Migrare ad amodb

Associa una volta gli ID TVDB che hai salvato. Dopo, usa l'ID amodb per ogni chiamata. L'endpoint find risolve solo gli ID delle serie. I suoi array tv_season_results e tv_episode_results sono sempre vuoti, quindi associa stagioni ed episodi per numero.

JavaScript
const key = process.env.AMODB_KEY;
const headers = { Authorization: `Bearer ${key}` };
const base = 'https://api.amodb.dev/3';

async function getJson(path) {
  const res = await fetch(`${base}${path}`, { headers });
  if (!res.ok) throw new Error(`${path} returned ${res.status}`);
  return res.json();
}

const found = await getJson('/find/81189?external_source=tvdb_id');
const show = found.tv_results[0];
console.log(show.id, show.name);

const groups = await getJson(`/tv/${show.id}/episode_groups`);
for (const g of groups.results) {
  console.log(g.name, g.type, g.episode_count);
}

La prima richiesta restituisce Breaking Bad con id 1396. La seconda elenca gli ordinamenti che esistono per quella serie, con le loro dimensioni. Per confrontare la numerazione con quella che hai salvato ora, leggi l'ordine di trasmissione da /tv/{id}/season/{n} e lascia sul lato TheTVDB qualsiasi ordine alternativo. Fai questo controllo sulle dieci serie più guardate prima di spostare le altre.

Ogni chiamata conta come una richiesta nella finestra di 60 secondi, e una risposta 429 porta Retry-After. Vedi ricerca per ID esterno e limiti di richieste.

Prezzi

amodb è prepagato, senza rinnovo automatico. Scegli 1, 3, 6, 12 o 24 mesi e uno dei tre piani da 20, 40 o 120 richieste al minuto. I periodi più lunghi hanno uno sconto del 10, 20, 30 o 40 per cento, e ogni piano dà accesso a tutti i dati. Non esiste un piano gratuito. Gli importi sono nella pagina prezzi.