-
Notifications
You must be signed in to change notification settings - Fork 45
Description
Is your feature request related to a problem? Please describe.
I'm trying to breakdown a person's cast credits by their job (writer, director, etc) as well as get the name of the character they played in a given movie, and realized that PersonMovieCredits.crew / PersonMovieCredits.cast don't have this information, as they're both [Movie]. Upon looking at the API docs, I realized this information is available - but it's not exposed in this library. Thus I'd like to get this information added in some way!
Also, I figure you have valid reasons (too many similar-but-different movie types?) but I think treating this API response as [Movie] should be changed at the least due to the confusion it can cause, when it simply doesn't have all of the fields that Movie typically does from [/movie/:movieID](https://developer.themoviedb.org/reference/movie-details. For instance, - the Movies form PerosnMovieCredits.cast has Movie.status as nil always, but it isn't always nil from the movie details route. This caused quite a bit of confusion until I looked at the actual API response from /person/:id/movie_credits.
I only need the movie credits so that's the only thing I'm considering here, but I figure the same applies to TV credits.
Describe the solution you'd like
The simplest - but perhaps most painful - would be to have 2 separate types, e.g. PersonMovieCast and PersonMovieCrew, that are a 1:1 reflection of the /person/:id/movie_credits API response.
Describe alternatives you've considered
Could do a bit more heavy-lifting and parse these out so this extra info is in a dictionary like [Movie: character (string)] for cast and [Movie: (job: String, department: String)] for crew, but I figure that's a bit overkill & you can just let consumers of this library handle that.
Additional context
I have an incredibly rough - but working - example of the first proposed solution on my fork here. This is definitely not ready to merge - just got something out quick so I can test it in my app locally.