logo
简体中文
首页/文档

能量池租赁 API 文档

欢迎使用能量池租赁 API。通过本接口,您可以自动化地租赁和使用 TRON 区块链上的能量资源。

基础信息

请求头

key您的请求 Key

返回类型

code=99999 代表成功

Code说明
99999成功调用
20100地址未激活
10108订单重复
10107数据有误
10100通用错误

订单状态

状态码说明
0无效订单
10已支付待代理
11已过期已退还
20已代理未确认
21已代理已确认
30已回收待确认
31已回收已确认
注意:状态为 21、30、31 时,表示能量已发送。结合查询订单的 confirmations(确认数)返回判断:如果为了快可以返回 21 时直接转账,为了稳定建议等到确认数达到 3 个及以上再转账。有极小概率广播成功上链也失败,此时订单会重新下发处理。也可以直接通过链上查询该地址是否有能量,在返回的响应中查看能量相关字段,如 energy_limit(地址总能量)和 energy_used(地址已使用能量)。

链上查询能量

可通过 TronGrid API 直接查询地址的能量信息:

curl --request POST \
     --url https://api.trongrid.io/wallet/getaccountresource \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --data '
{
  "address": "TSsqPiztzsrZevPYKaHnAGxi1EGF2kH6pM",
  "visible": true
}'

获取 Key 流程

  1. 登录页面
  2. 查询充值地址和余额
  3. 获取调用 Key
  4. 开始愉快调用

测试 Key

curl --location '{{BASE_URL}}/gateway/api/v1/api/query' \
--header 'key: 773e36f0ee81422db7229a15ba9260d9' \
--header 'User-Agent: ua'

接口

POST

/v1/order/rent

普通租赁接口

请求参数

{
    "resourceType": 1,                 // 类型默认写1,1=能量,0=带宽
    "receiveAddress": "TSsqPiztzsrZevPYKaHnAGxi1EGF2kH6pM",  // 需要能量的地址
    "resourceValue": 2000000,          // 能量数量
    "leaseDurationSecond": 300         // 租用时间,单位秒
}
字段类型说明
resourceTypeint1=能量, 0=带宽
receiveAddressstring需要能量的地址
resourceValueint能量数量
leaseDurationSecondint租用时间(秒)

返回参数

{
    "code": 99999,                     // 99999代表成功
    "msg": "请求成功",
    "data": {
        "orderNo": "8fe2a3b7-c995-40ec-9cb6-67a3c90ed998",   // 订单号
        "resourceType": 1,                                     // 资源类型
        "receiveAddress": "TSsqPiztzsrZevPYKaHnAGxi1EGF2kH6pM", // 资源地址
        "priceInSun": 56000,                                   // 资源单价,千分之一sun
        "createTime": 1758967165521,                           // 创建时间
        "resourceValue": 65000,                                // 资源数量
        "rentTimeSecond": 300,                                 // 租赁时间
        "payTime": 1754904247617,                              // 支付时间
        "payAmount": 3.9,                                      // 租赁价格
        "status": 10                                           // 订单状态,10=已支付待代理
    }
}
POST

/v1/order/useRent

使用后回收租赁接口

请求参数

{
    "resourceType": 1,                 // 类型默认写1
    "receiveAddress": "TSsqPiztzsrZevPYKaHnAGxi1EGF2kH6pM",  // 需要能量的地址
    "resourceValue": 2000000,          // 能量数量
    "leaseDurationSecond": 300         // 租用时间,单位秒
}
推荐:推荐使用 useRent 接口而非 rent。useRent 在使用完能量或主动发起回收时会自动回收,避免 rent 在刚好 5 分钟到期时回收掉有效能量的问题。

返回参数

{
    "code": 99999,                     // 99999代表成功
    "msg": "请求成功",
    "data": {
        "orderNo": "8fe2a3b7-c995-40ec-9cb6-67a3c90ed998",   // 订单号
        "resourceType": 1,                                     // 资源类型
        "receiveAddress": "TSsqPiztzsrZevPYKaHnAGxi1EGF2kH6pM", // 资源地址
        "priceInSun": 56000,                                   // 资源单价,千分之一sun
        "createTime": 1758967165521,                           // 创建时间
        "resourceValue": 65000,                                // 资源数量
        "rentTimeSecond": 300,                                 // 租赁时间
        "payTime": 1754904247617,                              // 支付时间
        "payAmount": 3.9,                                      // 租赁价格
        "status": 10                                           // 订单状态,10=已支付待代理
    }
}
POST

/v1/order/countRent

笔数租赁接口

注释:1笔 = 65000能量,2笔 = 131000能量。第一次调用为 2 笔能量的价格,如果上次消耗一笔且在回收后的 5 分钟内发起请求,价格会是 1 笔的价格(能量照样给 2 笔)。每次消耗系统都会自动回收能量,或一天时间到了回收。可以联系管理员配置回调地址,系统在每次回收之后往该地址发送回收信息。

