tmdb

package module
v2.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 2, 2023 License: MIT Imports: 10 Imported by: 0

README

build Coverage Status Go Report Card GoDoc GitHub tag (latest SemVer) GitHub license

Fork of https://github.com/cyruzin/golang-tmdb, which seems to still be maintained by Cyro Dubeux. This fork has the goal of introducing more structs, an interface for the client (for mockgen), and anything else that may be a QoL for my other personal project.

This is a Golang wrapper for working with TMDb API. It aims to support version 3.

An API Key is required. To register for one, head over to themoviedb.org.

This product uses the TMDb API but is not endorsed or certified by TMDb.

Requirements

  • Go 1.13.x or higher. We aim to support the latest supported versions of go.

Installation

go get -u github.com/benlei/go-tmdb

Usage

To get started, import the tmdb package and initiate the client:

import "github.com/benlei/go-tmdb"

tmdbClient, err := tmdb.Init(os.GetEnv("YOUR_APIKEY"))
if err != nil {
    fmt.Println(err)
}

// OPTIONAL (Recommended): Enabling auto retry functionality.
// This option will retry if the previous request fail (429 TOO MANY REQUESTS).
tmdbClient.SetClientAutoRetry()

// OPTIONAL: Set an alternate base URL if you have problems with the default one.
// Use https://api.tmdb.org/3 instead of https://api.themoviedb.org/3.
tmdbClient.SetAlternateBaseURL()

// OPTIONAL: Setting a custom config for the http.Client.
// The default timeout is 10 seconds. Here you can set other
// options like Timeout and Transport.
customClient := http.Client{
    Timeout: time.Second * 5,
    Transport: &http.Transport{
        MaxIdleConns: 10,
        IdleConnTimeout: 15 * time.Second,
    }
}

tmdbClient.SetClientConfig(customClient)

// OPTIONAL: Enable this option if you're going to use endpoints
// that needs session id.
//
// You can read more about how this works:
// https://developers.themoviedb.org/3/authentication/how-do-i-generate-a-session-id
tmdbClient.SetSessionID(os.GetEnv("YOUR_SESSION_ID"))

movie, err := tmdbClient.GetMovieDetails(297802, nil)
if err != nil {
 fmt.Println(err)
}

fmt.Println(movie.Title)

With optional params:

import "github.com/benlei/go-tmdb"

tmdbClient, err := tmdb.Init(os.GetEnv("YOUR_APIKEY"))
if err != nil {
    fmt.Println(err)
}

options := map[string]string{
  "language": "pt-BR",
  "append_to_response": "credits,images",
}

movie, err := tmdbClient.GetMovieDetails(297802, options)
if err != nil {
 fmt.Println(err)
}

fmt.Println(movie.Title)

Helpers:

Generate image and video URLs:

import "github.com/benlei/go-tmdb"

tmdbClient, err := tmdb.Init(os.GetEnv("YOUR_APIKEY"))
if err != nil {
    fmt.Println(err)
}

options := map[string]string{
 "append_to_response": "videos",
}

movie, err := tmdbClient.GetMovieDetails(297802, options)
if err != nil {
 fmt.Println(err)
}

fmt.Println(tmdb.GetImageURL(movie.BackdropPath, tmdb.W500))
// Output: https://image.tmdb.org/t/p/w500/bOGkgRGdhrBYJSLpXaxhXVstddV.jpg
fmt.Println(tmdb.GetImageURL(movie.PosterPath, tmdb.Original))
// Ouput: https://image.tmdb.org/t/p/original/bOGkgRGdhrBYJSLpXaxhXVstddV.jpg

for _, video := range movie.MovieVideosAppend.Videos.MovieVideos.Results {
   if video.Key != "" {
	 fmt.Println(tmdb.GetVideoURL(video.Key))
     // Output: https://www.youtube.com/watch?v=6ZfuNTqbHE8
   }
}

For more examples, click here.

Performance

Benchmarked using Macbook with Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz.

Getting Movie Details:

Iterations ns/op B/op allocs/op
217 5677317 58806 157

Multi Search:

Iterations ns/op B/op allocs/op
206 5743837 85659 452

Contributing

To start contributing, please check CONTRIBUTING.

Tests

For local testing, just run:

 go test -v 

License

MIT

Documentation

Overview

Package tmdb initially generated by interfacer

Package tmdb is a wrapper for working with TMDb API.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetImageURL

func GetImageURL(key string, size ImageSize) string

GetImageURL accepts two parameters, the key and the size and returns the complete URL of the image.

Available sizes:

w45 - logo/profile w92 - logo/poster/still w154 - logo/poster w185 - logo/poster/profile/still w300 - backdrop/logo/still w342 - poster w500 - logo/poster w780 - backdrop/poster w1280 - backdrop h632 - profile original - backdrop/logo/poster/profile/still

https://developers.themoviedb.org/3/configuration/get-api-configuration

func GetVideoURL

func GetVideoURL(key string) string

GetVideoURL accepts one parameter, the key and returns the complete URL of the video.

Types

type AccessToken

type AccessToken struct {
	AccessToken string `json:"access_token"`
}

AccessToken type is a struct for access token JSON request.

type AccountAvatarGravatar

type AccountAvatarGravatar struct {
	Hash string `json:"hash"`
}

type AccountCreatedLists

type AccountCreatedLists struct {
	Page int64 `json:"page"`
	*AccountCreatedListsResults
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
}

AccountCreatedLists type is a struct for created lists JSON response.

type AccountCreatedListsResult

type AccountCreatedListsResult struct {
	Description   string `json:"description"`
	FavoriteCount int64  `json:"favorite_count"`
	ID            int64  `json:"id"`
	ItemCount     int64  `json:"item_count"`
	LanguageCode  string `json:"iso_639_1"`
	ListType      string `json:"list_type"`
	Name          string `json:"name"`
	PosterPath    string `json:"poster_path"`
}

type AccountCreatedListsResults

type AccountCreatedListsResults struct {
	Results []*AccountCreatedListsResult `json:"results"`
}

AccountCreatedListsResults Result Types

type AccountDetails

type AccountDetails struct {
	Avatar       *AvatarDetails `json:"avatar"`
	ID           int64          `json:"id"`
	LanguageCode string         `json:"iso_639_1"`
	CountryCode  string         `json:"iso_3166_1"`
	Name         string         `json:"name"`
	IncludeAdult bool           `json:"include_adult"`
	Username     string         `json:"username"`
}

AccountDetails type is a struct for details JSON response.

type AccountFavorite

type AccountFavorite struct {
	MediaType string `json:"media_type"`
	MediaID   int64  `json:"media_id"`
	Favorite  bool   `json:"favorite"`
}

AccountFavorite type is a struct for movies or TV shows favorite JSON request.

type AccountFavoriteMovies

type AccountFavoriteMovies struct {
	Page int64 `json:"page"`
	*AccountFavoriteMoviesResults
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
}

AccountFavoriteMovies type is a struct for favorite movies JSON response.

type AccountFavoriteMoviesResult

type AccountFavoriteMoviesResult struct {
	Adult            bool    `json:"adult"`
	BackdropPath     string  `json:"backdrop_path"`
	GenreIDs         []int   `json:"genre_ids"`
	ID               int64   `json:"id"`
	OriginalLanguage string  `json:"original_language"`
	OriginalTitle    string  `json:"original_title"`
	Overview         string  `json:"overview"`
	ReleaseDate      string  `json:"release_date"`
	PosterPath       string  `json:"poster_path"`
	Popularity       float64 `json:"popularity"`
	Title            string  `json:"title"`
	Video            bool    `json:"video"`
	VoteAverage      float64 `json:"vote_average"`
	VoteCount        int64   `json:"vote_count"`
}

type AccountFavoriteMoviesResults

type AccountFavoriteMoviesResults struct {
	Results []*AccountFavoriteMoviesResult `json:"results"`
}

AccountFavoriteMoviesResults Result Types

type AccountFavoriteTVShows

type AccountFavoriteTVShows struct {
	Page int64 `json:"page"`
	*AccountFavoriteTVShowsResults
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
}

AccountFavoriteTVShows type is a struct for favorite tv shows JSON response.

type AccountFavoriteTVShowsResult

type AccountFavoriteTVShowsResult struct {
	BackdropPath     string   `json:"backdrop_path"`
	FirstAirDate     string   `json:"first_air_date"`
	GenreIDs         []int64  `json:"genre_ids"`
	ID               int64    `json:"id"`
	OriginalLanguage string   `json:"original_language"`
	OriginalName     string   `json:"original_name"`
	Overview         string   `json:"overview"`
	OriginCountry    []string `json:"origin_country"`
	PosterPath       string   `json:"poster_path"`
	Popularity       float64  `json:"popularity"`
	Name             string   `json:"name"`
	VoteAverage      float64  `json:"vote_average"`
	VoteCount        int64    `json:"vote_count"`
}

type AccountFavoriteTVShowsResults

type AccountFavoriteTVShowsResults struct {
	Results []*AccountFavoriteTVShowsResult `json:"results"`
}

AccountFavoriteTVShowsResults Result Types

type AccountMovieWatchlist

type AccountMovieWatchlist struct {
	*AccountFavoriteMovies
}

AccountMovieWatchlist type is a struct for movie watchlist JSON response.

type AccountRatedMovies

type AccountRatedMovies struct {
	*AccountFavoriteMovies
}

AccountRatedMovies type is a struct for rated movies JSON response.

type AccountRatedTVEpisodes

type AccountRatedTVEpisodes struct {
	Page int64 `json:"page"`
	*AccountRatedTVEpisodesResults
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
}

AccountRatedTVEpisodes type is a struct for rated TV episodes JSON response.

type AccountRatedTVEpisodesResult

type AccountRatedTVEpisodesResult struct {
	AirDate        string  `json:"air_date"`
	EpisodeNumber  int     `json:"episode_number"`
	ID             int64   `json:"id"`
	Name           string  `json:"name"`
	Overview       string  `json:"overview"`
	ProductionCode string  `json:"production_code"`
	SeasonNumber   int     `json:"season_number"`
	ShowID         int64   `json:"show_id"`
	StillPath      string  `json:"still_path"`
	VoteAverage    float64 `json:"vote_average"`
	VoteCount      int64   `json:"vote_count"`
	Rating         float32 `json:"rating"`
}

type AccountRatedTVEpisodesResults

type AccountRatedTVEpisodesResults struct {
	Results []*AccountRatedTVEpisodesResult `json:"results"`
}

AccountRatedTVEpisodesResults Result Types

type AccountRatedTVShows

type AccountRatedTVShows struct {
	*AccountFavoriteTVShows
}

AccountRatedTVShows type is a struct for rated TV shows JSON response.

type AccountTMDBAvatar

type AccountTMDBAvatar struct {
	AvatarPath string `json:"avatar_path"`
}

type AccountTVShowsWatchlist

type AccountTVShowsWatchlist struct {
	*AccountFavoriteTVShows
}

AccountTVShowsWatchlist type is a struct for tv shows watchlist JSON response.

type AccountWatchlist

type AccountWatchlist struct {
	MediaType string `json:"media_type"`
	MediaID   int64  `json:"media_id"`
	Watchlist bool   `json:"watchlist"`
}

AccountWatchlist type is a struct for movies or TV shows watchlist JSON request.

type AvatarDetails

type AvatarDetails struct {
	Gravatar *AccountAvatarGravatar `json:"gravatar"`
	TMDB     *AccountTMDBAvatar     `json:"tmdb"`
}

type Certification

type Certification struct {
	Certification string `json:"certification"`
	Meaning       string `json:"meaning"`
	Order         int    `json:"order"`
}

Certification type is a struct for a single certification JSON response.

type CertificationMovie

type CertificationMovie struct {
	Certifications *MovieCertifications `json:"certifications"`
}

CertificationMovie type is a struct for movie certifications JSON response.

type CertificationTV

type CertificationTV struct {
	Certifications *TVCertifications `json:"certifications"`
}

CertificationTV type is a struct for tv certifications JSON response.

type ChangeResult

type ChangeResult struct {
	ID    int64 `json:"id"`
	Adult bool  `json:"adult"`
}

type ChangeResults

type ChangeResults struct {
	Results []*ChangeResult `json:"results"`
}

ChangeResults Result Types

type ChangeSet

type ChangeSet struct {
	Changes []*ChangeSetItems `json:"changes"`
}

ChangeSet type is a struct for changes JSON response.

type ChangeSetItem

type ChangeSetItem struct {
	ID            string       `json:"id"`
	Action        string       `json:"action"`
	Time          string       `json:"time"`
	LanguageCode  string       `json:"iso_639_1,omitempty"`
	CountryCode   string       `json:"iso_3166_1,omitempty"`
	Value         jsoniter.Any `json:"value"`
	OriginalValue jsoniter.Any `json:"original_value,omitempty"`
}

type ChangeSetItems

type ChangeSetItems struct {
	Key   string           `json:"key"`
	Items []*ChangeSetItem `json:"items"`
}

type Changes

type Changes struct {
	*ChangeResults
	Page         int64 `json:"page"`
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
}

type ChangesMovie

type ChangesMovie Changes

ChangesMovie type is a struct for movie changes JSON response.

type ChangesPerson

type ChangesPerson Changes

ChangesPerson type is a struct for person changes JSON response.

type ChangesTV

type ChangesTV Changes

ChangesTV type is a struct for tv changes JSON response.

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client type is a struct to instantiate this pkg.

func Init

func Init(apiKey string) (*Client, error)

Init setups the Client with an apiKey.

func (*Client) AddMovie

func (c *Client) AddMovie(listID int64, mediaID *ListMedia) (*Response, error)

AddMovie add a movie to a list.

https://developers.themoviedb.org/3/lists/add-movie

func (*Client) AddToWatchlist

func (c *Client) AddToWatchlist(id int64, title *AccountWatchlist) (*Response, error)

AddToWatchlist add a movie or TV show to your watchlist.

https://developers.themoviedb.org/3/account/add-to-watchlist

func (*Client) ClearList

func (c *Client) ClearList(listID int64, confirm bool) (*Response, error)

ClearList clear all of the items from a list.

https://developers.themoviedb.org/3/lists/clear-list

func (*Client) CreateGuestSession

func (c *Client) CreateGuestSession() (*RequestToken, error)

CreateGuestSession creates a temporary request token that can be used to validate a TMDb user login.

https://developers.themoviedb.org/3/authentication/create-guest-session

func (*Client) CreateList

func (c *Client) CreateList(
	list *ListCreate,
) (*ListResponse, error)

CreateList creates a list.

https://developers.themoviedb.org/3/lists/create-list

func (*Client) CreateRequestToken

func (c *Client) CreateRequestToken() (*RequestToken, error)

CreateRequestToken creates a temporary request token that can be used to validate a TMDb user login.

https://developers.themoviedb.org/3/authentication/create-request-token

func (*Client) DeleteList

func (c *Client) DeleteList(listID int64) (*Response, error)

DeleteList deletes a list.

https://developers.themoviedb.org/3/lists/delete-list

func (*Client) DeleteMovieRating

func (c *Client) DeleteMovieRating(id int64, urlOptions map[string]string) (*Response, error)

DeleteMovieRating remove your rating for a movie.

A valid session or guest session ID is required.

You can read more about how this works: https://developers.themoviedb.org/3/authentication/how-do-i-generate-a-session-id

https://developers.themoviedb.org/3/movies/delete-movie-rating

func (*Client) DeleteTVShowRating

func (c *Client) DeleteTVShowRating(id int64, urlOptions map[string]string) (*Response, error)

DeleteTVShowRating remove your rating for a TV show.

A valid session or guest session ID is required.

You can read more about how this works: https://developers.themoviedb.org/3/authentication/how-do-i-generate-a-session-id

https://developers.themoviedb.org/3/tv/delete-tv-show-rating

func (*Client) GetAccountDetails

func (c *Client) GetAccountDetails() (*AccountDetails, error)

GetAccountDetails get your account details.

https://developers.themoviedb.org/3/account/get-account-details

func (*Client) GetAvailableWatchProviderRegions

func (c *Client) GetAvailableWatchProviderRegions(
	urlOptions map[string]string,
) (*WatchRegionList, error)

GetAvailableWatchProviderRegions get a list of all of the countries we have watch provider (OTT/streaming) data for.

https://developers.themoviedb.org/3/watch-providers/get-available-regions

func (*Client) GetCertificationMovie

func (c *Client) GetCertificationMovie() (
	*CertificationMovie,
	error,
)

GetCertificationMovie get an up to date list of the officially supported movie certifications on TMDb.

https://developers.themoviedb.org/3/certifications/get-movie-certifications

func (*Client) GetCertificationTV

func (c *Client) GetCertificationTV() (
	*CertificationTV,
	error,
)

GetCertificationTV get an up to date list of the officially supported TV show certifications on TMDb.

https://developers.themoviedb.org/3/certifications/get-tv-certifications

func (*Client) GetChangesMovie

func (c *Client) GetChangesMovie(
	urlOptions map[string]string,
) (*ChangesMovie, error)

GetChangesMovie get a list of all of the movie ids that have been changed in the past 24 hours.

You can query it for up to 14 days worth of changed IDs at a time with the start_date and end_date query parameters. 100 items are returned per page.

https://developers.themoviedb.org/3/changes/get-movie-change-list

func (*Client) GetChangesPerson

func (c *Client) GetChangesPerson(
	urlOptions map[string]string,
) (*ChangesPerson, error)

GetChangesPerson get a list of all of the person ids that have been changed in the past 24 hours.

You can query it for up to 14 days worth of changed IDs at a time with the start_date and end_date query parameters. 100 items are returned per page.

https://developers.themoviedb.org/3/changes/get-person-change-list

func (*Client) GetChangesTV

func (c *Client) GetChangesTV(
	urlOptions map[string]string,
) (*ChangesTV, error)

GetChangesTV get a list of all of the TV show ids that have been changed in the past 24 hours.

You can query it for up to 14 days worth of changed IDs at a time with the start_date and end_date query parameters. 100 items are returned per page.

https://developers.themoviedb.org/3/changes/get-tv-change-list

func (*Client) GetCollectionDetails

func (c *Client) GetCollectionDetails(id int64, urlOptions map[string]string) (*CollectionDetails, error)

GetCollectionDetails get collection details by id.

https://developers.themoviedb.org/3/collections/get-collection-details

func (*Client) GetCollectionImages

func (c *Client) GetCollectionImages(id int64, urlOptions map[string]string) (*CollectionImages, error)

GetCollectionImages get the images for a collection by id.

https://developers.themoviedb.org/3/collections/get-collection-images

func (*Client) GetCollectionTranslations

func (c *Client) GetCollectionTranslations(id int64, urlOptions map[string]string) (*CollectionTranslations, error)

GetCollectionTranslations get the list translations for a collection by id.

https://developers.themoviedb.org/3/collections/get-collection-translations

func (*Client) GetCompanyAlternativeNames

func (c *Client) GetCompanyAlternativeNames(id int64) (*CompanyAlternativeNames, error)

GetCompanyAlternativeNames get the alternative names of a company.

https://developers.themoviedb.org/3/companies/get-company-alternative-names

func (*Client) GetCompanyDetails

func (c *Client) GetCompanyDetails(id int64) (*CompanyDetails, error)

GetCompanyDetails get a companies details by id.

https://developers.themoviedb.org/3/companies/get-company-details

func (*Client) GetCompanyImages

func (c *Client) GetCompanyImages(id int64) (*CompanyImages, error)

GetCompanyImages get a companies logos by id.

There are two image formats that are supported for companies, PNG's and SVG's. You can see which type the original file is by looking at the file_type field. We prefer SVG's as they are resolution independent and as such, the width and height are only there to reflect the original asset that was uploaded. An SVG can be scaled properly beyond those dimensions if you call them as a PNG.

https://developers.themoviedb.org/3/companies/get-company-images

func (*Client) GetConfigurationAPI

func (c *Client) GetConfigurationAPI() (*ConfigurationAPI, error)

GetConfigurationAPI get the system wide configuration information.

Some elements of the API require some knowledge of this configuration data. The purpose of this is to try and keep the actual API responses as light as possible. It is recommended you cache this data within your application and check for updates every few days.

This method currently holds the data relevant to building image URLs as well as the change key map.

To build an image URL, you will need 3 pieces of data. The base_url, size and file_path. Simply combine them all and you will have a fully qualified URL. Here’s an example URL:

https://image.tmdb.org/t/p/w500/8uO0gUM8aNqYLs1OsTBQiXu0fEv.jpg

The configuration method also contains the list of change keys which can be useful if you are building an app that consumes data from the change feed.

https://developers.themoviedb.org/3/configuration/get-api-configuration

func (*Client) GetConfigurationCountries

func (c *Client) GetConfigurationCountries() ([]ConfigurationCountry, error)

GetConfigurationCountries get the list of countries (ISO 3166-1 tags) used throughout TMDb.

https://developers.themoviedb.org/3/configuration/get-countries

func (*Client) GetConfigurationJobs

func (c *Client) GetConfigurationJobs() ([]ConfigurationJobs, error)

GetConfigurationJobs get a list of the jobs and departments we use on TMDb.

https://developers.themoviedb.org/3/configuration/get-jobs

func (*Client) GetConfigurationLanguages

func (c *Client) GetConfigurationLanguages() ([]ConfigurationLanguages, error)

GetConfigurationLanguages get the list of languages (ISO 639-1 tags) used throughout TMDb.

https://developers.themoviedb.org/3/configuration/get-languages

func (*Client) GetConfigurationPrimaryTranslations

func (c *Client) GetConfigurationPrimaryTranslations() ([]ConfigurationPrimaryTranslations, error)

GetConfigurationPrimaryTranslations get a list of the officially supported translations on TMDb.

While it's technically possible to add a translation in any one of the languages we have added to TMDb (we don't restrict content), the ones listed in this method are the ones we also support for localizing the website with which means they are what we refer to as the "primary" translations.

These are all specified as IETF tags to identify the languages we use on TMDb. There is one exception which is image languages. They are currently only designated by a ISO-639-1 tag. This is a planned upgrade for the future.

We're always open to adding more if you think one should be added. You can ask about getting a new primary translation added by posting on the forums.

