When sending a request with pagination within to API endpoints, there is no sorting, for example, according to the vote_average field.
So, why is there no similar query parameter, for example
api.themoviedb.org/3/trending/movie/week?page=2&order-by=vote_average
Es fehlt ein Film oder eine Serie? Logge dich ein zum Ergänzen.
Diesen Eintrag bewerten oder zu einer Liste hinzufügen?
Kein Mitglied?
Antwort von Travis Bell
am 11. Juni 2025 um 10:16
Hi @gurkantuna,
For the trending data, this is by design. Trending is only useful to view in its original trending order. If you want more flexibility (although, there is no trending data) you should look at discover.
Antwort von gurkantuna
am 11. Juni 2025 um 15:26
Thanks @travisbell , actually I wasn't just talking about only trending, but I think that the case I mentioned is also required for trending data. It doesn't matter if it is a trend data or any other filter, the paginated data should return by any sorting parameter.
You can review it from
https://movies.gurkantuna.com/genre/28/pages/2 => order by vote_up from 8.2
https://movies.gurkantuna.com/genre/28/pages/3 => order by vote_up from 8.2 again!
The data that should be there is below
/pages/2 example 20 data 8.2, 8.2, 8.1.......8.0
/pages/2 example 20 data 8.0, 8.0, 7.9,7.8.......7.7
However, you should have noticed that the vote_up ranking only exists based on the page you are on and does not continue from the next page. Because there is no endpoint in the API from where I can pull data in this way. So, have I explained this clearly now?
Antwort von Travis Bell
am 11. Juni 2025 um 15:47
You should take a look at the discover endpoints. They are the only endpoints that support more dynamic queries like this. The options for
sort_by
are listed there.Antwort von gurkantuna
am 12. Juni 2025 um 06:04
https://api.themoviedb.org/3/discover/movie?api_key=***&with_genres=16&sort_by=vote_average.desc
I'm currently receiving data that is close to my intention with 'sort_by=vote_average.desc'. But even weird movies with a budget of $0 seem to get 10 points :)
It seems like your backend service calculates the average even for 1 vote, which I think is wrong and open to similar manipulation. You should include the average calculation at least after 50-60~ votes.
I finally gave up because of the weird ratings. Thanks for your help though.
Antwort von Travis Bell
am 12. Juni 2025 um 07:35
If you want to only include movies with a certain number of votes, you should use the
vote_count.gte
filter.Antwort von gurkantuna
am 12. Juni 2025 um 08:01
Oh, I should have reviewed the parameters more carefully. I added
vote_count.gte
param and the data is more accurate now, thanks.