回调示例

发送地址:https://www.1.com/test

{
    "date": [2026, 3, 27, 17, 51, 16, 740648425],
    "address": "TSsqPiztzsrZevPYKaHnAGxi1EGF2kH6pM",
    "energy": 13045
}

请求参数

{
    "receiveAddress": "TSsqPiztzsrZevPYKaHnAGxi1EGF2kH6pM"
}

返回参数

{
    "code": 99999,
    "msg": "请求成功",
    "data": {
        "orderNo": "a1cb1669-2468-4159-ba7d-e98beb345703",  // 订单号
        "resourceType": 1,                                 // 资源类型
        "receiveAddress": "TSsqPiztzsrZevPYKaHnAGxi1EGF2kH6pM", // 资源地址
        "priceInSun": 38000,                               // 资源单价 千分之一sun
        "createTime": 1774605083836,                       // 创建时间
        "resourceValue": 131000,                           // 资源数量
        "rentTimeSecond": 86400,                           // 租赁时间
        "payTime": 1774605083836,                          // 支付时间
        "payAmount": 2.47,                                 // 支付金额
        "status": 10                                       // 订单状态,10=已支付待代理
    }
}
GET

/v1/order/query

查询订单接口

请求参数

orderNo=e8e85948-5c90-4b2f-a318-e4d16b42b70f (GET 参数方式)

返回参数

{
    "code": 99999,
    "msg": "请求成功",
    "data": {
        "orderNo": "ec7c3d4b-36d1-476b-ac88-6a6c0b569f02",   // 订单号
        "resourceType": 1,                                     // 资源类型
        "receiveAddress": "TYbMYfdM9i8grG6vWP8ZztPsq4eBJhdziB", // 资源地址
        "priceInSun": "28000",                                 // 资源单价
        "createTime": "1759131746228",                         // 创建时间
        "rentDuration": 60,                                    // 租赁时长(分钟)
        "rentTimeUnit": "m",                                   // 单位:分钟
        "payTime": "1759131746228",                            // 支付时间
        "payAmount": "30000",                                  // 支付金额
        "status": 21,                                          // 订单状态,21=已代理已确认
        "confirmations": 200,                                  // 交易确认数量,0=未确认,数值越大越稳定
        "freezeList": [
            {
                "frozenResourceValue": "1000",                 // 冻结的资源数量
                "rentExpireTime": "1759131806499",             // 租赁过期时间
                "frozenTxId": "a4dd19b3b2ccf5f55690d2cba8316776...", // 冻结交易ID
                "freezeTime": "1759131746499"                  // 冻结时间
            }
        ]
    }
}
GET

/v1/api/query

API 数据查询接口

返回参数

{
    "code": 99999,                     // 99999代表成功
    "msg": "请求成功",
    "data": {
        "name": "6pm客户第一个密钥",          // 密钥名称
        "energySurplus": 11348297,           // 剩余能量
        "bandwidthSurplus": 28870,           // 剩余带宽
        "allConsumeTrxAmount": 1211347300,   // 总消耗TRX数量
        "allEnergyValue": 22788600,          // 总能量值
        "allBandwidthValue": 0,              // 总带宽值
        "ipWhitelist": ["0.0.0.0/0"],       // 设置的API白名单
        "uaWhitelist": ["ua"],               // 设置的API请求头
        "createTime": 1745466180,            // 创建时间
        "analysisTime": 1745466180,          // 分析时间
        "trxMoney": 122277100,               // 剩余TRX余额,单位sun
        "trxAddress": "TSsqPiztzsrZevPYKaHnAGxi1EGF2kH6pM", // TRX地址
        "ip": "8.212.121.88"                 // 请求的IP
    }
}
GET

/v1/api/resource

系统资源查询接口

返回参数

{
    "code": 99999,                     // 99999代表成功
    "msg": "请求成功",
    "data": {
        "energy": 13863739,            // 剩余能量数量
        "bandwidth": 48966             // 剩余带宽数量
    }
}
GET

/v1/order/directRecycle

主动回收接口

请求参数

address="TSsqPiztzsrZevPYKaHnAGxi1EGF2kH6pM" (GET 参数方式)

返回参数

{
    "code": 99999,
    "msg": "请求成功",
    "data": true
}

常见问题

/v1/order/rent 接口和 /v1/order/useRent 接口有什么区别?

  • 两个方法效果差不多,区别在于:rent 租用 5 分钟,只有 5 分钟时间到才会回收;useRent 租用 5 分钟,5 分钟到或 6.5w 能量使用完,或主动发起回收都会回收。
  • 推荐使用 useRent 接口:rent 可能出现刚好 5 分钟到,然后下一单代理过来,回收掉有效能量的问题。useRent 则不用担心,正常使用就会回收,也可以配合回收接口在下一笔发起前主动回收之前使用的。

最小充值金额是多少?

最小充值金额为 10 TRX。