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 回复(第 1 页,共 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.

找不到电影或节目?登录并创建它吧。

全站通用

s 聚焦到搜索栏
p 打开个人资料菜单
esc 关闭打开的窗口
? 打开键盘快捷键窗口

在媒体页面

b 返回(或返回上级)
e 进入编辑页面

在电视季页面

(右箭头)下一季
(左箭头)前一季

在电视集页面

(右箭头)下一集
(左箭头)上一集

在所有图像页面

a 打开添加图片窗口

在所有编辑页面

t 打开翻译选择器
ctrl+ s 提交

在讨论页面

n 创建新讨论
w 切换关注状态
p 设为公开 / 私密讨论
c 关闭 / 开放讨论
a 打开活动页
r 回复讨论
l 跳转至最新回复
ctrl+ enter 发送信息
(右箭头)下一页
(左箭头)前一页

设置

想给这个条目评分或将其添加到片单中?

登录

还不是会员?

注册加入社区