搜索
分发文档
应用分发
游戏分发
电视应用分发
快应用分发
快游戏分发
服务分发
内容分发
分发文档/内容分发/内容开放平台/开发对接/内容接入接口调用必读
内容接入接口调用必读更新时间: 2024-09-30 11:06:00

一、概述

开放平台支持长视频、音频的规范接口调用,调用接口前,需了解如下内容:

  • 接口概览:
类型接口名称接口功能
长视频长视频推送接口用于CP推送增量和全量内容
音频音频推送接口用于CP推送增量内容,同步媒资信息变化
音频拉取接口用于小米拉取CP全量内容,校验数据一致性

  • 接口调用流程:需申请相关权限、获取访问凭证,才能调用 API 。

二、申请相关权限

向小米申请 partnerId,partnerKey

  • partnerId:小米分配的合作方唯一的标识符
  • partnerKey:需要合作方高度保密,用于接口加密时拼装partnerKey作为加密串

三、获取访问凭证(access_token)

要访问小米内容推送API,需要先获取相应的访问凭证(access_token),作为API调用时的鉴权,在调用内容推送API时,小米可据此识别调用方的身份。通过此接口获取访问凭证,access_token具有一定的时效性,默认最长有效期为3600秒,在需要的情况下,合作方需要调用此接口来获取一个新的access_token。

补充说明:将api_host替换成合作方对应环境的域名
HTTP URLhttp://api_host/long/auth/v1/get_access_token?nonce=xxx&partnerId=xxx&timestamp=xxx&sign=xxx
HTTP MethodGET

  • 请求参数:
字段名 字段类型 最大长度限制 是否必填 说明
partnerId string 32小米分配的合作方唯一的标识符
timestamp long -当前请求时间戳,单位毫秒
nonce string 32随机值,相邻两次请求的nonce不允许重复,如果重复认为重复提交,响应失败
sign string 256签名,签名字段按照ASCII码递增排序,组合成“参数=参数值”的格式,并把这些参数用&字符拼接起来,最后再拼接上 partnerKey=xxx,组成签名串,进行MD5加密生成sign。 如:MD5(nonce=xxx&partnerId=xxx&timestamp=xxx&partnerKey=xxx)

  • 响应参数:
字段名 类型 最大长度 是否必填 说明
code string -返回码
msg string -返回码描述
data object -返回数据
access_token string 40访问令牌,通过该令牌调用需要授权类接口
expires_in string 16该令牌的有效时间,单位是秒

  • 响应示例:
{ 
"code": "0000",
"msg": "success",
"data": {
"access_token":"c83a2e753d41494fbde7b4aa31f4fa66",
"expires_in":"3600"
}
}

四、 调用API

1、基本要求

  • 完成获取partnerId,partnerKey
  • 完成获取访问凭证
  • 需要使用 HTTPS 协议、JSON 数据格式、UTF8 编码

2、请求参数说明

  • 请求头:这部分参数需要放在 HTTP 请求的 Header 中,主要包含调用 API 所需要使用的访问凭证(access token)以及 HTTP Content-Type(除获取凭证外其余接口:Content-Type:application/json; charset=utf-8)
  • 请求体:POST请求的请求参数以JSON格式放在请求body中
  • 查询参数:这部分参数需要在URL后后使用?进行连接,多个查询参数间以&分隔
POST请求的sign参数放在请求URL中。如:https://api_host/api_path?sign=xxx'

3、API调用方式

调用API接口时,请求需要把访问凭证 access token 放到 Header 的 Authorization 中。 示例:

$ curl -X POST 'https://api_host/api_path?sign=xxx' 
-H 'Authorization:<这里替换为对应的access token>'
-H 'content-type:application/json; charset=utf-8'
-d '{
"field": "value"
}'

4、API响应结果

API 的响应体结构包括 code、msg、data 三个部分。code为返回码,msg为返回信息,data为 API 的调用结果。默认请求成功时,code 为 0000,msg 为 success。data 在一些操作类 API 的返回中可能不存在

// 响应成功示例 
{
"code": "0000",
"msg": "success"
}

{
"code": "0000",
"msg": "success",
"data": {
// 响应的具体数据内容
}
}

// 响应失败示例
{
"code": "9991",
"msg": "invalid token"
}

5、请求地址

测试环境 https://test-uvcas.tv.mi.com/
生产环境 https://uvcas.tv.mi.com/

6、返回码说明

返回码:code 返回描:msg 说明
0success 成功
9990invalid partner 检查partnerId是否有效,确认无误后联系小米产品经理
9991invalid token 查看token是否填写正确,是否过期
9992verify sign fail 验签失败,检查签名是否按照约定
9993no sign 没有对参数进行签名
9994method not allowed HTTP 方法不支持,检查是否是POST 请求
9995empty param 参数为空,请检查非空参数
9996invalid param 请求参数有误,请检查参数的正确性
9997deal fail 请求处理失败,请检查参数并重试
9998internal error 内部错误,请稍后重试,仍然出现请联系小米开发人员
9999service error 服务异常,检查请求参数是否正确,确认无误联系小米开发人员

上一篇:平台操作指南
下一篇:长视频内容API接入规范
文档内容是否有帮助?
有帮助
无帮助