Quale API scegliere
TMDB offre un'API gratuita per usi idonei secondo le proprie condizioni, con chiavi API v3 e token v4. Leggi quelle condizioni sull'uso commerciale e sull'attribuzione prima di pubblicare. Scegli un'alternativa quando vuoi un accordo a pagamento, un limite su cui pianificare o più dati in ogni risposta. amodb è un'API indipendente che parla il protocollo TMDB v3 in lettura, quindi passare significa cambiare l'URL di base e la chiave. È di sola lettura e alcuni percorsi TMDB non sono offerti, come elencato più sotto.
Resta su TMDB se le condizioni gratuite vanno bene per il tuo progetto e nulla nella sezione successiva ti riguarda.
Segnali che ti serve un'alternativa
Cinque verifiche aiutano a decidere. Eseguile sul tuo traffico e sul tuo contratto, non su un elenco di funzionalità.
| Segnale | Cosa verificare | Come risponde amodb |
|---|---|---|
| Condizioni commerciali | Leggi le condizioni dell'API che usi oggi per l'uso commerciale e l'attribuzione | Piani a pagamento, prepagati, senza rinnovo automatico |
| Traffico di picco | Conta le richieste nel tuo minuto più carico | Un limite fisso di 20, 40 o 120 richieste al minuto per chiave |
| Dati per schermata | Elenca le chiamate extra dietro una pagina di titolo | append_to_response accetta anche ratings, moods, soundtracks, wikidata e showtimes |
| Lingua dell'interfaccia | Controlla ogni lingua che pubblichi | 14 lingue, ogni altra ripiega su en |
| Costo di uscita | Conta le righe di codice che nominano un fornitore | Stessi percorsi e stesso JSON sugli endpoint serviti, quindi anche uscire è un cambio di URL di base |
Contano anche le risposte dalla cache. Il controllo della chiave e il limite di richieste vengono prima della cache edge, quindi una richiesta ripetuta usa comunque una delle tue richieste al minuto. Pianifica sul totale delle richieste, non solo sui miss della cache.
Confronto delle funzionalità
| Funzionalità | TMDB | amodb |
|---|---|---|
| Modello di prezzo | API gratuita per usi idonei secondo le proprie condizioni | Periodi prepagati di 1, 3, 6, 12 o 24 mesi |
| Piano gratuito | Sì, per usi idonei | Nessuno, e nessuna prova |
| Autenticazione | Chiave v3 in api_key, o token v4 come Bearer | api_key o Bearer, chiave di 32 caratteri esadecimali |
| Formato della risposta | JSON | JSON nel formato TMDB v3 |
| Lingue | Vedi la loro documentazione | 14 lingue dell'interfaccia |
| Film | Sì | Sì |
| Serie TV | Sì | Sì, con stagioni ed episodi |
| Persone | Sì | Sì |
| Immagini | Sì, dal proprio host di immagini | img.amodb.dev, stessi token di dimensione, senza chiave |
| Valutazioni | Punteggio degli utenti TMDB, per altre fonti vedi la loro documentazione | Punteggio TMDB più IMDb, Kinopoisk, Metacritic e Rotten Tomatoes, quando sono noti |
| Metodi di scrittura | Metodi per account, liste e valutazioni | Non offerti, rispondono 405 |
| Limite di richieste | Vedi la loro documentazione | 20, 40 o 120 al minuto per chiave |
| Uso commerciale | Per uso commerciale e attribuzione vedi le loro condizioni | Venduto come API a pagamento, vedi i prezzi |
| Compatibilità | Definisce il protocollo v3 | La maggior parte dei percorsi di lettura v3, più OMDb |
Dove amodb è diverso
- Limiti leggibili. Ogni risposta con chiave porta
X-RateLimit-Limit,X-RateLimit-RemainingeX-RateLimit-Resetin secondi. Una risposta 429 aggiungeRetry-After. I valori sono spiegati nella pagina limiti di richieste. - Blocchi extra in una sola chiamata. Valutazioni da cinque fonti, mood, colonne sonore, fatti di Wikidata e orari delle proiezioni arrivano tramite
append_to_response, così una pagina di titolo può bastarsi con una sola richiesta. - Più fonti di ID esterni.
/3/findrisolveimdb_id,tvdb_id,wikidata_idekinopoisk_id, e anchefacebook_id,twitter_ideinstagram_id. Vedi ricerca per ID esterno. - OMDb con la stessa chiave.
https:/risponde alle chiamate in stile OMDb con un parametro/ api.amodb.dev/ omdb/ apikey, il che aiuta quando due tuoi sistemi usano protocolli diversi. - Tempi di cache noti. Dettagli e crediti restano 6 ore sull'edge, tendenze e discover 30 minuti, ricerca 10 minuti, configurazione 24 ore e immagini 30 giorni.
Dove TMDB è più adatto
- Progetti gratuiti. Se il tuo uso rientra nelle condizioni gratuite, TMDB non costa nulla e amodb non può competere.
- Metodi di scrittura per gli utenti. TMDB offre metodi di scrittura per account, sessioni, valutazioni e liste. amodb risponde con 405 e status_code 37, quindi un'app che permette di accedere e valutare i titoli dovrebbe tenere TMDB per quella parte.
- Feed delle modifiche. TMDB elenca gli ID modificati. amodb non ha un feed simile, quindi aggiorni con i tuoi tempi.
- Lingue oltre le 14. amodb non serve l'interfaccia in tedesco, giapponese o coreano e ripiega sull'inglese. I titoli originali arrivano comunque in
original_titleeoriginal_name. Per le altre lingue su TMDB, vedi la loro documentazione. - Condizioni già accettate. Se la revisione legale è fatta per TMDB, cambiare ti costa un'altra revisione.
Cosa amodb non offre
Controlla il tuo codice con questo elenco prima del passaggio. La tabella completa è nella pagina amodb e TMDB.
| Chiamata TMDB | Risposta di amodb |
|---|---|
| Scritture per account, sessioni, valutazioni e liste | 405, status_code 37 |
| Modifiche, crediti aggregati, ricerche di crediti e recensioni, contenuto dei gruppi di episodi | 404, status_code 34 |
| Traduzioni delle persone, immagini e traduzioni di collezioni, società e emittenti | 404, status_code 34 |
| Elenco delle recensioni di un film o di una serie | 200, vuoto per la maggior parte dei titoli |
| Immagini, video e traduzioni delle stagioni | 200, vuoto |
| ID esterni di stagioni ed episodi | 200, tutti nulli |
Due comportamenti sono silenziosi. Un nome di append_to_response che amodb non conosce, come aggregate_credits, viene ignorato senza errore. Anche il parametro include_adult viene ignorato, perché titoli e persone per adulti non vengono mai serviti.
Migrare ad amodb
- Scegli un piano nella pagina dei prezzi e crea una chiave nella dashboard del tuo account.
- Sostituisci l'URL di base e la chiave in un solo punto, come qui sotto.
- Leggi
images.secure_base_urlda/3/configurationcosì i link alle immagini usanoimg.amodb.dev. - Rimuovi le chiamate ai metodi di scrittura e ai percorsi della tabella qui sopra.
- Gestisci il 429 attendendo i secondi di
Retry-After.
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);Esegui i test esistenti su entrambi gli URL di base prima del passaggio. Una struttura condivisa non garantisce valori identici, quindi confronta un campione dei tuoi titoli. La guida completa è nell'avvio rapido e una tabella di confronto diretto è nella pagina amodb e TMDB.
La gestione degli errori si trasferisce
Le chiamate non riuscite restituiscono il corpo TMDB {"success": false,, quindi il codice che si ramifica su status_code non va riscritto.
| HTTP | status_code | Causa tipica |
|---|---|---|
| 401 | 7 | Chiave mancante o scritta male |
| 401 | 10 | Chiave sospesa |
| 402 | 36 | Periodo prepagato terminato |
| 404 | 34 | ID non trovato, o percorso che amodb non offre |
| 405 | 37 | Un metodo di scrittura che il tuo codice chiama ancora |
| 429 | 25 | Più richieste di quelle consentite dal piano in 60 secondi |
Tratta il 402 come un segnale per rinnovare a mano, perché nulla si rinnova automaticamente. L'elenco completo è nella pagina errori.
Prezzi
amodb è prepagato. Scegli un periodo di 1, 3, 6, 12 o 24 mesi, che dà uno sconto di 0, 10, 20, 30 o 40 per cento, e uno dei tre piani da 20, 40 o 120 richieste al minuto. Ogni piano dà accesso a tutti i dati e nulla si rinnova automaticamente. Non c'è un piano gratuito né una prova. Gli importi attuali sono nella pagina dei prezzi.