You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Kaltura API结合标题与分类获取entryId以更新缩略图?

通过标题+分类获取Kaltura EntryId并更新缩略图的实操方案

一、获取目标EntryId:调用Media List API筛选

核心是用media.list接口,通过过滤器组合标题和分类条件精准定位条目:

  • 筛选参数配置:
    • 标题匹配:用filter.nameEqual做精确匹配,或者filter.nameLike做模糊匹配(支持%通配符,比如%产品介绍%)
    • 分类匹配:用filter.categoryIdEqual指定分类ID(推荐,比名称匹配更稳定),或filter.categoryNameEqual匹配分类名称
    • 可选优化:添加filter.statusEqual=2只筛选已发布条目,避免无效数据
  • 精简返回结果:通过responseProfile只请求id字段,减少数据传输

示例REST请求

POST /api_v3/service/media/action/list HTTP/1.1
Host: 你的Kaltura域名
Content-Type: application/json

{
  "ks": "你的管理员会话密钥",
  "filter": {
    "objectType": "KalturaMediaEntryFilter",
    "nameEqual": "目标视频标题",
    "categoryIdEqual": "目标分类ID",
    "statusEqual": 2
  },
  "responseProfile": {
    "objectType": "KalturaResponseProfile",
    "fields": "id"
  }
}

注:会话密钥ks需通过session.start接口生成,生成时需赋予contentAdmin或对应条目的编辑权限。

二、更新缩略图:调用Thumbnail Set API

拿到EntryId后,调用thumbnail.set接口完成缩略图设置:

示例REST请求(上传自定义图片)

POST /api_v3/service/thumbnail/action/set HTTP/1.1
Host: 你的Kaltura域名
Content-Type: multipart/form-data

ks=你的管理员会话密钥&entryId=获取到的ENTRY_ID&file=@/本地缩略图路径.jpg&position=-1
  • 若要从视频中截取缩略图,将position设为具体时间点(单位:秒)即可,比如position=10表示截取视频第10秒画面。

关键注意事项

  • 去重:如果标题+分类匹配多个条目,可添加filter.createdAtGreaterThan(指定创建时间范围)或filter.userIdEqual(上传者ID)进一步缩小范围
  • SDK调用:使用官方SDK(PHP/Java/Python等)时,逻辑与REST一致,直接调用对应服务类的方法即可,比如PHP SDK的KalturaMediaService->listAction()

内容的提问来源于stack exchange,提问作者Martin Hartmann

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 01:05:19