Vimeo API-获取类别和积分

时间:2018-09-20 14:56:58

标签: api categories vimeo vimeo-api credits

我正在编写一个脚本,该脚本从Vimeo获取视频ID,调用API并用我们需要的所有数据填充数据库。

我能够使用该网址获取所有字段,并且一切运行正常: https://api.vimeo.com/videos/ {video_id}

我还可以使用查询?fields = name等...仅获取我需要的字段。

但是,当我向API发出请求时(即使我使用字段查询),category数组也为空,并且按以下方式返还功劳:

"credits": {
    "uri": "/videos/{video_id}/credits",
    "options": [
        "GET",
        "POST"
    ],
    "total": 1
}

如果我再次提出要求,请访问那些网址:
https://api.vimeo.com/videos/ {video_id} /积分
https://api.vimeo.com/videos/ {video_id} /类别

我获得了我需要的有关学分和类别的所有信息。

问题是:我不想向API发出3请求以获取我需要的一切。为什么原始视频请求中不包含功劳和类别? 我可以用一个电话做到这一点吗?

1 个答案:

答案 0 :(得分:1)

关于类别,视频所有者或Vimeo馆长可能未对视频进行分类。如果尚未对视频进行分类,则类别数组将返回空。

例如,此测试视频不返回任何类别:

curl -X GET 
  'https://api.vimeo.com/videos/76979871?fields=uri,categories' 
  -H 'Accept: application/vnd.vimeo.*+json;version=3.4' 
  -H 'Authorization: bearer [token]' 

此“员工精选”视频返回几个类别和子类别:

curl -X GET 
  'https://api.vimeo.com/videos/274849065?fields=uri,categories.uri,categories.uri,categories.name,categories.top_level' 
  -H 'Accept: application/vnd.vimeo.*+json;version=3.4' 
  -H 'Authorization: bearer [token]' 

关于点数,视频始终至少要拥有一个点数(视频拥有者)。我建议添加一些逻辑,以便如果metadata.connections.credits.total大于1,则提出附加请求以获取其他信用用户。

例如,同样的“员工精选”视频返回的metas.connections.credits.total = 2,因此,要获得更多的信用用户,您需要向视频的信用端点发出请求。

curl -X GET 
  'https://api.vimeo.com/videos/274849065?fields=uri,metadata.connections.credits' 
  -H 'Accept: application/vnd.vimeo.*+json;version=3.4' 
  -H 'Authorization: bearer [token]' 

使用单独的功劳分配端点的原因是,每个用户对象都可以包含很多元数据-如果视频功劳了许多用户,则如果fields参数为,则视频响应(已经很大)会更大。没用。

希望此信息对您有所帮助!