# Alternativa a la API de TMDB

> Busca una alternativa a TMDB cuando quieras un acuerdo de pago, un límite de solicitudes planificable o más datos en cada respuesta. amodb habla el protocolo TMDB v3 para lecturas, así que cambias la URL base y la clave. Las escrituras y algunas rutas no se ofrecen. Quédate en TMDB si encajan sus términos gratuitos.

## Qué API elegir

TMDB ofrece una API gratuita para usos que cumplan sus condiciones, con claves de API v3 y tokens v4. Lee esos términos sobre uso comercial y atribución antes de publicar. Elige una alternativa cuando quieras un acuerdo de pago, un límite con el que puedas planificar, o más datos en cada respuesta. amodb es una API independiente que habla el protocolo TMDB v3 para lecturas, así que el cambio supone una nueva URL base y una nueva clave. Es de solo lectura, y algunas rutas de TMDB no se ofrecen, como se indica más abajo.

Quédate en TMDB si los términos gratuitos encajan con tu proyecto y nada de la siguiente sección te afecta.

## Señales de que necesitas una alternativa

Cinco comprobaciones te ayudan a decidir. Hazlas con tu propio tráfico y tu propio contrato, no con una lista de funciones.

| Señal                 | Qué probar                                                               | Cómo responde amodb                                                                             |
| --------------------- | ------------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------- |
| Términos comerciales  | Lee los términos de la API que usas hoy sobre uso comercial y atribución | Planes de pago, prepago, sin renovación automática                                              |
| Tráfico máximo        | Cuenta las solicitudes de tu minuto de más tráfico                       | Un límite fijo de 20, 40 o 120 solicitudes por minuto por clave                                 |
| Datos por pantalla    | Lista las llamadas adicionales detrás de una página de título            | `append_to_response` también admite `ratings`, `moods`, `soundtracks`, `wikidata` y `showtimes` |
| Idioma de la interfaz | Revisa cada idioma que publicas                                          | 14 idiomas, cualquier otro recurre a `en`                                                       |
| Esfuerzo de salida    | Cuenta las líneas de código que nombran a un proveedor                   | Mismas rutas y JSON en los endpoints servidos, así que irse también es un cambio de URL base    |

Los aciertos de caché también cuentan. La comprobación de la clave y el límite de solicitudes se ejecutan antes de la caché perimetral, así que una solicitud repetida sigue consumiendo una de tus solicitudes por minuto. Planifica según el total de solicitudes, no según los fallos de caché.

## Comparación de funciones