One more thing to mention, these are the translations that map to our website translation project.

https://developers.themoviedb.org/3/configuration/get-primary-translations

func (*Client) GetConfigurationTimezones

func (c *Client) GetConfigurationTimezones() ([]ConfigurationTimezones, error)

GetConfigurationTimezones get the list of timezones used throughout TMDb.

https://developers.themoviedb.org/3/configuration/get-timezones

func (*Client) GetCreatedLists

func (c *Client) GetCreatedLists(id int64, urlOptions map[string]string) (*AccountCreatedLists, error)

GetCreatedLists get all of the lists created by an account. Will invlude private lists if you are the owner.

https://developers.themoviedb.org/3/account/get-created-lists

func (*Client) GetCreditDetails

func (c *Client) GetCreditDetails(
	id string,
) (*CreditsDetails, error)

GetCreditDetails get a movie or TV credit details by id.

https://developers.themoviedb.org/3/credits/get-credit-details

func (*Client) GetDiscoverMovie

func (c *Client) GetDiscoverMovie(
	urlOptions map[string]string,
) (*DiscoverMovie, error)

GetDiscoverMovie discover movies by different types of data like average rating, number of votes, genres and certifications. You can get a valid list of certifications from the method.

Discover also supports a nice list of sort options. See below for all of the available options.

Please note, when using certification \ certification.lte you must also specify certification_country. These two parameters work together in order to filter the results. You can only filter results with the countries we have added to our certifications list.

If you specify the region parameter, the regional release date will be used instead of the primary release date. The date returned will be the first date based on your query (ie. if a with_release_type is specified). It's important to note the order of the release types that are used. Specifying "2|3" would return the limited theatrical release date as opposed to "3|2" which would return the theatrical date.

Also note that a number of filters support being comma (,) or pipe (|) separated. Comma's are treated like an AND and query while pipe's are an OR.

https://developers.themoviedb.org/3/discover/movie-discover

func (*Client) GetDiscoverTV

func (c *Client) GetDiscoverTV(
	urlOptions map[string]string,
) (*DiscoverTV, error)

GetDiscoverTV Discover TV shows by different types of data like average rating, number of votes, genres, the network they aired on and air dates.

Discover also supports a nice list of sort options. See below for all of the available options.

Also note that a number of filters support being comma (,) or pipe (|) separated. Comma's are treated like an AND and query while pipe's are an OR.

https://developers.themoviedb.org/3/discover/tv-discover

func (*Client) GetFavoriteMovies

func (c *Client) GetFavoriteMovies(id int64, urlOptions map[string]string) (*AccountFavoriteMovies, error)

GetFavoriteMovies get the list of your favorite movies.

https://developers.themoviedb.org/3/account/get-favorite-movies

func (*Client) GetFavoriteTVShows

func (c *Client) GetFavoriteTVShows(id int64, urlOptions map[string]string) (*AccountFavoriteTVShows, error)

GetFavoriteTVShows get the list of your favorite TV shows.

https://developers.themoviedb.org/3/account/get-favorite-tv-shows

func (*Client) GetFindByID

func (c *Client) GetFindByID(
	id string,
	urlOptions map[string]string,
) (*FindByID, error)

GetFindByID the find method makes it easy to search for objects in our database by an external id. For example, an IMDB ID.

This method will search all objects (movies, TV shows and people) and return the results in a single response.

https://developers.themoviedb.org/3/find/find-by-id

func (*Client) GetGenreMovieList

func (c *Client) GetGenreMovieList(
	urlOptions map[string]string,
) (*GenreList, error)

GetGenreMovieList get the list of official genres for movies.

https://developers.themoviedb.org/3/genres/get-movie-list

func (*Client) GetGenreTVList

func (c *Client) GetGenreTVList(
	urlOptions map[string]string,
) (*GenreList, error)

GetGenreTVList get the list of official genres for TV shows.

https://developers.themoviedb.org/3/genres/get-tv-list

func (*Client) GetGuestSessionRatedMovies

func (c *Client) GetGuestSessionRatedMovies(
	id string,
	urlOptions map[string]string,
) (*GuestSessionRatedMovies, error)

GetGuestSessionRatedMovies get the rated movies for a guest session.

https://developers.themoviedb.org/3/guest-sessions/get-guest-session-rated-movies

func (*Client) GetGuestSessionRatedTVEpisodes

func (c *Client) GetGuestSessionRatedTVEpisodes(
	id string,
	urlOptions map[string]string,
) (*GuestSessionRatedTVEpisodes, error)

GetGuestSessionRatedTVEpisodes get the rated TV episodes for a guest session.

https://developers.themoviedb.org/3/guest-sessions/get-gest-session-rated-tv-episodes

func (*Client) GetGuestSessionRatedTVShows

func (c *Client) GetGuestSessionRatedTVShows(
	id string,
	urlOptions map[string]string,
) (*GuestSessionRatedTVShows, error)

GetGuestSessionRatedTVShows get the rated TV shows for a guest session.

https://developers.themoviedb.org/3/guest-sessions/get-guest-session-rated-tv-shows

func (*Client) GetKeywordDetails

func (c *Client) GetKeywordDetails(id int64) (*KeywordDetails, error)

GetKeywordDetails get keyword details by id.

https://developers.themoviedb.org/3/keywords/get-keyword-details

func (*Client) GetKeywordMovies

func (c *Client) GetKeywordMovies(id int64, urlOptions map[string]string) (*KeywordMovies, error)

GetKeywordMovies get the movies that belong to a keyword.

We highly recommend using movie discover instead of this method as it is much more flexible.

https://developers.themoviedb.org/3/keywords/get-movies-by-keyword

func (*Client) GetListDetails

func (c *Client) GetListDetails(
	id string,
	urlOptions map[string]string,
) (*ListDetails, error)

GetListDetails get the details of a list.

https://developers.themoviedb.org/3/lists/get-list-details

func (*Client) GetListItemStatus

func (c *Client) GetListItemStatus(
	id string,
	urlOptions map[string]string,
) (*ListItemStatus, error)

GetListItemStatus check if a movie has already been added to the list.

https://developers.themoviedb.org/3/lists/check-item-status

func (*Client) GetMovieAccountStates

func (c *Client) GetMovieAccountStates(id int64, urlOptions map[string]string) (*MovieAccountStates, error)

GetMovieAccountStates grab the following account states for a session:

Movie rating.

If it belongs to your watchlist.

If it belongs to your favourite list.

https://developers.themoviedb.org/3/movies/get-movie-account-states

func (*Client) GetMovieAlternativeTitles

func (c *Client) GetMovieAlternativeTitles(id int64, urlOptions map[string]string) (*MovieAlternativeTitles, error)

GetMovieAlternativeTitles get all of the alternative titles for a movie.

https://developers.themoviedb.org/3/movies/get-movie-alternative-titles

func (*Client) GetMovieChanges

func (c *Client) GetMovieChanges(id int64, urlOptions map[string]string) (*MovieChanges, error)

GetMovieChanges get the changes for a movie.

By default only the last 24 hours are returned. You can query up to 14 days in a single query by using the start_date and end_date query parameters.

https://developers.themoviedb.org/3/movies/get-movie-changes

func (*Client) GetMovieCredits

func (c *Client) GetMovieCredits(id int64, urlOptions map[string]string) (*MovieCredits, error)

GetMovieCredits get the cast and crew for a movie.

https://developers.themoviedb.org/3/movies/get-movie-credits

func (*Client) GetMovieDetails

func (c *Client) GetMovieDetails(id int64, urlOptions map[string]string) (*MovieDetails, error)

GetMovieDetails get the primary information about a movie.

https://developers.themoviedb.org/3/movies

func (*Client) GetMovieExternalIDs

func (c *Client) GetMovieExternalIDs(id int64, urlOptions map[string]string) (*MovieExternalIDs, error)

GetMovieExternalIDs get the external ids for a movie.

We currently support the following external sources.

Media Databases: IMDb ID.

Social IDs: Facebook, Instagram and Twitter.

https://developers.themoviedb.org/3/movies/get-movie-external-ids

func (*Client) GetMovieImages

func (c *Client) GetMovieImages(id int64, urlOptions map[string]string) (*MovieImages, error)

GetMovieImages get the images that belong to a movie.

Querying images with a language parameter will filter the results. If you want to include a fallback language (especially useful for backdrops) you can use the include_image_language parameter. This should be a comma separated value like so: include_image_language=en,null.

https://developers.themoviedb.org/3/movies/get-movie-images

func (*Client) GetMovieKeywords

func (c *Client) GetMovieKeywords(id int64) (*MovieKeywords, error)

GetMovieKeywords get the keywords that have been added to a movie.

https://developers.themoviedb.org/3/movies/get-movie-keywords

func (*Client) GetMovieLatest

func (c *Client) GetMovieLatest(
	urlOptions map[string]string,
) (*MovieLatest, error)

GetMovieLatest get the most newly created movie.

This is a live response and will continuously change.

https://developers.themoviedb.org/3/movies/get-latest-movie

func (*Client) GetMovieLists

func (c *Client) GetMovieLists(id int64, urlOptions map[string]string) (*MovieLists, error)

GetMovieLists get a list of lists that this movie belongs to.

https://developers.themoviedb.org/3/movies/get-movie-lists

func (*Client) GetMovieNowPlaying

func (c *Client) GetMovieNowPlaying(
	urlOptions map[string]string,
) (*MovieNowPlaying, error)

GetMovieNowPlaying get a list of movies in theatres.

This is a release type query that looks for all movies that have a release type of 2 or 3 within the specified date range.

You can optionally specify a region prameter which will narrow the search to only look for theatrical release dates within the specified country.

https://developers.themoviedb.org/3/movies/get-now-playing

func (*Client) GetMoviePopular

func (c *Client) GetMoviePopular(
	urlOptions map[string]string,
) (*MoviePopular, error)

GetMoviePopular get a list of the current popular movies on TMDb.

This list updates daily.

https://developers.themoviedb.org/3/movies/get-popular-movies

func (*Client) GetMovieRecommendations

func (c *Client) GetMovieRecommendations(id int64, urlOptions map[string]string) (*MovieRecommendations, error)

GetMovieRecommendations get a list of recommended movies for a movie.

https://developers.themoviedb.org/3/movies/get-movie-recommendations

func (*Client) GetMovieReleaseDates

func (c *Client) GetMovieReleaseDates(id int64) (*MovieReleaseDates, error)

GetMovieReleaseDates get the release date along with the certification for a movie.

https://developers.themoviedb.org/3/movies/get-movie-release-dates

func (*Client) GetMovieReviews

func (c *Client) GetMovieReviews(id int64, urlOptions map[string]string) (*MovieReviews, error)

GetMovieReviews get the user reviews for a movie.

https://developers.themoviedb.org/3/movies/get-movie-reviews

func (*Client) GetMovieSimilar

func (c *Client) GetMovieSimilar(id int64, urlOptions map[string]string) (*MovieSimilar, error)

GetMovieSimilar get a list of similar movies.

This is not the same as the "Recommendation" system you see on the website. These items are assembled by looking at keywords and genres.

https://developers.themoviedb.org/3/movies/get-similar-movies

func (*Client) GetMovieTopRated

func (c *Client) GetMovieTopRated(
	urlOptions map[string]string,
) (*MovieTopRated, error)

GetMovieTopRated get the top rated movies on TMDb.

https://developers.themoviedb.org/3/movies/get-top-rated-movies

func (*Client) GetMovieTranslations

func (c *Client) GetMovieTranslations(id int64, urlOptions map[string]string) (*MovieTranslations, error)

GetMovieTranslations get a list of translations that have been created for a movie.

https://developers.themoviedb.org/3/movies/get-movie-translations

func (*Client) GetMovieUpcoming

func (c *Client) GetMovieUpcoming(
	urlOptions map[string]string,
) (*MovieUpcoming, error)

GetMovieUpcoming get a list of upcoming movies in theatres.

This is a release type query that looks for all movies that have a release type of 2 or 3 within the specified date range.

You can optionally specify a region prameter which will narrow the search to only look for theatrical release dates within the specified country.

https://developers.themoviedb.org/3/movies/get-upcoming

func (*Client) GetMovieVideos

func (c *Client) GetMovieVideos(id int64, urlOptions map[string]string) (*MovieVideos, error)

GetMovieVideos get the videos that have been added to a movie.

https://developers.themoviedb.org/3/movies/get-movie-videos

func (*Client) GetMovieWatchProviders

func (c *Client) GetMovieWatchProviders(id int64, urlOptions map[string]string) (*MovieWatchProviders, error)

GetMovieWatchProviders get a list of the availabilities per country by provider for a movie.

https://developers.themoviedb.org/3/movies/get-movie-watch-providers

func (*Client) GetMovieWatchlist

func (c *Client) GetMovieWatchlist(id int64, urlOptions map[string]string) (*AccountMovieWatchlist, error)

GetMovieWatchlist get a list of all the movies you have added to your watchlist.

https://developers.themoviedb.org/3/account/get-movie-watchlist

func (*Client) GetNetworkAlternativeNames

func (c *Client) GetNetworkAlternativeNames(id int64) (*NetworkAlternativeNames, error)

GetNetworkAlternativeNames get the alternative names of a network.

https://developers.themoviedb.org/3/networks/get-network-alternative-names

func (*Client) GetNetworkDetails

func (c *Client) GetNetworkDetails(id int64) (*NetworkDetails, error)

GetNetworkDetails get the details of a network.

https://developers.themoviedb.org/3/networks/get-network-details

func (*Client) GetNetworkImages

func (c *Client) GetNetworkImages(id int64) (*NetworkImages, error)

GetNetworkImages get the TV network logos by id.

There are two image formats that are supported for networks, PNG's and SVG's. You can see which type the original file is by looking at the file_type field. We prefer SVG's as they are resolution independent and as such, the width and height are only there to reflect the original asset that was uploaded. An SVG can be scaled properly beyond those dimensions if you call them as a PNG.

https://developers.themoviedb.org/3/networks/get-network-images

func (*Client) GetPersonChanges

func (c *Client) GetPersonChanges(id int64, urlOptions map[string]string) (*PersonChanges, error)

GetPersonChanges get the changes for a person. By default only the last 24 hours are returned.

You can query up to 14 days in a single query by using the start_date and end_date query parameters.

https://developers.themoviedb.org/3/people/get-person-changes

func (*Client) GetPersonCombinedCredits

func (c *Client) GetPersonCombinedCredits(id int64, urlOptions map[string]string) (*PersonCombinedCredits, error)

GetPersonCombinedCredits get the movie and TV credits together in a single response.

https://developers.themoviedb.org/3/people/get-person-combined-credits

func (*Client) GetPersonDetails

func (c *Client) GetPersonDetails(id int64, urlOptions map[string]string) (*PersonDetails, error)

GetPersonDetails get the primary person details by id.

Supports append_to_response.

https://developers.themoviedb.org/3/people/get-person-details

func (*Client) GetPersonExternalIDs

func (c *Client) GetPersonExternalIDs(id int64, urlOptions map[string]string) (*PersonExternalIDs, error)

GetPersonExternalIDs get the external ids for a person. We currently support the following external sources.

External Sources: IMDb ID, Facebook, Freebase MID, Freebase ID, Instagram, TVRage ID, Twitter.

https://developers.themoviedb.org/3/people/get-person-external-ids

func (*Client) GetPersonImages

func (c *Client) GetPersonImages(id int64) (*PersonImages, error)

GetPersonImages get the images for a person.

https://developers.themoviedb.org/3/people/get-person-images

func (*Client) GetPersonLatest

func (c *Client) GetPersonLatest(
	urlOptions map[string]string,
) (*PersonLatest, error)

GetPersonLatest get the most newly created person. This is a live response and will continuously change.

https://developers.themoviedb.org/3/people/get-latest-person

func (*Client) GetPersonMovieCredits

func (c *Client) GetPersonMovieCredits(id int64, urlOptions map[string]string) (*PersonMovieCredits, error)

GetPersonMovieCredits get the movie credits for a person.

https://developers.themoviedb.org/3/people/get-person-movie-credits

func (*Client) GetPersonPopular

func (c *Client) GetPersonPopular(
	urlOptions map[string]string,
) (*PersonPopular, error)

GetPersonPopular get the list of popular people on TMDb. This list updates daily.

https://developers.themoviedb.org/3/people/get-popular-people

func (*Client) GetPersonTVCredits

func (c *Client) GetPersonTVCredits(id int64, urlOptions map[string]string) (*PersonTVCredits, error)

GetPersonTVCredits get the TV show credits for a person.

https://developers.themoviedb.org/3/people/get-person-tv-credits

func (*Client) GetPersonTaggedImages

func (c *Client) GetPersonTaggedImages(id int64, urlOptions map[string]string) (*PersonTaggedImages, error)

GetPersonTaggedImages get the images that this person has been tagged in.

https://developers.themoviedb.org/3/people/get-tagged-images

func (*Client) GetPersonTranslations

func (c *Client) GetPersonTranslations(id int64, urlOptions map[string]string) (*PersonTranslations, error)

GetPersonTranslations get a list of translations that have been created for a person.

https://developers.themoviedb.org/3/people/get-person-translations

func (*Client) GetRatedMovies

func (c *Client) GetRatedMovies(id int64, urlOptions map[string]string) (*AccountRatedMovies, error)

GetRatedMovies get a list of all the movies you have rated.

https://developers.themoviedb.org/3/account/get-rated-movies

func (*Client) GetRatedTVEpisodes

func (c *Client) GetRatedTVEpisodes(id int64, urlOptions map[string]string) (*AccountRatedTVEpisodes, error)

GetRatedTVEpisodes get a list of all the TV episodes you have rated.

https://developers.themoviedb.org/3/account/get-rated-tv-episodes

func (*Client) GetRatedTVShows

func (c *Client) GetRatedTVShows(id int64, urlOptions map[string]string) (*AccountRatedTVShows, error)

GetRatedTVShows get a list of all the TV shows you have rated.

https://developers.themoviedb.org/3/account/get-rated-tv-shows

func (*Client) GetReviewDetails

func (c *Client) GetReviewDetails(
	id string,
) (*ReviewDetails, error)

GetReviewDetails get review details by id.

https://developers.themoviedb.org/3/reviews/get-review-details

func (*Client) GetSearchCollections

func (c *Client) GetSearchCollections(
	query string,
	urlOptions map[string]string,
) (*SearchCollections, error)

GetSearchCollections search for collections.

https://developers.themoviedb.org/3/search/search-collections

func (*Client) GetSearchCompanies

func (c *Client) GetSearchCompanies(
	query string,
	urlOptions map[string]string,
) (*SearchCompanies, error)

GetSearchCompanies search for companies.

https://developers.themoviedb.org/3/search/search-companies

func (*Client) GetSearchKeywords

func (c *Client) GetSearchKeywords(
	query string,
	urlOptions map[string]string,
) (*SearchKeywords, error)

GetSearchKeywords search for keywords.

https://developers.themoviedb.org/3/search/search-keywords

func (*Client) GetSearchMovies

func (c *Client) GetSearchMovies(
	query string,
	urlOptions map[string]string,
) (*SearchMovies, error)

GetSearchMovies search for keywords.

https://developers.themoviedb.org/3/search/search-movies

func (*Client) GetSearchMulti

func (c *Client) GetSearchMulti(
	query string,
	urlOptions map[string]string,
) (*SearchMulti, error)

GetSearchMulti search multiple models in a single request. Multi search currently supports searching for movies, tv shows and people in a single request.

https://developers.themoviedb.org/3/search/multi-search

func (*Client) GetSearchPeople

func (c *Client) GetSearchPeople(
	query string,
	urlOptions map[string]string,
) (*SearchPeople, error)

GetSearchPeople search for people.

https://developers.themoviedb.org/3/search/search-people

func (*Client) GetSearchTVShow

func (c *Client) GetSearchTVShow(
	query string,
	urlOptions map[string]string,
) (*SearchTVShows, error)

GetSearchTVShow search for a TV Show.

https://developers.themoviedb.org/3/search/search-tv-shows

func (*Client) GetTVAccountStates

func (c *Client) GetTVAccountStates(id int64, urlOptions map[string]string) (*TVAccountStates, error)

GetTVAccountStates grab the following account states for a session:

TV show rating.

If it belongs to your watchlist.

If it belongs to your favourite list.

https://developers.themoviedb.org/3/tv/get-tv-account-states

func (*Client) GetTVAggregateCredits

func (c *Client) GetTVAggregateCredits(id int64, urlOptions map[string]string) (*TVAggregateCredits, error)

GetTVAggregateCredits get the aggregate credits (cast and crew) that have been added to a TV show.

https://developers.themoviedb.org/3/tv/get-tv-aggregate-credits

func (*Client) GetTVAiringToday

func (c *Client) GetTVAiringToday(
	urlOptions map[string]string,
) (*TVAiringToday, error)

GetTVAiringToday get a list of TV shows that are airing today. This query is purely day based as we do not currently support airing times.

You can specify a to offset the day calculation. Without a specified timezone, this query defaults to EST (Eastern Time UTC-05:00).

https://developers.themoviedb.org/3/tv/get-tv-airing-today

func (*Client) GetTVAlternativeTitles

func (c *Client) GetTVAlternativeTitles(id int64, urlOptions map[string]string) (*TVAlternativeTitles, error)

GetTVAlternativeTitles get all of the alternative titles for a TV show.

https://developers.themoviedb.org/3/tv/get-tv-alternative-titles

func (*Client) GetTVChanges

func (c *Client) GetTVChanges(id int64, urlOptions map[string]string) (*TVChanges, error)

GetTVChanges get the changes for a TV show.

By default only the last 24 hours are returned. You can query up to 14 days in a single query by using the start_date and end_date query parameters.

TV show changes are different than movie changes in that there are some edits on seasons and episodes that will create a change entry at the show level. These can be found under the season and episode keys. These keys will contain a series_id and episode_id. You can use the and methods to look these up individually.

https://developers.themoviedb.org/3/tv/get-tv-changes

func (*Client) GetTVContentRatings

func (c *Client) GetTVContentRatings(id int64, urlOptions map[string]string) (*TVContentRatings, error)

