Cuál encaja en un proyecto de TV
TheTVDB se centra en la TV y mantiene varios órdenes de episodios para una serie, entre ellos emisión, DVD y absoluto, bajo un modelo de clave de API. Consulta su documentación sobre licencias antes de planificar un producto comercial. Elige amodb cuando quieras TV, películas y personas con una sola clave, rutas de TMDB v3 y 14 idiomas. Elige TheTVDB cuando la numeración alternativa exacta sea el centro de tu aplicación, porque amodb lista los grupos de episodios de una serie pero no sirve lo que hay dentro.
Cómo se corresponden los datos de TV entre ambos
Los conceptos coinciden, pero los nombres difieren. Esta tabla cubre lo que suele leer una aplicación de TV.
| Necesidad | Enfoque de TheTVDB | Llamada de amodb |
|---|---|---|
| Una serie | Registro de la serie por id de TVDB | GET /3/tv/1396, tras buscar por tvdb_id |
| Lista de temporadas | Consulta su documentación | Array seasons en los detalles de la serie |
| Una temporada con episodios | Consulta su documentación | GET / |
| Un episodio | Consulta su documentación | GET / |
| Qué órdenes existen | Órdenes de emisión, DVD y absoluto | GET / |
| Episodios dentro de un orden | Consulta su documentación | No se ofrece, / responde 404 |
| Próximo episodio por emitir | Consulta su documentación | next_episode_to_air en los detalles de la serie |
Los campos de episodio usan los nombres de TMDB: air_date, episode_number, season_number, runtime y still_path. Los external_ids de temporadas y episodios son todos null, así que el id de TVDB de una temporada o un episodio concretos no se puede leer desde amodb. Une por season_number y episode_number en su lugar. Los detalles están en temporadas y episodios.
Qué devuelve la lista de grupos de episodios
La llamada de lista muestra qué órdenes existen para una serie. No devuelve los episodios que contienen.
| Campo | Significado |
|---|---|
id | Id del grupo, una cadena |
name | Nombre del orden, como DVD / PVOD |
description | Texto de la fuente, a menudo vacío |
type | Un número que indica de qué tipo de orden se trata |
episode_count | Episodios del orden |
group_count | Bloques del orden, como temporadas |
network | Un objeto con la cadena de TV, o null |
Esta es una respuesta real para Breaking Bad.
{
"id": 1396,
"results": [
{
"description": "Seasons grouped as they appear on DVD, as well as paid video-on-demand services, such as Prime Video and YouTube.",
"episode_count": 62,
"group_count": 6,
"id": "69f50757054263b7bc87e32a",
"name": "DVD / PVOD",
"network": null,
"type": 3
}
]
}Algunas series devuelven un solo orden de emisión y otras varios, y algunas devuelven un array results vacío. Prueba las series que te importan. Como el contenido de un grupo no se ofrece, una aplicación que necesite el número DVD o absoluto de cada episodio no puede obtenerlo de amodb.
Comparación de funciones
| Función | TheTVDB | amodb |
|---|---|---|
| Modelo de precios | Modelo de clave de API, consulta su documentación sobre licencias | Periodos prepago de 1 a 24 meses |
| Nivel gratuito | Consulta su documentación | Ninguno, y sin periodo de prueba |
| Autenticación | Clave de API, consulta su documentación sobre el flujo | api_key o cabecera Bearer |
| Formato de respuesta | JSON, consulta su documentación | JSON con la forma de TMDB v3 |
| Idiomas | Consulta su documentación | 14 idiomas de interfaz |
| Películas | Consulta su documentación | Sí |
| TV | Sí, su foco principal | Sí, con temporadas y episodios |
| Personas | Consulta su documentación | Sí |
| Imágenes | Consulta su documentación | img.amodb.dev, sin necesidad de clave |
| Puntuaciones | Consulta su documentación | IMDb y otras cuatro fuentes cuando se conocen |
| Límite de solicitudes | Consulta su documentación | 20, 40 o 120 por minuto por clave |
| Uso comercial | Consulta su documentación sobre licencias | Planes de pago, consulta los precios |
| Compatibilidad | Su propia API | Lecturas de TMDB v3 y OMDb |
En qué se diferencia amodb
- Una clave para todo el catálogo. Una serie, su reparto, sus tráileres y una película que comparte un actor usan la misma URL base y el mismo límite.
- Puntuaciones junto a la guía de episodios.
append_en los detalles de la serie añade IMDb y otras puntuaciones en una sola llamada.to_ response= ratings - Cabeceras sencillas para regular el ritmo.
X-RateLimit-RemainingyX-RateLimit-Resetindican a un trabajo de sincronización cuántas solicitudes quedan en la ventana de 60 segundos. - Nombres originales conservados. Una serie conserva
original_namemientrasnamesigue tulanguage, lo que ayuda cuando muestras un título nativo.
Dónde encaja mejor TheTVDB
- El orden es el producto. Si tus usuarios discuten sobre el orden DVD frente al de emisión frente al absoluto, TheTVDB lo trata como una parte central de su modelo. amodb nombra los órdenes de una serie pero no devuelve sus episodios, y qué grupos existen depende de la serie.
- Integraciones existentes. Si tu flujo ya guarda ids de TheTVDB y lee sus órdenes, conserva esa parte y añade amodb para los datos adicionales.
- Foco en TV. Si nunca muestras películas ni personas, una fuente construida en torno a la TV tiene menos que aprender.
Migrar a amodb
Asigna una sola vez tus ids de TVDB guardados. Después, usa el id de amodb en todas las llamadas. El endpoint find resuelve solo ids de series. Sus arrays tv_season_results y tv_episode_results están siempre vacíos, así que asigna temporadas y episodios por número.
const key = process.env.AMODB_KEY;
const headers = { Authorization: `Bearer ${key}` };
const base = 'https://api.amodb.dev/3';
async function getJson(path) {
const res = await fetch(`${base}${path}`, { headers });
if (!res.ok) throw new Error(`${path} returned ${res.status}`);
return res.json();
}
const found = await getJson('/find/81189?external_source=tvdb_id');
const show = found.tv_results[0];
console.log(show.id, show.name);
const groups = await getJson(`/tv/${show.id}/episode_groups`);
for (const g of groups.results) {
console.log(g.name, g.type, g.episode_count);
}La primera solicitud devuelve Breaking Bad con el id 1396. La segunda lista los órdenes que existen para esa serie, con sus tamaños. Para comparar la numeración con lo que guardas ahora, lee el orden de emisión desde /tv/{id}/season/{n} y deja cualquier orden alternativo en el lado de TheTVDB. Haz esa comprobación con tus diez series más vistas antes de mover el resto.
Cada llamada cuenta como una solicitud en la ventana de 60 segundos, y un 429 trae Retry-After. Consulta buscar por ID externo y límites de solicitudes.
Precios
amodb es prepago y sin renovación automática. Elige 1, 3, 6, 12 o 24 meses y uno de tres planes de 20, 40 o 120 solicitudes por minuto. Los periodos más largos tienen un descuento del 10, 20, 30 o 40 por ciento, y todos los planes obtienen todos los datos. No hay nivel gratuito. Los importes están en precios.