Stručné srovnání

amodb je nezávislé API, které mluví stejným protokolem jako TMDB v3. Klient napsaný pro TMDB čte z amodb po změně základní URL a klíče, pokud nevolá cestu z tabulky nenabízených níže. Volba tedy záleží na podmínkách, doplňcích a několika mezerách. TMDB nabízí bezplatné API pro kvalifikované užití podle vlastních podmínek. amodb je placené API jen pro čtení se 14 jazyky, pěti doplňkovými datovými bloky a limitem počítaným na klíč.

Shoda endpointů

Každý řádek ukazuje cestu pro čtení z TMDB v3 a jak se chová na https://api.amodb.dev/3.

OblastCesta TMDB v3Na amodb
Detail filmu/movie/{movie_id}Totéž, s pěti dalšími hodnotami append_to_response
Detail seriálu/tv/{series_id}Totéž, ale bez pole type a created_by je u většiny seriálů prázdné
Sezóny a epizody/tv/{series_id}/season/{season_number}Stejný tvar. Obrázky, videa a překlady sezón jsou prázdné a external_ids sezón a epizod jsou null
Osoby/person/{person_id}Totéž, s combined_credits, movie_credits, tv_credits, external_ids a images (jen profily)
Obsazení a štáb/movie/{movie_id}/creditsTotéž. U epizod je cast prázdné
Hledání/search/multiTotéž, cache 10 minut
Discover/discover/movieTotéž, cache 30 minut
Trendy/trending/{media_type}/{time_window}Totéž, cache 30 minut
Seznamy/movie/popularTotéž, page od 1 do 500
Obrázky/movie/{movie_id}/imagesStejný tvar, soubory se načítají z img.amodb.dev
Videa/movie/{movie_id}/videosTotéž
Překlady/movie/{movie_id}/translationsTotéž, podporuje se 14 jazyků
Klíčová slova/movie/{movie_id}/keywordsTotéž
Recenze/movie/{movie_id}/reviewsOdpovídá 200, ale recenze má jen několik titulů, prázdný seznam je proto normální
Kolekce/collection/{collection_id}Totéž, parts řazeno podle data vydání
Společnosti a sítě/company/{company_id}Stejné klíče. description společnosti je prázdné a parent_company je null
Žánry/genre/movie/listTotéž
Konfigurace/configurationStejné klíče, hostitel obrázků je img.amodb.dev
Hledání podle externího ID/find/{external_id}Stejný endpoint plus kinopoisk_id. tv_episode_results a tv_season_results jsou vždy prázdné
Skupiny epizod/tv/{series_id}/episode_groupsVypíše skupiny seriálu bez jejich obsahu

Nenabízeno na amodb

Tato volání TMDB v3 nemají ekvivalent. Neznámé cesty odpovídají 404 se status_code 34 a metody pro zápis odpovídají 405 se status_code 37.

Volání TMDB v3Odpověď amodb
/movie/changes, /tv/changes, /person/changes a changes pod jedním ID404, status_code 34
aggregate_credits pod seriálem nebo sezónou404, status_code 34
/credit/{credit_id} a /review/{review_id}404, status_code 34
/tv/episode_group/{id}404, status_code 34
/person/{person_id}/translations, tagged_images a /person/latest404, status_code 34
images, translations a alternative_names pro kolekce, společnosti a sítě404, status_code 34
/configuration/timezones404, status_code 34
Vše pod account, authentication, guest_session a list a jakákoli cesta /rating nebo /account_states405, status_code 37

Když do append_to_response přidáte aggregate_credits nebo changes, amodb název bez chyby ignoruje, takže klíč v těle jednoduše chybí.

Srovnání funkcí

FunkceTMDBamodb
Cenový modelZdarma pro kvalifikované užití, podle podmínek TMDBPředplatné, 1 až 24 měsíců na nákup
Bezplatný tarifAno, pro kvalifikované užitíŽádný, ani zkušební verze
OvěřeníKlíč v3 v api_key, nebo token v4 jako Bearerapi_key nebo Bearer s 32znakovým hexadecimálním klíčem
Formát odpovědiJSONJSON, stejná pole na cestách, které poskytuje
JazykyPodívejte se do jejich dokumentace14 podporovaných, jiné tagy se vrátí k en
FilmyAnoAno
SeriályAnoAno
OsobyAnoAno
ObrázkyAnoimg.amodb.dev, velikosti w92 až original
HodnoceníSkóre uživatelů TMDB, jiné zdroje: podívejte se do jejich dokumentacePět zdrojů v jednom objektu, kde jsou známé
Metody pro zápisMetody účtu, seznamů a hodnoceníŽádné, odpovídají 405
Limit požadavkůPodívejte se do jejich dokumentace20, 40 nebo 120 za minutu na klíč
Komerční užitíOvěřte si jejich podmínky komerčního užití a uvádění zdrojePlacené tarify, viz ceník
KompatibilitaDefinuje TMDB v3Většina cest pro čtení TMDB v3 a trasa OMDb