GetTVContentRatings get the list of content ratings (certifications) that have been added to a TV show.

https://developers.themoviedb.org/3/tv/get-tv-content-ratings

func (*Client) GetTVCredits

func (c *Client) GetTVCredits(id int64, urlOptions map[string]string) (*TVCredits, error)

GetTVCredits get the credits (cast and crew) that have been added to a TV show.

https://developers.themoviedb.org/3/tv/get-tv-credits

func (*Client) GetTVDetails

func (c *Client) GetTVDetails(id int64, urlOptions map[string]string) (*TVDetails, error)

GetTVDetails get the primary TV show details by id.

Supports append_to_response.

https://developers.themoviedb.org/3/tv/get-tv-details

func (*Client) GetTVEpisodeChanges

func (c *Client) GetTVEpisodeChanges(id int64, urlOptions map[string]string) (*TVEpisodeChanges, error)

GetTVEpisodeChanges get the changes for a TV episode. By default only the last 24 hours are returned.

You can query up to 14 days in a single query by using the start_date and end_date query parameters.

https://developers.themoviedb.org/3/tv-episodes/get-tv-episode-changes

func (*Client) GetTVEpisodeCredits

func (c *Client) GetTVEpisodeCredits(id int64, seasonNumber int, episodeNumber int) (*TVEpisodeCredits, error)

GetTVEpisodeCredits get the credits (cast, crew and guest stars) for a TV episode.

https://developers.themoviedb.org/3/tv-episodes/get-tv-episode-credits

func (*Client) GetTVEpisodeDetails

func (c *Client) GetTVEpisodeDetails(id int64, seasonNumber int, episodeNumber int, urlOptions map[string]string) (*TVEpisodeDetails, error)

GetTVEpisodeDetails get the TV episode details by id.

Supports append_to_response.

https://developers.themoviedb.org/3/tv-episodes/get-tv-episode-details

func (*Client) GetTVEpisodeExternalIDs

func (c *Client) GetTVEpisodeExternalIDs(id int64, seasonNumber int, episodeNumber int) (*TVEpisodeExternalIDs, error)

GetTVEpisodeExternalIDs get the external ids for a TV episode. We currently support the following external sources.

Media Databases: IMDb ID, TVDB ID, Freebase MID*, Freebase ID* TVRage ID*.

*Defunct or no longer available as a service.

https://developers.themoviedb.org/3/tv-episodes/get-tv-episode-external-ids

func (*Client) GetTVEpisodeGroups

func (c *Client) GetTVEpisodeGroups(id int64, urlOptions map[string]string) (*TVEpisodeGroups, error)

GetTVEpisodeGroups get all of the episode groups that have been created for a TV show.

With a group ID you can call the get TV episode group details method.

https://developers.themoviedb.org/3/tv/get-tv-episode-groups

func (*Client) GetTVEpisodeGroupsDetails

func (c *Client) GetTVEpisodeGroupsDetails(
	id string,
	urlOptions map[string]string,
) (*TVEpisodeGroupsDetails, error)

GetTVEpisodeGroupsDetails the details of a TV episode group. Groups support 7 different types which are enumerated as the following:

1. Original air date 2. Absolute 3. DVD 4. Digital 5. Story arc 6. Production 7. TV

https://developers.themoviedb.org/3/tv-episode-groups/get-tv-episode-group-details

func (*Client) GetTVEpisodeImages

func (c *Client) GetTVEpisodeImages(id int64, seasonNumber int, episodeNumber int) (*TVEpisodeImages, error)

GetTVEpisodeImages get the images that belong to a TV episode.

Querying images with a language parameter will filter the results. If you want to include a fallback language (especially useful for backdrops) you can use the include_image_language parameter. This should be a comma separated value like so: include_image_language=en,null.

https://developers.themoviedb.org/3/tv-episodes/get-tv-episode-images

func (*Client) GetTVEpisodeTranslations

func (c *Client) GetTVEpisodeTranslations(id int64, seasonNumber int, episodeNumber int) (*TVEpisodeTranslations, error)

GetTVEpisodeTranslations get the translation data for an episode.

https://developers.themoviedb.org/3/tv-episodes/get-tv-episode-translations

func (*Client) GetTVEpisodeVideos

func (c *Client) GetTVEpisodeVideos(id int64, seasonNumber int, episodeNumber int, urlOptions map[string]string) (*TVEpisodeVideos, error)

GetTVEpisodeVideos get the videos that have been added to a TV episode.

https://developers.themoviedb.org/3/tv-episodes/get-tv-episode-videos

func (*Client) GetTVExternalIDs

func (c *Client) GetTVExternalIDs(id int64, urlOptions map[string]string) (*TVExternalIDs, error)

GetTVExternalIDs get the external ids for a TV show.

We currently support the following external sources.

Media Databases: IMDb ID, TVDB ID, Freebase MID*, Freebase ID* TVRage ID*.

Social IDs: Facebook, Instagram and Twitter.

*Defunct or no longer available as a service.

https://developers.themoviedb.org/3/tv/get-tv-external-ids

func (*Client) GetTVImages

func (c *Client) GetTVImages(id int64, urlOptions map[string]string) (*TVImages, error)

GetTVImages get the images that belong to a TV show.

Querying images with a language parameter will filter the results. If you want to include a fallback language (especially useful for backdrops) you can use the include_image_language parameter. This should be a comma separated value like so: include_image_language=en,null.

https://developers.themoviedb.org/3/tv/get-tv-images

func (*Client) GetTVKeywords

func (c *Client) GetTVKeywords(id int64) (*TVKeywords, error)

GetTVKeywords get the keywords that have been added to a TV show.

https://developers.themoviedb.org/3/tv/get-tv-keywords

func (*Client) GetTVLatest

func (c *Client) GetTVLatest(
	urlOptions map[string]string,
) (*TVLatest, error)

GetTVLatest get the most newly created TV show.

This is a live response and will continuously change.

https://developers.themoviedb.org/3/tv/get-latest-tv

func (*Client) GetTVOnTheAir

func (c *Client) GetTVOnTheAir(
	urlOptions map[string]string,
) (*TVOnTheAir, error)

GetTVOnTheAir get a list of shows that are currently on the air.

This query looks for any TV show that has an episode with an air date in the next 7 days.

https://developers.themoviedb.org/3/tv/get-tv-on-the-air

func (*Client) GetTVPopular

func (c *Client) GetTVPopular(
	urlOptions map[string]string,
) (*TVPopular, error)

GetTVPopular get a list of the current popular TV shows on TMDb. This list updates daily.

https://developers.themoviedb.org/3/tv/get-popular-tv-shows

func (*Client) GetTVRecommendations

func (c *Client) GetTVRecommendations(id int64, urlOptions map[string]string) (*TVRecommendations, error)

GetTVRecommendations get the list of TV show recommendations for this item.

https://developers.themoviedb.org/3/tv/get-tv-recommendations

func (*Client) GetTVReviews

func (c *Client) GetTVReviews(id int64, urlOptions map[string]string) (*TVReviews, error)

GetTVReviews get the reviews for a TV show.

https://developers.themoviedb.org/3/tv/get-tv-reviews

func (*Client) GetTVScreenedTheatrically

func (c *Client) GetTVScreenedTheatrically(id int64) (*TVScreenedTheatrically, error)

GetTVScreenedTheatrically get a list of seasons or episodes that have been screened in a film festival or theatre.

https://developers.themoviedb.org/3/tv/get-screened-theatrically

func (*Client) GetTVSeasonChanges

func (c *Client) GetTVSeasonChanges(id int64, urlOptions map[string]string) (*TVSeasonChanges, error)

GetTVSeasonChanges get the changes for a TV season. By default only the last 24 hours are returned.

You can query up to 14 days in a single query by using the start_date and end_date query parameters.

https://developers.themoviedb.org/3/tv-seasons/get-tv-season-changes

func (*Client) GetTVSeasonCredits

func (c *Client) GetTVSeasonCredits(id int64, seasonNumber int, urlOptions map[string]string) (*TVSeasonCredits, error)

GetTVSeasonCredits get the credits for TV season.

https://developers.themoviedb.org/3/tv-seasons/get-tv-season-credits

func (*Client) GetTVSeasonDetails

func (c *Client) GetTVSeasonDetails(id int64, seasonNumber int, urlOptions map[string]string) (*TVSeasonDetails, error)

GetTVSeasonDetails get the TV season details by id.

Supports append_to_response.

https://developers.themoviedb.org/3/tv-seasons/get-tv-season-details

func (*Client) GetTVSeasonExternalIDs

func (c *Client) GetTVSeasonExternalIDs(id int64, seasonNumber int, urlOptions map[string]string) (*TVSeasonExternalIDs, error)

GetTVSeasonExternalIDs get the external ids for a TV season. We currently support the following external sources.

Media Databases: TVDB ID, Freebase MID*, Freebase ID* TVRage ID*.

*Defunct or no longer available as a service.

https://developers.themoviedb.org/3/tv-seasons/get-tv-season-external-ids

func (*Client) GetTVSeasonImages

func (c *Client) GetTVSeasonImages(id int64, seasonNumber int, urlOptions map[string]string) (*TVSeasonImages, error)

GetTVSeasonImages get the images that belong to a TV season.

Querying images with a language parameter will filter the results. If you want to include a fallback language (especially useful for backdrops) you can use the include_image_language parameter. This should be a comma separated value like so: include_image_language=en,null.

https://developers.themoviedb.org/3/tv-seasons/get-tv-season-images

func (*Client) GetTVSeasonVideos

func (c *Client) GetTVSeasonVideos(id int64, seasonNumber int, urlOptions map[string]string) (*TVSeasonVideos, error)

GetTVSeasonVideos get the videos that have been added to a TV season.

https://developers.themoviedb.org/3/tv-seasons/get-tv-season-videos

func (*Client) GetTVShowsWatchlist

func (c *Client) GetTVShowsWatchlist(id int64, urlOptions map[string]string) (*AccountTVShowsWatchlist, error)

GetTVShowsWatchlist get a list of all the TV shows you have added to your watchlist.

https://developers.themoviedb.org/3/account/get-tv-show-watchlist

func (*Client) GetTVSimilar

func (c *Client) GetTVSimilar(id int64, urlOptions map[string]string) (*TVSimilar, error)

GetTVSimilar a list of similar TV shows. These items are assembled by looking at keywords and genres.

https://developers.themoviedb.org/3/tv/get-similar-tv-shows

func (*Client) GetTVTopRated

func (c *Client) GetTVTopRated(
	urlOptions map[string]string,
) (*TVTopRated, error)

GetTVTopRated get a list of the top rated TV shows on TMDb.

https://developers.themoviedb.org/3/tv/get-top-rated-tv

func (*Client) GetTVTranslations

func (c *Client) GetTVTranslations(id int64, urlOptions map[string]string) (*TVTranslations, error)

GetTVTranslations get a list fo translations that have been created for a TV Show.

https://developers.themoviedb.org/3/tv/get-tv-translations

func (*Client) GetTVVideos

func (c *Client) GetTVVideos(id int64, urlOptions map[string]string) (*TVVideos, error)

GetTVVideos get the videos that have been added to a TV show.

https://developers.themoviedb.org/3/tv/get-tv-videos

func (*Client) GetTVWatchProviders

func (c *Client) GetTVWatchProviders(id int64, urlOptions map[string]string) (*TVWatchProviders, error)

GetTVWatchProviders get a list of the availabilities per country by provider for a TV show.

https://developers.themoviedb.org/3/tv/get-tv-watch-providers

func (*Client) GetTrending

func (c *Client) GetTrending(
	mediaType string,
	timeWindow string,
) (*Trending, error)

GetTrending get the daily or weekly trending items.

The daily trending list tracks items over the period of a day while items have a 24 hour half life. The weekly list tracks items over a 7 day period, with a 7 day half life.

Valid Media Types

all - Include all movies, TV shows and people in the results as a global trending list.

movie - Show the trending movies in the results.

tv - Show the trending tv shows in the results.

person - Show the trending people in the results.

Valid Time Windows

day - View the trending list for the day.

week - View the trending list for the week.

https://developers.themoviedb.org/3/trending/get-trending

func (*Client) GetWatchProvidersMovie

func (c *Client) GetWatchProvidersMovie(
	urlOptions map[string]string,
) (*WatchProviderList, error)

GetWatchProvidersMovie get a list of the watch provider (OTT/streaming) data we have available for movies. You can specify a watch_region param if you want to further filter the list by country.

https://developers.themoviedb.org/3/watch-providers/get-movie-providers

func (*Client) GetWatchProvidersTV

func (c *Client) GetWatchProvidersTV(
	urlOptions map[string]string,
) (*WatchProviderList, error)

GetWatchProvidersTv get a list of the watch provider (OTT/streaming) data we have available for TV series. You can specify a watch_region param if you want to further filter the list by country.

https://developers.themoviedb.org/3/watch-providers/get-tv-providers

func (*Client) MarkAsFavorite

func (c *Client) MarkAsFavorite(id int64, title *AccountFavorite) (*Response, error)

MarkAsFavorite this method allows you to mark a movie or TV show as a favorite item.

https://developers.themoviedb.org/3/account/mark-as-favorite

func (*Client) PostMovieRating

func (c *Client) PostMovieRating(id int64, rating float32, urlOptions map[string]string) (*Response, error)

PostMovieRating rate a movie.

A valid session or guest session ID is required.

You can read more about how this works: https://developers.themoviedb.org/3/authentication/how-do-i-generate-a-session-id

https://developers.themoviedb.org/3/movies/rate-movie

func (*Client) PostTVShowRating

func (c *Client) PostTVShowRating(id int64, rating float32, urlOptions map[string]string) (*Response, error)

PostTVShowRating rate a TV show.

A valid session or guest session ID is required.

You can read more about how this works: https://developers.themoviedb.org/3/authentication/how-do-i-generate-a-session-id

https://developers.themoviedb.org/3/tv/rate-tv-show

func (*Client) RemoveMovie

func (c *Client) RemoveMovie(listID int64, mediaID *ListMedia) (*Response, error)

RemoveMovie remove a movie from a list.

https://developers.themoviedb.org/3/lists/remove-movie

func (*Client) SetAlternateBaseURL

func (c *Client) SetAlternateBaseURL()

SetAlternateBaseURL sets an alternate base url.

func (*Client) SetClientAutoRetry

func (c *Client) SetClientAutoRetry()

SetClientAutoRetry sets autoRetry flag to true.

func (*Client) SetClientConfig

func (c *Client) SetClientConfig(httpClient *http.Client)

SetClientConfig sets a custom configuration for the http.Client.

func (*Client) SetSessionID

func (c *Client) SetSessionID(sid string) error

SetSessionID will set the session id.

type CollectionDetails

type CollectionDetails struct {
	ID           int64             `json:"id"`
	Name         string            `json:"name"`
	Overview     string            `json:"overview"`
	PosterPath   string            `json:"poster_path"`
	BackdropPath string            `json:"backdrop_path"`
	Parts        []*CollectionPart `json:"parts"`
}

CollectionDetails type is a struct for details JSON response.

type CollectionImages

type CollectionImages struct {
	ID        int64    `json:"id"`
	Backdrops []*Image `json:"backdrops"`
	Posters   []*Image `json:"posters"`
}

CollectionImages type is a struct for images JSON response.

type CollectionPart

type CollectionPart struct {
	Adult            bool    `json:"adult"`
	BackdropPath     string  `json:"backdrop_path"`
	GenreIDs         []int64 `json:"genre_ids"`
	ID               int64   `json:"id"`
	OriginalLanguage string  `json:"original_language"`
	OriginalTitle    string  `json:"original_title"`
	Overview         string  `json:"overview"`
	PosterPath       string  `json:"poster_path"`
	ReleaseDate      string  `json:"release_date"`
	Title            string  `json:"title"`
	Video            bool    `json:"video"`
	VoteAverage      float32 `json:"vote_average"`
	VoteCount        int64   `json:"vote_count"`
	Popularity       float32 `json:"popularity"`
}

type CollectionTranslation

type CollectionTranslation struct {
	CountryCode  string                     `json:"iso_3166_1"`
	LanguageCode string                     `json:"iso_639_1"`
	Name         string                     `json:"name"`
	EnglishName  string                     `json:"english_name"`
	Data         *CollectionTranslationData `json:"data"`
}

type CollectionTranslationData

type CollectionTranslationData struct {
	Title    string `json:"title"`
	Overview string `json:"overview"`
	Homepage string `json:"homepage"`
}

type CollectionTranslations

type CollectionTranslations struct {
	ID           int64                    `json:"id"`
	Translations []*CollectionTranslation `json:"translations"`
}

CollectionTranslations type is a struct for translations JSON response.

type CompanyAlternativeNames

type CompanyAlternativeNames struct {
	ID int64 `json:"id"`
	*CompanyAlternativeNamesResults
}

CompanyAlternativeNames type is a struct for alternative names JSON response.

type CompanyAlternativeNamesResult

type CompanyAlternativeNamesResult struct {
	Name string `json:"name"`
	Type string `json:"type"`
}

type CompanyAlternativeNamesResults

type CompanyAlternativeNamesResults struct {
	Results []*CompanyAlternativeNamesResult `json:"results"`
}

CompanyAlternativeNamesResults Result Types

type CompanyDetails

type CompanyDetails struct {
	Description   string         `json:"description"`
	Headquarters  string         `json:"headquarters"`
	Homepage      string         `json:"homepage"`
	ID            int64          `json:"id"`
	LogoPath      string         `json:"logo_path"`
	Name          string         `json:"name"`
	OriginCountry string         `json:"origin_country"`
	ParentCompany *ParentCompany `json:"parent_company"`
}

CompanyDetails type is a struct for details JSON response.

type CompanyImages

type CompanyImages struct {
	ID    int64    `json:"id"`
	Logos []*Image `json:"logos"`
}

CompanyImages type is a struct for images JSON response.

type ConfigurationAPI

type ConfigurationAPI struct {
	Images     *ConfigurationImage `json:"images"`
	ChangeKeys []string            `json:"change_keys"`
}

ConfigurationAPI type is a struct for api configuration JSON response.

type ConfigurationCountry

type ConfigurationCountry struct {
	CountryCode string `json:"iso_3166_1"`
	EnglishName string `json:"english_name"`
	NativeName  string `json:"native_name"`
}

ConfigurationCountry type is a struct for countries configuration JSON response.

type ConfigurationImage

type ConfigurationImage struct {
	BaseURL       string   `json:"base_url"`
	SecureBaseURL string   `json:"secure_base_url"`
	BackdropSizes []string `json:"backdrop_sizes"`
	LogoSizes     []string `json:"logo_sizes"`
	PosterSizes   []string `json:"poster_sizes"`
	ProfileSizes  []string `json:"profile_sizes"`
	StillSizes    []string `json:"still_sizes"`
}

type ConfigurationJobs

type ConfigurationJobs struct {
	Department string   `json:"department"`
	Jobs       []string `json:"jobs"`
}

ConfigurationJobs type is a struct for jobs configuration JSON response.

type ConfigurationLanguages

type ConfigurationLanguages struct {
	LanguageCode string `json:"iso_639_1"`
	EnglishName  string `json:"english_name"`
	Name         string `json:"name"`
}

ConfigurationLanguages type is a struct for languages configuration JSON response.

type ConfigurationPrimaryTranslations

type ConfigurationPrimaryTranslations string

ConfigurationPrimaryTranslations type is a struct for primary translations configuration JSON response.

type ConfigurationTimezones

type ConfigurationTimezones struct {
	CountryCode string   `json:"iso_3166_1"`
	Zones       []string `json:"zones"`
}

ConfigurationTimezones type is a struct for timezones configuration JSON response.

type CreditMedia

type CreditMedia struct {
	Adult            bool                  `json:"adult,omitempty"`          // Movie
	OriginalName     string                `json:"original_name,omitempty"`  // TV
	OriginalTitle    string                `json:"original_title,omitempty"` // Movie
	ID               int64                 `json:"id"`
	Name             string                `json:"name,omitempty"` // TV
	VoteCount        int64                 `json:"vote_count"`
	VoteAverage      float32               `json:"vote_average"`
	FirstAirDate     string                `json:"first_air_date,omitempty"` // TV
	PosterPath       string                `json:"poster_path"`
	ReleaseDate      string                `json:"release_date,omitempty"` // Movie
	Title            string                `json:"title,omitempty"`        // Movie
	Video            bool                  `json:"video,omitempty"`        // Movie
	GenreIDs         []int64               `json:"genre_ids"`
	OriginalLanguage string                `json:"original_language"`
	BackdropPath     string                `json:"backdrop_path"`
	Overview         string                `json:"overview"`
	OriginCountry    []string              `json:"origin_country,omitempty"` // TV
	Popularity       float32               `json:"popularity"`
	Character        string                `json:"character"`
	Episodes         []*CreditMediaEpisode `json:"episodes,omitempty"` // TV
	Seasons          []*CreditMediaSeason  `json:"seasons,omitempty"`  // TV
}

type CreditMediaEpisode

type CreditMediaEpisode struct {
	AirDate       string `json:"air_date"`
	EpisodeNumber int64  `json:"episode_number"`
	Name          string `json:"name"`
	Overview      string `json:"overview"`
	SeasonNumber  int    `json:"season_number"`
	StillPath     string `json:"still_path"`
}

type CreditMediaSeason

type CreditMediaSeason struct {
	AirDate      string `json:"air_date"`
	EpisodeCount int    `json:"episode_count"`
	ID           int64  `json:"id"`
	Name         string `json:"name"`
	Overview     string `json:"overview"`
	PosterPath   string `json:"poster_path"`
	SeasonNumber int    `json:"season_number"`
	ShowID       int64  `json:"show_id"`
}

type CreditPerson

type CreditPerson struct {
	Adult              bool                    `json:"adult"`
	Gender             int                     `json:"gender"`
	Name               string                  `json:"name"`
	ID                 int64                   `json:"id"`
	KnownFor           []*CreditPersonKnownFor `json:"known_for"`
	KnownForDepartment string                  `json:"known_for_department"`
	ProfilePath        string                  `json:"profile_path"`
	Popularity         float32                 `json:"popularity"`
}

