Skip to main content

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
integer
default:"1"
Page number for pagination
page_size
integer
default:"50"
Number of items per page
Search movies by title or description
category
integer
Filter by category ID
year
integer
Filter by release year
rating
string
Filter by rating (e.g., PG, PG-13, R)
id
integer
Movie ID
title
string
Movie title
description
string
Movie description
year
integer
Release year
rating
string
Content rating
duration
integer
Duration in minutes
poster_url
string
Movie poster URL
stream_url
string
Movie stream URL
category
object
Category information

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
  }'
title
string
required
Movie title
stream_url
string
required
URL to movie stream
description
string
Movie description
year
integer
Release year
rating
string
Content rating
duration
integer
Duration in minutes
poster_url
string
Movie poster URL
category_id
integer
Category ID

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
string
Search series by title or description
category
integer
Filter by category ID
id
integer
Series ID
title
string
Series title
description
string
Series description
year
integer
First air year
poster_url
string
Series poster URL
episode_count
integer
Total number of episodes
season_count
integer
Total number of seasons

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"
series
integer
Filter by series ID
season
integer
Filter by season number
id
integer
Episode ID
title
string
Episode title
description
string
Episode description
season
integer
Season number
episode
integer
Episode number
duration
integer
Duration in minutes
stream_url
string
Episode stream URL
series
object
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"
  }'
title
string
required
Episode title
series_id
integer
required
Parent series ID
season
integer
required
Season number
episode
integer
required
Episode number
stream_url
string
required
Episode stream URL
description
string
Episode description
duration
integer
Duration in minutes

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.
id
integer
Category ID
name
string
Category name
description
string
Category description
movie_count
integer
Number of movies in category
series_count
integer
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
string
Search across all content
type
string
Filter by content type (movie, series)
category
integer
Filter by category ID
content_type
string
Type of content (movie or series)
id
integer
Content ID
title
string
Content title
description
string
Content description

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.
curl -X GET https://your-instance.com/api/vod/vodlogos/123/ \
  -H "Authorization: Bearer YOUR_TOKEN"
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"
  }'
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"
  }'
curl -X DELETE https://your-instance.com/api/vod/vodlogos/123/ \
  -H "Authorization: Bearer YOUR_TOKEN"