๐ŸŽฌ Movie Database API

A comprehensive REST API for managing movie data

๐Ÿงช Ready to Test?

Use Swagger UI to test all endpoints interactively - no coding required!

Open Swagger UI โ†’

Total Movies

1000
Movies in database

Highest Rated

9.0/10
The Dark Knight

Latest Release

2016
Split

Oldest Movie

2006
The Prestige

๐Ÿ”ง System Information

Python Version: 3.13.11

Django Version: 4.2

DRF Version: 3.14.0

Database: SQLite3

๐Ÿ” Admin Credentials

Admin URL: /admin/

Username: admin

Password: admin123

๐Ÿ“ฆ Installed Packages

Django==4.2.0

djangorestframework==3.14.0

drf-spectacular==0.26.2

python-dateutil==2.8.2

pytz==2023.3

requests==2.31.0

๐Ÿ“‹ API Endpoints

GET /api/movies/
List all movies (paginated, 20 per page)
GET /api/movies/{id}/
Retrieve a specific movie by ID
POST /api/movies/
Create a new movie (requires: title, director, genre, year, rating)
PUT /api/movies/{id}/
Update an entire movie record
PATCH /api/movies/{id}/
Partially update a movie (e.g., just the rating)
DELETE /api/movies/{id}/
Delete a movie from the database
GET /api/movies/top-rated/
Get top-rated movies (supports filtering by min_rating, genre, year)

๐Ÿงช Testing Information

Run Unit Tests:

python manage.py test movies

Load Data Script:

python load_data.py