type CreditPersonKnownFor

type CreditPersonKnownFor struct {
	Adult            bool     `json:"adult,omitempty"`
	BackdropPath     string   `json:"backdrop_path"`
	GenreIDs         []int64  `json:"genre_ids"`
	ID               int64    `json:"id"`
	OriginalLanguage string   `json:"original_language"`
	OriginalTitle    string   `json:"original_title,omitempty"`
	Overview         string   `json:"overview"`
	PosterPath       string   `json:"poster_path"`
	ReleaseDate      string   `json:"release_date,omitempty"`
	Title            string   `json:"title,omitempty"`
	Video            bool     `json:"video,omitempty"`
	VoteAverage      float32  `json:"vote_average"`
	VoteCount        int64    `json:"vote_count"`
	Popularity       float32  `json:"popularity"`
	MediaType        string   `json:"media_type"`
	OriginalName     string   `json:"original_name,omitempty"`
	Name             string   `json:"name,omitempty"`
	FirstAirDate     string   `json:"first_air_date,omitempty"`
	OriginCountry    []string `json:"origin_country,omitempty"`
}

CreditPersonKnownFor some fields can be both an integer and a float... - https://github.com/cyruzin/golang-tmdb/pull/34 - https://www.themoviedb.org/talk/6026eebd6a3448003e155bbc That being said... all referenced credit ids seem to be fixed shrujj

type CreditsDetails

type CreditsDetails struct {
	CreditType string        `json:"credit_type"`
	Department string        `json:"department"`
	Job        string        `json:"job"`
	Media      *CreditMedia  `json:"media"`
	MediaType  string        `json:"media_type"`
	ID         string        `json:"id"`
	Person     *CreditPerson `json:"person"`
}

CreditsDetails type is a struct for credits JSON response.

type DiscoverMovie

type DiscoverMovie struct {
	Page         int64 `json:"page"`
	TotalResults int64 `json:"total_results"`
	TotalPages   int64 `json:"total_pages"`
	*DiscoverMovieResults
}

DiscoverMovie type is a struct for movie JSON response.

type DiscoverMovieResult

type DiscoverMovieResult struct {
	VoteCount        int64   `json:"vote_count"`
	ID               int64   `json:"id"`
	Video            bool    `json:"video"`
	VoteAverage      float32 `json:"vote_average"`
	Title            string  `json:"title"`
	Popularity       float32 `json:"popularity"`
	PosterPath       string  `json:"poster_path"`
	OriginalLanguage string  `json:"original_language"`
	OriginalTitle    string  `json:"original_title"`
	GenreIDs         []int64 `json:"genre_ids"`
	BackdropPath     string  `json:"backdrop_path"`
	Adult            bool    `json:"adult"`
	Overview         string  `json:"overview"`
	ReleaseDate      string  `json:"release_date"`
}

type DiscoverMovieResults

type DiscoverMovieResults struct {
	Results []*DiscoverMovieResult `json:"results"`
}

DiscoverMovieResults Result Types

type DiscoverTV

type DiscoverTV struct {
	Page         int64 `json:"page"`
	TotalResults int64 `json:"total_results"`
	TotalPages   int64 `json:"total_pages"`
	*DiscoverTVResults
}

DiscoverTV type is a struct for tv JSON response.

type DiscoverTVResult

type DiscoverTVResult struct {
	OriginalName     string   `json:"original_name"`
	GenreIDs         []int64  `json:"genre_ids"`
	Name             string   `json:"name"`
	Popularity       float32  `json:"popularity"`
	OriginCountry    []string `json:"origin_country"`
	VoteCount        int64    `json:"vote_count"`
	FirstAirDate     string   `json:"first_air_date"`
	BackdropPath     string   `json:"backdrop_path"`
	OriginalLanguage string   `json:"original_language"`
	ID               int64    `json:"id"`
	VoteAverage      float32  `json:"vote_average"`
	Overview         string   `json:"overview"`
	PosterPath       string   `json:"poster_path"`
}

type DiscoverTVResults

type DiscoverTVResults struct {
	Results []*DiscoverTVResult `json:"results"`
}

DiscoverTVResults Result Types

type Error

type Error struct {
	StatusMessage string `json:"status_message,omitempty"`
	Success       bool   `json:"success,omitempty"`
	StatusCode    int    `json:"status_code,omitempty"`
}

Error type represents an error returned by the TMDB API.

func (Error) Error

func (e Error) Error() string

type FindByID

type FindByID struct {
	MovieResults     []*FindMovieResult     `json:"movie_results,omitempty"`
	PersonResults    []*FindPersonResult    `json:"person_results,omitempty"`
	TVResults        []*FindTVResult        `json:"tv_results,omitempty"`
	TVSeasonResults  []*FindTVSeasonResult  `json:"tv_season_results,omitempty"`
	TVEpisodeResults []*FindTVEpisodeResult `json:"tv_episode_results,omitempty"`
}

FindByID type is a struct for find JSON response.

type FindMovieResult

type FindMovieResult struct {
	Adult            bool    `json:"adult"`
	BackdropPath     string  `json:"backdrop_path"`
	GenreIDs         []int64 `json:"genre_ids"`
	ID               int64   `json:"id"`
	OriginalLanguage string  `json:"original_language"`
	OriginalTitle    string  `json:"original_title"`
	Overview         string  `json:"overview"`
	PosterPath       string  `json:"poster_path"`
	ReleaseDate      string  `json:"release_date"`
	Title            string  `json:"title"`
	Video            bool    `json:"video"`
	VoteAverage      float32 `json:"vote_average"`
	VoteCount        int64   `json:"vote_count"`
	Popularity       float32 `json:"popularity"`
}

type FindPersonKnownFor

type FindPersonKnownFor struct {
	Adult            bool     `json:"adult,omitempty"` // Movie
	BackdropPath     string   `json:"backdrop_path"`
	FirstAirDate     string   `json:"first_air_date,omitempty"` // TV
	GenreIDs         []int64  `json:"genre_ids"`
	ID               int64    `json:"id"`
	MediaType        string   `json:"media_type"`
	Name             string   `json:"name,omitempty"` // TV
	OriginalLanguage string   `json:"original_language"`
	OriginalName     string   `json:"original_name,omitempty"`  // TV
	OriginalTitle    string   `json:"original_title,omitempty"` // Movie
	OriginCountry    []string `json:"origin_country,omitempty"` // TV
	Overview         string   `json:"overview"`
	Popularity       float32  `json:"popularity"`
	PosterPath       string   `json:"poster_path"`
	ReleaseDate      string   `json:"release_date,omitempty"` // Movie
	Title            string   `json:"title,omitempty"`        // Movie
	Video            bool     `json:"video,omitempty"`        // Movie
	VoteAverage      float32  `json:"vote_average"`
	VoteCount        int64    `json:"vote_count"`
}

type FindPersonResult

type FindPersonResult struct {
	Adult              bool                  `json:"adult"`
	Gender             int                   `json:"gender"`
	Name               string                `json:"name"`
	ID                 int64                 `json:"id"`
	KnownFor           []*FindPersonKnownFor `json:"known_for"`
	KnownForDepartment string                `json:"known_for_department"`
	ProfilePath        string                `json:"profile_path"`
	Popularity         float32               `json:"popularity"`
}

type FindTVEpisodeResult

type FindTVEpisodeResult struct {
	AirDate        string  `json:"air_date"`
	EpisodeNumber  int     `json:"episode_number"`
	ID             int64   `json:"id"`
	Name           string  `json:"name"`
	Overview       string  `json:"overview"`
	ProductionCode string  `json:"production_code"`
	SeasonNumber   int     `json:"season_number"`
	ShowID         int64   `json:"show_id"`
	StillPath      string  `json:"still_path"`
	VoteAverage    float32 `json:"vote_average"`
	VoteCount      int64   `json:"vote_count"`
}

type FindTVResult

type FindTVResult struct {
	OriginalName     string   `json:"original_name"`
	ID               int64    `json:"id"`
	Name             string   `json:"name"`
	VoteCount        int64    `json:"vote_count"`
	VoteAverage      float32  `json:"vote_average"`
	FirstAirDate     string   `json:"first_air_date"`
	PosterPath       string   `json:"poster_path"`
	GenreIDs         []int64  `json:"genre_ids"`
	OriginalLanguage string   `json:"original_language"`
	BackdropPath     string   `json:"backdrop_path"`
	Overview         string   `json:"overview"`
	OriginCountry    []string `json:"origin_country"`
	Popularity       float32  `json:"popularity"`
}

type FindTVSeasonResult

type FindTVSeasonResult struct {
	AirDate      string `json:"air_date"`
	Name         string `json:"name"`
	ID           int64  `json:"id"`
	SeasonNumber int    `json:"season_number"`
	ShowID       int64  `json:"show_id"`
}

type Genre

type Genre struct {
	ID   int64  `json:"id"`
	Name string `json:"name"`
}

type GenreList added in v2.1.0

type GenreList struct {
	Genres []*Genre `json:"genres"`
}

GenreList type is a struct for genres movie list JSON response.

type GuestSessionRatedMovieResult

type GuestSessionRatedMovieResult struct {
	Adult            bool    `json:"adult"`
	BackdropPath     string  `json:"backdrop_path"`
	GenreIDs         []int64 `json:"genre_ids"`
	ID               int64   `json:"id"`
	OriginalLanguage string  `json:"original_language"`
	OriginalTitle    string  `json:"original_title"`
	Overview         string  `json:"overview"`
	ReleaseDate      string  `json:"release_date"`
	PosterPath       string  `json:"poster_path"`
	Popularity       float32 `json:"popularity"`
	Title            string  `json:"title"`
	Video            bool    `json:"video"`
	VoteAverage      float32 `json:"vote_average"`
	VoteCount        int64   `json:"vote_count"`
	Rating           float32 `json:"rating"`
}

type GuestSessionRatedMovies

type GuestSessionRatedMovies struct {
	Page         int64                           `json:"page"`
	Results      []*GuestSessionRatedMovieResult `json:"results"`
	TotalPages   int64                           `json:"total_pages"`
	TotalResults int64                           `json:"total_results"`
}

GuestSessionRatedMovies type is a struct for rated movies JSON response.

type GuestSessionRatedTVEpisodeResult

type GuestSessionRatedTVEpisodeResult struct {
	AirDate        string  `json:"air_date"`
	EpisodeNumber  int     `json:"episode_number"`
	ID             int64   `json:"id"`
	Name           string  `json:"name"`
	Overview       string  `json:"overview"`
	ProductionCode string  `json:"production_code"`
	SeasonNumber   int     `json:"season_number"`
	ShowID         int64   `json:"show_id"`
	StillPath      string  `json:"still_path"`
	VoteAverage    float32 `json:"vote_average"`
	VoteCount      int64   `json:"vote_count"`
	Rating         float32 `json:"rating"`
}

type GuestSessionRatedTVEpisodes

type GuestSessionRatedTVEpisodes struct {
	Page         int64                               `json:"page"`
	Results      []*GuestSessionRatedTVEpisodeResult `json:"results"`
	TotalPages   int64                               `json:"total_pages"`
	TotalResults int64                               `json:"total_results"`
}

GuestSessionRatedTVEpisodes type is a struct for rated tv episodes JSON response.

type GuestSessionRatedTVShowResult

type GuestSessionRatedTVShowResult struct {
	BackdropPath     string   `json:"backdrop_path"`
	FirstAirDate     string   `json:"first_air_date"`
	GenreIDs         []int64  `json:"genre_ids"`
	ID               int64    `json:"id"`
	OriginalLanguage string   `json:"original_language"`
	OriginalName     string   `json:"original_name"`
	Overview         string   `json:"overview"`
	OriginCountry    []string `json:"origin_country"`
	PosterPath       string   `json:"poster_path"`
	Popularity       float32  `json:"popularity"`
	Name             string   `json:"name"`
	VoteAverage      float32  `json:"vote_average"`
	VoteCount        int64    `json:"vote_count"`
	Rating           float32  `json:"rating"`
}

type GuestSessionRatedTVShows

type GuestSessionRatedTVShows struct {
	Page         int64                            `json:"page"`
	Results      []*GuestSessionRatedTVShowResult `json:"results"`
	TotalPages   int64                            `json:"total_pages"`
	TotalResults int64                            `json:"total_results"`
}

GuestSessionRatedTVShows type is a struct for rated tv shows JSON response.

type Image

type Image struct {
	ID           string  `json:"id,omitempty"`
	AspectRatio  float32 `json:"aspect_ratio"`
	FilePath     string  `json:"file_path"`
	Height       int     `json:"height"`
	LanguageCode string  `json:"iso_639_1"`
	VoteAverage  float32 `json:"vote_average"`
	VoteCount    int64   `json:"vote_count"`
	Width        int     `json:"width"`
}

type ImageSize

type ImageSize string
const (
	// W45 size
	W45 ImageSize = "w45"
	// W92 size
	W92 ImageSize = "w92"
	// W154 size
	W154 ImageSize = "w154"
	// W185 size
	W185 ImageSize = "w185"
	// W300 size
	W300 ImageSize = "w300"
	// W342 size
	W342 ImageSize = "w342"
	// W500 size
	W500 ImageSize = "w500"
	// W780 size
	W780 ImageSize = "w780"
	// W1280 size
	W1280 ImageSize = "w1280"
	// H632 size
	H632 ImageSize = "h632"
	// Original size
	Original ImageSize = "original"
)

func (ImageSize) String

func (i ImageSize) String() string

type KeywordDetails

type KeywordDetails struct {
	ID   int64  `json:"id"`
	Name string `json:"name"`
}

KeywordDetails type is a struct for keyword JSON response.

type KeywordMovieResult

type KeywordMovieResult struct {
	Adult            bool    `json:"adult"`
	BackdropPath     string  `json:"backdrop_path"`
	GenreIDs         []int64 `json:"genre_ids"`
	ID               int64   `json:"id"`
	OriginalLanguage string  `json:"original_language"`
	OriginalTitle    string  `json:"original_title"`
	Overview         string  `json:"overview"`
	PosterPath       string  `json:"poster_path"`
	ReleaseDate      string  `json:"release_date"`
	Title            string  `json:"title"`
	Video            bool    `json:"video"`
	VoteAverage      float32 `json:"vote_average"`
	VoteCount        int64   `json:"vote_count"`
	Popularity       float32 `json:"popularity"`
}

type KeywordMovies

type KeywordMovies struct {
	ID           int64                 `json:"id"`
	Page         int64                 `json:"page"`
	Results      []*KeywordMovieResult `json:"results"`
	TotalPages   int64                 `json:"total_pages"`
	TotalResults int64                 `json:"total_results"`
}

KeywordMovies type is a struct for movies that belong to a keyword JSON response.

type ListCreate

type ListCreate struct {
	Name        string `json:"name"`
	Description string `json:"description"`
	Language    string `json:"language"`
}

ListCreate type is a struct for list creation JSON request.

type ListDetails

type ListDetails struct {
	CreatedBy     string      `json:"created_by"`
	Description   string      `json:"description"`
	FavoriteCount int64       `json:"favorite_count"`
	ID            string      `json:"id"`
	Items         []*ListItem `json:"items"`
	ItemCount     int64       `json:"item_count"`
	LanguageCode  string      `json:"iso_639_1"`
	Name          string      `json:"name"`
	PosterPath    string      `json:"poster_path"`
}

ListDetails type is a struct for details JSON response.

type ListItem

type ListItem struct {
	Adult            bool     `json:"adult,omitempty"` // Movie
	BackdropPath     string   `json:"backdrop_path"`
	FirstAirDate     string   `json:"first_air_date,omitempty"` // TV
	GenreIDs         []int64  `json:"genre_ids"`
	ID               int64    `json:"id"`
	MediaType        string   `json:"media_type"`
	Name             string   `json:"name,omitempty"` // TV
	OriginalLanguage string   `json:"original_language"`
	OriginalName     string   `json:"original_name,omitempty"`  // TV
	OriginalTitle    string   `json:"original_title,omitempty"` // Movie
	OriginCountry    []string `json:"origin_country,omitempty"` // TV
	Overview         string   `json:"overview"`
	Popularity       float32  `json:"popularity"`
	PosterPath       string   `json:"poster_path"`
	ReleaseDate      string   `json:"release_date,omitempty"` // Movie
	Title            string   `json:"title,omitempty"`        // Movie
	Video            bool     `json:"video,omitempty"`        // Movie
	VoteAverage      float32  `json:"vote_average"`
	VoteCount        int64    `json:"vote_count"`
}

type ListItemStatus

type ListItemStatus struct {
	ID          string `json:"id"`
	ItemPresent bool   `json:"item_present"`
}

ListItemStatus type is a struct for item status JSON response.

type ListMedia

type ListMedia struct {
	MediaID int64 `json:"media_id"`
}

ListMedia type is a struct for list media JSON request.

type ListResponse

type ListResponse struct {
	*Response
	Success bool  `json:"success"`
	ListID  int64 `json:"list_id"`
}

ListResponse type is a struct for list creation JSON response.

type MovieAccountStates

type MovieAccountStates struct {
	ID        int64               `json:"id"`
	Favorite  bool                `json:"favorite"`
	Rated     jsoniter.RawMessage `json:"rated"`
	Watchlist bool                `json:"watchlist"`
}

MovieAccountStates type is a struct for account states JSON response.

type MovieAlternativeTitle

type MovieAlternativeTitle struct {
	CountryCode string `json:"iso_3166_1"`
	Title       string `json:"title"`
	Type        string `json:"type"`
}

type MovieAlternativeTitles

type MovieAlternativeTitles struct {
	ID     int                      `json:"id,omitempty"`
	Titles []*MovieAlternativeTitle `json:"titles"`
}

MovieAlternativeTitles type is a struct for alternative titles JSON response.

type MovieAlternativeTitlesAppend

type MovieAlternativeTitlesAppend struct {
	AlternativeTitles *MovieAlternativeTitles `json:"alternative_titles,omitempty"`
}

MovieAlternativeTitlesAppend type is a struct for alternative titles in append to response.

type MovieCast

type MovieCast struct {
	Adult              bool    `json:"adult"`
	CastID             int64   `json:"cast_id"`
	Character          string  `json:"character"`
	CreditID           string  `json:"credit_id"`
	Gender             int     `json:"gender"`
	ID                 int64   `json:"id"`
	KnownForDepartment string  `json:"known_for_department"`
	Name               string  `json:"name"`
	Order              int     `json:"order"`
	OriginalName       string  `json:"original_name"`
	Popularity         float32 `json:"popularity"`
	ProfilePath        string  `json:"profile_path"`
}

type MovieCertifications

type MovieCertifications struct {
	AU    []*Certification `json:"AU"`
	BG    []*Certification `json:"BG"`
	BR    []*Certification `json:"BR"`
	CA    []*Certification `json:"CA"`
	CA_QC []*Certification `json:"CA-QC"`
	DE    []*Certification `json:"DE"`
	DK    []*Certification `json:"DK"`
	ES    []*Certification `json:"ES"`
	FI    []*Certification `json:"FI"`
	FR    []*Certification `json:"FR"`
	GB    []*Certification `json:"GB"`
	HU    []*Certification `json:"HU"`
	IN    []*Certification `json:"IN"`
	IT    []*Certification `json:"IT"`
	LT    []*Certification `json:"LT"`
	MY    []*Certification `json:"MY"`
	NL    []*Certification `json:"NL"`
	NO    []*Certification `json:"NO"`
	NZ    []*Certification `json:"NZ"`
	PH    []*Certification `json:"PH"`
	PT    []*Certification `json:"PT"`
	RU    []*Certification `json:"RU"`
	SE    []*Certification `json:"SE"`
	US    []*Certification `json:"US"`
}

type MovieChanges

type MovieChanges ChangeSet

MovieChanges type is a struct for changes JSON response.

type MovieChangesAppend

type MovieChangesAppend struct {
	Changes *MovieChanges `json:"changes,omitempty"`
}

MovieChangesAppend type is a struct for changes in append to response.

type MovieCollection

type MovieCollection struct {
	ID           int64  `json:"id"`
	Name         string `json:"name"`
	PosterPath   string `json:"poster_path"`
	BackdropPath string `json:"backdrop_path"`
}

type MovieCredits

type MovieCredits struct {
	ID   int64        `json:"id,omitempty"`
	Cast []*MovieCast `json:"cast"`
	Crew []*MovieCrew `json:"crew"`
}

MovieCredits type is a struct for credits JSON response.

type MovieCreditsAppend

type MovieCreditsAppend struct {
	Credits *MovieCredits `json:"credits,omitempty"`
}

MovieCreditsAppend type is a struct for credits in append to response.

type MovieCrew

type MovieCrew struct {
	Adult              bool    `json:"adult"`
	CreditID           string  `json:"credit_id"`
	Department         string  `json:"department"`
	Gender             int     `json:"gender"`
	ID                 int64   `json:"id"`
	Job                string  `json:"job"`
	KnownForDepartment string  `json:"known_for_department"`
	Name               string  `json:"name"`
	OriginalName       string  `json:"original_name"`
	Popularity         float32 `json:"popularity"`
	ProfilePath        string  `json:"profile_path"`
}

type MovieDetails

