Ce API să alegi
TMDB oferă un API gratuit pentru utilizări eligibile, în termenii proprii, cu chei API v3 și token-uri v4. Citește acei termeni pentru utilizare comercială și atribuire înainte să lansezi. Alege o alternativă când vrei un acord cu plată, o limită pe care o poți planifica sau mai multe date în fiecare răspuns. amodb este un API independent care vorbește protocolul TMDB v3 pentru citiri, deci o trecere înseamnă un URL de bază nou și o cheie nouă. Este doar pentru citire, iar câteva căi TMDB nu sunt oferite, după cum se arată mai jos.
Rămâi pe TMDB dacă termenii gratuiți se potrivesc proiectului tău și nimic din secțiunea următoare nu ți se aplică.
Semnale că ai nevoie de o alternativă
Cinci verificări te ajută să decizi. Rulează-le pe propriul trafic și propriul contract, nu pe o listă de funcții.
| Semnal | Ce testezi | Cum răspunde amodb |
|---|---|---|
| Termeni comerciali | Citește termenii API-ului pe care îl folosești azi pentru utilizare comercială și atribuire | Planuri cu plată, plătite în avans, fără reînnoire automată |
| Trafic de vârf | Numără cererile din cel mai aglomerat minut | O limită fixă de 20, 40 sau 120 de cereri pe minut pe cheie |
| Date pe ecran | Listează apelurile suplimentare din spatele unei pagini de titlu | append_to_response acceptă și ratings, moods, soundtracks, wikidata și showtimes |
| Limba interfeței | Verifică fiecare limbă pe care o livrezi | 14 limbi, orice altceva revine la en |
| Costul ieșirii | Numără liniile de cod care numesc un furnizor | Aceleași căi și același JSON pe endpoint-urile servite, deci și plecarea înseamnă o schimbare de URL de bază |
Loviturile de cache se numără și ele. Verificarea cheii și limita de cereri rulează înaintea cache-ului la margine, așa că o cerere repetată consumă tot una dintre cererile tale pe minut. Planifică după totalul de cereri, nu după ratările de cache.
Comparația funcțiilor
| Funcție | TMDB | amodb |
|---|---|---|
| Model de preț | API gratuit pentru utilizări eligibile, în termenii proprii | Perioade plătite în avans de 1, 3, 6, 12 sau 24 de luni |
| Nivel gratuit | Da, pentru utilizări eligibile | Niciunul, și fără perioadă de probă |
| Autentificare | Cheie v3 în api_key sau token v4 ca Bearer | api_key sau Bearer, cheie de 32 de caractere hexazecimale |
| Format de răspuns | JSON | JSON în structura TMDB v3 |
| Limbi | Vezi documentația lor | 14 limbi de interfață |
| Filme | Da | Da |
| TV | Da | Da, cu sezoane și episoade |
| Persoane | Da | Da |
| Imagini | Da, de la propria gazdă de imagini | img.amodb.dev, aceleași jetoane de dimensiune, fără cheie |
| Evaluări | Scorul utilizatorilor TMDB, vezi documentația lor pentru alte surse | Scorul TMDB plus IMDb, Kinopoisk, Metacritic și Rotten Tomatoes, unde se știu |
| Metode de scriere | Metode pentru cont, liste și evaluări | Nu sunt oferite, răspund 405 |
| Limită de cereri | Vezi documentația lor | 20, 40 sau 120 pe minut pe cheie |
| Utilizare comercială | Vezi termenii lor pentru utilizare comercială și atribuire | Vândut ca API cu plată, vezi prețuri |
| Compatibilitate | Definește protocolul v3 | Majoritatea căilor de citire v3, plus OMDb |
Prin ce diferă amodb
- Limite pe care le poți citi. Fiecare răspuns cu cheie poartă
X-RateLimit-Limit,X-RateLimit-RemainingșiX-RateLimit-Resetîn secunde. Un 429 adaugăRetry-After. Cifrele sunt explicate la limite de cereri. - Blocuri suplimentare dintr-un singur apel. Evaluări din cinci surse, indicatori de atmosferă, coloane sonore, fapte Wikidata și program de proiecții în cinema sosesc prin
append_to_response, deci o pagină de titlu poate folosi o singură cerere. - Mai multe surse de ID-uri externe.
/3/findrezolvăimdb_id,tvdb_id,wikidata_idșikinopoisk_id, și încăfacebook_id,twitter_idșiinstagram_id. Vezi căutare după ID extern. - OMDb pe aceeași cheie.
https:/răspunde apelurilor în stil OMDb cu un parametru/ api.amodb.dev/ omdb/ apikey, ceea ce ajută când două dintre sistemele tale folosesc protocoale diferite. - Timpi de cache cunoscuți. Detaliile și creditele stau 6 ore la margine, tendințele și discover 30 de minute, căutarea 10 minute, configurația 24 de ore, iar imaginile 30 de zile.
Când TMDB se potrivește mai bine
- Proiecte gratuite. Dacă utilizarea ta se încadrează în termenii gratuiți, TMDB nu costă nimic, iar amodb nu poate egala asta.
- Metode de scriere pentru utilizatori. TMDB oferă metode de scriere pentru cont, sesiune, evaluări și liste. amodb le răspunde cu 405 și status_code 37, deci o aplicație în care oamenii se autentifică și evaluează titluri ar trebui să păstreze TMDB pentru acea parte.
- Fluxuri de modificări. TMDB listează ID-urile care s-au schimbat. amodb nu are un astfel de flux, așa că reîmprospătezi după propriul program.
- Limbi dincolo de 14. amodb nu servește text de interfață în germană, japoneză sau coreeană și revine la engleză. Titlurile originale ajung în continuare în
original_titleșioriginal_name. Pentru alte limbi pe TMDB, vezi documentația lor. - Termeni deja acceptați. Dacă revizuirea juridică pentru TMDB e făcută, o trecere îți costă o nouă revizuire.
Ce nu oferă amodb
Verifică-ți codul față de această listă înainte de trecere. Tabelul complet este la amodb vs TMDB.
| Apel TMDB | Răspunsul amodb |
|---|---|
| Scrieri pentru cont, sesiune, evaluări și liste | 405, status_code 37 |
| Modificări, credite agregate, căutări de credite și recenzii, conținutul grupurilor de episoade | 404, status_code 34 |
| Traduceri de persoane, imagini și traduceri de colecții, companii și rețele | 404, status_code 34 |
| Lista de recenzii a unui film sau serial | 200, goală pentru majoritatea titlurilor |
| Imaginile, videoclipurile și traducerile de sezon | 200, goale |
| ID-urile externe de sezon și de episod | 200, toate null |
Două comportamente sunt discrete. Un nume append_to_response pe care amodb nu îl cunoaște, precum aggregate_credits, este ignorat fără eroare. Parametrul include_adult este ignorat și el, pentru că titlurile și persoanele pentru adulți nu sunt servite niciodată.
Migrarea la amodb
- Alege un plan la prețuri și creează o cheie în panoul contului tău.
- Înlocuiește URL-ul de bază și cheia într-un singur loc, ca mai jos.
- Citește
images.secure_base_urldin/3/configuration, ca linkurile de imagini să foloseascăimg.amodb.dev. - Elimină apelurile către metodele de scriere și către căile din tabelul de mai sus.
- Tratează 429 așteptând
Retry-Aftersecunde.
const config = {
// before: baseUrl held your current TMDB v3 base URL
baseUrl: 'https://api.amodb.dev/3',
apiKey: process.env.AMODB_KEY,
};
const res = await fetch(`${config.baseUrl}/movie/550?language=en-US`, {
headers: { Authorization: `Bearer ${config.apiKey}` },
});
if (!res.ok) throw new Error(`request failed with status ${res.status}`);
const movie = await res.json();
console.log(movie.title, movie.release_date);Rulează testele existente pe ambele URL-uri de bază înainte de trecere. O structură comună nu garantează valori identice, așa că compară un eșantion din propriile titluri. Parcurgerea completă este în ghidul de pornire rapidă, iar un tabel față în față este la amodb vs TMDB.
Gestionarea erorilor se păstrează
Apelurile eșuate întorc corpul TMDB {"success": false,, deci codul care ramifică după status_code nu are nevoie de rescriere.
| HTTP | status_code | Cauză tipică |
|---|---|---|
| 401 | 7 | Cheie lipsă sau scrisă greșit |
| 401 | 10 | Cheie suspendată |
| 402 | 36 | Perioada plătită în avans s-a încheiat |
| 404 | 34 | ID negăsit sau o cale pe care amodb nu o oferă |
| 405 | 37 | O metodă de scriere pe care codul tău încă o apelează |
| 429 | 25 | Mai multe cereri decât permite planul în 60 de secunde |
Tratează 402 ca pe un semnal să reînnoiești manual, pentru că nimic nu se reînnoiește automat. Lista completă este la erori.
Prețuri
amodb este plătit în avans. Alege o perioadă de 1, 3, 6, 12 sau 24 de luni, cu reduceri de 0, 10, 20, 30 sau 40 la sută, și unul dintre cele trei planuri de 20, 40 sau 120 de cereri pe minut. Fiecare plan primește toate datele și nimic nu se reînnoiește automat. Nu există nivel gratuit și nici perioadă de probă. Sumele actuale sunt la prețuri.