V čem se liší podrobněji

  • Podmínky. TMDB vás žádá, abyste si přečetli jeho podmínky komerčního užití a uvádění zdroje. amodb se prodává po předplacených obdobích, nemá automatické obnovení, bezplatný tarif ani zkušební verzi.
  • Jazyky. amodb podporuje en, ru, uk, be, zh, pt, bg, he, cs, ro, fr, pl, it a es. Přijímá tagy TMDB jako ru-RU a pt-BR. Němčina, japonština a korejština se vrátí k en, zatímco original_title ponechává původní název. Pokrytí jazyků TMDB ověřte v jejich dokumentaci. Viz jazyky.
  • Rozšíření. append_to_response přijímá také moods, soundtracks, ratings, wikidata a showtimes a každé z nich má vlastní cestu pod filmy a seriály.
  • Externí ID. /3/find převádí imdb_id, tvdb_id, wikidata_id, kinopoisk_id, facebook_id, twitter_id a instagram_id. Zdroje freebase_mid, freebase_id, tvrage_id, tiktok_id a youtube_id se přijímají, ale vracejí prázdná pole. Chybějící nebo neznámé external_source odpoví 400 se status_code 22.
  • Prázdné záměrně. Obrázky, videa a překlady sezón a description společnosti jsou vždy prázdné. Recenze a created_by u seriálu jsou vyplněny jen u několika titulů. external_ids sezón a epizod jsou všechna null.
  • Tituly pro dospělé. include_adult se ignoruje. Tituly a osoby pro dospělé se nikdy neposkytují a odpovídají 404.
  • Obrázky. Cesta CDN je https://img.amodb.dev/t/p/{size}/{file}. Klíč není potřeba a soubory se cachují 30 dní.
  • Limity. Okno je klouzavých 60 sekund na klíč. Hlavičky ukazují zbývající počet a zásahy cache se také počítají, protože kontrola limitu proběhne první.
  • Nezávislost. Katalog pochází z veřejných a otevřených zdrojů a z našeho vlastního obohacení. Sdílený tvar nezaručuje shodné hodnoty každého pole každého titulu.

Kdy se TMDB hodí lépe

  • Bezplatné kvalifikované užití. Není třeba platit a amodb to nemůže vyrovnat.
  • Zápisy. Hodnocení titulu, vytváření seznamů a relace účtu fungují na TMDB. Na amodb vracejí 405.
  • Feedy změn. TMDB uvádí ID, která se změnila. amodb takový feed nemá, obnovujete tedy podle vlastního rozvrhu.
  • Aggregate credits a vyhledání záznamů obsazení. Obojí na amodb odpovídá 404. Použijte /credits u titulu.
  • Širší jazykové potřeby. Pokud vaše rozhraní potřebuje jazyk mimo 14, nejdřív si ověřte TMDB.
  • Stávající schválení. Tým, který TMDB prošel právním posouzením, by měl zvážit náklady druhého posouzení.

Přechod na amodb

Změna je jeden řádek na požadavek.

Shell
# before: TMDB_BASE is your current TMDB v3 base URL
curl -s "$TMDB_BASE/movie/550?api_key=$TMDB_KEY"

# after
curl -s "https://api.amodb.dev/3/movie/550?api_key=$AMODB_KEY"

Před přepnutím porovnejte tvar několika odpovědí vedle sebe. Tento skript vypíše klíče nejvyšší úrovně, které jedna strana vrací a druhá ne.

JavaScript
async function topLevelKeys(base, key, path) {
  const res = await fetch(`${base}${path}?api_key=${key}`);
  if (!res.ok) throw new Error(`${path} returned ${res.status}`);
  return Object.keys(await res.json()).sort();
}

for (const path of ['/movie/550', '/tv/1396', '/person/31']) {
  const current = await topLevelKeys(process.env.TMDB_BASE, process.env.TMDB_KEY, path);
  const next = await topLevelKeys('https://api.amodb.dev/3', process.env.AMODB_KEY, path);
  const missing = current.filter((k) => !next.includes(k));
  console.log(path, missing.length ? `missing: ${missing.join(', ')}` : 'same keys');
}

Volitelná pole se u daného titulu mohou lišit, chybějící klíč proto berte jako stopu k prozkoumání, ne jako verdikt. Pak projděte tento seznam:

  1. Vyberte tarif na stránce ceník a vytvořte klíč v panelu účtu.
  2. Přesuňte základní URL a klíč do konfigurace.
  3. Přečtěte images.secure_base_url z /3/configuration.
  4. Prohledejte kód kvůli voláním zápisu a cestám z tabulky nenabízených. Zápisy ponechte na TMDB a zbytek nahraďte.
  5. Přidejte obsluhu 429, která počká Retry-After sekund. Viz limity požadavků a chyby.

Ceník

amodb je předplacené. Zvolte 1, 3, 6, 12 nebo 24 měsíců, u kterých je sleva 0, 10, 20, 30 nebo 40 procent, a jeden ze tří tarifů s 20, 40 nebo 120 požadavky za minutu. Každý tarif vrací všechna data a žádný se sám neobnovuje. Částky viz ceník.