type MovieDetails struct {
	Adult               bool                      `json:"adult"`
	BackdropPath        string                    `json:"backdrop_path"`
	BelongsToCollection *MovieCollection          `json:"belongs_to_collection"`
	Budget              int64                     `json:"budget"`
	Genres              []*Genre                  `json:"genres"`
	Homepage            string                    `json:"homepage"`
	ID                  int64                     `json:"id"`
	IMDbID              string                    `json:"imdb_id"`
	OriginalLanguage    string                    `json:"original_language"`
	OriginalTitle       string                    `json:"original_title"`
	Overview            string                    `json:"overview"`
	Popularity          float32                   `json:"popularity"`
	PosterPath          string                    `json:"poster_path"`
	ProductionCompanies []*MovieProductionCompany `json:"production_companies"`
	ProductionCountries []*MovieProductionCountry `json:"production_countries"`
	ReleaseDate         string                    `json:"release_date"`
	Revenue             int64                     `json:"revenue"`
	Runtime             int                       `json:"runtime"`
	SpokenLanguages     []*MovieSpokenLanguage    `json:"spoken_languages"`
	Status              string                    `json:"status"`
	Tagline             string                    `json:"tagline"`
	Title               string                    `json:"title"`
	Video               bool                      `json:"video"`
	VoteAverage         float32                   `json:"vote_average"`
	VoteCount           int64                     `json:"vote_count"`
	*MovieAlternativeTitlesAppend
	*MovieChangesAppend
	*MovieCreditsAppend
	*MovieExternalIDsAppend
	*MovieImagesAppend
	*MovieKeywordsAppend
	*MovieReleaseDatesAppend
	*MovieVideosAppend
	*MovieTranslationsAppend
	*MovieRecommendationsAppend
	*MovieSimilarAppend
	*MovieReviewsAppend
	*MovieListsAppend
	*MovieWatchProvidersAppend
}

MovieDetails type is a struct for movie details JSON response.

type MovieExternalIDs

type MovieExternalIDs struct {
	IMDbID      string `json:"imdb_id"`
	FacebookID  string `json:"facebook_id"`
	InstagramID string `json:"instagram_id"`
	TwitterID   string `json:"twitter_id"`
	ID          int64  `json:"id,omitempty"`
}

MovieExternalIDs type is a struct for external ids JSON response.

type MovieExternalIDsAppend

type MovieExternalIDsAppend struct {
	ExternalIDs *MovieExternalIDs `json:"external_ids,omitempty"`
}

MovieExternalIDsAppend type is a struct for external ids in append to response.

type MovieImages

type MovieImages struct {
	ID        int64    `json:"id,omitempty"`
	Backdrops []*Image `json:"backdrops"`
	Logos     []*Image `json:"logos"`
	Posters   []*Image `json:"posters"`
}

MovieImages type is a struct for images JSON response.

type MovieImagesAppend

type MovieImagesAppend struct {
	Images *MovieImages `json:"images,omitempty"`
}

MovieImagesAppend type is a struct for images in append to response.

type MovieKeyword

type MovieKeyword struct {
	ID   int64  `json:"id"`
	Name string `json:"name"`
}

type MovieKeywords

type MovieKeywords struct {
	ID       int64           `json:"id,omitempty"`
	Keywords []*MovieKeyword `json:"keywords"`
}

MovieKeywords type is a struct for keywords JSON response.

type MovieKeywordsAppend

type MovieKeywordsAppend struct {
	Keywords *MovieKeywords `json:"keywords,omitempty"`
}

MovieKeywordsAppend type is a struct for keywords in append to response.

type MovieLatest

type MovieLatest MovieDetails

MovieLatest type is a struct for latest JSON response.

type MovieLists

type MovieLists struct {
	ID           int64 `json:"id"`
	Page         int64 `json:"page"`
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
	*MovieListsResults
}

MovieLists type is a struct for lists JSON response.

type MovieListsAppend

type MovieListsAppend struct {
	Lists *MovieLists `json:"lists,omitempty"`
}

MovieListsAppend type is a struct for lists in append to response.

type MovieListsResult

type MovieListsResult struct {
	Description   string `json:"description"`
	FavoriteCount int64  `json:"favorite_count"`
	ID            int64  `json:"id"`
	ItemCount     int64  `json:"item_count"`
	LanguageCode  string `json:"iso_639_1"`
	ListType      string `json:"list_type"`
	Name          string `json:"name"`
	PosterPath    string `json:"poster_path"`
}

type MovieListsResults

type MovieListsResults struct {
	Results []*MovieListsResult `json:"results"`
}

MovieListsResults Result Types

type MovieNowPlaying

type MovieNowPlaying struct {
	Page         int64                     `json:"page"`
	Dates        *MovieNowPlayingDateRange `json:"dates"`
	TotalPages   int64                     `json:"total_pages"`
	TotalResults int64                     `json:"total_results"`
	*MovieNowPlayingResults
}

MovieNowPlaying type is a struct for now playing JSON response.

type MovieNowPlayingDateRange

type MovieNowPlayingDateRange struct {
	Maximum string `json:"maximum"`
	Minimum string `json:"minimum"`
}

type MovieNowPlayingResult

type MovieNowPlayingResult struct {
	PosterPath       string   `json:"poster_path"`
	Adult            bool     `json:"adult"`
	Overview         string   `json:"overview"`
	ReleaseDate      string   `json:"release_date"`
	Genres           []*Genre `json:"genres"`
	ID               int64    `json:"id"`
	OriginalTitle    string   `json:"original_title"`
	OriginalLanguage string   `json:"original_language"`
	Title            string   `json:"title"`
	BackdropPath     string   `json:"backdrop_path"`
	Popularity       float32  `json:"popularity"`
	VoteCount        int64    `json:"vote_count"`
	Video            bool     `json:"video"`
	VoteAverage      float32  `json:"vote_average"`
}

type MovieNowPlayingResults

type MovieNowPlayingResults struct {
	Results []*MovieNowPlayingResult `json:"results"`
}

MovieNowPlayingResults Result Types

type MoviePopular

type MoviePopular struct {
	Page         int64 `json:"page"`
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
	*MoviePopularResults
}

MoviePopular type is a struct for popular JSON response.

type MoviePopularResult

type MoviePopularResult struct {
	PosterPath       string   `json:"poster_path"`
	Adult            bool     `json:"adult"`
	Overview         string   `json:"overview"`
	ReleaseDate      string   `json:"release_date"`
	Genres           []*Genre `json:"genres"`
	ID               int64    `json:"id"`
	OriginalTitle    string   `json:"original_title"`
	OriginalLanguage string   `json:"original_language"`
	Title            string   `json:"title"`
	BackdropPath     string   `json:"backdrop_path"`
	Popularity       float32  `json:"popularity"`
	VoteCount        int64    `json:"vote_count"`
	Video            bool     `json:"video"`
	VoteAverage      float32  `json:"vote_average"`
}

type MoviePopularResults

type MoviePopularResults struct {
	Results []*MoviePopularResult `json:"results"`
}

MoviePopularResults Result Types

type MovieProductionCompany

type MovieProductionCompany struct {
	Name          string `json:"name"`
	ID            int64  `json:"id"`
	LogoPath      string `json:"logo_path"`
	OriginCountry string `json:"origin_country"`
}

type MovieProductionCountry

type MovieProductionCountry struct {
	CountryCode string `json:"iso_3166_1"`
	Name        string `json:"name"`
}

type MovieRecommendations

type MovieRecommendations struct {
	Page         int64 `json:"page"`
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
	*MovieRecommendationsResults
}

MovieRecommendations type is a struct for recommendations JSON response.

type MovieRecommendationsAppend

type MovieRecommendationsAppend struct {
	Recommendations *MovieRecommendations `json:"recommendations,omitempty"`
}

MovieRecommendationsAppend type is a struct for recommendations in append to response.

type MovieRecommendationsResult

type MovieRecommendationsResult struct {
	PosterPath       string  `json:"poster_path"`
	Adult            bool    `json:"adult"`
	Overview         string  `json:"overview"`
	ReleaseDate      string  `json:"release_date"`
	GenreIDs         []int64 `json:"genre_ids"`
	ID               int64   `json:"id"`
	OriginalTitle    string  `json:"original_title"`
	OriginalLanguage string  `json:"original_language"`
	Title            string  `json:"title"`
	BackdropPath     string  `json:"backdrop_path"`
	Popularity       float32 `json:"popularity"`
	VoteCount        int64   `json:"vote_count"`
	Video            bool    `json:"video"`
	VoteAverage      float32 `json:"vote_average"`
}

type MovieRecommendationsResults

type MovieRecommendationsResults struct {
	Results []*MovieRecommendationsResult `json:"results"`
}

MovieRecommendationsResults Result Types

type MovieReleaseDateResult

type MovieReleaseDateResult struct {
	Certification string `json:"certification"`
	LanguageCode  string `json:"iso_639_1"`
	ReleaseDate   string `json:"release_date"`
	Type          int    `json:"type"`
	Note          string `json:"note"`
}

type MovieReleaseDates

type MovieReleaseDates struct {
	ID int64 `json:"id,omitempty"`
	*MovieReleaseDatesResults
}

MovieReleaseDates type is a struct for release dates JSON response.

type MovieReleaseDatesAppend

type MovieReleaseDatesAppend struct {
	ReleaseDates *MovieReleaseDates `json:"release_dates,omitempty"`
}

MovieReleaseDatesAppend type is a struct for release dates in append to response.

type MovieReleaseDatesResult

type MovieReleaseDatesResult struct {
	CountryCode  string                    `json:"iso_3166_1"`
	ReleaseDates []*MovieReleaseDateResult `json:"release_dates"`
}

type MovieReleaseDatesResults

type MovieReleaseDatesResults struct {
	Results []*MovieReleaseDatesResult `json:"results"`
}

MovieReleaseDatesResults Result Types

type MovieReviews

type MovieReviews struct {
	ID           int64 `json:"id,omitempty"`
	Page         int64 `json:"page"`
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
	*MovieReviewsResults
}

MovieReviews type is a struct for reviews JSON response.

type MovieReviewsAppend

type MovieReviewsAppend struct {
	Reviews *MovieReviews `json:"reviews,omitempty"`
}

MovieReviewsAppend type is a struct for reviews in append to response.

type MovieReviewsResult

type MovieReviewsResult struct {
	ID      string `json:"id"`
	Author  string `json:"author"`
	Content string `json:"content"`
	URL     string `json:"url"`
}

type MovieReviewsResults

type MovieReviewsResults struct {
	Results []*MovieReviewsResult `json:"results"`
}

MovieReviewsResults Result Types

type MovieSimilar

type MovieSimilar MovieRecommendations

MovieSimilar type is a struct for similar movies JSON response.

type MovieSimilarAppend

type MovieSimilarAppend struct {
	Similar *MovieSimilar `json:"similar,omitempty"`
}

MovieSimilarAppend type is a struct for similar movies in append to response.

type MovieSpokenLanguage

type MovieSpokenLanguage struct {
	LanguageCode string `json:"iso_639_1"`
	Name         string `json:"name"`
}

type MovieTopRated

type MovieTopRated MoviePopular

MovieTopRated type is a struct for top rated JSON response.

type MovieTranslation

type MovieTranslation struct {
	LanguageCode string                `json:"iso_639_1"`
	CountryCode  string                `json:"iso_3166_1"`
	Name         string                `json:"name"`
	EnglishName  string                `json:"english_name"`
	Data         *MovieTranslationDate `json:"data"`
}

type MovieTranslationDate

type MovieTranslationDate struct {
	Title    string `json:"title"`
	Overview string `json:"overview"`
	Runtime  int    `json:"runtime"`
	Tagline  string `json:"tagline"`
	Homepage string `json:"homepage"`
}

type MovieTranslations

type MovieTranslations struct {
	ID           int64               `json:"id,omitempty"`
	Translations []*MovieTranslation `json:"translations"`
}

MovieTranslations type is a struct for translations JSON response.

type MovieTranslationsAppend

type MovieTranslationsAppend struct {
	Translations *MovieTranslations `json:"translations,omitempty"`
}

MovieTranslationsAppend type is a struct for translations in append to response.

type MovieUpcoming

type MovieUpcoming MovieNowPlaying

MovieUpcoming type is a struct for upcoming JSON response.

type MovieVideos

type MovieVideos struct {
	ID int64 `json:"id,omitempty"`
	*MovieVideosResults
}

MovieVideos type is a struct for videos JSON response.

type MovieVideosAppend

type MovieVideosAppend struct {
	Videos *MovieVideos `json:"videos,omitempty"`
}

MovieVideosAppend type is a struct for videos in append to response.

type MovieVideosResult

type MovieVideosResult struct {
	ID           string `json:"id"`
	LanguageCode string `json:"iso_639_1"`
	CountryCode  string `json:"iso_3166_1"`
	Key          string `json:"key"`
	Name         string `json:"name"`
	Official     bool   `json:"official"`
	PublishedAt  string `json:"published_at"`
	Site         string `json:"site"`
	Size         int    `json:"size"`
	Type         string `json:"type"`
}

type MovieVideosResults

type MovieVideosResults struct {
	Results []*MovieVideosResult `json:"results"`
}

MovieVideosResults Result Types

type MovieWatchProviders

type MovieWatchProviders struct {
	ID int64 `json:"id,omitempty"`
	*MovieWatchProvidersResults
}

MovieWatchProviders type is a struct for watch/providers JSON response.

type MovieWatchProvidersAppend

type MovieWatchProvidersAppend struct {
	WatchProviders *MovieWatchProviders `json:"watch/providers,omitempty"`
}

MovieWatchProvidersAppend type is a struct for watch/providers in append to response.

type MovieWatchProvidersResult

type MovieWatchProvidersResult struct {
	Link     string           `json:"link"`
	FlatRate []*WatchProvider `json:"flatrate,omitempty"`
	Rent     []*WatchProvider `json:"rent,omitempty"`
	Buy      []*WatchProvider `json:"buy,omitempty"`
}

type MovieWatchProvidersResults

type MovieWatchProvidersResults struct {
	Results map[string]*MovieWatchProvidersResult `json:"results"`
}

MovieWatchProvidersResults Result Types

type NetworkAlternativeNameResult

type NetworkAlternativeNameResult struct {
	Name string `json:"name"`
	Type string `json:"type"`
}

type NetworkAlternativeNames

type NetworkAlternativeNames struct {
	ID      int64                           `json:"id"`
	Results []*NetworkAlternativeNameResult `json:"results"`
}

NetworkAlternativeNames type is a struct for alternative names JSON response.

type NetworkDetails

type NetworkDetails struct {
	Headquarters  string `json:"headquarters"`
	Homepage      string `json:"homepage"`
	ID            int64  `json:"id"`
	LogoPath      string `json:"logo_path"`
	Name          string `json:"name"`
	OriginCountry string `json:"origin_country"`
}

NetworkDetails type is a struct for details JSON response.

type NetworkImages

type NetworkImages struct {
	ID    int64    `json:"id"`
	Logos []*Image `json:"logos"`
}

NetworkImages type is a struct for images JSON response.

type ParentCompany

type ParentCompany struct {
	Name     string `json:"name"`
	ID       int64  `json:"id"`
	LogoPath string `json:"logo_path"`
}

type PersonChanges

type PersonChanges ChangeSet

PersonChanges type is a struct for changes JSON response.

type PersonChangesAppend

type PersonChangesAppend struct {
	Changes *PersonChanges `json:"changes,omitempty"`
}

PersonChangesAppend type is a struct for changes JSON in append to response.

type PersonCombinedCreditCast

type PersonCombinedCreditCast struct {
	ID               int64    `json:"id"`
	Character        string   `json:"character"`
	OriginalTitle    string   `json:"original_title"`
	Overview         string   `json:"overview"`
	VoteCount        int64    `json:"vote_count"`
	Video            bool     `json:"video"`
	MediaType        string   `json:"media_type"`
	ReleaseDate      string   `json:"release_date"`
	VoteAverage      float32  `json:"vote_average"`
	Title            string   `json:"title"`
	Popularity       float32  `json:"popularity"`
	OriginalLanguage string   `json:"original_language"`
	GenreIDs         []int64  `json:"genre_ids"`
	BackdropPath     string   `json:"backdrop_path"`
	Adult            bool     `json:"adult"`
	PosterPath       string   `json:"poster_path"`
	CreditID         string   `json:"credit_id"`
	EpisodeCount     int      `json:"episode_count"`
	OriginCountry    []string `json:"origin_country"`
	OriginalName     string   `json:"original_name"`
	Name             string   `json:"name"`
	FirstAirDate     string   `json:"first_air_date"`
}

type PersonCombinedCreditCrew

type PersonCombinedCreditCrew struct {
	ID               int64   `json:"id"`
	Department       string  `json:"department"`
	OriginalLanguage string  `json:"original_language"`
	OriginalTitle    string  `json:"original_title"`
	Job              string  `json:"job"`
	Overview         string  `json:"overview"`
	VoteCount        int64   `json:"vote_count"`
	Video            bool    `json:"video"`
	MediaType        string  `json:"media_type"`
	PosterPath       string  `json:"poster_path"`
	BackdropPath     string  `json:"backdrop_path"`
	Title            string  `json:"title"`
	Popularity       float32 `json:"popularity"`
	GenreIDs         []int64 `json:"genre_ids"`
	VoteAverage      float32 `json:"vote_average"`
	Adult            bool    `json:"adult"`
	ReleaseDate      string  `json:"release_date"`
	CreditID         string  `json:"credit_id"`
}

type PersonCombinedCredits

type PersonCombinedCredits struct {
	Cast []*PersonCombinedCreditCast `json:"cast"`
	Crew []*PersonCombinedCreditCrew `json:"crew"`
	ID   int64                       `json:"id,omitempty"`
}

PersonCombinedCredits type is a struct for combined credits JSON response.

type PersonCombinedCreditsAppend

type PersonCombinedCreditsAppend struct {
	CombinedCredits *PersonCombinedCredits `json:"combined_credits,omitempty"`
}

PersonCombinedCreditsAppend type is a struct for combined credits in append to response.

type PersonDetails

type PersonDetails struct {
	Birthday           string   `json:"birthday"`
	KnownForDepartment string   `json:"known_for_department"`
	Deathday           string   `json:"deathday"`
	ID                 int64    `json:"id"`
	Name               string   `json:"name"`
	AlsoKnownAs        []string `json:"also_known_as"`
	Gender             int      `json:"gender"`
	Biography          string   `json:"biography"`
	Popularity         float32  `json:"popularity"`
	PlaceOfBirth       string   `json:"place_of_birth"`
	ProfilePath        string   `json:"profile_path"`
	Adult              bool     `json:"adult"`
	IMDbID             string   `json:"imdb_id"`
	Homepage           string   `json:"homepage"`
	*PersonChangesAppend
	*PersonMovieCreditsAppend
	*PersonTVCreditsAppend
	*PersonCombinedCreditsAppend
	*PersonExternalIDsAppend
	*PersonImagesAppend
	*PersonTaggedImagesAppend
	*PersonTranslationsAppend
}

PersonDetails type is a struct for details JSON response.

type PersonExternalIDs

type PersonExternalIDs struct {
	ID          int64  `json:"id,omitempty"`
	TwitterID   string `json:"twitter_id"`
	FacebookID  string `json:"facebook_id"`
	TVRageID    int64  `json:"tvrage_id"`
	InstagramID string `json:"instagram_id"`
	FreebaseMID string `json:"freebase_mid"`
	IMDbID      string `json:"imdb_id"`
	FreebaseID  string `json:"freebase_id"`
}

PersonExternalIDs type is a struct for external ids JSON response.

type PersonExternalIDsAppend

type PersonExternalIDsAppend struct {
	ExternalIDs *PersonExternalIDs `json:"external_ids,omitempty"`
}

PersonExternalIDsAppend type is a struct for external ids in append to response.

type PersonImages

type PersonImages struct {
	Profiles []*Image `json:"profiles"`
	ID       int      `json:"id,omitempty"`
}

PersonImages type is a struct for images JSON response.

type PersonImagesAppend

type PersonImagesAppend struct {
	Images *PersonImages `json:"images,omitempty"`
}

PersonImagesAppend type is a struct for images in append to response.

type PersonLatest

type PersonLatest struct {
	Birthday     string   `json:"birthday"`
	Deathday     string   `json:"deathday"`
	ID           int64    `json:"id"`
	Name         string   `json:"name"`
	AlsoKnownAs  []string `json:"also_known_as"`
	Gender       int      `json:"gender"`
	Biography    string   `json:"biography"`
	Popularity   float32  `json:"popularity"`
	PlaceOfBirth string   `json:"place_of_birth"`
	ProfilePath  string   `json:"profile_path"`
	Adult        bool     `json:"adult"`
	IMDbID       string   `json:"imdb_id"`
	Homepage     string   `json:"homepage"`
}

PersonLatest type is a struct for latest JSON response.

type PersonMovieCreditCast

type PersonMovieCreditCast struct {
	Character        string  `json:"character"`
	CreditID         string  `json:"credit_id"`
	PosterPath       string  `json:"poster_path"`
	ID               int64   `json:"id"`
	Order            int     `json:"order"`
	Video            bool    `json:"video"`
	VoteCount        int64   `json:"vote_count"`
	Adult            bool    `json:"adult"`
	BackdropPath     string  `json:"backdrop_path"`
	GenreIDs         []int64 `json:"genre_ids"`
	OriginalLanguage string  `json:"original_language"`
	OriginalTitle    string  `json:"original_title"`
	Popularity       float32 `json:"popularity"`
	Title            string  `json:"title"`
	VoteAverage      float32 `json:"vote_average"`
	Overview         string  `json:"overview"`
	ReleaseDate      string  `json:"release_date"`
}

type PersonMovieCreditCrew

type PersonMovieCreditCrew struct {
	ID               int64   `json:"id"`
	Department       string  `json:"department"`
	OriginalLanguage string  `json:"original_language"`
	OriginalTitle    string  `json:"original_title"`
	Job              string  `json:"job"`
	Overview         string  `json:"overview"`
	VoteCount        int64   `json:"vote_count"`
	Video            bool    `json:"video"`
	ReleaseDate      string  `json:"release_date"`
	VoteAverage      float32 `json:"vote_average"`
	Title            string  `json:"title"`
	Popularity       float32 `json:"popularity"`
	GenreIDs         []int64 `json:"genre_ids"`
	BackdropPath     string  `json:"backdrop_path"`
	Adult            bool    `json:"adult"`
	PosterPath       string  `json:"poster_path"`
	CreditID         string  `json:"credit_id"`
}

type PersonMovieCredits

type PersonMovieCredits struct {
	Cast []*PersonMovieCreditCast `json:"cast"`
	Crew []*PersonMovieCreditCrew `json:"crew"`
	ID   int64                    `json:"id,omitempty"`
}

PersonMovieCredits type is a struct for movie credits JSON response.

type PersonMovieCreditsAppend

type PersonMovieCreditsAppend struct {
	MovieCredits *PersonMovieCredits `json:"movie_credits,omitempty"`
}