| Función               | TMDB                                                                          | amodb                                                                                  |
| --------------------- | ----------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- |
| Modelo de precios     | API gratuita para usos que cumplan sus propios términos                       | Periodos prepago de 1, 3, 6, 12 o 24 meses                                             |
| Nivel gratuito        | Sí, para usos que cumplan sus condiciones                                     | Ninguno, y sin periodo de prueba                                                       |
| Autenticación         | Clave v3 en `api_key`, o un token v4 como Bearer                              | `api_key` o Bearer, clave de 32 caracteres hexadecimales                               |
| Formato de respuesta  | JSON                                                                          | JSON con la forma de TMDB v3                                                           |
| Idiomas               | Consulta su documentación                                                     | 14 idiomas de interfaz                                                                 |
| Películas             | Sí                                                                            | Sí                                                                                     |
| TV                    | Sí                                                                            | Sí, con temporadas y episodios                                                         |
| Personas              | Sí                                                                            | Sí                                                                                     |
| Imágenes              | Sí, desde su propio host de imágenes                                          | `img.amodb.dev`, los mismos tokens de tamaño, sin clave                                |
| Puntuaciones          | Puntuación de usuarios de TMDB, consulta su documentación sobre otras fuentes | Puntuación de TMDB más IMDb, Kinopoisk, Metacritic y Rotten Tomatoes cuando se conocen |
| Métodos de escritura  | Métodos de cuenta, listas y puntuación                                        | No se ofrecen, responden 405                                                           |
| Límite de solicitudes | Consulta su documentación                                                     | 20, 40 o 120 por minuto por clave                                                      |
| Uso comercial         | Consulta sus términos sobre uso comercial y atribución                        | Se vende como API de pago, consulta los [precios](https://amodb.dev/es/pricing/)       |
| Compatibilidad        | Define el protocolo v3                                                        | La mayoría de las rutas de lectura v3, más OMDb                                        |

## En qué se diferencia amodb

- **Límites que puedes leer.** Cada respuesta con clave lleva `X-RateLimit-Limit`, `X-RateLimit-Remaining` y `X-RateLimit-Reset` en segundos. Un 429 añade `Retry-After`. Los números se explican en [límites de solicitudes](https://amodb.dev/es/rate-limits/).
- **Bloques extra en una llamada.** Las puntuaciones de cinco fuentes, los medidores de mood (ambiente emocional), las bandas sonoras, los datos de Wikidata y los horarios de sesiones llegan mediante `append_to_response`, así que una página de título puede usar una sola solicitud.
- **Más fuentes de ids externos.** `/3/find` resuelve `imdb_id`, `tvdb_id`, `wikidata_id` y `kinopoisk_id`, y también `facebook_id`, `twitter_id` e `instagram_id`. Consulta [buscar por ID externo](https://amodb.dev/es/find-by-external-id/).
- **OMDb con la misma clave.** `https://api.amodb.dev/omdb/` responde llamadas al estilo OMDb con un parámetro `apikey`, lo que ayuda cuando dos de tus sistemas usan protocolos distintos.
- **Tiempos de caché conocidos.** Los detalles y los créditos se mantienen 6 horas en la caché perimetral, las tendencias y el descubrimiento 30 minutos, la búsqueda 10 minutos, la configuración 24 horas y las imágenes 30 días.

## Dónde encaja mejor TMDB

- **Proyectos gratuitos.** Si tu uso cumple los términos gratuitos, TMDB no cuesta nada y amodb no puede igualarlo.
- **Métodos de escritura de usuario.** TMDB ofrece métodos de escritura de cuenta, sesión, puntuación y listas. amodb los responde con 405 y status_code 37, así que una aplicación que permite iniciar sesión y puntuar títulos debe quedarse con TMDB para esa parte.
- **Feeds de cambios.** TMDB lista los ids que cambiaron. amodb no tiene un feed así, así que actualizas con tu propio calendario.
- **Más de 14 idiomas.** amodb no sirve texto de interfaz en alemán, japonés ni coreano y recurre al inglés. Los títulos originales siguen llegando en `original_title` y `original_name`. Para otros idiomas en TMDB, consulta su documentación.
- **Términos que ya aceptaste.** Si la revisión legal de TMDB ya está hecha, cambiar te obliga a pasar otra revisión.

## Lo que amodb no ofrece

Revisa tu código con esta lista antes del cambio definitivo. La tabla completa está en [amodb vs TMDB](https://amodb.dev/es/amodb-vs-tmdb/).

| Llamada de TMDB                                                                               | Respuesta de amodb                      |
| --------------------------------------------------------------------------------------------- | --------------------------------------- |
| Escrituras de cuenta, sesión, puntuación y listas                                             | 405, `status_code` 37                   |
| Cambios, créditos agregados, consulta de créditos y reseñas, contenido de grupos de episodios | 404, `status_code` 34                   |
| Traducciones de personas, imágenes y traducciones de colecciones, productoras y cadenas       | 404, `status_code` 34                   |
| Lista de reseñas de una película o serie                                                      | 200, vacía en la mayoría de los títulos |
| Imágenes, vídeos y traducciones de temporada                                                  | 200, vacío                              |
| IDs externos de temporada y episodio                                                          | 200, todos null                         |

Dos comportamientos son silenciosos. Un nombre de `append_to_response` que amodb no conoce, como `aggregate_credits`, se ignora sin error. El parámetro `include_adult` también se ignora, porque los títulos y las personas para adultos nunca se sirven.

## Migrar a amodb

1. Elige un plan en [precios](https://amodb.dev/es/pricing/) y crea una clave en el panel de tu cuenta.
2. Sustituye la URL base y la clave en un solo lugar, como se muestra abajo.
3. Lee `images.secure_base_url` desde `/3/configuration` para que los enlaces de imágenes usen `img.amodb.dev`.
4. Elimina las llamadas a métodos de escritura y a las rutas de la tabla anterior.
5. Gestiona el 429 esperando los segundos de `Retry-After`.

```js
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);
```

Ejecuta tus pruebas actuales contra ambas URL base antes del cambio definitivo. Compartir la misma forma no garantiza valores idénticos, así que compara una muestra de tus propios títulos. El recorrido completo está en la [guía de inicio rápido](https://amodb.dev/es/quickstart/), y una tabla cara a cara en [amodb vs TMDB](https://amodb.dev/es/amodb-vs-tmdb/).

### El manejo de errores se mantiene

Las llamadas fallidas devuelven el cuerpo de TMDB `{"success": false, "status_code": N, "status_message": "..."}`, así que el código que se ramifica según `status_code` no necesita reescribirse.

| HTTP | status_code | Causa habitual                                            |
| ---- | ----------- | --------------------------------------------------------- |
| 401  | 7           | Falta la clave o está mal escrita                         |
| 401  | 10          | Clave suspendida                                          |
| 402  | 36          | Terminó el periodo prepago                                |
| 404  | 34          | Id no encontrado, o una ruta que amodb no ofrece          |
| 405  | 37          | Un método de escritura que tu código todavía llama        |
| 429  | 25          | Más solicitudes de las que permite el plan en 60 segundos |

Trata el 402 como una señal para renovar a mano, porque nada se renueva automáticamente. La lista completa está en [errores](https://amodb.dev/es/errors/).

## Precios

amodb es prepago. Elige un periodo de 1, 3, 6, 12 o 24 meses, que aplica un descuento del 0, 10, 20, 30 o 40 por ciento, y uno de tres planes de 20, 40 o 120 solicitudes por minuto. Todos los planes obtienen todos los datos y nada se renueva automáticamente. No hay nivel gratuito ni periodo de prueba. Los importes vigentes están en [precios](https://amodb.dev/es/pricing/).

## Preguntas y respuestas

### ¿amodb es un reemplazo directo de la API de TMDB?

Para la mayoría de los endpoints de lectura, sí. Las rutas, los parámetros de consulta y los campos JSON siguen TMDB v3, y funcionan tanto api_key como la autenticación Bearer. Los métodos de escritura devuelven 405 con status_code 37. Los feeds de cambios, los créditos agregados, la consulta de créditos y reseñas por id y algunas otras rutas devuelven 404 con status_code 34.

### ¿Seguirán funcionando mis URL de imágenes de TMDB?

La forma de la ruta y los tokens de tamaño se mantienen, pero el host es img.amodb.dev y no hace falta clave. Lee images.secure_base_url desde el endpoint de configuración en lugar de fijar un host en el código, y tu código de imágenes no necesita ningún otro cambio.

### ¿amodb acepta una cabecera Bearer como TMDB?

Sí. Envía Authorization: Bearer con tu clave de amodb, o pasa el parámetro de consulta api_key. La clave tiene 32 caracteres hexadecimales en minúscula, la misma forma que una clave v3 de TMDB.

### ¿Cómo se compara el precio con la API gratuita de TMDB?

TMDB ofrece una API gratuita para usos que cumplan sus condiciones. amodb no tiene nivel gratuito ni periodo de prueba. Pagas por adelantado de 1 a 24 meses en uno de tres planes, y la página de precios muestra los importes vigentes.

### ¿Qué límite debería planificar?

Ajústalo a tu minuto de más tráfico. Los planes permiten 20, 40 o 120 solicitudes por minuto por clave en una ventana deslizante de 60 segundos, y todos los planes devuelven todos los datos. Las cabeceras de respuesta muestran cuántas solicitudes quedan.

## Páginas relacionadas

- [amodb vs TMDB](https://amodb.dev/es/amodb-vs-tmdb/): Cara a cara entre amodb y TMDB: paridad de endpoints, rutas que amodb no ofrece, términos gratuitos y de pago, 14 idiomas, extensiones y límites de solicitudes.
- [Alternativa a la API de OMDb](https://amodb.dev/es/omdb-api-alternative/): ¿Te limita el tope diario de OMDb o necesitas más de un registro por llamada? amodb responde al estilo OMDb y sirve endpoints TMDB v3 con la misma clave.
- [API de base de datos de películas para tu propio catálogo](https://amodb.dev/es/movie-database-api/): API de base de datos de películas para tu copia local: películas, personas, productoras, colecciones y palabras clave con ids enlazados y ventanas de fechas.
- [Inicio rápido](https://amodb.dev/es/quickstart/): Haz tu primera llamada a amodb: consigue una clave, pide los detalles de una película en curl, JavaScript, Python, PHP o Go y carga el póster. En 2 minutos.
- [Límites de solicitudes](https://amodb.dev/es/rate-limits/): amodb limita cada clave por solicitudes por minuto en una ventana deslizante de 60 segundos: 20, 40 o 120 según el plan. Lee los encabezados y gestiona el 429.
- [Precios](https://amodb.dev/es/pricing/): Los planes de amodb se diferencian solo en solicitudes por minuto: 20, 40 o 120. Todos incluyen todos los datos de TMDB v3 y OMDb. Prepago y sin renovación.

Actualizado: 2026-10-18. Source: https://amodb.dev/es/tmdb-api-alternative/
