创造数字资产
更新时间:2023-01-31
创造数字资产
接口描述
- 本接口用于创建标准化数字资产,创建后未发行到上链前缓存在草稿箱中,还可以修改该资产的信息
- 本接口在创建数字资产时,需要使用资产资源。为了保证资源的有效性,资产对应的原文件(比如音视频、图片原文件等)保存在BOS中,格式为bos_v1://{bucket}/{object}/{width}_{height}。示例:bos_v1://xasset-trade/100100/dd32b81c3a8bf5505cdf80506cde8801.jpg/200_300。
- 需要用账户私钥对 asset_id 和 nonce 签名授权
- 资产原文件设置在asset_url,文件名采用文件md5值,为了正常展现,需要正确携带文件后缀
- 资产原始文件。比如图片,图片本身就是资产。如果不是图片,需要上传一张图片作为封面。再上传原始文件
- 如果资产源文件是图片则必传宽高属性,其他格式文件同字段传非null内容
- amount指定发行份数,不限可以设置为0。
-
上传文件格式要求:
-
图片格式支持:”jpg”, “png”, “gif”。 推荐使用jpg和png格式
-
音频文件支持:“mp3” 藏品封面图会作为音频播放占位图
-
视频文件支持:“mp4”
-
3D模型支持:gltf,DAE gltf在使用时由于藏品为单文件,暂不支持上传文件夹;需要将材质烘焙到模型上
-
透明视频支持:afx 需要使用.afx.mp4后缀
-
其他的格式文件暂不支持
-
请求结构
POST /xasset/horae/v1/create HTTP/1.1
Host: xuper.baidu.com
Authorization: Authorization string
Content-Type: application/x-www-form-urlencoded;charset=utf-8
asset_id={asset_id}
&amount={amount}
&price={price}
&asset_info={asset_info
}&addr={address}
&sign={sign}
&pkey={pkey}
&nonce={nonce}
&user_id={user_id}
请求头域
- 除公共头域外,无其它特殊头域。
请求参数
参数名 | 参数类型 | 是否可选 | 参数说明 |
---|---|---|---|
asset_id | int64 | 必选 | 资产ID,由固定算法生成,统一调用SDK的GenAssetId方法生成 |
amount | int | 必选 | 资产碎片数量,小于1和大于200000代表不做库存限制 |
price | int64 | 必选 | 藏品显示售卖价格,单位为分 |
asset_info | String | 必选 | 资产信息 |
+ asset_cate | int | 必选 | 资产分类。1:艺术品 2:收藏品 3:门票 4:酒店 |
+ title | String | 必选 | 资产名称,小于30个字节 |
+ thumb | Array | 必选 | 资产缩略图。bos上传的图片,格式支持:”jpg”, “png”。参数格式bos_v1://{bucket}/{object}/{width}_{height} |
+ short_desc | String | 必选 | 短文字描述,小于300个字节 |
+ img_desc | Array | 可选 | 资产详情介绍长图。bos上传的图片,格式支持:”’jpg‘, ’png‘“。参数格式:“bos_v1://{bucket}/{object}/{width}_{height}”, |
+ asset_url | Array | 必选 | 资产原始文件。比如图片,图片本身就是资产。格式:“bos_v1://{bucket}/{object}” ,格式要求参考接口说明上传文件格式要求,为了迅速响应页面,建议文件大小<10M。如果大于10M,会影响加载时间,文件名建议采用文件md5值,保证在同一个AppID下,文件名唯一。为了正常展现,需要正确携带文件后缀 |
+ long_desc | String | 可选 | 长文字描述,小于1200个字节 |
+ asset_ext | String | 可选 | 资产额外描述信息json字符串。比如标签 |
+ group_id | int64 | 可选 | 资产组ID。用于关联业务层酒店/店铺ID |
addr | String | 必选 | 创建资产账户地址,创建后藏品将与此地址绑定。此地址将作为对应藏品类似“管理员”的存在 |
sign | String | 必选 | 创建资产账户私钥签名,签名算法:msg = Sprintf(“%d%d”, asset_id, nonce)sign = XassetSignECDSA(account, msg) |
pkey | String | 必选 | 创建资产账户公钥 |
nonce | int64 | 必选 | 随机数 |
user_id | int64 | 可选 | 业务侧用户标记,必要时请安全处理后设置 |
响应头域
- 除公共头域外,无其它特殊头域。
响应参数
参数名称 | 类型 | 描述 |
---|---|---|
errno | int | 错误码 0为成功,其他可参考常用错误码 |
request_id | int | 后端生成,用于问题反馈,建议业务日志纪录 |
asset_id | int64 | 资产ID |
请求示例
Post xasset/horae/v1/create
Host: xuper.baidu.com
Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2022-04-18T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
asset_id=1332322111211
&amount=10
&price=100
&asset_info={
"asset_cate": 1,
"title": "猫的报恩",
"thumb": [
"bos_v1://xasset-trade/100100/md5.jpeg/1000_500"
],
"short_desc": "猫咪的可爱,仅此一份",
"long_desc": "我是长描述",
"img_desc": [
"bos_v1://xasset-trade/100100/md5.jpeg/1000_500"
],
"asset_url": [
"bos_v1://xasset-trade/100100/md5.gltf"
],
"asset_ext": {"tags":["艺术品","古董"]}
"group_id": 123123,
}
&addr=bFKZMPVBtUPb1bdoXzWwKX1jaSy9omMjR
&pubKey={"Curvname":"P-256","X":99992390283545488142355111780630053962942114118238766864067722901319912547387,"Y":62636249704255210574823120529280656364753347818712821209439354501575504249596}
&sign=B014EDF86B6DEE29E167E9D9ED9C5832
&nonce=8856422235281354998
&user_id=123
响应示例
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
Date: Wed, 18 Apr 2022 03:28:11 GMT
X-Trace-Id: "1182282645"
{
"errno": 0,
"request_id": "1182282645",
"asset_id": 1332322111211
}