PersonMovieCreditsAppend type is a struct for movie credits in append to response.

type PersonPopular

type PersonPopular struct {
	Page         int64                  `json:"page"`
	TotalResults int64                  `json:"total_results"`
	TotalPages   int64                  `json:"total_pages"`
	Results      []*PersonPopularResult `json:"results"`
}

PersonPopular type is a struct for popular JSON response.

type PersonPopularKnownFor

type PersonPopularKnownFor struct {
	OriginalTitle    string   `json:"original_title,omitempty"`
	OriginalName     string   `json:"original_name,omitempty"`
	ID               int64    `json:"id"`
	MediaType        string   `json:"media_type"`
	Name             string   `json:"name,omitempty"`
	Title            string   `json:"title,omitempty"`
	VoteCount        int64    `json:"vote_count"`
	VoteAverage      float32  `json:"vote_average"`
	PosterPath       string   `json:"poster_path"`
	FirstAirDate     string   `json:"first_air_date,omitempty"`
	ReleaseDate      string   `json:"release_date,omitempty"`
	Popularity       float32  `json:"popularity"`
	GenreIDs         []int64  `json:"genre_ids"`
	OriginalLanguage string   `json:"original_language"`
	BackdropPath     string   `json:"backdrop_path"`
	Overview         string   `json:"overview"`
	OriginCountry    []string `json:"origin_country,omitempty"`
}

type PersonPopularResult

type PersonPopularResult struct {
	Popularity  float32                  `json:"popularity"`
	ID          int64                    `json:"id"`
	ProfilePath string                   `json:"profile_path"`
	Name        string                   `json:"name"`
	KnownFor    []*PersonPopularKnownFor `json:"known_for"`
	Adult       bool                     `json:"adult"`
}

type PersonTVCredits

type PersonTVCredits struct {
	Cast []*PersonTvCreditCast `json:"cast"`
	Crew []*PersonTvCreditCrew `json:"crew"`
	ID   int64                 `json:"id,omitempty"`
}

PersonTVCredits type is a struct for tv credits JSON response.

type PersonTVCreditsAppend

type PersonTVCreditsAppend struct {
	TVCredits *PersonTVCredits `json:"tv_credits,omitempty"`
}

PersonTVCreditsAppend type is a struct for tv credits in append to response.

type PersonTaggedImageMedia

type PersonTaggedImageMedia struct {
	Popularity       float32 `json:"popularity"`
	VoteCount        int64   `json:"vote_count"`
	Video            bool    `json:"video"`
	PosterPath       string  `json:"poster_path"`
	ID               int64   `json:"id"`
	Adult            bool    `json:"adult"`
	BackdropPath     string  `json:"backdrop_path"`
	OriginalLanguage string  `json:"original_language"`
	OriginalTitle    string  `json:"original_title"`
	GenreIDs         []int64 `json:"genre_ids"`
	Title            string  `json:"title"`
	VoteAverage      float32 `json:"vote_average"`
	Overview         string  `json:"overview"`
	ReleaseDate      string  `json:"release_date"`
}

type PersonTaggedImageResult

type PersonTaggedImageResult struct {
	LanguageCode string                  `json:"iso_639_1"`
	VoteCount    int64                   `json:"vote_count"`
	MediaType    string                  `json:"media_type"`
	FilePath     string                  `json:"file_path"`
	AspectRatio  float32                 `json:"aspect_ratio"`
	Media        *PersonTaggedImageMedia `json:"media"`
	Height       int                     `json:"height"`
	VoteAverage  float32                 `json:"vote_average"`
	Width        int                     `json:"width"`
}

type PersonTaggedImages

type PersonTaggedImages struct {
	ID           int64                      `json:"id"`
	Page         int64                      `json:"page"`
	TotalResults int64                      `json:"total_results"`
	TotalPages   int64                      `json:"total_pages"`
	Results      []*PersonTaggedImageResult `json:"results"`
}

PersonTaggedImages type is a struct for tagged images JSON response.

type PersonTaggedImagesAppend

type PersonTaggedImagesAppend struct {
	TaggedImages *PersonTaggedImages `json:"tagged_images,omitempty"`
}

PersonTaggedImagesAppend type is a struct for tagged images in append to response.

type PersonTranslation

type PersonTranslation struct {
	LanguageCode string                 `json:"iso_639_1"`
	CountryCode  string                 `json:"iso_3166_1"`
	Name         string                 `json:"name"`
	Data         *PersonTranslationData `json:"data"`
	EnglishName  string                 `json:"english_name"`
}

type PersonTranslationData

type PersonTranslationData struct {
	Biography string `json:"biography"`
}

type PersonTranslations

type PersonTranslations struct {
	Translations []*PersonTranslation `json:"translations"`
	ID           int64                `json:"id,omitempty"`
}

PersonTranslations type is a struct for translations JSON response.

type PersonTranslationsAppend

type PersonTranslationsAppend struct {
	Translations *PersonTranslations `json:"translations,omitempty"`
}

PersonTranslationsAppend type is a struct for translations in append to response.

type PersonTvCreditCast

type PersonTvCreditCast struct {
	CreditID         string   `json:"credit_id"`
	OriginalName     string   `json:"original_name"`
	ID               int64    `json:"id"`
	GenreIDs         []int64  `json:"genre_ids"`
	Character        string   `json:"character"`
	Name             string   `json:"name"`
	PosterPath       string   `json:"poster_path"`
	VoteCount        int64    `json:"vote_count"`
	VoteAverage      float32  `json:"vote_average"`
	Popularity       float32  `json:"popularity"`
	EpisodeCount     int      `json:"episode_count"`
	OriginalLanguage string   `json:"original_language"`
	FirstAirDate     string   `json:"first_air_date"`
	BackdropPath     string   `json:"backdrop_path"`
	Overview         string   `json:"overview"`
	OriginCountry    []string `json:"origin_country"`
}

type PersonTvCreditCrew

type PersonTvCreditCrew struct {
	ID               int64    `json:"id"`
	Department       string   `json:"department"`
	OriginalLanguage string   `json:"original_language"`
	EpisodeCount     int      `json:"episode_count"`
	Job              string   `json:"job"`
	Overview         string   `json:"overview"`
	OriginCountry    []string `json:"origin_country"`
	OriginalName     string   `json:"original_name"`
	GenreIDs         []int64  `json:"genre_ids"`
	Name             string   `json:"name"`
	FirstAirDate     string   `json:"first_air_date"`
	BackdropPath     string   `json:"backdrop_path"`
	Popularity       float32  `json:"popularity"`
	VoteCount        int64    `json:"vote_count"`
	VoteAverage      float32  `json:"vote_average"`
	PosterPath       string   `json:"poster_path"`
	CreditID         string   `json:"credit_id"`
}

type RequestToken

type RequestToken struct {
	Success        bool   `json:"success"`
	ExpiresAt      string `json:"expires_at"`
	GuestSessionID string `json:"guest_session_id,omitempty"`
	RequestToken   string `json:"request_token,omitempty"`
}

RequestToken type is a struct for request token JSON response.

type Response

type Response struct {
	StatusCode    int    `json:"status_code"`
	StatusMessage string `json:"status_message"`
}

Response type is a struct for http responses.

type ReviewAuthorDetails

type ReviewAuthorDetails struct {
	AvatarPath string  `json:"avatar_path"`
	Name       string  `json:"name"`
	Rating     float32 `json:"rating"`
	Username   string  `json:"username"`
}

type ReviewDetails

type ReviewDetails struct {
	ID            string               `json:"id"`
	Author        string               `json:"author"`
	AuthorDetails *ReviewAuthorDetails `json:"author_details"`
	Content       string               `json:"content"`
	CreatedAt     string               `json:"created_at"`
	UpdatedAt     string               `json:"updated_at"`
	LanguageCode  string               `json:"iso_639_1"`
	MediaID       int64                `json:"media_id"`
	MediaTitle    string               `json:"media_title"`
	MediaType     string               `json:"media_type"`
	URL           string               `json:"url"`
}

ReviewDetails type is a struct for details JSON response.

type SearchCollections

type SearchCollections struct {
	Page         int64 `json:"page"`
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
	*SearchCollectionsResults
}

SearchCollections type is a strcut for collections JSON response.

type SearchCollectionsResult

type SearchCollectionsResult struct {
	Adult            bool   `json:"adult"`
	BackdropPath     string `json:"backdrop_path"`
	ID               int64  `json:"id"`
	Name             string `json:"name"`
	OriginalLanguage string `json:"original_language"`
	OriginalName     string `json:"original_name"`
	Overview         string `json:"overview"`
	PosterPath       string `json:"poster_path"`
}

type SearchCollectionsResults

type SearchCollectionsResults struct {
	Results []*SearchCollectionsResult `json:"results"`
}

SearchCollectionsResults Result Types

type SearchCompanies

type SearchCompanies struct {
	Page         int64 `json:"page"`
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
	*SearchCompaniesResults
}

SearchCompanies type is a struct for companies JSON response.

type SearchCompaniesResult

type SearchCompaniesResult struct {
	ID            int64  `json:"id"`
	LogoPath      string `json:"logo_path"`
	Name          string `json:"name"`
	OriginCountry string `json:"origin_country"`
}

type SearchCompaniesResults

type SearchCompaniesResults struct {
	Results []*SearchCompaniesResult `json:"results"`
}

SearchCompaniesResults Result Types

type SearchKeywords

type SearchKeywords struct {
	Page         int64 `json:"page"`
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
	*SearchKeywordsResults
}

SearchKeywords type is a struct for keywords JSON response.

type SearchKeywordsResult

type SearchKeywordsResult struct {
	ID   int64  `json:"id"`
	Name string `json:"name"`
}

type SearchKeywordsResults

type SearchKeywordsResults struct {
	Results []*SearchKeywordsResult `json:"results"`
}

SearchKeywordsResults Result Types

type SearchMovies

type SearchMovies struct {
	Page         int64 `json:"page"`
	TotalResults int64 `json:"total_results"`
	TotalPages   int64 `json:"total_pages"`
	*SearchMoviesResults
}

SearchMovies type is a struct for movies JSON response.

type SearchMoviesResult

type SearchMoviesResult struct {
	VoteCount        int64   `json:"vote_count"`
	ID               int64   `json:"id"`
	Video            bool    `json:"video"`
	VoteAverage      float32 `json:"vote_average"`
	Title            string  `json:"title"`
	Popularity       float32 `json:"popularity"`
	PosterPath       string  `json:"poster_path"`
	OriginalLanguage string  `json:"original_language"`
	OriginalTitle    string  `json:"original_title"`
	GenreIDs         []int64 `json:"genre_ids"`
	BackdropPath     string  `json:"backdrop_path"`
	Adult            bool    `json:"adult"`
	Overview         string  `json:"overview"`
	ReleaseDate      string  `json:"release_date"`
}

type SearchMoviesResults

type SearchMoviesResults struct {
	Results []*SearchMoviesResult `json:"results"`
}

SearchMoviesResults Result Types

type SearchMulti

type SearchMulti struct {
	Page         int   `json:"page"`
	TotalResults int64 `json:"total_results"`
	TotalPages   int64 `json:"total_pages"`
	*SearchMultiResults
}

SearchMulti type is a struct for multi JSON response.

type SearchMultiKnownFor

type SearchMultiKnownFor struct {
	ID               int64   `json:"id"`
	Adult            bool    `json:"adult"`
	BackdropPath     string  `json:"backdrop_path"`
	GenreIDs         []int64 `json:"genre_ids"`
	MediaType        string  `json:"media_type"`
	OriginalLanguage string  `json:"original_language"`
	OriginalTitle    string  `json:"original_title"`
	Overview         string  `json:"overview"`
	PosterPath       string  `json:"poster_path"`
	Popularity       float32 `json:"popularity"`
	ReleaseDate      string  `json:"release_date"`
	Title            string  `json:"title"`
	Video            bool    `json:"video"`
	VoteAverage      float32 `json:"vote_average"`
	VoteCount        int64   `json:"vote_count"`
}

type SearchMultiResult

type SearchMultiResult struct {
	PosterPath       string                 `json:"poster_path,omitempty"`
	Popularity       float32                `json:"popularity"`
	ID               int64                  `json:"id"`
	Overview         string                 `json:"overview,omitempty"`
	BackdropPath     string                 `json:"backdrop_path,omitempty"`
	VoteAverage      float32                `json:"vote_average,omitempty"`
	MediaType        string                 `json:"media_type"`
	FirstAirDate     string                 `json:"first_air_date,omitempty"`
	OriginCountry    []string               `json:"origin_country,omitempty"`
	GenreIDs         []int64                `json:"genre_ids,omitempty"`
	OriginalLanguage string                 `json:"original_language,omitempty"`
	VoteCount        int64                  `json:"vote_count,omitempty"`
	Name             string                 `json:"name,omitempty"`
	OriginalName     string                 `json:"original_name,omitempty"`
	Adult            bool                   `json:"adult,omitempty"`
	ReleaseDate      string                 `json:"release_date,omitempty"`
	OriginalTitle    string                 `json:"original_title,omitempty"`
	Title            string                 `json:"title,omitempty"`
	Video            bool                   `json:"video,omitempty"`
	ProfilePath      string                 `json:"profile_path,omitempty"`
	KnownFor         []*SearchMultiKnownFor `json:"known_for,omitempty"`
}

type SearchMultiResults

type SearchMultiResults struct {
	Results []*SearchMultiResult `json:"results"`
}

SearchMultiResults Result Types

type SearchPeople

type SearchPeople struct {
	Page         int64 `json:"page"`
	TotalResults int64 `json:"total_results"`
	TotalPages   int64 `json:"total_pages"`
	*SearchPeopleResults
}

SearchPeople type is a struct for people JSON response.

type SearchPeopleKnownFor

type SearchPeopleKnownFor struct {
	Adult            bool     `json:"adult,omitempty"` // Movie
	BackdropPath     string   `json:"backdrop_path"`
	FirstAirDate     string   `json:"first_air_date,omitempty"` // TV
	GenreIDs         []int64  `json:"genre_ids"`
	ID               int64    `json:"id"`
	MediaType        string   `json:"media_type"`
	Name             string   `json:"name,omitempty"` // TV
	OriginalLanguage string   `json:"original_language"`
	OriginalName     string   `json:"original_name,omitempty"`  // TV
	OriginalTitle    string   `json:"original_title,omitempty"` // Movie
	OriginCountry    []string `json:"origin_country,omitempty"` // TV
	Overview         string   `json:"overview"`
	Popularity       float32  `json:"popularity"`
	PosterPath       string   `json:"poster_path"`
	ReleaseDate      string   `json:"release_date,omitempty"` // Movie
	Title            string   `json:"title,omitempty"`        // Movie
	Video            bool     `json:"video,omitempty"`        // Movie
	VoteAverage      float32  `json:"vote_average"`
	VoteCount        int64    `json:"vote_count"`
}

type SearchPeopleResult

type SearchPeopleResult struct {
	Adult              bool                    `json:"adult"`
	Gender             int                     `json:"gender,omitempty"`
	ID                 int64                   `json:"id"`
	KnownFor           []*SearchPeopleKnownFor `json:"known_for"`
	KnownForDepartment string                  `json:"known_for_department"`
	Name               string                  `json:"name"`
	Popularity         float32                 `json:"popularity"`
	ProfilePath        string                  `json:"profile_path"`
}

type SearchPeopleResults

type SearchPeopleResults struct {
	Results []*SearchPeopleResult `json:"results"`
}

SearchPeopleResults Result Types

type SearchTVShows

type SearchTVShows struct {
	Page         int64 `json:"page"`
	TotalResults int64 `json:"total_results"`
	TotalPages   int64 `json:"total_pages"`
	*SearchTVShowsResults
}

SearchTVShows type is a struct for tv show JSON response.

type SearchTVShowsResult

type SearchTVShowsResult struct {
	ID               int64    `json:"id"`
	BackdropPath     string   `json:"backdrop_path"`
	FirstAirDate     string   `json:"first_air_date"`
	GenreIDs         []int64  `json:"genre_ids"`
	Name             string   `json:"name"`
	OriginalLanguage string   `json:"original_language"`
	OriginalName     string   `json:"original_name"`
	OriginCountry    []string `json:"origin_country"`
	Overview         string   `json:"overview"`
	PosterPath       string   `json:"poster_path"`
	Popularity       float32  `json:"popularity"`
	VoteAverage      float32  `json:"vote_average"`
	VoteCount        int64    `json:"vote_count"`
}

type SearchTVShowsResults

type SearchTVShowsResults struct {
	Results []*SearchTVShowsResult `json:"results"`
}

SearchTVShowsResults Result Types

type Session

type Session struct {
	Success   bool   `json:"success"`
	SessionID string `json:"session_id"`
}

Session type is a struct for session JSON response.

type SessionWithLogin

type SessionWithLogin struct {
	Username     string `json:"username"`
	Password     string `json:"password"`
	RequestToken string `json:"request_token"`
}

SessionWithLogin type is a struct for session with login JSON response.

type TMDBClient

