Supporto The Movie Database

Hi there. I don't think the field "certification" in the discover route is working. I have some search filters and I get the results as though certification hasn't been selected. Here's my code:

const fetchMovies = async () => {
    const queryParams = {
      api_key: apiKey,
      sort_by: sortBy,
      "vote_average.gte": voteAverageGte,
      "vote_average.lte": voteAverageLte,
      "primary_release_date.gte": convertToYYYYMMDD(primaryReleaseDateGte),
      "primary_release_date.lte": convertToYYYYMMDD(primaryReleaseDateLte),
      with_genres: genreSelections.join(","),
      certification: certificationSelections.join("|"),
      "vote_count.gte": voteCountGte,
      "with_runtime.gte": withRuntimeGte,
      "with_runtime.lte": withRuntimeLte,
      page: pageNumber,
      language: language,
      region: "BR"
    };
    for (const key in queryParams) {
      // Just checking if the dates are valid
      if (key === "primary_release_date.gte" || key === "primary_release_date.lte")
      {
        if (!moment(queryParams[key], 'YYYY-MM-DD').isValid())
        delete queryParams[key];
      }
      else if (queryParams[key] === null || queryParams[key] === "") {
        delete queryParams[key];
      }
    }
    try {
      const response = await axios.get(filteredMovieURL, {
        params: queryParams,
      });
      const data = response.data;
      setMovies((prevMovies) => [...prevMovies, ...data.results]);
    } catch (error) {
      console.error("Erro ao receber os dados:", error);
    }
  };

For instance, when using the URL:

https://api.themoviedb.org/3/discover/movie?api_key=MY_API_KEY&certification=L&page=1&language=pt-BR&region=BR

I get all of the movies as though the certification hasn't been specified. Also, I've noticed none of the 20 array elements has a certification field. Here's a screenshot: Mission Impossible fields

2 risposte (nella pagina 1 di 1)

Jump to last post

Hi @vitorary90, I believe that you should use the filter "certification_country" to specify a country for certifications. However, the discover movie documentation does say to use "region". Hopefully a staff member or moderator will look at this and tell us which is correct.

The certification is not included in the results, to see a movie certification you would have to call the movie release dates endpoint for each movie.

Also, it looks like your code may try to join multiple certifications with "|", I'm not sure but I believe you can only specify one certification. Again, hopefully someone else may be able to give more information. You can specifiy a range of certifications with "certification.lte" and/or "certification.gte", the names and order are given in the certifications for movies list.

Using certification_country worked. On a sidenote, using "|" also worked. Thanks for your help, Robbie.

Non riesci a trovare un film o una serie Tv? Accedi per crearlo.

Globale

s focalizza la barra di ricerca
p apri menu profilo
esc chiudi una finestra aperta
? apri finestra scorciatoia tastiera

Su tutte le pagine di media

b torna indietro (o al precedente quando applicabile)
e vai alla pagina di modifica

Nelle pagine delle stagioni TV

(freccia destra) vai alla stagione successiva
(freccia sinistra) vai alla stagione precedente

Nelle pagine degli episodi TV

(freccia destra) vai all'episodio successivo
(freccia sinistra) vai all'episodio precedente

Su tutte le pagine di immagini

a apri finestra aggiungi immagine

Su tutte le pagine di modifica

t apri selettore traduzione
ctrl+ s invia modulo

Sulle pagine di discussione

n crea nuova discussione
w segna come visto/non visto
p cambia publico/privato
c cambia chiuso/aperto
a apri attivita
r rispondi alla discussione
l vai all'ultima risposta
ctrl+ enter invia il tuo messaggio
(freccia destra) pagina successiva
(freccia sinistra) pagina precedente

Impostazioni

Vuoi valutare o aggiungere quest'elemento a una lista?

Accedi