Movies
List Movies
curl -X GET https://your-instance.com/api/vod/movies/ \
-H "Authorization: Bearer YOUR_TOKEN"
Returns all available movies with pagination and filtering support.
Page number for pagination
Search movies by title or description
Filter by rating (e.g., PG, PG-13, R)
Get Movie
curl -X GET https://your-instance.com/api/vod/movies/123/ \
-H "Authorization: Bearer YOUR_TOKEN"
Create Movie
curl -X POST https://your-instance.com/api/vod/movies/ \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "The Great Movie",
"description": "An amazing film",
"year": 2026,
"rating": "PG-13",
"duration": 120,
"stream_url": "http://example.com/movie.mp4",
"category_id": 5
}'
Update Movie
curl -X PUT https://your-instance.com/api/vod/movies/123/ \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "The Great Movie (Director Cut)",
"duration": 145
}'
Delete Movie
curl -X DELETE https://your-instance.com/api/vod/movies/123/ \
-H "Authorization: Bearer YOUR_TOKEN"
Series
List Series
curl -X GET https://your-instance.com/api/vod/series/ \
-H "Authorization: Bearer YOUR_TOKEN"
Returns all TV series with their episode information.
Search series by title or description
Get Series
curl -X GET https://your-instance.com/api/vod/series/456/ \
-H "Authorization: Bearer YOUR_TOKEN"
Create Series
curl -X POST https://your-instance.com/api/vod/series/ \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Amazing Series",
"description": "A great TV show",
"year": 2026,
"category_id": 3
}'
Update Series
curl -X PUT https://your-instance.com/api/vod/series/456/ \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Amazing Series (Updated)",
"description": "An even better TV show"
}'
Delete Series
curl -X DELETE https://your-instance.com/api/vod/series/456/ \
-H "Authorization: Bearer YOUR_TOKEN"
Episodes
List Episodes
curl -X GET https://your-instance.com/api/vod/episodes/ \
-H "Authorization: Bearer YOUR_TOKEN"
Parent series information
Get Episode
curl -X GET https://your-instance.com/api/vod/episodes/789/ \
-H "Authorization: Bearer YOUR_TOKEN"
Create Episode
curl -X POST https://your-instance.com/api/vod/episodes/ \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Pilot",
"description": "The first episode",
"series_id": 456,
"season": 1,
"episode": 1,
"duration": 45,
"stream_url": "http://example.com/episode.mp4"
}'
Update Episode
curl -X PUT https://your-instance.com/api/vod/episodes/789/ \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Pilot (Extended)",
"duration": 60
}'
Delete Episode
curl -X DELETE https://your-instance.com/api/vod/episodes/789/ \
-H "Authorization: Bearer YOUR_TOKEN"
Categories
List Categories
curl -X GET https://your-instance.com/api/vod/categories/ \
-H "Authorization: Bearer YOUR_TOKEN"
Returns all VOD categories for organizing content.
Number of movies in category
Number of series in category
Get Category
curl -X GET https://your-instance.com/api/vod/categories/5/ \
-H "Authorization: Bearer YOUR_TOKEN"
Create Category
curl -X POST https://your-instance.com/api/vod/categories/ \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Action",
"description": "Action movies and series"
}'
Update Category
curl -X PUT https://your-instance.com/api/vod/categories/5/ \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Action & Adventure"
}'
Delete Category
curl -X DELETE https://your-instance.com/api/vod/categories/5/ \
-H "Authorization: Bearer YOUR_TOKEN"
Unified Content
List All Content
curl -X GET https://your-instance.com/api/vod/all/ \
-H "Authorization: Bearer YOUR_TOKEN"
Returns a unified list of both movies and series with a content type indicator.
Search across all content
Filter by content type (movie, series)
Type of content (movie or series)
VOD Logos
List VOD Logos
curl -X GET https://your-instance.com/api/vod/vodlogos/ \
-H "Authorization: Bearer YOUR_TOKEN"
Returns logos/posters for VOD content.
Get VOD Logo
curl -X GET https://your-instance.com/api/vod/vodlogos/123/ \
-H "Authorization: Bearer YOUR_TOKEN"
Create VOD Logo
curl -X POST https://your-instance.com/api/vod/vodlogos/ \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Movie Poster",
"url": "https://example.com/poster.jpg"
}'
Update VOD Logo
curl -X PUT https://your-instance.com/api/vod/vodlogos/123/ \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/updated-poster.jpg"
}'
Delete VOD Logo
curl -X DELETE https://your-instance.com/api/vod/vodlogos/123/ \
-H "Authorization: Bearer YOUR_TOKEN"