type TMDBClient interface {
	AddMovie(listID int64, mediaID *ListMedia) (*Response, error)
	AddToWatchlist(id int64, title *AccountWatchlist) (*Response, error)
	ClearList(listID int64, confirm bool) (*Response, error)
	CreateGuestSession() (*RequestToken, error)
	CreateList(list *ListCreate) (*ListResponse, error)
	CreateRequestToken() (*RequestToken, error)
	DeleteList(listID int64) (*Response, error)
	DeleteMovieRating(id int64, urlOptions map[string]string) (*Response, error)
	DeleteTVShowRating(id int64, urlOptions map[string]string) (*Response, error)
	GetAccountDetails() (*AccountDetails, error)
	GetAvailableWatchProviderRegions(urlOptions map[string]string) (*WatchRegionList, error)
	GetCertificationMovie() (*CertificationMovie, error)
	GetCertificationTV() (*CertificationTV, error)
	GetChangesMovie(urlOptions map[string]string) (*ChangesMovie, error)
	GetChangesPerson(urlOptions map[string]string) (*ChangesPerson, error)
	GetChangesTV(urlOptions map[string]string) (*ChangesTV, error)
	GetCollectionDetails(id int64, urlOptions map[string]string) (*CollectionDetails, error)
	GetCollectionImages(id int64, urlOptions map[string]string) (*CollectionImages, error)
	GetCollectionTranslations(id int64, urlOptions map[string]string) (*CollectionTranslations, error)
	GetCompanyAlternativeNames(id int64) (*CompanyAlternativeNames, error)
	GetCompanyDetails(id int64) (*CompanyDetails, error)
	GetCompanyImages(id int64) (*CompanyImages, error)
	GetConfigurationAPI() (*ConfigurationAPI, error)
	GetConfigurationCountries() ([]ConfigurationCountry, error)
	GetConfigurationJobs() ([]ConfigurationJobs, error)
	GetConfigurationLanguages() ([]ConfigurationLanguages, error)
	GetConfigurationPrimaryTranslations() ([]ConfigurationPrimaryTranslations, error)
	GetConfigurationTimezones() ([]ConfigurationTimezones, error)
	GetCreatedLists(id int64, urlOptions map[string]string) (*AccountCreatedLists, error)
	GetCreditDetails(id string) (*CreditsDetails, error)
	GetDiscoverMovie(urlOptions map[string]string) (*DiscoverMovie, error)
	GetDiscoverTV(urlOptions map[string]string) (*DiscoverTV, error)
	GetFavoriteMovies(id int64, urlOptions map[string]string) (*AccountFavoriteMovies, error)
	GetFavoriteTVShows(id int64, urlOptions map[string]string) (*AccountFavoriteTVShows, error)
	GetFindByID(id string, urlOptions map[string]string) (*FindByID, error)
	GetGenreMovieList(urlOptions map[string]string) (*GenreList, error)
	GetGenreTVList(urlOptions map[string]string) (*GenreList, error)
	GetGuestSessionRatedMovies(id string, urlOptions map[string]string) (*GuestSessionRatedMovies, error)
	GetGuestSessionRatedTVEpisodes(id string, urlOptions map[string]string) (*GuestSessionRatedTVEpisodes, error)
	GetGuestSessionRatedTVShows(id string, urlOptions map[string]string) (*GuestSessionRatedTVShows, error)
	GetKeywordDetails(id int64) (*KeywordDetails, error)
	GetKeywordMovies(id int64, urlOptions map[string]string) (*KeywordMovies, error)
	GetListDetails(id string, urlOptions map[string]string) (*ListDetails, error)
	GetListItemStatus(id string, urlOptions map[string]string) (*ListItemStatus, error)
	GetMovieAccountStates(id int64, urlOptions map[string]string) (*MovieAccountStates, error)
	GetMovieAlternativeTitles(id int64, urlOptions map[string]string) (*MovieAlternativeTitles, error)
	GetMovieChanges(id int64, urlOptions map[string]string) (*MovieChanges, error)
	GetMovieCredits(id int64, urlOptions map[string]string) (*MovieCredits, error)
	GetMovieDetails(id int64, urlOptions map[string]string) (*MovieDetails, error)
	GetMovieExternalIDs(id int64, urlOptions map[string]string) (*MovieExternalIDs, error)
	GetMovieImages(id int64, urlOptions map[string]string) (*MovieImages, error)
	GetMovieKeywords(id int64) (*MovieKeywords, error)
	GetMovieLatest(urlOptions map[string]string) (*MovieLatest, error)
	GetMovieLists(id int64, urlOptions map[string]string) (*MovieLists, error)
	GetMovieNowPlaying(urlOptions map[string]string) (*MovieNowPlaying, error)
	GetMoviePopular(urlOptions map[string]string) (*MoviePopular, error)
	GetMovieRecommendations(id int64, urlOptions map[string]string) (*MovieRecommendations, error)
	GetMovieReleaseDates(id int64) (*MovieReleaseDates, error)
	GetMovieReviews(id int64, urlOptions map[string]string) (*MovieReviews, error)
	GetMovieSimilar(id int64, urlOptions map[string]string) (*MovieSimilar, error)
	GetMovieTopRated(urlOptions map[string]string) (*MovieTopRated, error)
	GetMovieTranslations(id int64, urlOptions map[string]string) (*MovieTranslations, error)
	GetMovieUpcoming(urlOptions map[string]string) (*MovieUpcoming, error)
	GetMovieVideos(id int64, urlOptions map[string]string) (*MovieVideos, error)
	GetMovieWatchProviders(id int64, urlOptions map[string]string) (*MovieWatchProviders, error)
	GetMovieWatchlist(id int64, urlOptions map[string]string) (*AccountMovieWatchlist, error)
	GetNetworkAlternativeNames(id int64) (*NetworkAlternativeNames, error)
	GetNetworkDetails(id int64) (*NetworkDetails, error)
	GetNetworkImages(id int64) (*NetworkImages, error)
	GetPersonChanges(id int64, urlOptions map[string]string) (*PersonChanges, error)
	GetPersonCombinedCredits(id int64, urlOptions map[string]string) (*PersonCombinedCredits, error)
	GetPersonDetails(id int64, urlOptions map[string]string) (*PersonDetails, error)
	GetPersonExternalIDs(id int64, urlOptions map[string]string) (*PersonExternalIDs, error)
	GetPersonImages(id int64) (*PersonImages, error)
	GetPersonLatest(urlOptions map[string]string) (*PersonLatest, error)
	GetPersonMovieCredits(id int64, urlOptions map[string]string) (*PersonMovieCredits, error)
	GetPersonPopular(urlOptions map[string]string) (*PersonPopular, error)
	GetPersonTVCredits(id int64, urlOptions map[string]string) (*PersonTVCredits, error)
	GetPersonTaggedImages(id int64, urlOptions map[string]string) (*PersonTaggedImages, error)
	GetPersonTranslations(id int64, urlOptions map[string]string) (*PersonTranslations, error)
	GetRatedMovies(id int64, urlOptions map[string]string) (*AccountRatedMovies, error)
	GetRatedTVEpisodes(id int64, urlOptions map[string]string) (*AccountRatedTVEpisodes, error)
	GetRatedTVShows(id int64, urlOptions map[string]string) (*AccountRatedTVShows, error)
	GetReviewDetails(id string) (*ReviewDetails, error)
	GetSearchCollections(query string, urlOptions map[string]string) (*SearchCollections, error)
	GetSearchCompanies(query string, urlOptions map[string]string) (*SearchCompanies, error)
	GetSearchKeywords(query string, urlOptions map[string]string) (*SearchKeywords, error)
	GetSearchMovies(query string, urlOptions map[string]string) (*SearchMovies, error)
	GetSearchMulti(query string, urlOptions map[string]string) (*SearchMulti, error)
	GetSearchPeople(query string, urlOptions map[string]string) (*SearchPeople, error)
	GetSearchTVShow(query string, urlOptions map[string]string) (*SearchTVShows, error)
	GetTVAccountStates(id int64, urlOptions map[string]string) (*TVAccountStates, error)
	GetTVAggregateCredits(id int64, urlOptions map[string]string) (*TVAggregateCredits, error)
	GetTVAiringToday(urlOptions map[string]string) (*TVAiringToday, error)
	GetTVAlternativeTitles(id int64, urlOptions map[string]string) (*TVAlternativeTitles, error)
	GetTVChanges(id int64, urlOptions map[string]string) (*TVChanges, error)
	GetTVContentRatings(id int64, urlOptions map[string]string) (*TVContentRatings, error)
	GetTVCredits(id int64, urlOptions map[string]string) (*TVCredits, error)
	GetTVDetails(id int64, urlOptions map[string]string) (*TVDetails, error)
	GetTVEpisodeChanges(id int64, urlOptions map[string]string) (*TVEpisodeChanges, error)
	GetTVEpisodeCredits(id int64, seasonNumber int, episodeNumber int) (*TVEpisodeCredits, error)
	GetTVEpisodeDetails(id int64, seasonNumber int, episodeNumber int, urlOptions map[string]string) (*TVEpisodeDetails, error)
	GetTVEpisodeExternalIDs(id int64, seasonNumber int, episodeNumber int) (*TVEpisodeExternalIDs, error)
	GetTVEpisodeGroups(id int64, urlOptions map[string]string) (*TVEpisodeGroups, error)
	GetTVEpisodeGroupsDetails(id string, urlOptions map[string]string) (*TVEpisodeGroupsDetails, error)
	GetTVEpisodeImages(id int64, seasonNumber int, episodeNumber int) (*TVEpisodeImages, error)
	GetTVEpisodeTranslations(id int64, seasonNumber int, episodeNumber int) (*TVEpisodeTranslations, error)
	GetTVEpisodeVideos(id int64, seasonNumber int, episodeNumber int, urlOptions map[string]string) (*TVEpisodeVideos, error)
	GetTVExternalIDs(id int64, urlOptions map[string]string) (*TVExternalIDs, error)
	GetTVImages(id int64, urlOptions map[string]string) (*TVImages, error)
	GetTVKeywords(id int64) (*TVKeywords, error)
	GetTVLatest(urlOptions map[string]string) (*TVLatest, error)
	GetTVOnTheAir(urlOptions map[string]string) (*TVOnTheAir, error)
	GetTVPopular(urlOptions map[string]string) (*TVPopular, error)
	GetTVRecommendations(id int64, urlOptions map[string]string) (*TVRecommendations, error)
	GetTVReviews(id int64, urlOptions map[string]string) (*TVReviews, error)
	GetTVScreenedTheatrically(id int64) (*TVScreenedTheatrically, error)
	GetTVSeasonChanges(id int64, urlOptions map[string]string) (*TVSeasonChanges, error)
	GetTVSeasonCredits(id int64, seasonNumber int, urlOptions map[string]string) (*TVSeasonCredits, error)
	GetTVSeasonDetails(id int64, seasonNumber int, urlOptions map[string]string) (*TVSeasonDetails, error)
	GetTVSeasonExternalIDs(id int64, seasonNumber int, urlOptions map[string]string) (*TVSeasonExternalIDs, error)
	GetTVSeasonImages(id int64, seasonNumber int, urlOptions map[string]string) (*TVSeasonImages, error)
	GetTVSeasonVideos(id int64, seasonNumber int, urlOptions map[string]string) (*TVSeasonVideos, error)
	GetTVShowsWatchlist(id int64, urlOptions map[string]string) (*AccountTVShowsWatchlist, error)
	GetTVSimilar(id int64, urlOptions map[string]string) (*TVSimilar, error)
	GetTVTopRated(urlOptions map[string]string) (*TVTopRated, error)
	GetTVTranslations(id int64, urlOptions map[string]string) (*TVTranslations, error)
	GetTVVideos(id int64, urlOptions map[string]string) (*TVVideos, error)
	GetTVWatchProviders(id int64, urlOptions map[string]string) (*TVWatchProviders, error)
	GetTrending(mediaType string, timeWindow string) (*Trending, error)
	GetWatchProvidersMovie(urlOptions map[string]string) (*WatchProviderList, error)
	GetWatchProvidersTV(urlOptions map[string]string) (*WatchProviderList, error)
	MarkAsFavorite(id int64, title *AccountFavorite) (*Response, error)
	PostMovieRating(id int64, rating float32, urlOptions map[string]string) (*Response, error)
	PostTVShowRating(id int64, rating float32, urlOptions map[string]string) (*Response, error)
	RemoveMovie(listID int64, mediaID *ListMedia) (*Response, error)
	SetClientAutoRetry()
	SetClientConfig(httpClient *http.Client)
	SetSessionID(sid string) error
}

type TVAccountStates

type TVAccountStates struct {
	ID        int64               `json:"id"`
	Favorite  bool                `json:"favorite"`
	Rated     jsoniter.RawMessage `json:"rated"`
	Watchlist bool                `json:"watchlist"`
}

TVAccountStates type is a struct for account states JSON response.

type TVAggregateCreditCast

type TVAggregateCreditCast struct {
	ID                 int64                        `json:"id"`
	Adult              bool                         `json:"adult"`
	Gender             int                          `json:"gender"`
	KnownForDepartment string                       `json:"known_for_department"`
	Name               string                       `json:"name"`
	Order              int                          `json:"order"`
	OriginalName       string                       `json:"original_name"`
	Popularity         float64                      `json:"popularity"`
	ProfilePath        string                       `json:"profile_path"`
	Roles              []*TVAggregateCreditCastRole `json:"roles"`
	TotalEpisodeCount  int                          `json:"total_episode_count"`
}

type TVAggregateCreditCastRole

type TVAggregateCreditCastRole struct {
	Character    string `json:"character"`
	CreditID     string `json:"credit_id"`
	EpisodeCount int    `json:"episode_count"`
}

type TVAggregateCreditCrew

type TVAggregateCreditCrew struct {
	ID                 int64                       `json:"id"`
	Adult              bool                        `json:"adult"`
	Department         string                      `json:"department"`
	Gender             int                         `json:"gender"`
	Jobs               []*TVAggregateCreditCrewJob `json:"jobs"`
	TotalEpisodeCount  int                         `json:"total_episode_count"`
	KnownForDepartment string                      `json:"known_for_department"`
	Name               string                      `json:"name"`
	OriginalName       string                      `json:"original_name"`
	Popularity         float64                     `json:"popularity"`
	ProfilePath        string                      `json:"profile_path"`
}

type TVAggregateCreditCrewJob

type TVAggregateCreditCrewJob struct {
	CreditID     string `json:"credit_id"`
	EpisodeCount int    `json:"episode_count"`
	Job          string `json:"job"`
}

type TVAggregateCredits

type TVAggregateCredits struct {
	ID   int64                    `json:"id,omitempty"`
	Cast []*TVAggregateCreditCast `json:"cast"`
	Crew []*TVAggregateCreditCrew `json:"crew"`
}

TVAggregateCredits type is a struct for aggregate credits JSON response.

type TVAggregateCreditsAppend

type TVAggregateCreditsAppend struct {
	AggregateCredits *TVAggregateCredits `json:"aggregate_credits,omitempty"`
}

TVAggregateCreditsAppend type is a struct for aggregate credits in append to response.

type TVAiringToday

type TVAiringToday struct {
	Page         int64 `json:"page"`
	TotalResults int64 `json:"total_results"`
	TotalPages   int64 `json:"total_pages"`
	*TVAiringTodayResults
}

TVAiringToday type is a struct for airing today JSON response.

type TVAiringTodayResult

type TVAiringTodayResult struct {
	OriginalName     string   `json:"original_name"`
	GenreIDs         []int64  `json:"genre_ids"`
	Name             string   `json:"name"`
	Popularity       float32  `json:"popularity"`
	OriginCountry    []string `json:"origin_country"`
	VoteCount        int64    `json:"vote_count"`
	FirstAirDate     string   `json:"first_air_date"`
	BackdropPath     string   `json:"backdrop_path"`
	OriginalLanguage string   `json:"original_language"`
	ID               int64    `json:"id"`
	VoteAverage      float32  `json:"vote_average"`
	Overview         string   `json:"overview"`
	PosterPath       string   `json:"poster_path"`
}

type TVAiringTodayResults

type TVAiringTodayResults struct {
	Results []*TVAiringTodayResult `json:"results"`
}

TVAiringTodayResults Result Types

type TVAlternativeTitles

type TVAlternativeTitles struct {
	ID int `json:"id,omitempty"`
	*TVAlternativeTitlesResults
}

TVAlternativeTitles type is a struct for alternative titles JSON response.

type TVAlternativeTitlesAppend

type TVAlternativeTitlesAppend struct {
	AlternativeTitles *TVAlternativeTitles `json:"alternative_titles,omitempty"`
}

TVAlternativeTitlesAppend type is a struct for alternative titles in append to response.

type TVAlternativeTitlesResult

type TVAlternativeTitlesResult struct {
	CountryCode string `json:"iso_3166_1"`
	Title       string `json:"title"`
	Type        string `json:"type"`
}

type TVAlternativeTitlesResults

type TVAlternativeTitlesResults struct {
	Results []*TVAlternativeTitlesResult `json:"results"`
}

TVAlternativeTitlesResults Result Types

type TVCertifications

type TVCertifications struct {
	AU    []*Certification `json:"AU"`
	BR    []*Certification `json:"BR"`
	CA    []*Certification `json:"CA"`
	CA_QC []*Certification `json:"CA-QC"`
	DE    []*Certification `json:"DE"`
	ES    []*Certification `json:"ES"`
	FR    []*Certification `json:"FR"`
	GB    []*Certification `json:"GB"`
	HU    []*Certification `json:"HU"`
	KR    []*Certification `json:"KR"`
	LT    []*Certification `json:"LT"`
	NL    []*Certification `json:"NL"`
	PH    []*Certification `json:"PH"`
	PT    []*Certification `json:"PT"`
	RU    []*Certification `json:"RU"`
	SK    []*Certification `json:"SK"`
	TH    []*Certification `json:"TH"`
	US    []*Certification `json:"US"`
}

type TVChanges

type TVChanges ChangeSet

TVChanges type is a struct for changes JSON response.

type TVChangesAppend

type TVChangesAppend struct {
	Changes *TVChanges `json:"changes,omitempty"`
}

TVChangesAppend type is a struct for changes in append to response.

type TVContentRatings

type TVContentRatings struct {
	ID int64 `json:"id,omitempty"`
	*TVContentRatingsResults
}

TVContentRatings type is a struct for content ratings JSON response.

type TVContentRatingsAppend

type TVContentRatingsAppend struct {
	ContentRatings *TVContentRatings `json:"content_ratings,omitempty"`
}

TVContentRatingsAppend type is a struct for content ratings in append to response.

type TVContentRatingsResult

type TVContentRatingsResult struct {
	CountryCode string `json:"iso_3166_1"`
	Rating      string `json:"rating"`
}

type TVContentRatingsResults

type TVContentRatingsResults struct {
	Results []*TVContentRatingsResult `json:"results"`
}

TVContentRatingsResults Result Types

type TVCreatedBy

type TVCreatedBy struct {
	ID          int64  `json:"id"`
	CreditID    string `json:"credit_id"`
	Name        string `json:"name"`
	Gender      int    `json:"gender"`
	ProfilePath string `json:"profile_path"`
}

type TVCreditCast

type TVCreditCast struct {
	Character          string  `json:"character"`
	CreditID           string  `json:"credit_id"`
	Gender             int     `json:"gender"`
	ID                 int64   `json:"id"`
	KnownForDepartment string  `json:"known_for_department"`
	Name               string  `json:"name"`
	Order              int     `json:"order"`
	OriginalName       string  `json:"original_name"`
	Popularity         float32 `json:"popularity"`
	ProfilePath        string  `json:"profile_path"`
}

type TVCreditCrew

type TVCreditCrew struct {
	CreditID           string  `json:"credit_id"`
	Department         string  `json:"department"`
	Gender             int     `json:"gender"`
	ID                 int64   `json:"id"`
	Job                string  `json:"job"`
	KnownForDepartment string  `json:"known_for_department"`
	Name               string  `json:"name"`
	OriginalName       string  `json:"original_name"`
	Popularity         float32 `json:"popularity"`
	ProfilePath        string  `json:"profile_path"`
}

type TVCredits

type TVCredits struct {
	ID   int64           `json:"id,omitempty"`
	Cast []*TVCreditCast `json:"cast"`
	Crew []*TVCreditCrew `json:"crew"`
}

TVCredits type is a struct for credits JSON response.

type TVCreditsAppend

type TVCreditsAppend struct {
	Credits *TVCredits `json:"credits,omitempty"`
}

TVCreditsAppend type is a struct for credits in append to response.

type TVDetails

type TVDetails struct {
	BackdropPath        string                 `json:"backdrop_path"`
	CreatedBy           []*TVCreatedBy         `json:"created_by"`
	EpisodeRunTime      []int                  `json:"episode_run_time"`
	FirstAirDate        string                 `json:"first_air_date"`
	Genres              []*Genre               `json:"genres"`
	Homepage            string                 `json:"homepage"`
	ID                  int64                  `json:"id"`
	InProduction        bool                   `json:"in_production"`
	Languages           []string               `json:"languages"`
	LastAirDate         string                 `json:"last_air_date"`
	LastEpisodeToAir    *TVEpisodeToAir        `json:"last_episode_to_air"`
	Name                string                 `json:"name"`
	NextEpisodeToAir    *TVEpisodeToAir        `json:"next_episode_to_air"`
	Networks            []*TVNetwork           `json:"networks"`
	NumberOfEpisodes    int                    `json:"number_of_episodes"`
	NumberOfSeasons     int                    `json:"number_of_seasons"`
	OriginCountry       []string               `json:"origin_country"`
	OriginalLanguage    string                 `json:"original_language"`
	OriginalName        string                 `json:"original_name"`
	Overview            string                 `json:"overview"`
	Popularity          float32                `json:"popularity"`
	PosterPath          string                 `json:"poster_path"`
	ProductionCompanies []*TVProductionCompany `json:"production_companies"`
	ProductionCountries []*TVProductionCountry `json:"production_countries"`
	Seasons             []*TVSeason            `json:"seasons"`
	Status              string                 `json:"status"`
	Tagline             string                 `json:"tagline"`
	Type                string                 `json:"type"`
	VoteAverage         float32                `json:"vote_average"`
	VoteCount           int64                  `json:"vote_count"`
	*TVAggregateCreditsAppend
	*TVAlternativeTitlesAppend
	*TVChangesAppend
	*TVContentRatingsAppend
	*TVCreditsAppend
	*TVEpisodeGroupsAppend
	*TVExternalIDsAppend
	*TVImagesAppend
	*TVKeywordsAppend
	*TVRecommendationsAppend
	*TVReviewsAppend
	*TVScreenedTheatricallyAppend
	*TVSimilarAppend
	*TVTranslationsAppend
	*TVVideosAppend
	*TVWatchProvidersAppend
}

TVDetails type is a struct for details JSON response.

type TVEpisodeChanges

type TVEpisodeChanges ChangeSet

TVEpisodeChanges type is a struct for changes JSON response.

type TVEpisodeCreditCast

type TVEpisodeCreditCast struct {
	Character   string `json:"character"`
	CreditID    string `json:"credit_id"`
	Gender      int    `json:"gender"`
	ID          int64  `json:"id"`
	Name        string `json:"name"`
	Order       int    `json:"order"`
	ProfilePath string `json:"profile_path"`
}

type TVEpisodeCreditCrew

type TVEpisodeCreditCrew struct {
	ID          int64  `json:"id"`
	CreditID    string `json:"credit_id"`
	Name        string `json:"name"`
	Department  string `json:"department"`
	Job         string `json:"job"`
	Gender      int    `json:"gender"`
	ProfilePath string `json:"profile_path"`
}

type TVEpisodeCreditGuestStar

type TVEpisodeCreditGuestStar struct {
	ID          int64  `json:"id"`
	Name        string `json:"name"`
	CreditID    string `json:"credit_id"`
	Character   string `json:"character"`
	Order       int    `json:"order"`
	Gender      int    `json:"gender"`
	ProfilePath string `json:"profile_path"`
}

type TVEpisodeCredits

type TVEpisodeCredits struct {
	Cast       []*TVEpisodeCreditCast      `json:"cast"`
	Crew       []*TVEpisodeCreditCrew      `json:"crew"`
	GuestStars []*TVEpisodeCreditGuestStar `json:"guest_stars"`
	ID         int64                       `json:"id,omitempty"`
}

TVEpisodeCredits type is a struct for credits JSON response.

type TVEpisodeCreditsAppend

type TVEpisodeCreditsAppend struct {
	Credits *TVEpisodeCredits `json:"credits,omitempty"`
}

TVEpisodeCreditsAppend type is a struct for credits in append to response.

type TVEpisodeCrew

type TVEpisodeCrew struct {
	ID          int64  `json:"id"`
	CreditID    string `json:"credit_id"`
	Name        string `json:"name"`
	Department  string `json:"department"`
	Job         string `json:"job"`
	Gender      int    `json:"gender"`
	ProfilePath string `json:"profile_path"`
}

type TVEpisodeDetails

type TVEpisodeDetails struct {
	AirDate        string                `json:"air_date"`
	EpisodeNumber  int                   `json:"episode_number"`
	Crew           []*TVEpisodeCrew      `json:"crew"`
	GuestStars     []*TVEpisodeGuestStar `json:"guest_stars"`
	Name           string                `json:"name"`
	Overview       string                `json:"overview"`
	ID             int64                 `json:"id"`
	ProductionCode string                `json:"production_code"`
	SeasonNumber   int                   `json:"season_number"`
	StillPath      string                `json:"still_path"`
	VoteAverage    float32               `json:"vote_average"`
	VoteCount      int64                 `json:"vote_count"`
	*TVEpisodeCreditsAppend
	*TVEpisodeExternalIDsAppend
	*TVEpisodeImagesAppend
	*TVEpisodeTranslationsAppend
	*TVEpisodeVideosAppend
}

TVEpisodeDetails type is a struct for details JSON response.

type TVEpisodeExternalIDs

type TVEpisodeExternalIDs struct {
	ID          int64  `json:"id,omitempty"`
	IMDbID      string `json:"imdb_id"`
	FreebaseMID string `json:"freebase_mid"`
	FreebaseID  string `json:"freebase_id"`
	TVDBID      int64  `json:"tvdb_id"`
	TVRageID    int64  `json:"tvrage_id"`
}

TVEpisodeExternalIDs type is a struct for external ids JSON response.

type TVEpisodeExternalIDsAppend

type TVEpisodeExternalIDsAppend struct {
	ExternalIDs *TVEpisodeExternalIDs `json:"external_ids,omitempty"`
}

TVEpisodeExternalIDsAppend type is a struct for external ids in append to response.

type TVEpisodeGroup

type TVEpisodeGroup struct {
	ID       string                   `json:"id"`
	Name     string                   `json:"name"`
	Order    int                      `json:"order"`
	Episodes []*TVEpisodeGroupEpisode `json:"episodes"`
	Locked   bool                     `json:"locked"`
}

type TVEpisodeGroupEpisode

