Wustream API Documentation

The Wustream API provides structured access to movies and TV shows including metadata, cast, crew, trailers, recommendations, streaming providers, categories, and search. This API is optimized for mobile applications (Flutter), web apps, and backend services.

Base URL

https://films.wustream.com/api

Authentication

All requests must include your company API key using the x-api-key header. Keys should be stored securely on your server or inside secure environment variables.

x-api-key: YOUR_COMPANY_API_KEY

Required Headers

{
  "x-api-key": "YOUR_COMPANY_API_KEY",
  "Accept": "application/json",
  "Content-Type": "application/json"
}

Get Movie by ID

Returns full metadata for a single movie including cast, crew, trailers, streaming providers, recommendations and technical identifiers.

GET /movies/:id

Response Object Structure

Core Movie Fields

  • id – Internal UUID identifier.
  • tmdbId – TMDB external reference ID.
  • imdbId – IMDb identifier.
  • title – Movie title.
  • titleLong – Full title including year.
  • slug – SEO-friendly URL slug.
  • year – Release year.
  • releaseDate – Official release date (ISO string).
  • runtime – Duration in minutes.
  • type – "movie" or "tv".
  • synopsis – Full plot description.
  • homepage – Official website URL.

Ratings & Popularity

  • voteAverage – Average rating (0-10).
  • voteCount – Total number of votes.
  • popularity – Relative popularity score.
  • mpaRating – Content rating (e.g. PG-13).

Images

  • posterUrl – 500px optimized poster.
  • backdropUrl – 1280px background image.

Genres & Languages

  • genres – Array of genre strings.
  • spokenLanguages – Languages used in the movie.
  • productionCountries – Countries of production.
  • productionCompanies – Studios involved.

Cast

List of actors appearing in the movie.

{
                                "name": "Actor Name",
                                "character": "Role Name",
                                "profilePath": "https://image.tmdb.org/..."
                                }

Crew

Directors, producers and other contributors.

{
  "name": "Person Name",
  "job": "Director | Producer | Writer",
  "profilePath": "https://image.tmdb.org/..."
}

Videos

  • YouTube trailers & teasers.
  • Fields: name, site, type, size, key

Watch Providers

  • Streaming availability by region.
  • Types: free, ads, rent, buy, flatrate
  • Includes provider_name, provider_id and logo URL.

Recommendations

Array of similar movies using the standard movie list item format.

Technical Fields

  • f_id – Encrypted internal file identifier.

Standard Movie List Item

All endpoints that return multiple movies follow this standardized object structure.

{
  "id": "e6af9be9-09a0-4ee8-8918-c90a704c2838",
  "title": "Now You See Me: Now You Don't",
  "slug": "now-you-see-me-now-you-don-t-2025",
  "genres": ["Thriller", "Crime", "Mystery"],
  "posterUrl": "https://image.tmdb.org/t/p/w500/oD3Eey4e4Z259XLm3eD3WGcoJAh.jpg",
  "backdropUrl": "https://image.tmdb.org/t/p/w1280/ufqytAlziHq5pljKByGJ8IKhtEZ.jpg",
  "synopsis": "...",
  "releaseDate": "2025-11-12T00:00:00.000Z",
  "type": "movie",
  "voteAverage": 6.6,
  "tmdbId": 425274,
  "voteCount": 719,
  "popularity": 202.0756
}
  • id – Internal UUID
  • tmdbId – External TMDB reference
  • posterUrl – Optimized poster
  • backdropUrl – Background image
  • voteAverage – Rating score
  • popularity – Sorting metric

Latest

GET /movies/category?category=latest&page=1

Categories

GET /movies/category?category=ACTION&page=1

Genres

GET /movies/genre?name=Drama&page=1

Years

GET /movies/year?year=2024&page=1

Alphabetical

GET /movies/az?page=1

Grouping

GET /movies/group/year GET /movies/group/genres

Error Responses

wustream-developer uses standard HTTP response codes to indicate the success or failure of an API request.

401

Unauthorized

{
  "error": "Access Denied: Valid session or API Key required"
}
403

Forbidden / Blocked

Returned if the client is suspended or a security threshold is triggered.

{
  "success": false,
  "blocked": true,
  "reason": "Suspended for 24h due to repeated violations."
}

Rate Limits

Our API employs a multi-tier sliding window strategy via Redis to ensure system stability. Exceeding these limits triggers a 429 Too Many Requests response.

Per Second

5 req/s

Per Minute

60 req/m

Per Hour

2,000 req/h

Per Day

6,000 req/d

Rate Limit Exceeded Response

{
  "success": false,
  "message": "Moving too fast!",
  "limit": 60,
  "remaining": 0,
  "reset": 1705324800
}

* Note: The 'reset' field is a Unix timestamp indicating when your quota refreshes.

© 2026 Wustream Developer Platform. All rights reserved.