🎬 API de Películas 🎥
Una API RESTful que te brinda acceso a una colección de películas clásicas y modernas, cada una con título, descripción, año y una imagen de portada.
Perfecta para proyectos de cine, apps de catálogo, colecciones personales o aplicaciones de streaming.
Consulta y gestiona las películas fácilmente utilizando métodos HTTP como GET
, POST
,
PUT
y DELETE
.
🚀 ¡Explora y prueba todos los endpoints en segundos!
Ver colección en Postman
🔗 URL de la API
https://devsapihub.com/api-movies
Puedes acceder a esta API desde cualquier cliente HTTP como Postman o directamente en el navegador.
Probar API✅ Obtener todas las películas
GET /api-movies
GET
Devuelve un array con todas las películas.
🔍 Obtener una película por ID
GET /api-movies/:id
GET
Devuelve los datos de una película según su ID.
GET /api-movies/1
🎥 Obtener películas con límite
GET /api-movies/limit/:limit
GET
Devuelve un array de películas con el número máximo de resultados especificado por el parámetro limit. Si el número solicitado excede el total de películas disponibles, solo se devolverán las películas disponibles.
GET /api-movies/limit/2
Respuesta esperada: un array con las películas solicitadas o el número máximo disponible si el límite solicitado excede la cantidad total de películas. Si no se especifica un límite, se devolverán todas las películas disponibles.
Ejemplo de respuesta:
[
{
"id": 1,
"title": "The Shawshank Redemption",
"description": "Two imprisoned men bond over a number of years, finding solace and eventual redemption through acts of common decency.",
"year": 1994,
"imageUrl": "https://devsapihub.com/img-movies/1.jpg",
"genre": "Drama",
"stars": 5.0
},
{
"id": 2,
"title": "Jumanji",
"description": "In Jumanji: The Next Level, the gang is back but the game has changed.",
"year": 2019,
"imageUrl": "https://devsapihub.com/img-movies/2.jpg",
"genre": "Adventure",
"stars": 3.4
}
]
🎬 Obtener películas por género
GET /api-movies/genre/:genre
GET
Devuelve un array de películas correspondientes al género especificado.
GET /api-movies/genre/Action
Respuesta esperada: array de películas del género especificado o error 404 si no hay coincidencias.
⭐ Obtener películas por cantidad de estrellas
GET /api-movies/stars/:stars
GET
Devuelve un array de películas que tienen la cantidad de estrellas especificada.
GET /api-movies/stars/5
Respuesta esperada: array de películas con la cantidad de estrellas especificada o error 404 si no hay coincidencias.
➕ Crear nueva película
POST /api-movies/movie
POST
Envía un JSON con los datos de la nueva película:
{
"title": "El Código del Silencio",
"description": "Un thriller tecnológico donde un joven hacker descubre una red secreta que controla los datos de
millones de personas.",
"year": 2023,
"image_url": "https://devsapihub.com/img-movies/codigo-del-silencio.jpg",
"genre": "Action",
"stars": 4
}
Respuesta esperada: objeto recién creado y listado completo con
GET /api-movies
✏️ Editar película existente
PUT /api-movies/movie/:id
PUT
Consulta los detalles de una película en específico utilizando su ID:
GET /api-movies/movie/2
Devuelve un objeto con los datos de la película.
Luego, envía un objeto JSON con los nuevos valores de la película:
{
"id": 2,
"title": "Jumanji 2",
"description": "In Jumanji: The Next Level, the gang is back but the game has changed.",
"year": 2019,
"image_url": "https://devsapihub.com/img-movies/2.jpg",
"genre": "Adventure",
"stars": 4
}
Respuesta esperada: El objeto actualizado con los nuevos datos.
🗑 Eliminar película
DELETE /api-movies/movie/:id
DELETE
Elimina la película con el ID especificado.
DELETE /api-movies/3
Respuesta esperada: listado actualizado con GET /api-movies
📅 Obtener películas por año
GET /api-movies/year/:year
GET
Devuelve un array de películas correspondientes al año especificado.
GET /api-movies/year/2023
Respuesta esperada: array de películas lanzadas en ese año o error 404 si no hay coincidencias.
📚 Ejemplos de Consumo
const getMovies = async () => {
try {
const res = await fetch("https://devsapihub.com/api-movies");
const data = await res.json();
if (!res.ok) {
throw new Error('Error en la respuesta de la API');
}
console.log(data);
} catch (error) {
console.error("Error al obtener las películas:", error.message);
}
};
// Llamar a la función
getMovies();
import requests
response = requests.get("https://devsapihub.com/api-movies")
print(response.json())
import axios from "axios";
const getMovies = async () => {
try {
const res = await axios.get("https://devsapihub.com/api-movies");
console.log(res.data);
} catch (error) {
console.error("Error al obtener las películas:", error.message);
}
};
// Llamar a la función
getMovies();
<?php
$response = @file_get_contents('https://devsapihub.com/api-movies');
$data = json_decode($response, true);
echo '<pre>';
echo $data ? print_r($data, true) : 'Error al obtener o decodificar los datos.';
echo '</pre>';
?>
🎬 ¿Quieres mejorar la forma en que presentas tus peliculas?
Aquí tienes un ejemplo visual y funcional que muestra cómo puedes crear una interfaz atractiva con Bootstrap 5 y
datos desde una API.
Explorar en CodePen