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
¿No encuentras una película o serie? Inicia sesión para crearla:
¿Quieres puntuar o añadir este elemento a una lista?
¿No eres miembro?
Contestado por Travis Bell
el 11 de junio de 2025 a las 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.
Contestado por gurkantuna
el 11 de junio de 2025 a las 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?
Contestado por Travis Bell
el 11 de junio de 2025 a las 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.Contestado por gurkantuna
el 12 de junio de 2025 a las 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.
Contestado por Travis Bell
el 12 de junio de 2025 a las 07:35
If you want to only include movies with a certain number of votes, you should use the
vote_count.gte
filter.Contestado por gurkantuna
el 12 de junio de 2025 a las 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.