Files
golib/tmdb/movie.go
2026-01-13 19:11:17 +11:00

47 lines
1.8 KiB
Go

package tmdb
import (
"encoding/json"
"strconv"
"github.com/pkg/errors"
)
type Movie struct {
Adult bool `json:"adult"`
Backdrop string `json:"backdrop_path"`
Collection string `json:"belongs_to_collection"`
Budget int `json:"budget"`
Genres []Genre `json:"genres"`
Homepage string `json:"homepage"`
ID int32 `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"`
Poster string `json:"poster_path"`
ProductionCompanies []ProductionCompany `json:"production_companies"`
ProductionCountries []ProductionCountry `json:"production_countries"`
ReleaseDate string `json:"release_date"`
Revenue int `json:"revenue"`
Runtime int `json:"runtime"`
SpokenLanguages []SpokenLanguage `json:"spoken_languages"`
Status string `json:"status"`
Tagline string `json:"tagline"`
Title string `json:"title"`
Video bool `json:"video"`
}
func (api *API) GetMovie(movieid int64) (*Movie, error) {
path := []string{"movie", strconv.FormatInt(movieid, 10)}
url := buildURL(path, nil)
data, err := api.get(url)
if err != nil {
return nil, errors.Wrap(err, "api.get")
}
movie := Movie{}
json.Unmarshal(data, &movie)
return &movie, nil
}