授予资产碎片
更新时间:2022-07-14
授予资产碎片
接口描述
- 本接口用于资产发行者将数字资产的一个碎片授予给指定账户。
 - 本接口是收费接口,调用消耗次数
 - 需要创造该资产账户私钥对 asset_id和nonce 签名。
 - 注意shard_id可以由调用方设置,需要调用方确保单asset_id下shard_id唯一,可以使用有序编号,也可以使用随机数。需要调用方业务系统控制不超发和少发,可以在下单等纪录中分配shard_id和业务对应纪录做唯一绑定。
 - 注意资产amount小于1或者大于20w(库存太大,严格控制库存意义有限),会被当做无限授予处理,不做库存控制,大于20w时业务注意自行管理授予库存。
 - 资产amount大于0且小于20w时,会有库存控制,不允许超过amount值授予,业务需要注意正确调用grant接口,否则会导致库存浪费无法授予,建议业务严格按amount份数分配shard_id,为每个订单绑定shard_id。有失败的情况时,重试使用原来的shard_id重试,更换shard_id会导致原库存浪费。
 
请求结构
                JSON
                
            
            1POST /xasset/horae/v1/grant HTTP/1.1
2Host: xuper.baidu.com
3Authorization: Authorization string
4Content-Type: application/x-www-form-urlencoded;charset=utf-8
5
6asset_id={asset_id}
7&shard_id={shard_id}
8&price={price}
9&addr={address}
10&sign={sign}
11&pkey={pkey}
12&nonce={nonce}
13&to_userid={user_id}
14&to_addr={to_addr}
            请求头域
- 除公共头域外,无其它特殊头域。
 
请求参数
| 参数名 | 参数类型 | 是否可选 | 参数说明 | 
|---|---|---|---|
| asset_id | int64 | 必选 | 对应的资产id | 
| shard_id | int64 | 必选 | 资产碎片id,需要确保asset下唯一,可以使用有序编号,也可以使用随机整数,默认使用sdk提供GenRandId方法生成 | 
| addr | string | 必选 | 创建资产账户地址 | 
| sign | string | 必选 | 创建资产账户私钥签名私钥签名内容msg = Sprintf(“%d%d”, asset_id, nonce),sign = XassetSignECDSA(account, msg) | 
| pkey | string | 必选 | 创建资产账户公钥 | 
| nonce | int64 | 必选 | 随机数 | 
| price | int64 | 可选 | 藏品实际售卖价格,单位为分,默认0 | 
| to_addr | string | 必选 | 资产接收者账户地址 | 
| to_userid | int64 | 可选 | 资产接收者用户id,建议填写关联 | 
响应头域
- 除公共头域外,无其它特殊头域。
 
响应参数
| 参数名 | 参数类型 | 参数说明 | 
|---|---|---|
| shard_id | int64 | 碎片id | 
| asset_id | int64 | 资产id | 
请求示例
                JSON
                
            
            1Post xasset/horae/v1/grant
2Host: xuper.baidu.com
3Authorization: bce-auth-v1/f81d3b34e48048fbb2634dc7882d7e21/2022-04-18T04:17:29Z/3600/host/74c506f68c65e26c633bfa104c863fffac5190fdec1ec24b7c03eb5d67d2e1de
4
5asset_id=1332322111211
6&shard_id=10
7&price=100
8&addr=bFKZMPVBtUPb1bdoXzWwKX1jaSy9omMjR
9&pubKey={"Curvname":"P-256","X":99992390283545488142355111780630053962942114118238766864067722901319912547387,"Y":62636249704255210574823120529280656364753347818712821209439354501575504249596}
10&sign=B014EDF86B6DEE29E167E9D9ED9C5832
11&nonce=8856422235281354998
12&to_userid=123
13&to_addr=akdul2kjl54435jlk345
            响应示例
                JSON
                
            
            1HTTP/1.1 200 OK
2Content-Type: application/json;charset=UTF-8
3Date: Wed, 18 Apr 2022 03:28:11 GMT
4X-Trace-Id: "1182282645"
5   {
6    "errno": 0,
7    "request_id": "1182282645",
8    "asset_id": 123456,
9    "shard_id": 7890123
10}
            