Krótkie porównanie
amodb to niezależne API mówiące tym samym protokołem co TMDB v3. Klient napisany dla TMDB czyta z amodb po zmianie bazowego URL i klucza, o ile nie wywołuje ścieżki z poniższej tabeli niedostępnych. Wybór zależy więc od warunków, dodatków i kilku luk. TMDB oferuje darmowe API dla kwalifikowanego użycia według własnych warunków. amodb to płatne API tylko do odczytu z 14 językami, pięcioma dodatkowymi blokami danych i limitem liczonym na klucz.
Zgodność endpointów
Każdy wiersz pokazuje ścieżkę odczytu TMDB v3 i to, jak zachowuje się na https:/.
| Obszar | Ścieżka TMDB v3 | W amodb |
|---|---|---|
| Szczegóły filmu | /movie/{movie_id} | To samo, z pięcioma dodatkowymi wartościami append_to_response |
| Szczegóły serialu | /tv/{series_id} | To samo, ale bez pola type, a created_by jest puste dla większości seriali |
| Sezony i odcinki | / | Ten sam kształt. Obrazy, wideo i tłumaczenia sezonów są puste, a external_ids sezonów i odcinków mają wartość null |
| Osoby | /person/{person_id} | To samo, z combined_credits, movie_credits, tv_credits, external_ids i images (tylko profile) |
| Obsada i ekipa | / | To samo. W odcinkach cast jest puste |
| Wyszukiwanie | /search/multi | To samo, w cache 10 minut |
| Discover | /discover/movie | To samo, w cache 30 minut |
| Trendy | / | To samo, w cache 30 minut |
| Listy | /movie/popular | To samo, page od 1 do 500 |
| Obrazy | / | Ten sam kształt, pliki ładują się z img.amodb.dev |
| Wideo | / | To samo |
| Tłumaczenia | / | To samo, obsługiwanych 14 języków |
| Słowa kluczowe | / | To samo |
| Recenzje | / | Odpowiada 200, ale recenzje ma tylko kilka tytułów, więc pusta lista jest normalna |
| Kolekcje | / | To samo, parts uporządkowane według daty premiery |
| Firmy i sieci | /company/{company_id} | Te same klucze. description firmy jest puste, a parent_company ma wartość null |
| Gatunki | /genre/movie/list | To samo |
| Konfiguracja | /configuration | Te same klucze, host obrazów to img.amodb.dev |
| Wyszukiwanie po zewnętrznym ID | /find/{external_id} | Ten sam endpoint plus kinopoisk_id. tv_episode_results i tv_season_results są zawsze puste |
| Grupy odcinków | / | Wypisuje grupy serialu, bez ich zawartości |
Niedostępne w amodb
Te wywołania TMDB v3 nie mają odpowiednika. Nieznane ścieżki odpowiadają 404 z status_code 34, a metody zapisu odpowiadają 405 z status_code 37.
| Wywołanie TMDB v3 | Odpowiedź amodb |
|---|---|
/movie/changes, /tv/changes, /person/changes i changes pod jednym ID | 404, status_code 34 |
aggregate_credits pod serialem lub sezonem | 404, status_code 34 |
/credit/{credit_id} i /review/{review_id} | 404, status_code 34 |
/tv/episode_group/{id} | 404, status_code 34 |
/, tagged_images i /person/latest | 404, status_code 34 |
images, translations i alternative_names dla kolekcji, firm i sieci | 404, status_code 34 |
/ | 404, status_code 34 |
Wszystko pod account, authentication, guest_session i list oraz każda ścieżka /rating lub /account_states | 405, status_code 37 |
Jeśli dodasz aggregate_credits lub changes do append_to_response, amodb ignoruje nazwę bez błędu, więc klucza po prostu brakuje w treści.
Porównanie funkcji
| Funkcja | TMDB | amodb |
|---|---|---|
| Model cenowy | Za darmo dla kwalifikowanego użycia, według warunków TMDB | Przedpłata, od 1 do 24 miesięcy na zakup |
| Darmowy plan | Tak, dla kwalifikowanego użycia | Brak, ani wersji próbnej |
| Uwierzytelnianie | Klucz v3 w api_key albo token v4 jako Bearer | api_key lub Bearer z 32-znakowym kluczem szesnastkowym |
| Format odpowiedzi | JSON | JSON, te same pola na udostępnianych ścieżkach |
| Języki | Sprawdź ich dokumentację | 14 obsługiwanych, inne tagi wracają do en |
| Filmy | Tak | Tak |
| Seriale | Tak | Tak |
| Osoby | Tak | Tak |
| Obrazy | Tak | img.amodb.dev, rozmiary od w92 do original |
| Oceny | Ocena użytkowników TMDB, inne źródła: sprawdź ich dokumentację | Pięć źródeł w jednym obiekcie, gdy znane |
| Metody zapisu | Metody konta, list i ocen | Brak, odpowiadają 405 |
| Limit żądań | Sprawdź ich dokumentację | 20, 40 lub 120 na minutę na klucz |
| Użycie komercyjne | Sprawdź ich warunki użycia komercyjnego i atrybucji | Płatne plany, zobacz cennik |
| Zgodność | Definiuje TMDB v3 | Większość ścieżek odczytu TMDB v3 i trasa OMDb |
Czym różnią się szczegółowo
- Warunki. TMDB prosi o zapoznanie się z jego warunkami użycia komercyjnego i atrybucji. amodb jest sprzedawane w okresach przedpłaconych, nie ma automatycznego odnawiania, darmowego planu ani wersji próbnej.
- Języki. amodb obsługuje en, ru, uk, be, zh, pt, bg, he, cs, ro, fr, pl, it i es. Przyjmuje tagi TMDB, takie jak
ru-RUipt-BR. Niemiecki, japoński i koreański wracają doen, aoriginal_titlezachowuje tytuł źródłowy. Zakres języków TMDB sprawdź w ich dokumentacji. Zobacz języki. - Rozszerzenia.
append_to_responseprzyjmuje teżmoods,soundtracks,ratings,wikidataishowtimes, a każde ma własną ścieżkę pod filmami i serialami. - Zewnętrzne ID.
/3/findrozwiązujeimdb_id,tvdb_id,wikidata_id,kinopoisk_id,facebook_id,twitter_idiinstagram_id. Źródłafreebase_mid,freebase_id,tvrage_id,tiktok_idiyoutube_idsą przyjmowane, ale zwracają puste tablice. Brakujące lub nieznaneexternal_sourceodpowiada 400 zstatus_code22. - Puste z założenia. Obrazy, wideo i tłumaczenia sezonów oraz
descriptionfirmy są zawsze puste. Recenzje icreated_byw serialu są wypełnione tylko dla kilku tytułów.external_idssezonów i odcinków mają wszystkie wartość null. - Tytuły dla dorosłych.
include_adultjest ignorowane. Tytuły i osoby dla dorosłych nigdy nie są udostępniane i odpowiadają 404. - Obrazy. Ścieżka CDN to
https:/. Klucz nie jest potrzebny, a pliki są w cache przez 30 dni./ img.amodb.dev/ t/ p/ {size}/ {file} - Limity. Okno to przesuwane 60 sekund na klucz. Nagłówki pokazują pozostałą liczbę, a trafienia w cache też się liczą, bo sprawdzenie limitu działa pierwsze.
- Niezależność. Katalog pochodzi z publicznych i otwartych źródeł oraz z naszego własnego wzbogacania. Wspólny kształt nie gwarantuje identycznych wartości każdego pola każdego tytułu.
Kiedy TMDB pasuje lepiej
- Darmowe kwalifikowane użycie. Nie trzeba płacić i amodb nie może tego dorównać.
- Zapisy. Ocenianie tytułu, budowanie list i sesje konta działają w TMDB. W amodb zwracają 405.
- Kanały zmian. TMDB wymienia ID, które się zmieniły. amodb nie ma takiego kanału, więc odświeżasz według własnego harmonogramu.
- Aggregate credits i wyszukiwanie wpisów obsady. Oba odpowiadają w amodb 404. Użyj
/creditsna tytule. - Szersze potrzeby językowe. Jeśli interfejs potrzebuje języka spoza 14, najpierw sprawdź TMDB.
- Istniejąca akceptacja. Zespół, który przeszedł TMDB przez przegląd prawny, powinien rozważyć koszt drugiego przeglądu.
Przejście na amodb
Zmiana to jedna linia na żądanie.
# 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"Przed przełączeniem porównaj kształt kilku odpowiedzi obok siebie. Ten skrypt wypisuje klucze najwyższego poziomu, które jedna strona zwraca, a druga nie.
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');
}Pola opcjonalne mogą różnić się dla danego tytułu, więc brakujący klucz traktuj jako trop do sprawdzenia, a nie wyrok. Potem przejdź tę listę:
- Wybierz plan na stronie cennik, a potem utwórz klucz w panelu konta.
- Przenieś bazowy URL i klucz do konfiguracji.
- Odczytaj
images.secure_base_urlz/3/configuration. - Przeszukaj kod pod kątem wywołań zapisu i ścieżek z tabeli niedostępnych. Zapisy zostaw na TMDB, a resztę zastąp.
- Dodaj obsługę 429, która czeka
Retry-Aftersekund. Zobacz limity żądań i błędy.
Cennik
amodb jest przedpłacone. Wybierz 1, 3, 6, 12 lub 24 miesiące, za które jest zniżka 0, 10, 20, 30 lub 40 procent, oraz jeden z trzech planów z 20, 40 lub 120 żądaniami na minutę. Każdy plan zwraca wszystkie dane i żaden nie odnawia się sam. Kwoty zobacz w cennik.