Film Veri Tabanı Desteği

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 yanıt (toplam 1 sayfanın 1.sayfasında)

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.

Bir filmi veya diziyi bulamıyor musun? Eklemek için oturum aç.

Genel

s arama çubuğuna odaklan
p profil menüsünü aç
esc açık bir pencereyi kapat
? klavye kısayol penceresini aç

Medya sayfalarında

b geri git (veya uygulanabilirse ana ekrana)
e sayfayı düzenlemeye git

TV sezonu sayfalarında

(sağa ok) sonraki sezona git
(sol ok) önceki sezona git

TV bölüm sayfalarında

(sağa ok) sonraki bölüme git
(sol ok) önceki bölüme git

Tüm görüntü sayfalarında

a resim ekle penceresini aç

Tüm düzenleme sayfalarında

t çeviri seçiciyi aç
ctrl+ s formu gönder

Tartışma sayfalarında

n yeni tartışma oluştur
w izleme durumunu değiştir
p umumi/hususi değiştir
c kapalı/açık değiştir
a etkinliği aç
r tartışmayı yanıtla
l son yanıta git
ctrl+ enter mesajını gönder
(sağa ok) sonraki sayfa
(sol ok) önceki sayfa

Ayarlar

Bu öğeyi derecelendirmek veya bir listeye eklemek ister misiniz?

Giriş