type TVEpisodeGroupEpisode struct {
	AirDate        string              `json:"air_date"`
	EpisodeNumber  int                 `json:"episode_number"`
	ID             int64               `json:"id"`
	Name           string              `json:"name"`
	Overview       string              `json:"overview"`
	ProductionCode jsoniter.RawMessage `json:"production_code"`
	SeasonNumber   int                 `json:"season_number"`
	ShowID         int64               `json:"show_id"`
	StillPath      string              `json:"still_path"`
	VoteAverage    float32             `json:"vote_average"`
	VoteCount      int64               `json:"vote_count"`
	Order          int                 `json:"order"`
}

type TVEpisodeGroupNetwork

type TVEpisodeGroupNetwork struct {
	ID            int64  `json:"id"`
	LogoPath      string `json:"logo_path"`
	Name          string `json:"name"`
	OriginCountry string `json:"origin_country"`
}

type TVEpisodeGroups

type TVEpisodeGroups struct {
	ID int64 `json:"id,omitempty"`
	*TVEpisodeGroupsResults
}

TVEpisodeGroups type is a struct for episode groups JSON response.

type TVEpisodeGroupsAppend

type TVEpisodeGroupsAppend struct {
	EpisodeGroups *TVEpisodeGroups `json:"episode_groups,omitempty"`
}

TVEpisodeGroupsAppend type is a struct for episode groups in append to response.

type TVEpisodeGroupsDetails

type TVEpisodeGroupsDetails struct {
	Description  string                 `json:"description"`
	EpisodeCount int                    `json:"episode_count"`
	GroupCount   int                    `json:"group_count"`
	Groups       []*TVEpisodeGroup      `json:"groups"`
	ID           string                 `json:"id"`
	Name         string                 `json:"name"`
	Network      *TVEpisodeGroupNetwork `json:"network"`
	Type         int                    `json:"type"`
}

TVEpisodeGroupsDetails type is a struct for details JSON response.

type TVEpisodeGroupsResult

type TVEpisodeGroupsResult struct {
	Description  string                 `json:"description"`
	EpisodeCount int                    `json:"episode_count"`
	GroupCount   int                    `json:"group_count"`
	ID           string                 `json:"id"`
	Name         string                 `json:"name"`
	Network      *TVEpisodeGroupNetwork `json:"network"`
	Type         int                    `json:"type"`
}

type TVEpisodeGroupsResults

type TVEpisodeGroupsResults struct {
	Results []*TVEpisodeGroupsResult `json:"results"`
}

TVEpisodeGroupsResults Result Types

type TVEpisodeGuestStar

type TVEpisodeGuestStar struct {
	ID          int64  `json:"id"`
	Name        string `json:"name"`
	CreditID    string `json:"credit_id"`
	Character   string `json:"character"`
	Order       int    `json:"order"`
	Gender      int    `json:"gender"`
	ProfilePath string `json:"profile_path"`
}

type TVEpisodeImages

type TVEpisodeImages struct {
	ID     int64    `json:"id,omitempty"`
	Stills []*Image `json:"stills"`
}

TVEpisodeImages type is a struct for images JSON response.

type TVEpisodeImagesAppend

type TVEpisodeImagesAppend struct {
	Images *TVEpisodeImages `json:"images,omitempty"`
}

TVEpisodeImagesAppend type is a struct for images in append to response.

type TVEpisodeRate

type TVEpisodeRate struct {
	StatusCode    int    `json:"status_code"`
	StatusMessage string `json:"status_message"`
}

TVEpisodeRate type is a struct for rate JSON response.

type TVEpisodeToAir

type TVEpisodeToAir struct {
	AirDate        string  `json:"air_date"`
	EpisodeNumber  int     `json:"episode_number"`
	ID             int64   `json:"id"`
	Name           string  `json:"name"`
	Overview       string  `json:"overview"`
	ProductionCode string  `json:"production_code"`
	SeasonNumber   int     `json:"season_number"`
	ShowID         int64   `json:"show_id"`
	StillPath      string  `json:"still_path"`
	VoteAverage    float32 `json:"vote_average"`
	VoteCount      int64   `json:"vote_count"`
}

type TVEpisodeTranslation

type TVEpisodeTranslation struct {
	CountryCode  string                    `json:"iso_3166_1"`
	LanguageCode string                    `json:"iso_639_1"`
	Name         string                    `json:"name"`
	EnglishName  string                    `json:"english_name"`
	Data         *TVEpisodeTranslationData `json:"data"`
}

type TVEpisodeTranslationData

type TVEpisodeTranslationData struct {
	Name     string `json:"name"`
	Overview string `json:"overview"`
}

type TVEpisodeTranslations

type TVEpisodeTranslations struct {
	ID           int64                   `json:"id,omitempty"`
	Translations []*TVEpisodeTranslation `json:"translations"`
}

TVEpisodeTranslations type is a struct for translations JSON response.

type TVEpisodeTranslationsAppend

type TVEpisodeTranslationsAppend struct {
	Translations *TVEpisodeTranslations `json:"translations,omitempty"`
}

TVEpisodeTranslationsAppend type is a struct for translations in append to response.

type TVEpisodeVideoResult

type TVEpisodeVideoResult struct {
	ID           string `json:"id"`
	LanguageCode string `json:"iso_639_1"`
	CountryCode  string `json:"iso_3166_1"`
	Key          string `json:"key"`
	Name         string `json:"name"`
	Site         string `json:"site"`
	Size         int    `json:"size"`
	Type         string `json:"type"`
}

type TVEpisodeVideos

type TVEpisodeVideos struct {
	ID      int64                   `json:"id,omitempty"`
	Results []*TVEpisodeVideoResult `json:"results"`
}

TVEpisodeVideos type is a struct for videos JSON response.

type TVEpisodeVideosAppend

type TVEpisodeVideosAppend struct {
	Videos *TVEpisodeVideos `json:"videos,omitempty"`
}

TVEpisodeVideosAppend type is a struct for videos in append to response.

type TVExternalIDs

type TVExternalIDs struct {
	IMDbID      string `json:"imdb_id"`
	FreebaseMID string `json:"freebase_mid"`
	FreebaseID  string `json:"freebase_id"`
	TVDBID      int64  `json:"tvdb_id"`
	TVRageID    int64  `json:"tvrage_id"`
	FacebookID  string `json:"facebook_id"`
	InstagramID string `json:"instagram_id"`
	TwitterID   string `json:"twitter_id"`
	ID          int64  `json:"id,omitempty"`
}

TVExternalIDs type is a struct for external ids JSON response.

type TVExternalIDsAppend

type TVExternalIDsAppend struct {
	*TVExternalIDs `json:"external_ids,omitempty"`
}

TVExternalIDsAppend type is a short for external ids in append to response.

type TVImages

type TVImages struct {
	ID        int64    `json:"id,omitempty"`
	Backdrops []*Image `json:"backdrops"`
	Posters   []*Image `json:"posters"`
}

TVImages type is a struct for images JSON response.

type TVImagesAppend

type TVImagesAppend struct {
	Images *TVImages `json:"images,omitempty"`
}

TVImagesAppend type is a struct for images in append to response.

type TVKeywords

type TVKeywords struct {
	ID int64 `json:"id,omitempty"`
	*TVKeywordsResults
}

TVKeywords type is a struct for keywords JSON response.

type TVKeywordsAppend

type TVKeywordsAppend struct {
	Keywords *TVKeywords `json:"keywords,omitempty"`
}

TVKeywordsAppend type is a struct for keywords in append to response.

type TVKeywordsResult

type TVKeywordsResult struct {
	ID   int64  `json:"id"`
	Name string `json:"name"`
}

type TVKeywordsResults

type TVKeywordsResults struct {
	Results []*TVKeywordsResult `json:"results"`
}

TVKeywordsResults Result Types

type TVLatest

type TVLatest TVDetails

TVLatest type is a struct for latest JSON response.

type TVNetwork

type TVNetwork struct {
	Name          string `json:"name"`
	ID            int64  `json:"id"`
	LogoPath      string `json:"logo_path"`
	OriginCountry string `json:"origin_country"`
}

type TVOnTheAir

type TVOnTheAir TVAiringToday

TVOnTheAir type is a struct for on the air JSON response.

type TVPopular

type TVPopular TVAiringToday

TVPopular type is a struct for popular JSON response.

type TVProductionCompany

type TVProductionCompany struct {
	Name          string `json:"name"`
	ID            int64  `json:"id"`
	LogoPath      string `json:"logo_path"`
	OriginCountry string `json:"origin_country"`
}

type TVProductionCountry

type TVProductionCountry struct {
	CountryCode string `json:"iso_3166_1"`
	Name        string `json:"name"`
}

type TVRecommendations

type TVRecommendations struct {
	Page         int64 `json:"page"`
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
	*TVRecommendationsResults
}

TVRecommendations type is a struct for recommendations JSON response.

type TVRecommendationsAppend

type TVRecommendationsAppend struct {
	Recommendations *TVRecommendations `json:"recommendations,omitempty"`
}

TVRecommendationsAppend type is a struct for recommendations in append to response.

type TVRecommendationsResult

type TVRecommendationsResult struct {
	PosterPath       string   `json:"poster_path"`
	Popularity       float32  `json:"popularity"`
	ID               int64    `json:"id"`
	BackdropPath     string   `json:"backdrop_path"`
	VoteAverage      float32  `json:"vote_average"`
	Overview         string   `json:"overview"`
	FirstAirDate     string   `json:"first_air_date"`
	OriginCountry    []string `json:"origin_country"`
	GenreIDs         []int64  `json:"genre_ids"`
	OriginalLanguage string   `json:"original_language"`
	VoteCount        int64    `json:"vote_count"`
	Name             string   `json:"name"`
	OriginalName     string   `json:"original_name"`
}

type TVRecommendationsResults

type TVRecommendationsResults struct {
	Results []*TVRecommendationsResult `json:"results"`
}

TVRecommendationsResults Result Types

type TVReviews

type TVReviews struct {
	ID           int64 `json:"id,omitempty"`
	Page         int64 `json:"page"`
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
	*TVReviewsResults
}

TVReviews type is a struct for reviews JSON response.

type TVReviewsAppend

type TVReviewsAppend struct {
	Reviews *TVReviews `json:"reviews,omitempty"`
}

TVReviewsAppend type is a struct for reviews in append to response.

type TVReviewsResult

type TVReviewsResult struct {
	ID      string `json:"id"`
	Author  string `json:"author"`
	Content string `json:"content"`
	URL     string `json:"url"`
}

type TVReviewsResults

type TVReviewsResults struct {
	Results []*TVReviewsResult `json:"results"`
}

TVReviewsResults Result Types

type TVScreenedTheatrically

type TVScreenedTheatrically struct {
	ID int64 `json:"id,omitempty"`
	*TVScreenedTheatricallyResults
}

TVScreenedTheatrically type is a struct for screened theatrically JSON response.

type TVScreenedTheatricallyAppend

type TVScreenedTheatricallyAppend struct {
	ScreenedTheatrically *TVScreenedTheatrically `json:"screened_theatrically,omitempty"`
}

TVScreenedTheatricallyAppend type is a struct for screened theatrically in append to response.

type TVScreenedTheatricallyResult

type TVScreenedTheatricallyResult struct {
	ID            int64 `json:"id"`
	EpisodeNumber int   `json:"episode_number"`
	SeasonNumber  int   `json:"season_number"`
}

type TVScreenedTheatricallyResults

type TVScreenedTheatricallyResults struct {
	Results []*TVScreenedTheatricallyResult `json:"results"`
}

TVScreenedTheatricallyResults Result Types

type TVSeason

type TVSeason struct {
	AirDate      string `json:"air_date"`
	EpisodeCount int    `json:"episode_count"`
	ID           int64  `json:"id"`
	Name         string `json:"name"`
	Overview     string `json:"overview"`
	PosterPath   string `json:"poster_path"`
	SeasonNumber int    `json:"season_number"`
}

type TVSeasonChanges

type TVSeasonChanges ChangeSet

TVSeasonChanges is a struct for changes JSON response.

type TVSeasonCreditCast

type TVSeasonCreditCast struct {
	Character   string `json:"character"`
	CreditID    string `json:"credit_id"`
	Gender      int    `json:"gender"`
	ID          int64  `json:"id"`
	Name        string `json:"name"`
	Order       int    `json:"order"`
	ProfilePath string `json:"profile_path"`
}

type TVSeasonCreditCrew

type TVSeasonCreditCrew struct {
	CreditID    string `json:"credit_id"`
	Department  string `json:"department"`
	Gender      int    `json:"gender"`
	ID          int64  `json:"id"`
	Job         string `json:"job"`
	Name        string `json:"name"`
	ProfilePath string `json:"profile_path"`
}

type TVSeasonCredits

type TVSeasonCredits struct {
	Cast []*TVSeasonCreditCast `json:"cast"`
	Crew []*TVSeasonCreditCrew `json:"crew"`
	ID   int                   `json:"id"`
}

TVSeasonCredits type is a struct for credits JSON response.

type TVSeasonCreditsAppend

type TVSeasonCreditsAppend struct {
	Credits *TVSeasonCredits `json:"credits,omitempty"`
}

TVSeasonCreditsAppend type is a struct for credits in append to response.

type TVSeasonDetails

type TVSeasonDetails struct {
	IDString     string             `json:"_id"`
	AirDate      string             `json:"air_date"`
	Episodes     []*TVSeasonEpisode `json:"episodes"`
	Name         string             `json:"name"`
	Overview     string             `json:"overview"`
	ID           int64              `json:"id"`
	PosterPath   string             `json:"poster_path"`
	SeasonNumber int                `json:"season_number"`
	*TVSeasonCreditsAppend
	*TVSeasonExternalIDsAppend
	*TVSeasonImagesAppend
	*TVSeasonVideosAppend
}

TVSeasonDetails is a struct for details JSON response.

type TVSeasonEpisode

type TVSeasonEpisode struct {
	ShowID int64 `json:"show_id"`
	*TVEpisodeDetails
}

type TVSeasonExternalIDs

type TVSeasonExternalIDs struct {
	FreebaseMID string `json:"freebase_mid"`
	FreebaseID  string `json:"freebase_id"`
	TVDBID      int64  `json:"tvdb_id"`
	TVRageID    int64  `json:"tvrage_id"`
	ID          int64  `json:"id,omitempty"`
}

TVSeasonExternalIDs type is a struct for external ids JSON response.

type TVSeasonExternalIDsAppend

type TVSeasonExternalIDsAppend struct {
	ExternalIDs *TVSeasonExternalIDs `json:"external_ids,omitempty"`
}

TVSeasonExternalIDsAppend type is a struct for external ids in append to response.

type TVSeasonImages

type TVSeasonImages struct {
	ID      int64    `json:"id,omitempty"`
	Posters []*Image `json:"posters"`
}

TVSeasonImages type is a struct for images JSON response.

type TVSeasonImagesAppend

type TVSeasonImagesAppend struct {
	Images *TVSeasonImages `json:"images,omitempty"`
}

TVSeasonImagesAppend type is a struct for images in append to response.

type TVSeasonVideoResult

type TVSeasonVideoResult struct {
	ID           string `json:"id"`
	LanguageCode string `json:"iso_639_1"`
	CountryCode  string `json:"iso_3166_1"`
	Key          string `json:"key"`
	Name         string `json:"name"`
	Site         string `json:"site"`
	Size         int    `json:"size"`
	Type         string `json:"type"`
}

type TVSeasonVideos

type TVSeasonVideos struct {
	ID      int64                  `json:"id,omitempty"`
	Results []*TVSeasonVideoResult `json:"results"`
}

TVSeasonVideos type is a struct for videos JSON response.

type TVSeasonVideosAppend

type TVSeasonVideosAppend struct {
	Videos *TVSeasonVideos `json:"videos,omitempty"`
}

TVSeasonVideosAppend type is a struct for videos in append to response.

type TVSimilar

type TVSimilar TVRecommendations

TVSimilar type is a struct for similar tv shows JSON response.

type TVSimilarAppend

type TVSimilarAppend struct {
	Similar *TVSimilar `json:"similar,omitempty"`
}

TVSimilarAppend type is a struct for similar tv shows in append to response.

type TVTopRated

type TVTopRated TVAiringToday

TVTopRated type is a struct for top rated JSON response.

type TVTranslation

type TVTranslation struct {
	CountryCode  string             `json:"iso_3166_1"`
	LanguageCode string             `json:"iso_639_1"`
	Name         string             `json:"name"`
	EnglishName  string             `json:"english_name"`
	Data         *TVTranslationData `json:"data"`
}

type TVTranslationData

type TVTranslationData struct {
	Name     string `json:"name"`
	Overview string `json:"overview"`
	Tagline  string `json:"tagline"`
	Homepage string `json:"homepage"`
}

type TVTranslations

type TVTranslations struct {
	ID           int64            `json:"id,omitempty"`
	Translations []*TVTranslation `json:"translations"`
}

TVTranslations type is a struct for translations JSON response.

type TVTranslationsAppend

type TVTranslationsAppend struct {
	Translations *TVTranslations `json:"translations,omitempty"`
}

TVTranslationsAppend type is a struct for translations in append to response.

type TVVideos

type TVVideos struct {
	ID int64 `json:"id,omitempty"`
	*TVVideosResults
}

TVVideos type is a struct for videos JSON response.

type TVVideosAppend

type TVVideosAppend struct {
	Videos *TVVideos `json:"videos,omitempty"`
}

TVVideosAppend type is a struct for videos in append to response.

type TVVideosResult

type TVVideosResult struct {
	ID           string `json:"id"`
	LanguageCode string `json:"iso_639_1"`
	CountryCode  string `json:"iso_3166_1"`
	Key          string `json:"key"`
	Name         string `json:"name"`
	Site         string `json:"site"`
	Size         int    `json:"size"`
	Type         string `json:"type"`
}

type TVVideosResults

type TVVideosResults struct {
	Results []*TVVideosResult `json:"results"`
}

TVVideosResults Result Types

type TVWatchProviders

type TVWatchProviders struct {
	ID int64 `json:"id,omitempty"`
	*TVWatchProvidersResults
}

TVWatchProviders type is a struct for watch/providers JSON response.

type TVWatchProvidersAppend

type TVWatchProvidersAppend struct {
	WatchProviders *TVWatchProviders `json:"watch/providers,omitempty"`
}

TVWatchProvidersAppend type is a struct for watch/providers in append to response.

type TVWatchProvidersResult

type TVWatchProvidersResult struct {
	Link     string           `json:"link"`
	FlatRate []*WatchProvider `json:"flatrate,omitempty"`
	Rent     []*WatchProvider `json:"rent,omitempty"`
	Buy      []*WatchProvider `json:"buy,omitempty"`
}

type TVWatchProvidersResults

type TVWatchProvidersResults struct {
	Results map[string]*TVWatchProvidersResult `json:"results"`
}

TVWatchProvidersResults Result Types

type Trending struct {
	Page         int   `json:"page"`
	TotalPages   int64 `json:"total_pages"`
	TotalResults int64 `json:"total_results"`
	*TrendingResults
}

Trending type is a struct for treding JSON response.

type TrendingKnownFor

type TrendingKnownFor struct {
	Adult            bool    `json:"adult"`
	BackdropPath     string  `json:"backdrop_path"`
	GenreIDs         []int   `json:"genre_ids"`
	ID               int     `json:"id"`
	OriginalLanguage string  `json:"original_language"`
	OriginalTitle    string  `json:"original_title"`
	Overview         string  `json:"overview"`
	PosterPath       string  `json:"poster_path"`
	ReleaseDate      string  `json:"release_date"`
	Title            string  `json:"title"`
	Video            bool    `json:"video"`
	VoteAverage      float64 `json:"vote_average"`
	VoteCount        int     `json:"vote_count"`
	Popularity       float64 `json:"popularity"`
	MediaType        string  `json:"media_type"`
}

type TrendingResult

type TrendingResult struct {
	Adult              bool                `json:"adult,omitempty"`
	Gender             int                 `json:"gender,omitempty"`
	BackdropPath       string              `json:"backdrop_path,omitempty"`
	GenreIDs           []int64             `json:"genre_ids,omitempty"`
	ID                 int64               `json:"id"`
	OriginalLanguage   string              `json:"original_language"`
	OriginalTitle      string              `json:"original_title,omitempty"`
	Overview           string              `json:"overview,omitempty"`
	PosterPath         string              `json:"poster_path,omitempty"`
	ReleaseDate        string              `json:"release_date,omitempty"`
	Title              string              `json:"title,omitempty"`
	Video              bool                `json:"video,omitempty"`
	VoteAverage        float32             `json:"vote_average,omitempty"`
	VoteCount          int64               `json:"vote_count,omitempty"`
	Popularity         float32             `json:"popularity,omitempty"`
	FirstAirDate       string              `json:"first_air_date,omitempty"`
	Name               string              `json:"name,omitempty"`
	OriginCountry      []string            `json:"origin_country,omitempty"`
	OriginalName       string              `json:"original_name,omitempty"`
	KnownForDepartment string              `json:"known_for_department,omitempty"`
	ProfilePath        string              `json:"profile_path,omitempty"`
	KnownFor           []*TrendingKnownFor `json:"known_for,omitempty"`
}

type TrendingResults

type TrendingResults struct {
	Results []*TrendingResult `json:"results"`
}

TrendingResults Result Types

type WatchProvider

type WatchProvider struct {
	ID              int64  `json:"id,omitempty"`
	Name            string `json:"name"`
	DisplayPriority int64  `json:"display_priority"`
	LogoPath        string `json:"logo_path"`
	ProviderName    string `json:"provider_name"`
	ProviderID      int    `json:"provider_id"`
}

type WatchProviderList

type WatchProviderList struct {
	Providers []*WatchProvider `json:"results"`
}

WatchProviderList type is a struct for watch provider list JSON response.

type WatchRegion

type WatchRegion struct {
	CountryCode string `json:"iso_3166_1"`
	EnglishName string `json:"english_name"`
	NativeName  string `json:"native_name"`
}

type WatchRegionList

type WatchRegionList struct {
	Regions []*WatchRegion `json:"results"`
}

WatchRegionList type is a struct for watch region list JSON response.

Directories

Path Synopsis
examples
tv

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL