搜索
分发文档
应用分发
游戏分发
电视应用分发
快应用分发
快游戏分发
服务分发
内容分发
分发文档/内容分发/内容开放平台/开发对接/音频内容API接入规范
音频内容API接入规范更新时间: 2024-10-17 11:12:00

一、概述

音频内容接入采用推拉结合的方式:合作方实时推增量,小米方定期拉全量、单个专辑详情

1、专辑&音频增量推送

增量推送接口需要注意以下:

  • 专辑有更新,请及时推送
  • 每次推送原则上不多于50条专辑,若大于50条,请分页推送
  • 音频有更新,不能单独推送,需和专辑一起推送(推送专辑及其全部的音频)

1.1、请求URL/Method

补充:将api_host替换成对应环境的域名

HTTP URLhttps://api_host/audio/v1/push/general
HTTP MethodPOST

1.2、请求头

名称类型必填描述
Authorizationstring示例值:"c83a2e753d41494fbde7b4aa31f4fa66"
Content-Typestring固定值:"application/json; charset=utf-8"

1.3、请求体

字段名 字段类型 最大长度限制 是否必填 说明
partnerId string -合作方id
timestamp long -当前请求时间戳,单位毫秒
nonce string 32随机值,相邻两次请求的nonce不允许重复,如果重复认为重复提交,响应失败
contents 数组 -专辑列表,子元素为content
content元素内容album_id string 20专辑id
title string 128专辑标题
state string 1上下线状态 0:下线 ,1:上线
focus string 128看点,一句话简介
description string 500简介,详细介绍
charge_type int -付费状态:0:免费,1:收费
price int -收费价格,单位分
authors string 128作者,多个之间英文逗号隔开
performers string 128表演者、演播者,多个之间英文逗号分隔
age_from int -年龄下限
age_to int -年龄上限
h_poster string 255横版海报 [384*384px 或 760*760px]
v_poster string 255竖版海报
tags string 255标签列表,多个英文逗号隔开
category int -所属分类
score int -评分,10分制,如 9.5
publish_time string 19上线时间,格式 yyyy-MM-dd HH:mm:ss
update_time string 19更新时间,格式 yyyy-MM-dd HH:mm:ss
media_ext string 500拓展json字段
license_from string 128版权方
audios数组 -专辑内包含的音频(下面audio)列表
video元素内容audio_id string 32音频id
title string 128标题
state string 1上下线状态0:下线, 1:上线
focus string 128看点,一句话简介
description string 500简介,详细介绍
audio_type int -0:正片,1:预告片,2:花絮,3片花,4:短片
charge_type int -付费状态:0:免费,1:收费
play_order int -播放顺序
play_url string 255播放链接(API方式接入必填)
file_size int -音频文件大小,单位byte
duration int -音频播放时长,单位秒
lyrics text -歌词
publish_time string 19上线时间,格式 yyyy-MM-dd HH:mm:ss
update_timestring 19更新时间,格式 yyyy-MM-dd HH:mm:ss
h_poster string 255音频横版海报
v_poster string 255音频竖版海报
trial_status int -试听状态,0不支持,1:支持
trial_length int -试听时长,单位秒(支持试听时必填)

1.4、响应参数

字段名 类型 最大长度 是否必填 说明
code string -返回码
msg string 详见返回码说明

1.5、示例

  • 请求体示例:
{ 
"partnerId": "pi_xxx",
"timestamp": 1653281331000,
"nonce": "sfn1vjnjkmzedna",
"contents": [
{
"state": 1,
"album_id": "123",
"title": "依然范特西",
"publish_time": "2006-09-05 18:32:02",
"description": "专辑《依然范特西》请出小哥费玉清对唱首波主打歌《千里之外》",
"其他字段": "省略",
"audios": [
{
"state": 1,
"audio_id": "1231212",
"play_order": 1,
"title": "千里之外",
"publish_time": "2006-09-05 18:32:02",
"其他字段": "省略"
},
{
"state": 1,
"video_id": "1231213",
"play_order": 2,
"title": "本草纲目",
"publish_time": "2006-09-05 18:32:02",
"其他字段": "省略"
}
]
}
]
}
  • 响应体示例:
{ 
"code": "0000",
"msg": "success"
}

2、 音频&专辑全量拉取、单个拉取(合作方提供)

此接口需支持:

  • 小米侧分页全量拉取
  • 小米侧根据album_id获取单个专辑及其音频的详情

2.1、请求URL/Method

HTTP URLhttp://合作方域名及上下文/pull/all?nonce=xxx&partnerId=xxx&timestamp=xxx?sign=xxx
HTTP MethodGET

2.2、请求准入性校验

  • 签名校验方式

sign签名:签名字段按照ASCII码递增排序,组合成“参数=参数值”的格式,并把这些参数用&字符拼接起来,最后再拼接上 partnerKey=xxx,组成签名串,进行MD5加密生成sign。

如:MD5(nonce=xxx&partnerId=xxx&timestamp=xxx&partnerKey=xxx)

2.3、请求参数

字段名 字段类型 最大长度限制 是否必填 说明
partnerId string -合作方id
timestamp long -当前请求时间戳,单位毫秒
nonce string 32随机值,相邻两次请求的nonce不允许重复,如果重复认为重复提交,响应失败
offset int -分页偏移量,默认为0
limit int -每页的数量,默认为10(当返回的一页数据量小于limit时,认为是最后一页)
album_id string -(合作方需支持)album_id不为空时,返回该专辑的详情及其音频详情,此时offset和limit为空
sign string -签名,签名字段按照ASCII码递增排序,组合成“参数=参数值”的格式,并把这些参数用&字符拼接起来,最后再拼接上 partnerKey=xxx,组成签名串,进行MD5加密生成sign。 如:MD5(nonce=xxx&partnerId=xxx&timestamp=xxx&partnerKey=xxx)

2.4、响应参数

字段名 字段类型 最大长度限制 是否必填 说明
公共响应参数code String -返回码,0000为成功,其余为失败
msg String -返回码描述
data object -详见data元素内容
data元素内容total int -专辑总数量
contents 数组 -子元素为content

二、补充说明

专辑分类(对应category字段)

类型值类型说明类型下tags参考
0故事科幻,校园,成长,神话,民间故事,爆笑,冒险,侦探,绘本,军事,寓言,童话,幻想
1教材语文,作文,数学,英语,一年级,二年级,三年级,四年级,五年级,新课标,六年级,六年级
2动画
3哄睡哄睡故事,哄睡音乐
4国学古诗,古文,成语
5英语磨耳朵
6习惯
7父母课堂育儿
8文学
9素质
10启蒙
11艺术
12自我保护
13科普
14笑话
1000其他

上一篇:长视频内容API接入规范
下一篇:游戏内容媒资接口文档
文档内容是否有帮助?
有帮助
无帮助