Il confronto in breve
amodb è un'API indipendente che parla lo stesso protocollo di TMDB v3. Un client scritto per TMDB legge da amodb dopo che hai cambiato l'URL di base e la chiave, purché non chiami un percorso della tabella dei non offerti qui sotto. La scelta riguarda quindi condizioni, extra e qualche lacuna. TMDB offre un'API gratuita per usi idonei secondo le proprie condizioni. amodb è un'API a pagamento di sola lettura, con 14 lingue, cinque blocchi di dati extra e un limite contato per chiave.
Parità degli endpoint
Ogni riga mostra un percorso di lettura TMDB v3 e come si comporta su https:/.
| Area | Percorso TMDB v3 | Su amodb |
|---|---|---|
| Dettagli del film | /movie/{movie_id} | Uguale, con cinque valori append_to_response in più |
| Dettagli della serie TV | /tv/{series_id} | Uguale, ma senza campo type, e created_by è vuoto per la maggior parte delle serie |
| Stagioni ed episodi | / | Stessa struttura. Immagini, video e traduzioni delle stagioni sono vuoti, e gli external_ids di stagioni ed episodi sono nulli |
| Persone | /person/{person_id} | Uguale, con combined_credits, movie_credits, tv_credits, external_ids e images (solo profili) |
| Crediti | / | Uguale. Sugli episodi cast è vuoto |
| Ricerca | /search/multi | Uguale, in cache 10 minuti |
| Discover | /discover/movie | Uguale, in cache 30 minuti |
| Tendenze | / | Uguale, in cache 30 minuti |
| Liste | /movie/popular | Uguale, page da 1 a 500 |
| Immagini | / | Stessa struttura, i file si caricano da img.amodb.dev |
| Video | / | Uguale |
| Traduzioni | / | Uguale, 14 lingue servite |
| Parole chiave | / | Uguale |
| Recensioni | / | Risponde 200, ma solo pochi titoli hanno recensioni, quindi una lista vuota è normale |
| Collezioni | / | Uguale, parts ordinati per data di uscita |
| Società ed emittenti | /company/{company_id} | Stesse chiavi. La description di una società è vuota e parent_company è null |
| Generi | /genre/movie/list | Uguale |
| Configurazione | /configuration | Stesse chiavi, l'host delle immagini è img.amodb.dev |
| Ricerca per ID esterno | /find/{external_id} | Stesso endpoint, più kinopoisk_id. tv_episode_results e tv_season_results sono sempre vuoti |
| Gruppi di episodi | / | Elenca i gruppi di una serie, senza il loro contenuto |
Non offerto su amodb
Queste chiamate TMDB v3 non hanno un equivalente. I percorsi sconosciuti rispondono 404 con status_code 34, e i metodi di scrittura rispondono 405 con status_code 37.
| Chiamata TMDB v3 | Risposta di amodb |
|---|---|
/movie/changes, /tv/changes, /person/changes e changes sotto un ID | 404, status_code 34 |
aggregate_credits sotto una serie o una stagione | 404, status_code 34 |
/credit/{credit_id} e /review/{review_id} | 404, status_code 34 |
/tv/episode_group/{id} | 404, status_code 34 |
/, tagged_images e /person/latest | 404, status_code 34 |
images, translations e alternative_names per collezioni, società ed emittenti | 404, status_code 34 |
/ | 404, status_code 34 |
Tutto ciò che sta sotto account, authentication, guest_session e list, e qualsiasi percorso /rating o /account_states | 405, status_code 37 |
Se aggiungi aggregate_credits o changes a append_to_response, amodb ignora il nome senza errore, quindi la chiave semplicemente manca nel corpo.
Confronto delle funzionalità
| Funzionalità | TMDB | amodb |
|---|---|---|
| Modello di prezzo | Gratuito per usi idonei, secondo le condizioni di TMDB | Prepagato, da 1 a 24 mesi per acquisto |
| 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 con una chiave esadecimale di 32 caratteri |
| Formato della risposta | JSON | JSON, stessi campi sui percorsi serviti |
| Lingue | Vedi la loro documentazione | 14 servite, gli altri tag ripiegano su en |
| Film | Sì | Sì |
| Serie TV | Sì | Sì |
| Persone | Sì | Sì |
| Immagini | Sì | img.amodb.dev, dimensioni da w92 a original |
| Valutazioni | Punteggio degli utenti TMDB, altre fonti: vedi la loro documentazione | Cinque fonti in un solo oggetto, quando sono note |
| Metodi di scrittura | Metodi per account, liste e valutazioni | Nessuno, 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 | Piani a pagamento, vedi i prezzi |
| Compatibilità | Definisce TMDB v3 | La maggior parte dei percorsi di lettura TMDB v3 e una rotta OMDb |
Cosa cambia nel dettaglio
- Condizioni. TMDB ti chiede di leggere le sue condizioni su uso commerciale e attribuzione. amodb si vende a periodo prepagato, senza rinnovo automatico, senza piano gratuito e senza prova.
- Lingue. amodb serve en, ru, uk, be, zh, pt, bg, he, cs, ro, fr, pl, it ed es. Accetta i tag TMDB come
ru-RUept-BR. Tedesco, giapponese e coreano ripiegano suen, mentreoriginal_titleconserva il titolo originale. Per la copertura linguistica di TMDB, vedi la loro documentazione. Vedi lingue. - Estensioni.
append_to_responseaccetta anchemoods,soundtracks,ratings,wikidataeshowtimes, e ognuna ha un proprio percorso sotto film e serie. - ID esterni.
/3/findrisolveimdb_id,tvdb_id,wikidata_id,kinopoisk_id,facebook_id,twitter_ideinstagram_id. Le fontifreebase_mid,freebase_id,tvrage_id,tiktok_ideyoutube_idsono accettate ma restituiscono array vuoti. Unexternal_sourcemancante o sconosciuto risponde 400 constatus_code22. - Vuoto per scelta. Immagini, video e traduzioni delle stagioni e la
descriptiondi una società sono sempre vuoti. Recensioni ecreated_bydi una serie sono compilati solo per pochi titoli. Gliexternal_idsdi stagioni ed episodi sono tutti nulli. - Titoli per adulti.
include_adultviene ignorato. Titoli e persone per adulti non vengono mai serviti e rispondono 404. - Immagini. Il percorso del CDN è
https:/. Non serve alcuna chiave e i file restano in cache 30 giorni./ img.amodb.dev/ t/ p/ {size}/ {file} - Limiti. La finestra è scorrevole di 60 secondi per chiave. Gli header mostrano il conteggio rimanente, e anche le risposte dalla cache contano, perché il controllo del limite viene per primo.
- Indipendenza. Il catalogo proviene da fonti pubbliche e aperte e da un nostro arricchimento. Una struttura condivisa non garantisce valori identici per ogni campo di ogni titolo.
Dove TMDB è più adatto
- Uso gratuito idoneo. Non serve alcun pagamento, e amodb non può competere.
- Scritture. Valutare un titolo, creare una lista e gestire le sessioni di account funzionano su TMDB. Su amodb restituiscono 405.
- Feed delle modifiche. TMDB elenca gli ID modificati. amodb non ha un feed simile, quindi aggiorni con i tuoi tempi.
- Crediti aggregati e ricerche di crediti. Entrambi rispondono 404 su amodb. Usa
/creditssul titolo. - Esigenze linguistiche più ampie. Se la tua interfaccia richiede una lingua fuori dalle 14, controlla prima TMDB.
- Approvazione già ottenuta. Un team che ha superato la revisione legale per TMDB deve valutare il costo di una seconda revisione.
Migrare ad amodb
Il cambiamento è una riga per richiesta.
# 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"Prima del passaggio, confronta affiancata la struttura di qualche risposta. Questo script stampa le chiavi di primo livello che un lato restituisce e l'altro no.
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');
}I campi facoltativi possono differire per un dato titolo, quindi leggi una chiave mancante come una pista da esaminare e non come un verdetto. Poi segui questo elenco:
- Scegli un piano nella pagina dei prezzi, poi crea una chiave nella dashboard del tuo account.
- Sposta l'URL di base e la chiave nella configurazione.
- Leggi
images.secure_base_urlda/3/configuration. - Cerca nel tuo codice le chiamate di scrittura e i percorsi della tabella dei non offerti. Lascia le scritture su TMDB e sostituisci il resto.
- Aggiungi un gestore del 429 che attende
Retry-Aftersecondi. Vedi limiti di richieste ed errori.
Prezzi
amodb è prepagato. Scegli 1, 3, 6, 12 o 24 mesi, che danno 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 restituisce tutti i dati e nessuno si rinnova da solo. Vedi i prezzi per gli importi.