HTTP API 接口¶
本章节介绍节点的HTTP API及其用法。
注意
尽管 TRON 通过将 HTTP API 的 Content-Type 设置为 application/json 避免了 XSS 攻击,但仍有一些 API 没有输入验证。为了更好地保护用户数据安全,我们建议您在使用 API 的任何数据之前,先对其进行正确编码(尤其是当参数'visible'为true时)。
以下是一种典型的 XSS 防护方法:对来自 API 的所有数据在 HTML 中进行编码。使用诸如 encodeURIComponent() 或 escape() 等方法对数据进行编码,这可以将特殊字符转换为其 HTML 实体,防止浏览器将其解释为 HTML 代码。
请务必为来自 API 的所有数据实施 XSS 防护,以确保用户数据的安全。我们了解您可能需要有关 XSS 防护的更多信息。建议您参考以下资源:OWASP XSS Prevention Cheat Sheet。
TRON 节点的 HTTP API 支持两种地址格式,开发者可以通过 visible 参数来统一控制请求和响应中的地址格式。
visible 参数的设置决定了地址格式的规则:
"visible": false (默认值):参数和返回值中的地址必须为 HexString 格式。如果省略此参数,则按默认值处理。"visible": true:参数和返回值中的地址必须为 Base58Check 格式。
设置方式:
-
对于 GET 请求或无参数的查询接口 将
visible=true作为 URL 查询参数追加到链接末尾。http://127.0.0.1:8090/wallet/listexchanges?visible=true -
对于 POST 请求 将
"visible": true添加到 JSON 请求体中。curl -X POST http://127.0.0.1:8090/wallet/createtransaction -d '{ "owner_address": "TRGhNNfnmgLegT4zHNjEqDSADjgmnHvubJ", "to_address": "TJCnKsPa7y5okkXvQAidZBzqx3QyQ6sxMW", "amount": 1000000, "visible": true }'
Fullnode HTTP API¶
Fullnode HTTP API分类如下:
链上账户¶
下面是链上账户相关 API:
- wallet/validateaddress
- wallet/createaccount
- wallet/getaccount
- wallet/updateaccount
- wallet/accountpermissionupdate
- wallet/getaccountbalance
- wallet/setaccountid
- wallet/getaccountbyid
wallet/validateaddress¶
作用:验证一个 TRON 地址是否有效。此接口非常适用于在应用前端或后端发送交易前,预先检查用户输入的地址是否合法。
curl -X POST http://127.0.0.1:8090/wallet/validateaddress -d '{"address": "4189139CB1387AF85E3D24E212A008AC974967E561"}'
address:可以是 Base58Checksum、hexString、base64 格式
返回值:地址正确或者错误,示例:
#正确示例
{
"result": true,
"message": "Hex string format"
}
#错误示例
{
"result": false,
"message": "Invalid address"
}
wallet/createaccount¶
作用:创建账号,一个已经激活的账号创建一个新账号。如果创建者账号有足够的通过质押 TRX 获得的带宽,那么创建账户只会消耗带宽,否则,会烧掉 0.1 个 TRX 来支付带宽费用,同时需要额外支付 1 TRX 的创建费用。
curl -X POST http://127.0.0.1:8090/wallet/createaccount -d '{"owner_address":"41d1e7a6bc354106cb410e65ff8b181c600ff14292", "account_address": "41e552f6487585c2b58bc2c9bb4492bc1f17132cd0"}'
owner_address是创建者的地址,必须是一个已在链上激活的账户。account_address是待激活的新账户地址。此地址必须预先在链下生成好。Permission_id可选参数,在使用账户管理权限签名时使用。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:未签名的创建账号的 Transaction
wallet/getaccount¶
作用:查询并返回一个指定 TRON 账户的完整链上信息(包括余额、资源、权限、资产在内的所有账户详情)。
curl -X POST http://127.0.0.1:8090/wallet/getaccount -d '{"address": "41E552F6487585C2B58BC2C9BB4492BC1F17132CD0"}'
address需要查询的账户地址。visible设置地址格式,true为 Base58Check,false或省略则为HexString。
返回值:Account 对象
wallet/updateaccount¶
作用:更新或设置一个指定 TRON 账户的链上名称 (account_name)。
curl -X POST http://127.0.0.1:8090/wallet/updateaccount -d '{"account_name": "0x7570646174654e616d6531353330383933343635353139" ,"owner_address":"41d1e7a6bc354106cb410e65ff8b181c600ff14292"}'
account_name是账号名称,默认为 HexString格式owner_address是要修改名称的账号地址,默认为 HexString 格式Permission_id可选参数, 在使用账户管理权限签名时使用。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:未签名的修改名称 Transaction
wallet/accountpermissionupdate¶
作用:修改一个账户的权限结构。
curl -X POST http://127.0.0.1:8090/wallet/accountpermissionupdate -d
'{
"owner_address": "TRGhNNfnmgLegT4zHNjEqDSADjgmnHvubJ",
"owner": {
"type": 0,
"permission_name": "owner",
"threshold": 1,
"keys": [{
"address": "TRGhNNfnmgLegT4zHNjEqDSADjgmnHvubJ",
"weight": 1
}]
},
"witness": {
"type": 1,
"permission_name": "witness",
"threshold": 1,
"keys": [{
"address": "TRGhNNfnmgLegT4zHNjEqDSADjgmnHvubJ",
"weight": 1
}]
},
"actives": [{
"type": 2,
"permission_name": "active",
"threshold": 2,
"operations": "7fff1fc0033e0000000000000000000000000000000000000000000000000000",
"keys": [{
"address": "TNhXo1GbRNCuorvYu5JFWN3m2NYr9QQpVR",
"weight": 1
}, {
"address": "TKwhcDup8L2PH5r6hxp5CQvQzZqJLmKvZP",
"weight": 1
}]
}],
"visible": true}'
owner_address:创建合约的账户地址,默认为 HexString 格式owner:账户 owner 权限的分配信息witness:出块权限的分配信息,如果不是超级代表(Super Representative,简称 SR),不需要设置actives:其他功能权限的分配信息visible:设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:未签名的 transaction
wallet/getaccountbalance¶
作用:查询一个 TRON 账户在过去某个特定区块高度的 TRX 余额。
目前官方以下节点支持查询:
- 13.228.119.63
- 18.139.193.235
- 18.141.79.38
- 18.139.248.26
本地节点需要在配置文件中开启 storage.balance.history.lookup= true。
curl -X POST http://127.0.0.1:8090/wallet/getaccountbalance -d
'{
"account_identifier": {
"address": "TLLM21wteSPs4hKjbxgmH1L6poyMjeTbHm"
},
"block_identifier": {
"hash": "0000000000010c4a732d1e215e87466271e425c86945783c3d3f122bfa5affd9",
"number": 68682
},
"visible": true
}'
参数:
account_identifier.address: 要查询的账户地址。block_identifier.hash: 目标区块的哈希值。block_identifier.number: 目标区块的高度(块号)。visible:设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值示例:
{
"balance": 64086449348265042,
"block_identifier": {
"hash": "0000000000010c4a732d1e215e87466271e425c86945783c3d3f122bfa5affd9",
"number": 68682
}
}
wallet/setaccountid¶
作用:为指定的TRON账户设置或更新一个自定义的账户ID (account_id)。
curl -X POST http://127.0.0.1:8090/wallet/setaccountid -d '{
"owner_address":"41a7d8a35b260395c14aa456297662092ba3b76fc0","account_id":"6161616162626262"}'
owner_address:是交易对创建者的地址,默认为 HexString 格式account_idaccountid,默认为 HexString 格式visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:设置 AccountID 的 transaction
wallet/getaccountbyid¶
作用:通过accountId查询一个账号的信息
curl -X POST http://127.0.0.1:8090/wallet/getaccountbyid -d
'{"account_id":"6161616162626262"}'
account_id:默认为 HexString 格式
返回值:Account 对象
转账和交易¶
下面是转账和交易相关 API:
- wallet/createtransaction
- wallet/broadcasttransaction
- wallet/broadcasthex
- wallet/getsignweight
- wallet/getapprovedlist
wallet/createtransaction¶
作用: 创建一笔 TRX 转账的 Transaction,如果转账的 to 地址不存在,则在区块链上创建该账号
curl -X POST http://127.0.0.1:8090/wallet/createtransaction -d '{"to_address": "41e9d79cc47518930bc322d9bf7cddd260a0260a8d", "owner_address": "41D1E7A6BC354106CB410E65FF8B181C600FF14292", "amount": 1000 }'
to_address是接收方地址。owner_address是转出方地址(发送者)。amount是转账金额,单位为 sun (1 TRX = 1,000,000 sun)。Permission_id可选,在使用账户管理权限签名时使用。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:未签名的TRX转账交易
wallet/broadcasttransaction¶
作用:将一个已经完成签名的交易广播到 TRON 网络。
curl -X POST http://127.0.0.1:8090/wallet/broadcasttransaction -d '{"signature":["97c825b41c77de2a8bd65b3df55cd4c0df59c307c0187e42321dcc1cc455ddba583dd9502e17cfec5945b34cad0511985a6165999092a6dec84c2bdd97e649fc01"],"txID":"454f156bf1256587ff6ccdbc56e64ad0c51e4f8efea5490dcbc720ee606bc7b8","raw_data":{"contract":[{"parameter":{"value":{"amount":1000,"owner_address":"41e552f6487585c2b58bc2c9bb4492bc1f17132cd0","to_address":"41d1e7a6bc354106cb410e65ff8b181c600ff14292"},"type_url":"type.googleapis.com/protocol.TransferContract"},"type":"TransferContract"}],"ref_block_bytes":"267e","ref_block_hash":"9a447d222e8de9f2","expiration":1530893064000,"timestamp":1530893006233}}'
wallet/createtransaction)返回的未签名交易的基础上,添加了 signature 字段构成的。
返回值:
- 返回一个包含广播结果的 JSON 对象。
- 一个成功的响应通常包含
"result": true,表示您连接的这个节点已成功接收您的交易并开始向全网广播。
重要提示:"result": true 不代表交易已被区块链确认。它仅表示“已成功广播”。您需要通过wallet/gettransactioninfobyid |wallet/gettransactionbyid 接口使用 txID 来查询交易的最终状态(是否成功上链)。
wallet/broadcasthex¶
作用:将一个已经完成签名并序列化为十六进制字符串 (Hex)的交易进行广播。
curl -X POST http://127.0.0.1:8090/wallet/broadcasthex -d '{"transaction":"0A8A010A0202DB2208C89D4811359A28004098A4E0A6B52D5A730802126F0A32747970652E676F6F676C65617069732E636F6D2F70726F746F636F6C2E5472616E736665724173736574436F6E747261637412390A07313030303030311215415A523B449890854C8FC460AB602DF9F31FE4293F1A15416B0580DA195542DDABE288FEC436C7D5AF769D24206412418BF3F2E492ED443607910EA9EF0A7EF79728DAAAAC0EE2BA6CB87DA38366DF9AC4ADE54B2912C1DEB0EE6666B86A07A6C7DF68F1F9DA171EEE6A370B3CA9CBBB00"}'
transaction:一个包含了所有交易信息(包括签名)并已被序列化为 hex 的完整交易。
返回值:
- 返回一个包含广播结果的JSON对象。
- 一个成功的响应通常包含
"result": true,表示您连接的这个节点已成功接收您的交易并开始向全网广播。
重要提示:"result": true 不代表交易已被区块链确认。它仅表示“已成功广播”。您需要通过 wallet/gettransactioninfobyid |wallet/gettransactionbyid 接口使用 txID 来查询交易的最终状态(是否成功上链)。
wallet/getsignweight¶
作用:检查一个使用账户管理权限 (Account management Permission) 的交易的当前签名状态。
当交易发起账户设置了账户管理权限后,该交易可能需要多个私钥签名才能被广播。此接口用于在集齐所有必需的签名之前,随时检查当前已收集到的签名权重是否达到了该权限设定的阈值。因此,它是处理此类交易时一个关键的预广播检查工具。
curl -X POST http://127.0.0.1:8090/wallet/getsignweight -d '{
"signature": [
"e0bd4a60f1b3c89d4da3894d400e7e32385f6dd690aee17fdac4e016cdb294c5128b66f62f3947a7182c015547496eba95510c113bda2a361d811b829343c36501",
"596ead6439d0f381e67f30b1ed6b3687f2bd53ce5140cdb126cfe4183235804741eeaf79b4e91f251fd7042380a9485d4d29d67f112d5387bc7457b355cd3c4200"
],
"txID": "0ae84a8439f5aa8fd2c458879a4031a7452aebed8e6e99ffbccd26842d4323c4",
"raw_data": {
"contract": [{
"parameter": {
"value": {
"amount": 1000000,
"owner_address": "TRGhNNfnmgLegT4zHNjEqDSADjgmnHvubJ",
"to_address": "TJCnKsPa7y5okkXvQAidZBzqx3QyQ6sxMW"
},
"type_url": "type.googleapis.com/protocol.TransferContract"
},
"type": "TransferContract"
}],
"ref_block_bytes": "163d",
"ref_block_hash": "77ef4ace148b05ba",
"expiration": 1555664823000,
"timestamp": 1555664763418
},
"raw_data_hex": "0a02163d220877ef4ace148b05ba40d8c5e5a6a32d5a69080112630a2d747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e5472616e73666572436f6e747261637412320a1541a7d8a35b260395c14aa456297662092ba3b76fc01215415a523b449890854c8fc460ab602df9f31fe4293f18c0843d2802709af4e1a6a32d",
"visible": true}'
返回值:返回一个 JSON 对象,已签名权重是否达到阈值(即是否满足验签标准),签名地址列表,permission 的详细信息,已签名的权重及交易信息。
wallet/getapprovedlist¶
作用:在账户管理权限流程中,用于查询并返回一个交易的已签名地址列表。
此接口与 wallet/getsignweight 功能相似,但其主要目的是快速获取已提供有效签名的参与方列表,以跟踪签名收集进度。
curl -X POST http://127.0.0.1:8090/wallet/getapprovedlist -d '{
"signature": [
"e0bd4a60f1b3c89d4da3894d400e7e32385f6dd690aee17fdac4e016cdb294c5128b66f62f3947a7182c015547496eba95510c113bda2a361d811b829343c36501",
"596ead6439d0f381e67f30b1ed6b3687f2bd53ce5140cdb126cfe4183235804741eeaf79b4e91f251fd7042380a9485d4d29d67f112d5387bc7457b355cd3c4200"
],
"txID": "0ae84a8439f5aa8fd2c458879a4031a7452aebed8e6e99ffbccd26842d4323c4",
"raw_data": {
"contract": [{
"parameter": {
"value": {
"amount": 1000000,
"owner_address": "TRGhNNfnmgLegT4zHNjEqDSADjgmnHvubJ",
"to_address": "TJCnKsPa7y5okkXvQAidZBzqx3QyQ6sxMW"
},
"type_url": "type.googleapis.com/protocol.TransferContract"
},
"type": "TransferContract"
}],
"ref_block_bytes": "163d",
"ref_block_hash": "77ef4ace148b05ba",
"expiration": 1555664823000,
"timestamp": 1555664763418
},
"raw_data_hex": "0a02163d220877ef4ace148b05ba40d8c5e5a6a32d5a69080112630a2d747970652e676f6f676c65617069732e636f6d2f70726f746f636f6c2e5472616e73666572436f6e747261637412320a1541a7d8a35b260395c14aa456297662092ba3b76fc01215415a523b449890854c8fc460ab602df9f31fe4293f18c0843d2802709af4e1a6a32d",
"visible": true}'
返回值:返回一个 JSON 对象,其中包含了已批准的地址列表和交易的整体签名状态。
帐户资源¶
下面是链上资源相关 API:
- wallet/getaccountresource
- wallet/getaccountnet
- wallet/unfreezebalance
- wallet/getdelegatedresource
- wallet/getdelegatedresourceaccountindex
- wallet/freezebalancev2
- wallet/unfreezebalancev2
- wallet/cancelallunfreezev2
- wallet/delegateresource
- wallet/undelegateresource
- wallet/withdrawexpireunfreeze
- wallet/getavailableunfreezecount
- wallet/getcanwithdrawunfreezeamount
- wallet/getcandelegatedmaxsize
- wallet/getdelegatedresourcev2
- wallet/getdelegatedresourceaccountindexv2
wallet/getaccountresource¶
作用:查询一个指定 TRON 账户的资源信息,包括其带宽、能量、投票权以及相关的质押等信息。
curl -X POST http://127.0.0.1:8090/wallet/getaccountresource -d {"address" : "419844f7600e018fd0d710e2145351d607b3316ce9"}
address:查询账户的地址,默认为 HexString 格式。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个包含账户所有资源相关信息的 JSON 对象。
wallet/getaccountnet¶
作用:查询一个指定 TRON 账户的带宽资源详情。
curl -X POST http://127.0.0.1:8090/wallet/getaccountnet -d '{"address": "4112E621D5577311998708F4D7B9F71F86DAE138B5"}'
address查询账户的地址,默认为 HexString 格式。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个包含账户所有带宽相关信息的 JSON 对象。
wallet/freezebalance¶
作用:该接口是 TRON Stake 1.0 阶段的产物,已被正式废弃。所有新的质押操作请使用freezebalancev2。
wallet/unfreezebalance¶
作用:解质押 Stake1.0 阶段质押并已经结束质押期的 TRX,会同时失去这部分 TRX 带来的带宽和投票权
curl -X POST http://127.0.0.1:8090/wallet/unfreezebalance -d '{
"owner_address":"41e472f387585c2b58bc2c9bb4492bc1f17342cd1",
"resource": "BANDWIDTH",
"receiver_address":"414332f387585c2b58bc2c9bb4492bc1f17342cd1"
}'
owner_address是解质押 TRX 账号的地址,默认为 HexString 格式resource可以是BANDWIDTH或者ENERGYreceiverAddress表示受委托账户的地址,默认为 HexString 格式- 可选参数
Permission_id,在使用账户管理权限签名时使用。 visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个未签名的解质押交易对象 (Unsigned Transaction)。
wallet/getdelegatedresource¶
作用:Stake 1.0 中查询指定账户(代理方)为另一个特定账户(接收方)所代理的资源(能量或带宽)详情。
curl -X POST http://127.0.0.1:8090/wallet/getdelegatedresource -d '
{
"fromAddress": "419844f7600e018fd0d710e2145351d607b3316ce9",
"toAddress": "41c6600433381c731f22fc2b9f864b14fe518b322f"
}'
fromAddress:是要查询的账户地址,默认为 HexString 格式toAddress:代理对象的账户地址,默认为 HexString 格式visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:账户的资源代理的列表,列表的元素为 DelegatedResource
wallet/getdelegatedresourceaccountindex¶
作用:Stake1.0 中查询一个指定账户的代理以及被代理资源关系列表。
curl -X POST http://127.0.0.1:8090/wallet/getdelegatedresourceaccountindex -d '
{
"value": "419844f7600e018fd0d710e2145351d607b3316ce9",
}'
value:是要查询的账户地址,默认为 HexString 格式。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:账户的资源代理概况,结构为 DelegatedResourceAccountIndex。
wallet/freezebalancev2¶
作用:Stake 2.0 质押 TRX。通过此操作,质押者不仅能获取指定的网络资源(能量或带宽),还将同时获得与质押 TRX 数量等同的投票权 (TRON Power, TP),比例为 1 TRX : 1 TP。
curl -X POST http://127.0.0.1:8090/wallet/freezebalancev2 -d
'{
"owner_address": "41e472f387585c2b58bc2c9bb4492bc1f17342cd1",
"frozen_balance": 10000,
"resource": "BANDWIDTH"
}'
参数:
owner_address: 质押 TRX 账号的地址, HEX 格式或 Base58Check 格式frozen_balance: 质押 TRX 的数量, 单位为 sunresource: 质押 TRX 获取资源的类型, 可以是BANDWIDTH或者ENERGYPermission_id: 可选参数,在使用账户管理权限签名时使用。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个未签名的质押交易对象 (Unsigned Transaction)。
wallet/unfreezebalancev2¶
作用: 解质押通过 Stake2.0 机制质押的 TRX, 释放所相应数量的带宽和能量,同时回收相应数量的投票权 (TP)。
curl -X POST http://127.0.0.1:8090/wallet/unfreezebalancev2 -d
'{
"owner_address": "41e472f387585c2b58bc2c9bb4492bc1f17342cd1",
"unfreeze_balance": 1000000,
"resource": "BANDWIDTH"
}'
参数:
owner_address: 解质押 TRX 账号的地址, HEX 格式或 Base58Check 格式resource: 资源类型,BANDWIDTH或者ENERGYunfreeze_balance: 解质押的TRX数量,单位为 sunPermission_id: 可选参数,在使用账户管理权限签名时使用。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个未签名的解质押交易对象 (Unsigned Transaction)。
wallet/cancelallunfreezev2¶
作用:立即取消账户所有正在进行中(未满 14 天)的解质押请求。此操作具有以下双重效果:
- 重新质押:所有被取消的、未到期的解质押本金将立即被重新质押,资源类型与之前保持一致。
- 提取到期 TRX:如果账户中存在其他已完成 14 天锁定期的解质押资金,本次操作会将其自动提取到账户余额中。
curl -X POST http://127.0.0.1:8090/wallet/cancelallunfreezev2 -d
'{
"owner_address": "41e472f387585c2b58bc2c9bb4492bc1f17342cd1"
}'
参数:
owner_address: 账户地址, HEX 格式或 Base58Check 格式。Permission_id: 可选参数,在使用账户管理权限签名时使用。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的取消解质押交易对象 (Unsigned Transaction)。
wallet/delegateresource¶
作用: 将您通过质押TRX获得的能量或带宽资源代理给其他TRON账户, 但是投票权(TP)无法被代理
curl -X POST http://127.0.0.1:8090/wallet/delegateresource -d
'{
"owner_address": "41e472f387585c2b58bc2c9bb4492bc1f17342cd1",
"receiver_address": "41d1e7a6bc354106cb410e65ff8b181c600ff14292",
"balance": 1000000,
"resource": "BANDWIDTH",
"lock": false
}'
参数:
owner_address: 交易发起者账号的地址, HEX 格式或 Base58Check 格式。receiver_address: 资源的接收账户地址, HEX 格式或 Base58Check 格式。balance: 代理balance数量的 TRX 所对应的资源给目标地址, 单位为sun。resource: 代理的资源类型,BANDWIDTH或者ENERGY。lock: true 表示为该资源代理操作设置三天的锁定期,即资源代理给目标地址后的三天内不可以取消对其的资源代理,如果锁定期内,再次代理资源给同一目标地址,则锁定期将重新设置为3天。false 表示本次资源代理没有锁定期,可随时取消对目标地址的资源代理。lock_period: 锁定周期,以区块时间(3s)为单位,表示锁定多少个区块的时间,当 lock 为true时,该字段有效。如果代理锁定期为 1 天,则lock_period为:28800。Permission_id: 可选参数,在使用账户管理权限签名时使用。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个未签名的资源代理交易对象 (Unsigned Transaction)。
wallet/undelegateresource¶
作用: 取消(收回)此前为其他账户代理的能量或带宽资源。
重要提示:如果一笔资源代理设置了时间锁 (lock: true) 并且尚未到期,调用此接口来取消该笔代理将会失败。您必须等待锁定期结束后才能执行此操作。
curl -X POST http://127.0.0.1:8090/wallet/undelegateresource -d
'{
"owner_address": "41e472f387585c2b58bc2c9bb4492bc1f17342cd1",
"receiver_address": "41d1e7a6bc354106cb410e65ff8b181c600ff14292",
"balance": 1000000,
"resource": "BANDWIDTH"
}'
参数:
owner_address: 交易发起者账号的地址, HEX 格式或 Base58Check 格式。receiver_address: 资源的接收账户地址, 也就是取消为该地址的资源代理。 HEX 格式或 Base58Check 格式。balance: 取消代理 balance 数量的 TRX 所对应的资源, 单位为 sun。resource: 取消代理的资源类型,BANDWIDTH或者ENERGY。Permission_id: 可选参数,在使用账户管理权限签名时使用。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个未签名的取消资源代理交易对象 (Unsigned Transaction)。
wallet/withdrawexpireunfreeze¶
作用:提取所有已过锁定期的解质押 TRX。
curl -X POST http://127.0.0.1:8090/wallet/withdrawexpireunfreeze -d
'{
"owner_address": "41e472f387585c2b58bc2c9bb4492bc1f17342cd1",
}'
参数:
owner_address: 交易发起者账号的地址, HEX 格式或 Base58Check 格式。Permission_id: 可选参数,在使用账户管理权限签名时使用。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个未签名的提取到期解质押资金的交易对象 (Unsigned Transaction)。
wallet/getavailableunfreezecount¶
作用:查询一个指定账户当前还可发起解质押操作的剩余次数。由于TRON网络规定每个账户最多只能同时保有 32 笔处于 14 天锁定期内的解质押操作,此接口可用于在调用 unfreezebalancev2 之前,预先检查是否还有可用的“解质押额度”。
curl -X POST http://127.0.0.1:8090/wallet/getavailableunfreezecount -d
'{
"owner_address": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"visible": true
}
'
参数:
owner_address: 需要查询的账户地址。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个包含剩余次数的 JSON 对象。
wallet/getcanwithdrawunfreezeamount¶
作用:查询在某时间点可以提取的解质押本金数量。
curl -X POST http://127.0.0.1:8090/wallet/getcanwithdrawunfreezeamount -d
'{
"owner_address": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"timestamp": 1667977444000,
"visible": true
}
'
参数:
owner_address: 交易发起者账号的地址。timestamp: 查询在该时间戳时,可提取的本金数量,单位为毫秒。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个包含可提取金额的 JSON 对象。
wallet/getcandelegatedmaxsize¶
作用:查询目标地址中指定类型资源的可代理数量,单位为 sun
curl -X POST http://127.0.0.1:8090/wallet/getcandelegatedmaxsize -d
'{
"owner_address": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"type": 0,
"visible": true
}
'
参数:
owner_address: 需要查询的账户地址。type: 资源类型,0 为带宽,1 为能量。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个包含可代理份额最大值的 JSON 对象。
wallet/getdelegatedresourcev2¶
作用:查询在 Stake 2.0 机制下,指定账户(代理方)为另一个特定账户(接收方)所代理的资源详情。
curl -X POST http://127.0.0.1:8090/wallet/getdelegatedresourcev2 -d
'{
"fromAddress": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"toAddress": "TPswDDCAWhJAZGdHPidFg5nEf8TkNToDX1",
"visible": true
}
'
参数:
fromAddress: 代理账户地址。toAddress: 资源的接收账户地址。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个 delegatedResource 数组,包含了两者在Stake 2.0下的所有资源代理记录。
wallet/getdelegatedresourceaccountindexv2¶
作用:查询在 Stake2.0 阶段,某地址的资源委托索引。返回两个列表,一个是该帐户将资源委托给的地址列表 (toAddress),另一个是将资源委托给该帐户的地址列表 (fromAddress)
curl -X POST http://127.0.0.1:8090/wallet/getdelegatedresourceaccountindexv2 -d
'{
"value": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"visible": true
}
'
参数:
value: 账户地址。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个包含双向代理关系列表的 JSON 对象。包含两个列表,一个是该帐户将资源委托给的地址列表 (toAddress),另一个是将资源委托给该帐户的地址列表 (fromAddress)
查询链上数据¶
下面是查询链上数据相关 API:
- wallet/getnowblock
- wallet/getblock
- wallet/getblockbynum
- wallet/getblockbyid
- wallet/getblockbylatestnum
- wallet/getblockbylimitnext
- wallet/getblockbalance
- wallet/gettransactionbyid
- wallet/gettransactioninfobyid
- wallet/gettransactioncountbyblocknum
- wallet/gettransactioninfobyblocknum
- wallet/listnodes
- wallet/getnodeinfo
- wallet/getchainparameters
- wallet/getenergyprices
- wallet/getbandwidthprices
- wallet/getmemofee
- wallet/getburntrx
wallet/getnowblock¶
作用:查询最新块。
curl -X POST http://127.0.0.1:8090/wallet/getnowblock
返回值:最新的区块对象 (Block object)。
wallet/getblock¶
作用:根据区块高度或区块哈希查询区块信息。
curl -X POST http://127.0.0.1:8090/wallet/getblock -d '{"detail":false}'
id_or_num: 区块高度或者区块哈希,不设置表示查询最新区块detail: 默认为 false,表示只查询区块头信息,true 表示查询整个区块
返回值:区块对象 (Block object) 或仅包含区块头信息的对象。
wallet/getblockbynum¶
作用:通过指定的区块高度查询完整的区块信息。
curl -X POST http://127.0.0.1:8090/wallet/getblockbynum -d '{"num": 1}'
num:区块高度 (整型)。
返回值:指定高度的区块对象 (Block object)。
wallet/getblockbyid¶
作用:通过指定的区块ID(哈希)查询完整的区块信息。
curl -X POST http://127.0.0.1:8090/wallet/getblockbyid -d '{"value": "0000000000038809c59ee8409a3b6c051e369ef1096603c7ee723c16e2376c73"}'
value:区块的ID (hash)。
返回值:指定ID的区块对象 (Block object)。
wallet/getblockbylatestnum¶
作用:查询从最新区块开始,倒序的N个区块。
curl -X POST http://127.0.0.1:8090/wallet/getblockbylatestnum -d '{"num": 5}'
num:需要查询的区块数量。
返回值:一个包含多个区块对象的数组 (Block[])。
wallet/getblockbylimitnext¶
作用:分页查询指定高度范围内的区块列表。
curl -X POST http://127.0.0.1:8090/wallet/getblockbylimitnext -d '{"startNum": 1, "endNum": 2}'
startNum:起始块高度,包含此块endNum:截止块高度,不包含此此块
返回值:一个包含多个区块对象的数组 (Block[])。
wallet/getblockbalance¶
作用:获取一个指定区块中,所有交易引起的 TRX 余额变化详情。
curl -X POST http://127.0.0.1:8090/wallet/getblockbalance -d
'{
"hash": "000000000000dc2a3731e28a75b49ac1379bcc425afc95f6ab3916689fbb0189",
"number": 56362,
"visible": true
}'
hash: 区块的哈希值。number: 区块的高度。与区块哈希必须精确匹配。
返回值:一个包含了该区块所有余额变动追踪信息的对象,示例如下:
{
"block_identifier": {
"hash": "000000000000dc2a3731e28a75b49ac1379bcc425afc95f6ab3916689fbb0189",
"number": 56362
},
"timestamp": 1530060672000,
"transaction_balance_trace": [
{
"transaction_identifier": "e6cabb1833cd1f795eed39d8dd7689eaa70e5bb217611766c74c7aa9feea80df",
"operation": [
{
"operation_identifier": 0,
"address": "TPttBLmFuykRi83y9HxDoEWxTQw6CCcQ4p",
"amount": -100000
},
{
"operation_identifier": 1,
"address": "TLsV52sRDL79HXGGm9yzwKibb6BeruhUzy",
"amount": 100000
},
{
"operation_identifier": 2,
"address": "TPttBLmFuykRi83y9HxDoEWxTQw6CCcQ4p",
"amount": -10000000
},
{
"operation_identifier": 3,
"address": "TMrysg7DbwR1M8xqhpaPdVCHCuWFhw7uk1",
"amount": 10000000
}
],
"type": "TransferContract",
"status": "SUCCESS"
}
]
}
wallet/gettransactionbyid¶
作用:通过交易 ID(哈希)查询一个已上链交易的完整信息。
curl -X POST http://127.0.0.1:8090/wallet/gettransactionbyid -d '{"value": "d5ec749ecc2a615399d8a6c864ea4c74ff9f523c2be0e341ac9be5d47d7c2d62"}'
value:交易 ID (hash)。
返回值:完整的交易对象 (Transaction object)。如果交易不存在,返回空对象。
wallet/gettransactioninfobyid¶
作用:根据交易 ID(哈希)查询交易的摘要信息,如费用、所在区块等。
curl -X POST http://127.0.0.1:8090/wallet/gettransactioninfobyid -d '{"value" : "309b6fa3d01353e46f57dd8a8f27611f98e392b50d035cef213f2c55225a8bd2"}'
value:交易 ID (hash)。
返回值:交易的摘要信息对象 (TransactionInfo object),包含交易费用、所在区块高度、区块时间戳、合约执行结果等。
wallet/gettransactioncountbyblocknum¶
作用:查询指定区块高度上包含的交易总数。
curl -X POST http://127.0.0.1:8090/wallet/gettransactioncountbyblocknum -d '{"num" : 100}'
num:区块高度。
返回值:一个包含交易数量的对象,如 {"count": 50}。
wallet/gettransactioninfobyblocknum¶
作用:获取指定区块高度上所有交易的摘要信息列表。
curl -X POST http://127.0.0.1:8090/wallet/gettransactioninfobyblocknum -d '{"num" : 100}'
num:区块高度。
返回值:一个包含多个交易摘要信息对象的列表。
wallet/listnodes¶
作用:查询当前节点通过节点发现功能探测到的其他节点。
curl -X POST http://127.0.0.1:8090/wallet/listnodes
返回值:一个包含多个节点信息的数组,每个节点包含IP地址和端口。
wallet/getnodeinfo¶
作用:查看当前节点自身的运行状态和信息。
curl http://127.0.0.1:8090/wallet/getnodeinfo
wallet/getchainparameters¶
作用:查询当前TRON网络的所有动态参数。
curl -X POST http://127.0.0.1:8090/wallet/getchainparameters
wallet/getenergyprices¶
作用:查询历史上能量单价的变化记录。
curl -X POST http://127.0.0.1:8090/wallet/getenergyprices
wallet/getbandwidthprices¶
作用:查询历史上带宽单价的变化记录。
curl -X POST http://127.0.0.1:8090/wallet/getbandwidthprices
wallet/getmemofee¶
作用:查询历史上备注价格变化记录。
curl -X POST http://127.0.0.1:8090/wallet/getmemofee
wallet/getburntrx¶
作用:查询 TRON 网络创世以来累计燃烧的 TRX 总量。
curl -X POST http://127.0.0.1:8090/wallet/getburntrx
智能合约¶
下面是智能合约相关API:
- wallet/getcontract
- wallet/getcontractinfo
- wallet/deploycontract
- wallet/triggersmartcontract
- wallet/triggerconstantcontract
- wallet/updatesetting
- wallet/updateenergylimit
- wallet/clearabi
- wallet/estimateenergy
wallet/getcontract¶
作用:通过合约地址获取合约的静态信息,如 ABI 和字节码。
curl -X POST http://127.0.0.1:8090/wallet/getcontract -d '{"value":"4189139CB1387AF85E3D24E212A008AC974967E561"}'
value:合约地址,默认为 HexString 格式。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:智能合约对象 (SmartContract),包含ABI、部署字节码、名称等。
wallet/getcontractinfo¶
作用:通过合约地址获取合约的运行时信息。
curl -X POST http://127.0.0.1:8090/wallet/getcontractinfo -d '{"value":"4189139CB1387AF85E3D24E212A008AC974967E561"}'
value:合约地址,默认为 HexString 格式。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:查询链上的合约信息。与 wallet/getcontract 接口不同的是,该接口不仅返回 bytecode 还会返回合约的 runtime bytecode。runtime bytecode 相比 bytecode,不包含构造函数以及构造函数的参数信息。
wallet/deploycontract¶
作用:创建一笔部署智能合约的交易。
curl -X POST http://127.0.0.1:8090/wallet/deploycontract -d '{"abi":"[{\"constant\":false,\"inputs\":[{\"name\":\"key\",\"type\":\"uint256\"},{\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"set\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"key\",\"type\":\"uint256\"}],\"name\":\"get\",\"outputs\":[{\"name\":\"value\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"}]","bytecode":"608060405234801561001057600080fd5b5060de8061001f6000396000f30060806040526004361060485763ffffffff7c01000000000000000000000000000000000000000000000000000000006000350416631ab06ee58114604d5780639507d39a146067575b600080fd5b348015605857600080fd5b506065600435602435608e565b005b348015607257600080fd5b50607c60043560a0565b60408051918252519081900360200190f35b60009182526020829052604090912055565b600090815260208190526040902054905600a165627a7a72305820fdfe832221d60dd582b4526afa20518b98c2e1cb0054653053a844cf265b25040029","parameter":"","call_value":100,"name":"SomeContract","consume_user_resource_percent":30,"fee_limit":10,"origin_energy_limit": 10,"owner_address":"41D1E7A6BC354106CB410E65FF8B181C600FF14292"}'
abi:abi。bytecode:bytecode,需要是 HexString 格式。parameter:构造函数的参数列表,需要按照 ABI encoder 编码后转话为 HexString 格式。如果构造函数没有参数,该参数可以不用设置。consume_user_resource_percent:指定的使用该合约用户的资源占比,是[0, 100]之间的整数。如果是 0,则表示用户不会消耗资源。如果开发者资源消耗完了,才会完全使用用户的资源。fee_limit:最大消耗的 sun(1TRX = 1,000,000 sun)。call_value:本次调用往合约转账的 sun(1TRX = 1,000,000 sun)。owner_address:发起 deploycontract 的账户地址,默认为 HexString 格式。name:合约名。origin_energy_limit: 创建者设置的,在一次合约执行或创建过程中创建者自己消耗的最大的 energy,是大于 0 的整数。call_token_value:本次调用往合约中转账 TRC-10 币的数量,如果不设置 token_id,这项设置为 0 或者不设置。token_id:本次调用往合约中转账 TRC-10 币的 id,如果没有,不需要设置。Permission_id可选参数,多重签名时使用,设置交易多重签名时使用的 permissionId。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个包含了未签名部署交易的对象。
wallet/triggersmartcontract¶
作用:创建一笔调用智能合约函数的交易
curl -X POST http://127.0.0.1:8090/wallet/triggersmartcontract -d '{"contract_address":"4189139CB1387AF85E3D24E212A008AC974967E561","function_selector":"set(uint256,uint256)","parameter":"00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000002","fee_limit":10,"call_value":100,"owner_address":"41D1E7A6BC354106CB410E65FF8B181C600FF14292"}'
contract_address:调用者的地址,默认为 HexString 格式。function_selector:函数签名,不能有空格。parameter:调用参数 [1,2] 的虚拟机格式,使用 remix 提供的 js 工具,将合约调用者调用的参数数组 [1,2] 转化为虚拟机所需要的参数格式data:与智能合约进行交互的数据,包括所调用的合约函数和参数。可以选择通过该字段,也可以选择通过 function_selector 和 parameter 进行合约交互,当 data 与 function_selector 同时存在时,使用 function_selector 进行合约交互。fee_limit:最大消耗的 sun(1TRX = 1,000,000 sun)。call_value:本次调用往合约转账的 sun(1TRX = 1,000,000 sun)。owner_address:发起 triggercontract 的账户地址,默认为 HexString 格式。call_token_value:本次调用往合约中转账 TRC-10 币的数量,如果不设置 token_id,这项设置为 0 或者不设置。token_id:本次调用往合约中转账 TRC-10 币的 id,如果没有,不需要设置。Permission_id可选参数,多重签名时使用,设置交易多重签名时使用的 permissionId。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个包含了未签名部署交易的对象。
wallet/triggerconstantcontract¶
作用:在本地节点模拟执行合约,用于数据查询、交易预执行或预估能量消耗,此操作不上链,不消耗资源。
curl -X POST http://127.0.0.1:8090/wallet/triggerconstantcontract -d '{"contract_address":"4189139CB1387AF85E3D24E212A008AC974967E561","function_selector":"set(uint256,uint256)","parameter":"00000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000002","call_value":100,"owner_address":"41D1E7A6BC354106CB410E65FF8B181C600FF14292"}'
contract_address:调用者的地址,默认为 HexString 格式。function_selector:函数签名,不能有空格。parameter:调用参数 [1,2] 的虚拟机格式,使用 remix 提供的 js 工具,将合约调用者调用的参数数组 [1,2] 转化为虚拟机所需要的参数格式data:合约字节码或者与智能合约进行交互的数据,包括所调用的合约函数和参数。可以选择通过该字段,也可以选择通过 function_selector 和 parameter 进行合约交互,当 data 与 function_selector 同时存在时,优先使用 function_selector。owner_address:发起 triggercontract 的账户地址,默认为 HexString 格式。call_value:本次调用往合约转账的 sun(1TRX = 1,000,000 sun)。call_token_value:本次调用往合约中转账 TRC-10 币的数量,如果不设置 token_id,这项设置为 0 或者不设置。token_id:本次调用往合约中转账 TRC-10 币的 id,如果没有,不需要设置。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:合约函数的返回值,经过 ABI 编码后的结果。
wallet/updatesetting¶
作用:更新已部署合约的 consume_user_resource_percent(调用者能量承担比例)。
curl -X POST http://127.0.0.1:8090/wallet/updatesetting -d '{"owner_address": "419844f7600e018fd0d710e2145351d607b3316ce9", "contract_address": "41c6600433381c731f22fc2b9f864b14fe518b322f", "consume_user_resource_percent": 7}'
owner_address:合约的所有者地址,默认为 HexString 格式。contract_address:要修改的合约的地址,默认为 HexString 格式。consume_user_resource_percent:指定的使用该合约用户的资源占比。Permission_id可选参数,多重签名时使用,设置交易多重签名时使用的 permissionId。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个包含了未签名更新交易的对象。
wallet/updateenergylimit¶
作用:更新已部署合约的 origin_energy_limit(开发者愿意为单次调用提供的能量上限)。
curl -X POST http://127.0.0.1:8090/wallet/updateenergylimit -d '{"owner_address": "419844f7600e018fd0d710e2145351d607b3316ce9", "contract_address": "41c6600433381c731f22fc2b9f864b14fe518b322f", "origin_energy_limit": 7}'
owner_address:合约的所有者地址,默认为 HexString 格式。contract_address:要修改的合约的地址,默认为 HexString 格式。origin_energy_limit:创建者设置的,在一次合约执行或创建过程中创建者自己消耗的最大的 energy。Permission_id可选参数,多重签名时使用,设置交易多重签名时使用的 permissionId。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个包含了未签名更新交易的对象。
wallet/clearabi¶
作用:创建一笔清除智能合约 ABI 的交易。
curl -X POST http://127.0.0.1:8090/wallet/clearabi -d '{
"owner_address":"41a7d8a35b260395c14aa456297662092ba3b76fc0",
"contract_address":"417bcb781f4743afaacf9f9528f3ea903b3782339f"}'
owner_address:创建合约的账户地址,默认为 HexString 格式contract_address:合约地址,默认为 HexStringvisible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个未签名的交易对象
wallet/estimateenergy¶
作用:预估一次智能合约调用所需的能量。
curl -X POST http://127.0.0.1:8090/wallet/estimateenergy -d '{
"owner_address": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"contract_address": "TG3XXyExBkPp9nzdajDZsozEu4BkaSJozs",
"function_selector": "transfer(address,uint256)",
"parameter": "00000000000000000000004115208EF33A926919ED270E2FA61367B2DA3753DA0000000000000000000000000000000000000000000000000000000000000032",
"visible": true
}'
参数:
contract_address,默认为 HexString 格式function_selector,函数签名,不能有空格parameter:调用参数 [1,2] 的虚拟机格式,使用 remix 提供的 js 工具,将合约调用者调用的参数数组 [1,2] 转化为虚拟机所需要的参数格式data:合约字节码或者与智能合约进行交互的数据,包括所调用的合约函数和参数。可以选择通过该字段,也可以选择通过 function_selector 和 parameter 进行合约交互,当 data 与 function_selector 同时存在时,优先使用 function_selectorfee_limit:最大消耗的 sun(1TRX = 1,000,000 sun)owner_address:发起 triggercontract 的账户地址,默认为 HexString 格式call_value:本次调用往合约转账的 sun(1TRX = 1,000,000 sun)call_token_value:本次调用往合约中转账 TRC-10 币的数量,如果不设置 token_id,这项设置为 0 或者不设置token_id:本次调用往合约中转账 TRC-10 币的 id,如果没有,不需要设置visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个包含预估能量值的对象。
TRC-10 通证¶
下面是 TRC-10 代币相关 API:
- wallet/getassetissuebyaccount
- wallet/getassetissuebyname
- wallet/getassetissuelistbyname
- wallet/getassetissuebyid
- wallet/getassetissuelist
- wallet/getpaginatedassetissuelist
- wallet/transferasset
- wallet/participateassetissue
- wallet/createassetissue
- wallet/unfreezeasset
- wallet/updateasset
wallet/getassetissuebyaccount¶
作用:查询指定账户所发行的所有 TRC-10 代币。
curl -X POST http://127.0.0.1:8090/wallet/getassetissuebyaccount -d '{"address": "41F9395ED64A6E1D4ED37CD17C75A1D247223CAF2D"}'
参数:
address:发行者账户地址,默认为 HexString 格式。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:该接口返回一个包含了该地址发行的 TRC-10 代币列表的对象。
wallet/getassetissuebyname¶
作用:根据名称查询 TRC-10 代币。
curl -X POST http://127.0.0.1:8090/wallet/getassetissuebyname -d '{"value": "44756354616E"}'
value:代币名称,默认为 HexString 格式。
返回值:TRC-10 代币对象。
注意:Odyssey-v3.2开始,推荐使用 getassetissuebyid 或者 getassetissuelistbyname 替换此接口,因为从 3.2 开始将允许通证名称相同。如果存在相同的通证名称,此接口将会报错。
wallet/getassetissuelistbyname¶
作用:根据名称查询所有匹配的 TRC-10 代币列表。
curl -X POST http://127.0.0.1:8090/wallet/getassetissuelistbyname -d '{"value": "44756354616E"}'
value:代币名称,默认为 HexString 格式。
返回值:一个包含所有同名 TRC-10 代币对象的数组。
wallet/getassetissuebyid¶
作用:根据 ID 查询 TRC-10 代币
curl -X POST http://127.0.0.1:8090/wallet/getassetissuebyid -d '{"value": "1000001"}'
value:TRC-10 代币的 ID。
返回值:指定的 TRC-10 代币对象。
wallet/getassetissuelist¶
作用:查询全网所有的 TRC-10 代币列表。
curl -X POST http://127.0.0.1:8090/wallet/getassetissuelist
返回值:一个包含全网所有 TRC-10 代币对象的数组。
wallet/getpaginatedassetissuelist¶
作用:分页查询全网的 TRC-10 代币列表。
curl -X POST http://127.0.0.1:8090/wallet/getpaginatedassetissuelist -d '{"offset": 0, "limit": 10}'
offset:分页查询的起始索引。limit:本次查询期望返回的代币数量。
返回值:一个包含了分页结果的 TRC-10 代币对象的数组。
wallet/transferasset¶
作用:创建一笔 TRC-10 代币转账交易。
curl -X POST http://127.0.0.1:8090/wallet/transferasset -d '{"owner_address":"41d1e7a6bc354106cb410e65ff8b181c600ff14292", "to_address": "41e552f6487585c2b58bc2c9bb4492bc1f17132cd0", "asset_name": "0x6173736574497373756531353330383934333132313538", "amount": 100}'
owner_address是转出方地址。,默认为 HexString 格式。to_address是接收方地址,默认为 HexString 格式。asset_name是 TRC-10 代币 ID,默认为 HexString 格式。amount是 token 转账数量。Permission_id可选参数,多重签名时使用,设置交易多重签名时使用的 permissionId。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的 TRC-10 转账交易对象。
wallet/participateassetissue¶
作用:创建一笔参与 TRC-10 代币众筹的交易。
curl -X POST http://127.0.0.1:8090/wallet/participateassetissue -d '{
"to_address": "41e552f6487585c2b58bc2c9bb4492bc1f17132cd0",
"owner_address":"41e472f387585c2b58bc2c9bb4492bc1f17342cd1",
"amount":100,
"asset_name":"3230313271756265696a696e67"
}'
to_address是代币发行方地址,默认为 HexString 格式。owner_address是参与者地址(购买方),默认为HexString 格式amount是参与 token 的数量。asset_name是要参与的代币 ID,默认为 HexString 格式。Permission_id可选参数,多重签名时使用,设置交易多重签名时使用的 permissionId。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的参与众筹交易对象。
注意 当前的
asset_name为 token 名称。当委员会通过AllowSameTokenName提议后asset_name改为 token ID 的 String 类型。
wallet/createassetissue¶
作用:创建一笔发行 TRC-10 代币的交易(成本为 1024 TRX)。
curl -X POST http://127.0.0.1:8090/wallet/createassetissue -d '{
"owner_address":"41e552f6487585c2b58bc2c9bb4492bc1f17132cd0",
"name":"0x6173736574497373756531353330383934333132313538",
"abbr": "0x6162627231353330383934333132313538",
"total_supply" :4321,
"trx_num":1,
"num":1,
"start_time" : 1530894315158,
"end_time":1533894312158,
"description":"007570646174654e616d6531353330363038383733343633",
"url":"007570646174654e616d6531353330363038383733343633",
"free_asset_net_limit":10000,
"public_free_asset_net_limit":10000,
"frozen_supply":{"frozen_amount":1, "frozen_days":2}
}'
owner_address发行人地址,默认为 HexString 格式。name是 token 名称,默认为 HexString 格式。abbr是 token 简称,默认为 HexString 格式。total_supply是发行总量。trx_num和num是 token 和 TRX 的最小单位兑换比。start_time和end_time是 token 发行起止时间。description是 token 说明,默认为 HexString 格式。url是 token 发行方的官网,默认为 HexString 格式。free_asset_net_limit是 token 的总的免费带宽。public_free_asset_net_limit是每个 token 拥护者能使用本 token 的免费带宽。frozen_supply是 token 发行者可以在发行的时候指定质押的 token。Permission_id可选参数,多重签名时使用,设置交易多重签名时使用的 permissionId。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的发行 TRC-10 代币交易对象。
wallet/unfreezeasset¶
作用:解质押已经结束质押期的 token
curl -X POST http://127.0.0.1:8090/wallet/unfreezeasset -d '{
"owner_address":"41e472f387585c2b58bc2c9bb4492bc1f17342cd1",
}'
owner_address是解质押 token 账号的地址,默认为 HexString 格式。Permission_id可选参数,多重签名时使用,设置交易多重签名时使用的 permissionId。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的解质押代币交易对象。
wallet/updateasset¶
作用:更新已发行的 TRC-10 代币的信息。
curl -X POST http://127.0.0.1:8090/wallet/updateasset -d '{
"owner_address":"41e472f387585c2b58bc2c9bb4492bc1f17342cd1",
"description": "",
"url": "",
"new_limit" : 1000000,
"new_public_limit" : 100
}'
owner_address是 token 发行人的地址,默认为 HexString 格式。description是 token 的描述,默认为 HexString 格式。url是 token 发行人的官网地址,默认为 HexString 格式。new_limit是 token 每个持有人能够使用的免费带宽。new_public_limit是该 token 全部的免费带宽。Permission_id可选参数,多重签名时使用,设置交易多重签名时使用的 permissionId。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的更新代币信息交易对象。
投票和超级代表¶
下面是投票和超级代表(SR)相关的 API:
- wallet/createwitness
- wallet/updatewitness
- wallet/listwitnesses
- wallet/withdrawbalance
- wallet/votewitnessaccount
- wallet/getBrokerage
- wallet/updateBrokerage
- wallet/getReward
- wallet/getnextmaintenancetime
wallet/createwitness¶
作用:创建一笔申请成为 SR 的交易。
curl -X POST http://127.0.0.1:8090/wallet/createwitness -d '{"owner_address":"41d1e7a6bc354106cb410e65ff8b181c600ff14292", "url": "007570646174654e616d6531353330363038383733343633"}'
owner_address是申请成为超级代表的账号地址,默认为 HexString 格式。url是官网地址,默认为 HexString 格式。- 可选参数
Permission_id,多重签名时使用,设置交易多重签名时使用的 permissionId。 visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的申请 SR 交易对象。
wallet/updatewitness¶
作用:更新超级代表网站 URL。
curl -X POST http://127.0.0.1:8090/wallet/updatewitness -d '{
"owner_address":"41d1e7a6bc354106cb410e65ff8b181c600ff14292",
"update_url": "007570646174654e616d6531353330363038383733343633"
}'
owner_address是创建人地址,默认为 HexString 格式。update_url是更新的官网的 url,默认为 HexString 格式。- 可选参数
Permission_id,多重签名时使用,设置交易多重签名时使用的 permissionId。 visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的更新 URL 交易对象。
wallet/listwitnesses¶
作用:查询当前的所有 SR 列表。
curl -X POST http://127.0.0.1:8090/wallet/listwitnesses
返回值:返回所有 SR 信息列表。
wallet/withdrawbalance¶
作用:超级代表或者用户提取奖励到 balance,每 24 个小时可以提现一次。
curl -X POST http://127.0.0.1:8090/wallet/withdrawbalance -d '{
"owner_address":"41e472f387585c2b58bc2c9bb4492bc1f17342cd1",
}'
owner_address是提现账号的地址,默认为 HexString 格式。Permission_id可选参数,多重签名时使用,设置交易多重签名时使用的 permissionId。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的提取奖励交易对象。
wallet/votewitnessaccount¶
作用:对 SR 进行投票
curl -X POST http://127.0.0.1:8090/wallet/votewitnessaccount -d '{
"owner_address":"41d1e7a6bc354106cb410e65ff8b181c600ff14292",
"votes": [{"vote_address": "41e552f6487585c2b58bc2c9bb4492bc1f17132cd0", "vote_count": 5}]
}'
owner_address是投票人地址,默认为 HexString 格式。votes.vote_address是被投票的超级代表的地址,默认为 HexString 格式。vote_count是投票数量。- 可选参数
Permission_id,多重签名时使用,设置交易多重签名时使用的 permissionId。 visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的投票交易对象。
wallet/getBrokerage¶
作用:查询指定超级代表(或合伙人)设置的佣金比例。
curl -X GET http://127.0.0.1:8090/wallet/getBrokerage -d '{
"address":"41E552F6487585C2B58BC2C9BB4492BC1F17132CD0"}'
address是被投票的超级代表的地址,默认为 HexString 格式
- visible 设置地址格式,true 为 Base58Check,false 或省略则为 HexString。
返回值:超级代表的当前 brokerage 比例。
wallet/updateBrokerage¶
作用:更新超级代表当前的Brokerage比例
curl -X POST http://47.252.81.126:8090/wallet/updateBrokerage -d '{
"owner_address":"41E552F6487585C2B58BC2C9BB4492BC1F17132CD0",
"brokerage":30}'
owner_address是被投票的超级代表的地址,默认为 HexString 格式。brokerage是超级代表想要更新为的 brokerage 比例。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的更新佣金交易对象。
wallet/getReward¶
作用:查询一个投票者账户中当前未领取的投票奖励总额。
curl -X GET
http://127.0.0.1:8090/wallet/getReward -d '{
"address":"41E552F6487585C2B58BC2C9BB4492BC1F17132CD0"}'
address是投票人地址,默认为 HexString 格式
- visible 设置地址格式,true 为 Base58Check,false 或省略则为 HexString。
返回值:一个包含未领取奖励金额(单位 sun)的对象。
wallet/getnextmaintenancetime¶
作用:获取下次统计投票的时间
curl -X POST http://127.0.0.1:8090/wallet/getnextmaintenancetime
返回值:下次统计投票时间的毫秒数。
提案¶
下面是提案相关API:
- wallet/proposalcreate
- wallet/getproposalbyid
- wallet/listproposals
- wallet/proposalapprove
- wallet/proposaldelete
- wallet/getpaginatedproposallist
wallet/proposalcreate¶
作用:创建一笔用于修改网络动态参数的提案交易。
curl -X POST http://127.0.0.1:8090/wallet/proposalcreate -d {"owner_address" : "419844F7600E018FD0D710E2145351D607B3316CE9","parameters":[{"key": 0,"value": 100000},{"key": 1,"value": 2}] }
owner_address:创建人地址。parameters:提案参数。- 可选参数
Permission_id,多重签名时使用,设置交易多重签名时使用的 permissionId。 visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的创建提案交易对象。
wallet/getproposalbyid¶
作用:根据ID查询提案的详细信息。
curl -X POST http://127.0.0.1:8090/wallet/getproposalbyid -d {"id":1}
id:提案 id
返回值:指定的提案详细信息。
wallet/listproposals¶
作用:查询当前网络上所有提案的列表。
curl -X POST http://127.0.0.1:8090/wallet/listproposals
返回值:一个包含所有提案对象的数组。
wallet/proposalapprove¶
作用:提案批准
curl -X POST http://127.0.0.1:8090/wallet/proposalapprove -d {"owner_address" : "419844F7600E018FD0D710E2145351D607B3316CE9", "proposal_id":1, "is_add_approval":true}
owner_address:批准人地址,默认为 HexString 格式。proposal_id:提案 id。is_add_approval:是否批准。- 可选参数
Permission_id,多重签名时使用,设置交易多重签名时使用的 permissionId。 visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的批准提案交易对象。
wallet/proposaldelete¶
作用:删除提案。
curl -X POST http://127.0.0.1:8090/wallet/proposaldelete -d {"owner_address" : "419844F7600E018FD0D710E2145351D607B3316CE9", "proposal_id":1}
owner_address:删除人的地址,只有提案所有人允许删除提案,默认为 HexString 格式。proposal_id:提案 id。- 可选参数
Permission_id,多重签名时使用,设置交易多重签名时使用的 permissionId。 visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的删除提案交易对象。
wallet/getpaginatedproposallist¶
作用:分页查询提案列表。
curl -X POST http://127.0.0.1:8090/wallet/getpaginatedproposallist -d '{"offset": 0, "limit": 10}'
offset:分页查询的起始索引。
- limit:本次查询期望返回的提案数量。
返回值:一个包含了分页结果的提案对象的数组。
去中心化交易所¶
下面是去中心化交易所相关API:
- wallet/exchangecreate
- wallet/exchangeinject
- wallet/exchangewithdraw
- wallet/exchangetransaction
- wallet/getexchangebyid
- wallet/listexchanges
- wallet/getpaginatedexchangelist
- wallet/marketsellasset
- wallet/marketcancelorder
- wallet/getmarketorderbyaccount
- wallet/getmarketpairlist
- wallet/getmarketorderlistbypair
- wallet/getmarketpricebypair
- wallet/getmarketorderbyid
wallet/exchangecreate¶
作用:创建交易对
curl -X POST http://127.0.0.1:8090/wallet/exchangecreate -d {"owner_address":"419844f7600e018fd0d710e2145351d607b3316ce9", 、
"first_token_id":token_a, "first_token_balance":100, "second_token_id":token_b,"second_token_balance":200}
first_token_id:第 1 种 token 的 id,默认为 HexString 格式first_token_balance:第 1 种 token 的 balancesecond_token_id: 第 2 种 token 的 id,默认为 HexString 格式second_token_balance:第 2 种 token 的 balance- 可选参数
Permission_id,多重签名时使用,设置交易多重签名时使用的 permissionId
返回值:一个未签名的创建交易对交易对象。
wallet/exchangeinject¶
作用:给交易对注资,注资后可以防止交易对价格波动太大
curl -X POST http://127.0.0.1:8090/wallet/exchangeinject -d {"owner_address":"419844f7600e018fd0d710e2145351d607b3316ce9", "exchange_id":1, "token_id":"74726f6e6e616d65", "quant":100}
owner_address:交易对创建者的地址,默认为 HexString 格式。exchange_id:交易对 id。token_id: token 的 id,一般情况是 token 的 name,默认为 HexString 格式。quant:注资 token 的数量。- 可选参数
Permission_id,多重签名时使用,设置交易多重签名时使用的 permissionId。 visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的注资交易对象。
wallet/exchangewithdraw¶
作用:对交易对撤资。
curl -X POST http://127.0.0.1:8090/wallet/exchangewithdraw -d {"owner_address":"419844f7600e018fd0d710e2145351d607b3316ce9", "exchange_id":1, "token_id":"74726f6e6e616d65", "quant":100}
owner_address:是交易对创建者的地址,默认为 HexString 格式。exchange_id:交易对 id。token_id: token的 id,一般情况是 token 的 name,需要是 HexString 格式。quant:撤资 token 的数量。- 可选参数
Permission_id,多重签名时使用,设置交易多重签名时使用的 permissionId。 visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的撤资交易对象。
wallet/exchangetransaction¶
作用:参与交易对交易。
curl -X POST http://127.0.0.1:8090/wallet/exchangetransaction -d {"owner_address":"419844f7600e018fd0d710e2145351d607b3316ce9", "exchange_id":1, "token_id":"74726f6e6e616d65", "quant":100,"expected":10}
owner_address:是交易对创建者的地址,默认为 HexString 格式。exchange_id:交易对 id。token_id: 卖出的 token 的 id,一般情况是 token 的 name,默认为 HexString 格式。quant:卖出 token 的数量。expected:期望买入 token 的数量。- 可选参数
Permission_id,多重签名时使用,设置交易多重签名时使用的 permissionId。 visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的兑换交易对象。
wallet/getexchangebyid¶
作用:根据 id 查询交易对
curl -X POST http://127.0.0.1:8090/wallet/getexchangebyid -d {"id":1}
id:交易对 id
返回值:返回指定的交易对对象。
wallet/listexchanges¶
作用:查询所有交易对
curl -X POST http://127.0.0.1:8090/wallet/listexchanges
返回值:一个包含所有交易对对象的数组。
wallet/getpaginatedexchangelist¶
作用:分页查询交易对列表
curl -X POST http://127.0.0.1:8090/wallet/getpaginatedexchangelist -d '{"offset": 0, "limit":10}'
offset:分页查询的起始索引。
- limit:本次查询期望返回的交易对数量。
返回值:一个包含了分页结果的交易对对象的数组。
wallet/marketsellasset¶
作用:创建订单
curl -X POST http://127.0.0.1:8090/wallet/marketsellasset -d
'{
"owner_address": "4184894b42f66dce8cb84aec2ed11604c991351ac8",
"sell_token_id": "5f",
"sell_token_quantity": 100,
"buy_token_id": "31303030303031",
"buy_token_quantity": 200
}'
owner_address:订单发起者地址,默认为 HexString 格式。sell_token_id:卖出 asset 的 id,默认为 HexString 格式。sell_token_quantity:卖出 asset 的数量。buy_token_id:买入 asset 的 id,默认为 HexString 格式。buy_token_quantity:最少买入的 asset 的数量。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的挂单交易对象。
wallet/marketcancelorder¶
作用:取消订单
curl -X POST http://127.0.0.1:8090/wallet/marketcancelorder -d
'{
"owner_address": "4184894b42f66dce8cb84aec2ed11604c991351ac8",
"order_id": "0a7af584a53b612bcff1d0fc86feab05f69bc4528f26a4433bb344d453bd6eeb"
}'
owner_address:订单发起者地址,默认为 HexString 格式。order_id:取消订单的 id。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个未签名的取消订单交易对象。
wallet/getmarketorderbyaccount¶
作用:查询账户拥有的订单
curl -X POST http://127.0.0.1:8090/wallet/getmarketorderbyaccount -d
'{
"value": "4184894b42f66dce8cb84aec2ed11604c991351ac8"
}'
value:地址,默认为 HexString 格式。visible设置地址格式,true为 Base58Check,false或省略则为 HexString。
返回值:一个包含了该账户所有订单对象的数组。
wallet/getmarketpairlist¶
作用:查询存在的所有交易对
curl -X get http://127.0.0.1:8090/wallet/getmarketpairlist
返回值:一个包含了所有交易对信息的数组。
wallet/getmarketorderlistbypair¶
作用:查询某交易对的所有订单
curl -X POST http://127.0.0.1:8090/wallet/getmarketorderlistbypair -d
'{
"sell_token_id": "5f" ,
"buy_token_id": "31303030303031"
}'
sell_token_id:卖出 asset 的 id,默认为 HexString 格式buy_token_id:买入 asset 的 id,默认为 HexString 格式
返回值:一个包含了该交易对所有订单对象的数组。
wallet/getmarketpricebypair¶
作用:查询某交易对的所有价格
curl -X POST http://127.0.0.1:8090/wallet/getmarketpricebypair -d
'{
"sell_token_id": "5f"
"buy_token_id": "31303030303031"
}'
sell_token_id:卖出 asset 的 id,默认为 HexString 格式buy_token_id:买入 asset 的 id,默认为 HexString 格式
返回值:一个包含了该交易对所有价格点对象的数组。
wallet/getmarketorderbyid¶
作用:查询订单
curl -X POST http://127.0.0.1:8090/wallet/getmarketorderbyid -d
'{
"value": "orderid"
}'
value:order id,默认为 HexString 格式
返回值:指定的订单对象。
Pending Pool¶
下面是Pending Pool相关API:
wallet/gettransactionfrompending¶
作用:查询pending pool中的交易信息
curl -X POST http://127.0.0.1:8090/wallet/gettransactionfrompending -d
'{
"value": "txId"
}'
value: 交易id,默认为hexString格式
返回值:完整的交易对象。如果交易不在等待池中,返回空对象。
wallet/gettransactionlistfrompending¶
作用:获取当前交易等待池中所有交易的ID列表。
curl -X get http://127.0.0.1:8090/wallet/gettransactionlistfrompending
返回值:一个包含了所有等待中交易ID的数组。
wallet/getpendingsize¶
作用:查询当前交易等待池中的交易数量。
curl -X get http://127.0.0.1:8090/wallet/getpendingsize
返回值:一个包含等待池大小的对象。
FullNode Solidity HTTP API¶
账户资源¶
walletsolidity/getaccount¶
作用:查询并返回一个指定TRON账户的完整链上信息(包括余额、资源、权限、资产在内的所有账户详情)。
curl -X POST http://127.0.0.1:8091/walletsolidity/getaccount -d '{"address": "41E552F6487585C2B58BC2C9BB4492BC1F17132CD0"}'
address 需要查询的账户地址。
* visible 设置地址格式,true为Base58Check,false或省略则为HexString。
返回值:Account对象
walletsolidity/getdelegatedresource¶
作用:Stake1.0中查询指定账户(代理方)为另一个特定账户(接收方)所代理的资源(能量或带宽)详情。
curl -X POST http://127.0.0.1:8091/walletsolidity/getdelegatedresource -d '
{
"fromAddress": "419844f7600e018fd0d710e2145351d607b3316ce9",
"toAddress": "41c6600433381c731f22fc2b9f864b14fe518b322f"
}'
fromAddress:是要查询的账户地址,默认为hexString格式
- toAddress:代理对象的账户地址,默认为hexString格式
- visible 设置地址格式,true为Base58Check,false或省略则为HexString。
返回值: - 账户的资源代理的列表,列表的元素为DelegatedResource
walletsolidity/getdelegatedresourceaccountindex¶
作用:Stake1.0中查询一个指定账户代理及被代理资源关系列表。
curl -X POST http://127.0.0.1:8091/walletsolidity/getdelegatedresourceaccountindex -d '
{
"value": "419844f7600e018fd0d710e2145351d607b3316ce9",
}'
value:是要查询的账户地址,默认为hexString格式。
- visible 设置地址格式,true为Base58Check,false或省略则为HexString。
返回值: - 账户的资源代理概况,结构为DelegatedResourceAccountIndex。
walletsolidity/getaccountbyid¶
作用:通过accountId查询一个账号的信息。
curl -X POST http://127.0.0.1:8091/walletsolidity/getaccountbyid -d '{"account_id":"6161616162626262"}'
返回值:Account对象
walletsolidity/getavailableunfreezecount¶
作用:查询一个指定账户当前还可发起解质押操作的剩余次数。由于TRON网络规定每个账户最多只能同时保有32笔处于14天锁定期内的解质押操作,此接口可用于在调用 unfreezebalancev2 之前,预先检查是否还有可用的“解质押额度”。
curl -X POST http://127.0.0.1:8090/walletsolidity/getavailableunfreezecount -d
'{
"owner_address": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"visible": true
}
'
参数:
- owner_address: 需要查询的账户地址。
- visible 设置地址格式,true为Base58Check,false或省略则为HexString。
返回值: - 该接口返回一个包含剩余次数的JSON对象。
walletsolidity/getcanwithdrawunfreezeamount¶
作用:查询在某时间点可以提取的解质押本金数量。
curl -X POST http://127.0.0.1:8090/walletsolidity/getcanwithdrawunfreezeamount -d
'{
"owner_address": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"timestamp": 1667977444000,
"visible": true
}
'
参数:
- owner_address: 交易发起者账号的地址。
- timestamp: 查询在该时间戳时,可提取的本金数量,单位为毫秒。
- visible 设置地址格式,true为Base58Check,false或省略则为HexString。
返回值: - 该接口返回一个包含可提取金额的JSON对象。
walletsolidity/getcandelegatedmaxsize¶
作用:查询目标地址中指定类型资源的可代理数量,单位为sun
curl -X POST http://127.0.0.1:8090/walletsolidity/getcandelegatedmaxsize -d
'{
"owner_address": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"type": 0,
"visible": true
}
'
参数:
- owner_address: 需要查询的账户地址。
- type: 资源类型,0为带宽,1为能量。
- visible 设置地址格式,true为Base58Check,false或省略则为HexString。
返回值: - 该接口返回一个包含可代理份额最大值的JSON对象。
walletsolidity/getdelegatedresourcev2¶
作用:查询在 Stake 2.0 机制下,指定账户(代理方)为另一个特定账户(接收方)所代理的资源详情。
curl -X POST http://127.0.0.1:8090/walletsolidity/getdelegatedresourcev2 -d
'{
"fromAddress": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"toAddress": "TPswDDCAWhJAZGdHPidFg5nEf8TkNToDX1",
"visible": true
}
'
参数:
- fromAddress: 代理账户地址。
- toAddress: 资源的接收账户地址。
- visible 设置地址格式,true为Base58Check,false或省略则为HexString。
返回值: - 该接口返回一个 delegatedResource 数组,包含了两者在Stake 2.0下的所有资源代理记录。
walletsolidity/getdelegatedresourceaccountindexv2¶
作用:查询在Stake2.0阶段,某地址的资源委托索引。返回两个列表,一个是该帐户将资源委托给的地址列表(toAddress),另一个是将资源委托给该帐户的地址列表(fromAddress)
curl -X POST http://127.0.0.1:8090/walletsolidity/getdelegatedresourceaccountindexv2 -d
'{
"value": "TZ4UXDV5ZhNW7fb2AMSbgfAEZ7hWsnYS2g",
"visible": true
}
'
参数:
- value: 账户地址。
- visible 设置地址格式,true为Base58Check,false或省略则为HexString。
返回值: - 该接口返回一个包含双向代理关系列表的JSON对象。包含两个列表,一个是该帐户将资源委托给的地址列表(toAddress),另一个是将资源委托给该帐户的地址列表(fromAddress)
投票和SR¶
walletsolidity/listwitnesses¶
作用:查询当前的所有 SR 列表。
curl -X POST http://127.0.0.1:8091/walletsolidity/listwitnesses
返回值:返回所有 SR 信息列表。
TRC10 通证¶
walletsolidity/getassetissuelist¶
作用:查询所有Token列表
curl -X POST http://127.0.0.1:8091/walletsolidity/getassetissuelist
返回值:返回所有 Token 列表。
walletsolidity/getpaginatedassetissuelist¶
作用:分页查询全网的TRC-10 Token 列表。
curl -X POST http://127.0.0.1:8091/walletsolidity/getpaginatedassetissuelist -d '{"offset": 0, "limit":10}'
offset:分页查询的起始索引。
- limit:本次查询期望返回的TRC-10 Token 数量。
返回值:一个包含了分页结果的TRC-10 Token 对象的数组。
walletsolidity/getassetissuebyname¶
作用:根据名称查询TRC-10 Token。
curl -X POST http://127.0.0.1:8091/walletsolidity/getassetissuebyname -d '{"value": "44756354616E"}'
value:TRC-10 Token 名称,默认为HexString格式。
返回值:TRC-10 Token 对象。
注意:Odyssey-v3.2开始,推荐使用getassetissuebyid或者getassetissuelistbyname替换此接口,因为从3.2开始将允许 TRC-10 Token 名称相同。如果存在相同的 TRC-10 Token 名称,此接口将会报错。
walletsolidity/getassetissuelistbyname¶
作用:根据名称查询所有匹配的 TRC-10 Token 列表。
curl -X POST http://127.0.0.1:8091/walletsolidity/getassetissuelistbyname -d '{"value": "44756354616E"}'
value:TRC-10 Token 名称,默认为HexString格式。
返回值:一个包含所有同名 TRC-10 Token 对象的数组。
walletsolidity/getassetissuebyid¶
作用:根据ID查询 TRC-10 Token
curl -X POST http://127.0.0.1:8091/walletsolidity/getassetissuebyid -d '{"value": "1000001"}'
value:TRC-10 Token 的 ID。
返回值:指定的 TRC-10 Token 对象。
区块¶
walletsolidity/getnowblock¶
作用:查询最新块。
curl -X POST http://127.0.0.1:8091/walletsolidity/getnowblock
返回值:solidityNode 上的最新的区块对象。
walletsolidity/getblockbynum¶
作用:通过指定的区块高度查询完整的区块信息。
curl -X POST http://127.0.0.1:8091/walletsolidity/getblockbynum -d '{"num" : 100}'
返回值:指定高度的区块对象 (Block object)。
walletsolidity/getblockbyid¶
作用:通过指定的区块ID(哈希)查询完整的区块信息。
curl -X POST http://127.0.0.1:8091/walletsolidity/getblockbyid-d '{"value":
"0000000000038809c59ee8409a3b6c051e369ef1096603c7ee723c16e2376c73"}'
返回值:指定ID的区块对象 (Block object)。
walletsolidity/getblockbylimitnext¶
作用:分页查询指定高度范围内的区块列表。
curl -X POST http://127.0.0.1:8091/walletsolidity/getblockbylimitnext -d '{"startNum": 1, "endNum": 2}'
startNum:起始块高度,包含此块endNum:截止块高度,不包含此此块
返回值:一个包含多个区块对象的数组 (Block[])。
walletsolidity/getblockbylatestnum¶
作用:查询solidityNode从最新区块开始,倒序的N个区块。
curl -X POST http://127.0.0.1:8091/walletsolidity/getblockbylatestnum -d '{"num": 5}'
返回值:一个包含多个区块对象的数组 (Block[])。
wallet/getnodeinfo¶
作用:查看当前节点自身的运行状态和信息。
curl -X GET http://127.0.0.1:8091/wallet/getnodeinfo
返回值:一个包含节点版本、网络状况、区块同步状态等信息的对象。
交易¶
walletsolidity/gettransactionbyid¶
作用:通过交易ID(哈希)查询一个已上链交易的完整信息。
curl -X POST http://127.0.0.1:8091/walletsolidity/gettransactionbyid -d '{"value" : "309b6fa3d01353e46f57dd8a8f27611f98e392b50d035cef213f2c55225a8bd2"}'
返回值:完整的交易对象 (Transaction object)。如果交易不存在或未确认,返回空对象。
walletsolidity/gettransactioncountbyblocknum¶
作用:查询指定区块高度上包含的交易总数。
curl -X POST http://127.0.0.1:8091/walletsolidity/gettransactioncountbyblocknum -d '{"num" : 100}'
返回值:一个包含交易数量的对象,如 {"count": 50}。
walletsolidity/gettransactioninfobyid¶
作用:根据交易ID(哈希)查询交易的摘要信息,如费用、所在区块等。
curl -X POST http://127.0.0.1:8091/walletsolidity/gettransactioninfobyid -d '{"value" : "309b6fa3d01353e46f57dd8a8f27611f98e392b50d035cef213f2c55225a8bd2"}'
返回值:交易的摘要信息对象 (TransactionInfo object),包含交易费用、所在区块高度、区块时间戳、合约执行结果等。
walletsolidity/gettransactioninfobyblocknum¶
作用:获取指定区块高度上所有交易的摘要信息列表。
curl -X POST http://127.0.0.1:8091/walletsolidity/gettransactioninfobyblocknum -d '{"num" : 100}'
返回值:一个包含多个交易摘要信息对象的列表。
去中心化交易所¶
walletsolidity/getexchangebyid¶
作用:根据id查询交易对
curl -X POST http://127.0.0.1:8091/walletsolidity/getexchangebyid -d {"id":1}
id:交易对id
返回值:返回指定的交易对对象。
walletsolidity/listexchanges¶
作用:查询所有交易对
curl -X POST http://127.0.0.1:8091/walletsolidity/listexchanges
返回值:一个包含所有交易对对象的数组。