Overview

The TVMaze API offers a programmatic interface to a comprehensive database of television show information, including details on episodes, cast, crew, and broadcast schedules. Established in 2014, TVMaze aims to provide structured data for developers looking to integrate TV show metadata into their applications. The API is particularly well-suited for personal media organizers, allowing users to track watched episodes and discover new content. Small application developers often utilize TVMaze to enrich their platforms with real-time show status and detailed cast biographies.

Developers can access a wide array of data points, from basic show titles and summaries to intricate details like episode air dates, season numbers, and character portrayals. The API supports various use cases, such as building custom TV show tracking apps, creating fan sites with up-to-date information, or powering content recommendation engines. Its RESTful design emphasizes ease of use, making it approachable for developers familiar with standard web API interactions. Responses are typically in JSON format, facilitating straightforward parsing and integration into client-side or server-side applications.

The platform provides a robust foundation for building interactive experiences around television content. For instance, a developer might use the API to display a user's progress through a series, fetch a list of episodes airing tonight, or retrieve specific details about an actor's career. The availability of a generous free tier, albeit with documented rate limits, makes it an accessible option for hobbyist developers and non-commercial projects. For commercial applications, TVMaze requires direct contact for licensing, ensuring appropriate usage and scalability for larger operations. The focus on comprehensive and up-to-date data positions TVMaze as a valuable resource for anyone creating applications that interact with television content.

Compared to broader entertainment databases like The Movie Database (TMDB), TVMaze specializes exclusively in television content, potentially offering more granular and focused data for TV-specific applications. This specialization can lead to more precise search results and richer datasets for TV-centric features. The API's emphasis on schedules and episode tracking also differentiates it, providing a strong foundation for time-sensitive applications that need to know when new content airs. Developers appreciate the clear documentation and the straightforward nature of the API endpoints, which simplifies the development process and reduces the time required for integration.

Key features

  • TV Show Database: Access details for thousands of television shows, including synopses, genres, status (e.g., running, ended), and official websites.
  • Episode Data: Retrieve comprehensive information for individual episodes, such as titles, summaries, season and episode numbers, air dates, and guest stars.
  • Cast & Crew Information: Get detailed profiles for actors and crew members, including their roles in various shows and biographical data.
  • Schedule API: Query upcoming and past TV schedules globally, allowing applications to display air times and manage user calendars.
  • Search Functionality: Perform searches for shows, people, and episodes by name, providing flexible content discovery.
  • Image Assets: Access links to show posters, episode screenshots, and actor headshots to enrich user interfaces.
  • Webhooks: Receive real-time notifications for updates to shows, episodes, or schedules, enabling dynamic application responses.

Pricing

TVMaze offers a tiered approach to its API usage, distinguishing between non-commercial and commercial applications. The pricing structure is designed to support a wide range of users, from independent developers to larger enterprises.

Tier Description Details As Of
Non-Commercial Use Free with rate limits Includes access to the full API with standard rate limits (e.g., 20 requests/10 seconds, burstable to 60 requests/minute). Suitable for personal projects, fan sites, and learning. 2026-05-28
Commercial Use Contact for licensing Required for any application generating revenue, used by businesses, or exceeding non-commercial rate limits. Custom pricing and terms are negotiated based on usage volume and specific needs. 2026-05-28

For specific details on commercial licensing and to discuss higher rate limits or dedicated support, interested parties should refer to the TVMaze API commercial use and licensing information.

Common integrations

The TVMaze API is designed for direct integration into various application types. While it does not offer official SDKs, its RESTful nature allows for straightforward consumption using standard HTTP client libraries in any programming language. Common integration patterns include:

  • Media Center Software: Enhancing platforms like Plex or Kodi with detailed show information, episode tracking, and personalized recommendations.
  • Mobile Applications: Powering iOS and Android apps that allow users to follow their favorite shows, get air date reminders, or discover new series.
  • Web-based Fan Communities: Building dynamic websites that display up-to-date show details, cast lists, and episode guides for specific TV series.
  • Personal Dashboards: Integrating into custom dashboards to display current TV schedules or track progress on multiple shows.
  • Chatbots and Voice Assistants: Enabling conversational interfaces to answer questions about TV shows, actors, and upcoming episodes.
  • Data Analytics Platforms: Collecting and analyzing TV show metadata for research or content strategy.

Alternatives

Developers seeking TV show data APIs have several options, each with distinct strengths:

  • TheTVDB: A community-driven database offering extensive TV show and movie data, often used for media center integration.
  • TMDB (The Movie Database): A comprehensive database for both movies and television shows, known for its wide coverage and active community contributions.
  • Trakt.tv: Focuses on tracking TV shows and movies, offering APIs for user activity, watch history, and recommendations.

Getting started

To begin using the TVMaze API, you typically make HTTP GET requests to its various endpoints. No API key is required for the free tier, simplifying initial setup. Here's a basic example in Python using the requests library to search for a TV show:


import requests

def search_tv_show(query):
    base_url = "https://api.tvmaze.com"
    endpoint = f"{base_url}/search/shows?q={query}"
    
    try:
        response = requests.get(endpoint)
        response.raise_for_status()  # Raise an HTTPError for bad responses (4xx or 5xx)
        
        search_results = response.json()
        
        if search_results:
            print(f"Found {len(search_results)} results for '{query}':")
            for result in search_results:
                show = result['show']
                name = show.get('name', 'N/A')
                premiered = show.get('premiered', 'N/A')
                summary = show.get('summary', 'No summary available')
                
                print(f"\n  Show Name: {name}")
                print(f"  Premiered: {premiered}")
                # Clean up HTML tags from summary if present
                clean_summary = summary.replace('<p>', '').replace('</p>', '').replace('<b>', '').replace('</b>', '')
                print(f"  Summary: {clean_summary[:150]}...") # Truncate summary for brevity
        else:
            print(f"No results found for '{query}'.")
            
    except requests.exceptions.RequestException as e:
        print(f"An error occurred during the API request: {e}")

# Example usage:
search_tv_show("The Office")
search_tv_show("Game of Thrones")
search_tv_show("NonExistentShow123")

This Python script defines a function search_tv_show that takes a query string, constructs the appropriate TVMaze API search endpoint, and then makes an HTTP GET request. It parses the JSON response and prints relevant details for each show found. The script also includes error handling for network issues or bad HTTP responses. For more advanced interactions, such as retrieving a specific show's episodes or a person's filmography, consult the official TVMaze API documentation.