能量 API 文档
最后更新:2026年10月8日 · 接口版本 v1
概述
TRXAPI 能量 API 是一组简单的 REST 接口,让你把 TRON 能量委托直接集成到自己的应用或业务系统中:交易所提币通道、支付商户的代付系统、批量转账工具等都可以程序化下单、对账与监控。
核心流程只有三步:下单(getenergy)→ 轮询或等待回调(order / webhook)→ 对账(balance)。所有委托都是公开的链上交易,每个订单都会返回链上交易哈希 txid,可在任意区块浏览器独立核验。
- 计费方式:从你的预付余额中按单扣费;余额通过客户中心充值。
- 能量规格:单笔支持
65000 或 130000 能量;时长支持 1 小时或 24 小时。 - 失败自动退款:订单最终失败时,费用自动退回余额,无需人工申请。
接口域名https://api.trxapi.io
鉴权方式?apikey=YOUR_API_KEY
响应格式JSON · {code, message, data}
成功标识code = 200
接口总览
| 接口 | 方法 | 说明 |
|---|
/api/v1/openapi/getenergy | GET | 下单租能量(65000 / 130000,1h / 24h) |
/api/v1/openapi/activation | GET | 激活从未使用过的 TRON 地址 |
/api/v1/openapi/order | GET | 按 orderId 查询订单状态与 txid |
/api/v1/openapi/balance | GET | 查询商户预付余额(TRX / USDT) |
/api/v1/openapi/price | GET | 查询你的成交价格(不下单、不扣费) |
/api/v1/openapi/estimate | GET | 自动判断:按收款方是否持有 USDT 选档位,能量不够才补 |
/api/v1/openapi/topup | GET | 按指定档位检查并补充,能量够则不下单不扣费 |
/api/v1/openapi/topup/list · save · delete · run | GET | 管理已保存的自动充值地址,并按需执行补充 |
/api/v1/openapi/node/… | GET / POST | 节点直连查询,免费(见节点 API 文档) |
| Webhook 回调 | POST(服务器 → 你) | 订单终态主动通知,在客户中心配置 |
📄 机器可读描述:OpenAPI 3.0 文件,可导入 Postman / Apifox 等工具直接调试。
快速开始
- 在 客户中心注册账户并完成余额充值(支持 TRX / USDT)。
- 在客户中心「API 密钥」页创建
apikey。密钥仅在创建时完整显示一次,请妥善保存。 - 发起第一笔下单请求(把示例中的地址与密钥替换为你自己的):
# 1) rent 65,000 energy for 1 hour
curl "https://api.trxapi.io/api/v1/openapi/getenergy?apikey=YOUR_API_KEY&add=TR7NHqjeKQx...&value=65000&hour=1"
# 2) poll the order until it reaches a terminal state
curl "https://api.trxapi.io/api/v1/openapi/order?apikey=YOUR_API_KEY&orderId=10001"
# 3) check your prepaid balance
curl "https://api.trxapi.io/api/v1/openapi/balance?apikey=YOUR_API_KEY"
💡 能量通常在下单后数秒内到账。生产环境建议配置 Webhook 回调(见下文),可免去轮询。
鉴权与安全
所有接口都通过 URL 参数 apikey 鉴权。每个商户可创建独立密钥,密钥在服务端以哈希形式存储。
- 必须先配置 IP 白名单。每个 apikey 都要在客户中心「API 密钥」页添加允许调用的服务器出口 IP,未配置白名单的密钥无法调用任何接口(返回
code=503,message 中会带上本次请求的来源 IP,方便你直接填入)。 - 白名单外的 IP 会被临时封禁。用不在白名单内的 IP 调用会返回
503 并封禁该 IP 一段时间;把该 IP 加入白名单可立即解封。 - 频率限制:每个 apikey 每秒 1 次请求(查价接口
/price 每秒 5 次),超出返回 HTTP 429 / code=429。同一 apikey 短时间内多次鉴权失败也会返回 429。 - 不要在前端暴露密钥。apikey 只应出现在你的服务端代码中,切勿写入网页、App 或小程序等客户端。
- 不要泄露完整请求 URL。密钥通过 URL 传递,日志、截图、公开仓库中都可能带出密钥;如怀疑泄露,请立即在客户中心重置。
- 密钥与账户的关系:同一账户下所有密钥共用预付余额,以及同一个 Webhook 回调地址与签名密钥。
apikey 无效或被禁用时返回 code=501。
通用约定
{
"code": 200, // 200 = success, otherwise an error code
"message": "SUCCESS", // human-readable, do NOT branch on it
"data": { /* endpoint-specific payload */ },
"traceId": "7c2c1d6f..."
}
- 以
code 判断结果,不要依赖 message 文案——文案可能随语言或版本变化。 - TRON 地址均为 Base58 格式(
T 开头、34 位)。 - 金额字段为字符串,单位 TRX(余额以 TRX 计价)。
- 目前所有业务接口均为
GET 请求,参数通过 query string 传递。
下单租能量
GET/api/v1/openapi/getenergy下单租能量
向指定地址委托能量。下单成功即从你的预付余额扣费,能量通常数秒内到账;若最终失败,费用会自动退回。TRX 余额不足且平台已开放 USDT 支付时,会自动改用 USDT 余额扣费。
请求参数
| 参数 | 必填 | 说明 |
apikey | 是 | 商户密钥,在客户中心创建获取 |
add | 是 | 接收能量的 TRON 地址(T 开头 34 位) |
value | 是 | 能量数量,仅支持 65000 或 130000 |
hour | 是 | 委托时长(小时),仅支持 1 或 24 |
traceId | 否 | 选填,链路追踪 ID(最长 36 位),原样回显便于对账 |
响应字段(data)
orderId | 订单号,用于查询订单状态与对账 |
amount | 本单扣费金额,币种见 currency |
currency | 本单扣费币种:TRX 或 USDT |
balance | 扣费后的账户余额(TRX) |
txid | 链上委托交易哈希,可在区块浏览器查验。个别情况下(通道仍在处理)可能为空,此时请用 orderId 查询订单或等待 Webhook |
# 请求:下单租 65000 能量 1 小时
curl "https://api.trxapi.io/api/v1/openapi/getenergy?apikey=YOUR_API_KEY&add=TR7NHqjeKQx...&value=65000&hour=1"
# 响应
{
"code": 200,
"message": "SUCCESS",
"data": {
"orderId": "10001",
"amount": "16.9",
"currency": "TRX",
"balance": "1263.60",
"txid": "a1b2c3d4..."
},
"traceId": "7c2c1d6f..."
}
⚠️ 接收地址必须是已激活地址(有过至少一笔链上交易)。向从未激活的地址下单会失败——请先调用下方的「地址激活」接口。
地址激活
GET/api/v1/openapi/activation地址激活
为未激活的 TRON 地址完成链上激活,返回激活交易哈希。地址已激活时返回 code=500,message 为「该地址已激活…」,此时不扣费。
请求参数
| 参数 | 必填 | 说明 |
apikey | 是 | 商户密钥,在客户中心创建获取 |
add | 是 | 待激活的 TRON 地址(T 开头 34 位) |
响应字段(data)
add | 被激活的地址 |
txid | 激活交易哈希 |
amount | 本单扣费金额,币种见 currency |
currency | 本单扣费币种:TRX 或 USDT |
# 请求:激活地址
curl "https://api.trxapi.io/api/v1/openapi/activation?apikey=YOUR_API_KEY&add=TR7NHqjeKQx..."
# 响应
{
"code": 200,
"message": "SUCCESS",
"data": {
"add": "TR7NHqjeKQx...",
"txid": "a1b2c3d4...",
"amount": "2.5"
}
}
💡 已激活的地址会返回 code=702001(地址已激活),该情况不扣费,可安全地重复调用。
查询订单
GET/api/v1/openapi/order查询订单
凭下单返回的 orderId 查询订单当前状态与链上交易哈希,建议下单后轮询直至终态。
请求参数
| 参数 | 必填 | 说明 |
apikey | 是 | 商户密钥,在客户中心创建获取 |
orderId | 是 | 下单接口返回的订单号 |
订单状态
processing | 处理中,能量委托进行中 |
completed | 已完成,能量已到账 |
failed | 已失败,费用自动退回余额 |
响应字段(data)
source | 订单来源:api(getenergy)/ estimate(自动判断)/ topup(按档位补充)/ web(客户中心手动)/ tgbot(Telegram 机器人) |
# 请求:查询订单状态
curl "https://api.trxapi.io/api/v1/openapi/order?apikey=YOUR_API_KEY&orderId=10001"
# 响应
{
"code": 200,
"message": "SUCCESS",
"data": {
"orderId": "10001",
"status": "completed",
"txid": "a1b2c3d4...",
"source": "api"
}
}
💡 轮询建议:下单后每 2–3 秒查询一次,直到状态变为 completed 或 failed;也可以配置 Webhook 回调,由服务器主动通知终态,无需轮询。
查询余额
GET/api/v1/openapi/balance查询余额
查询你(商户)在本平台的预付余额,用于自助对账与充值提醒。该余额是你在 TRXAPI 的服务账户余额,不代表也不涉及你外部钱包中的资产。
请求参数
| 参数 | 必填 | 说明 |
apikey | 是 | 商户密钥,在客户中心创建获取 |
响应字段(data)
balance | 商户预付余额(TRX 计价) |
currency | 计价币种(TRX) |
usdtBalance | USDT 预付余额 |
# 请求:查询商户余额
curl "https://api.trxapi.io/api/v1/openapi/balance?apikey=YOUR_API_KEY"
# 响应
{
"code": 200,
"message": "SUCCESS",
"data": {
"balance": "1280.50",
"currency": "TRX",
"usdtBalance": "0"
}
}
查询价格
GET/api/v1/openapi/price查询价格
查询你下单时实际成交的价格(已含你的专属价),不下单、不扣费。不传 value / hour 返回全部档位;两者同时传返回单个档位。
请求参数
| 参数 | 必填 | 说明 |
apikey | 是 | 商户密钥,在客户中心创建获取 |
value | 否 | 选填,能量数量(65000 / 130000),须与 hour 同时传 |
hour | 否 | 选填,时长(1 / 24 小时),须与 value 同时传 |
响应字段(data)
price | 单价(TRX)。单项查询时返回 value、hour、price、currency |
prices | 全量查询时的档位列表,每项含 value、hour、price |
currency | 计价币种(TRX) |
# all tiers
curl "https://api.trxapi.io/api/v1/openapi/price?apikey=YOUR_API_KEY"
{
"code": 200,
"message": "SUCCESS",
"data": {
"currency": "TRX",
"prices": [
{ "value": 65000, "hour": 1, "price": "3.9" },
{ "value": 130000, "hour": 1, "price": "7.6" }
]
}
}
# single tier
curl "https://api.trxapi.io/api/v1/openapi/price?apikey=YOUR_API_KEY&value=65000&hour=1"
{ "code": 200, "data": { "value": 65000, "hour": 1, "price": "3.9", "currency": "TRX" } }
💡 查价接口单独限流(每个 apikey 每秒 5 次),可以在下单前放心调用。
自动判断补能量
GET/api/v1/openapi/estimate自动判断补能量
适合「给用户转 USDT 之前先补能量」的场景,一次调用完成两步判断:① 查看收款方 destination 是否已持有 USDT,决定需要 65000 还是 130000 能量;② 查看 receiver 当前可用能量是否已够这个档位。不够才下单扣费,够了直接返回 ordered=false、不扣费。
请求参数
| 参数 | 必填 | 说明 |
apikey | 是 | 商户密钥,在客户中心创建获取 |
receiver | 是 | 收能量的地址,也就是之后发起 USDT 转账的地址 |
destination | 否 | 选填,USDT 收款方地址,用于判断档位;不传时按「收款方未持有 USDT」处理 |
with_usdt | 否 | 选填,收款方已持有 USDT 时补的能量,缺省用客户中心的设置(通常 65000) |
without_usdt | 否 | 选填,收款方未持有 USDT 时补的能量,缺省用客户中心的设置(通常 130000) |
hour | 否 | 选填,时长(1 / 24 小时),缺省用客户中心的设置 |
traceId | 否 | 选填,链路追踪 ID(最长 36 位),原样回显便于对账 |
响应字段(data)
ordered | 本次是否下单扣费。false 表示能量已够或已有在途补充,未扣费 |
sufficient | receiver 当前能量是否已达到所需档位 |
pending | 该地址已有一笔补充在途(能量尚未到账),本次不重复下单 |
currentEnergy | receiver 当前可用能量 |
value / hour | 判定出的所需能量档位(value)与时长(hour) |
hasUsdt | destination 是否持有 USDT |
activated | destination 地址是否已激活 |
conservative | 链上查询暂时失败时为 true,此时按较大的档位兜底,保证转账不会因能量不足失败 |
orderId / amount / currency / txid | 仅在 ordered=true 时返回:orderId、amount、currency、txid,含义同下单接口 |
balance | 账户 TRX 余额 |
# top up the sender before paying USDT to a recipient
curl "https://api.trxapi.io/api/v1/openapi/estimate?apikey=YOUR_API_KEY&receiver=TSenderAddr...&destination=TRecipient..."
{
"code": 200,
"message": "SUCCESS",
"data": {
"ordered": true,
"sufficient": false,
"pending": false,
"currentEnergy": 1200,
"value": 130000,
"hour": 1,
"hasUsdt": false,
"activated": true,
"conservative": false,
"orderId": "10002",
"amount": "7.6",
"currency": "TRX",
"txid": "e5f6a7b8...",
"balance": "1256.00"
}
}
⚠️ 能量有时效(按 hour 委托,到期回收)。建议每次发起 USDT 转账前调用一次,而不是提前很久批量调用;同一地址有补充在途时不会重复扣费。
按档位补能量
GET/api/v1/openapi/topup按档位补能量
你直接指定档位(value),接口只做一件事:查 add 当前可用能量,不足 value 就补一整笔,够了则不下单、不扣费。与「自动判断」的区别是不查收款方、不需要 destination。
请求参数
| 参数 | 必填 | 说明 |
apikey | 是 | 商户密钥,在客户中心创建获取 |
add | 是 | 要检查并补充能量的 TRON 地址 |
value | 是 | 能量数量,仅支持 65000 或 130000 |
hour | 是 | 委托时长(小时),仅支持 1 或 24 |
traceId | 否 | 选填,链路追踪 ID(最长 36 位),原样回显便于对账 |
响应字段(data)
ordered | 本次是否下单扣费。false 表示能量已够或已有在途补充,未扣费 |
sufficient | receiver 当前能量是否已达到所需档位 |
pending | 该地址已有一笔补充在途(能量尚未到账),本次不重复下单 |
currentEnergy | receiver 当前可用能量 |
value / hour | 判定出的所需能量档位(value)与时长(hour) |
orderId / amount / currency / txid | 仅在 ordered=true 时返回:orderId、amount、currency、txid,含义同下单接口 |
balance | 账户 TRX 余额 |
# keep at least 65,000 energy on the address
curl "https://api.trxapi.io/api/v1/openapi/topup?apikey=YOUR_API_KEY&add=TR7NHqjeKQx...&value=65000&hour=1"
# energy already enough → no order, no charge
{
"code": 200,
"message": "SUCCESS",
"data": {
"ordered": false,
"sufficient": true,
"pending": false,
"currentEnergy": 71000,
"value": 65000,
"hour": 1,
"balance": "1263.60"
}
}
自动充值地址管理
把常用地址和档位保存下来(与客户中心「自动充值」页是同一份数据)。开启 auto 后,平台会自动监测并在能量不足时按档位补充;也可以随时用 run 主动执行一次「检查并补充」。
GET/api/v1/openapi/topup/list列出已保存的地址
请求参数
| 参数 | 必填 | 说明 |
apikey | 是 | 商户密钥,在客户中心创建获取 |
响应字段(data)
list | 地址列表,每项含 add、label、value、hour、auto、dailyLimit、pausedReason |
pausedReason | 被系统自动暂停的原因(如余额不足),空字符串表示正常 |
GET/api/v1/openapi/topup/save保存地址(同一地址已存在则更新)
请求参数
| 参数 | 必填 | 说明 |
apikey | 是 | 商户密钥,在客户中心创建获取 |
add | 是 | 接收能量的 TRON 地址(T 开头 34 位) |
value | 是 | 能量数量,仅支持 65000 或 130000 |
hour | 是 | 委托时长(小时),仅支持 1 或 24 |
label | 否 | 选填,备注名 |
auto | 否 | 选填,是否开启自动补充;缺省开启,传 0 关闭 |
daily_limit | 否 | 选填,每天自动补充次数上限,缺省 10,最大 200 |
curl "https://api.trxapi.io/api/v1/openapi/topup/save?apikey=YOUR_API_KEY&add=TR7NHqjeKQx...&value=65000&hour=1&label=hot-wallet&daily_limit=20"
{ "code": 200, "data": { "add": "TR7NHqjeKQx...", "label": "hot-wallet", "value": 65000, "hour": 1, "auto": true, "dailyLimit": 20 } }
GET/api/v1/openapi/topup/delete删除地址
请求参数
| 参数 | 必填 | 说明 |
apikey | 是 | 商户密钥,在客户中心创建获取 |
add | 是 | 接收能量的 TRON 地址(T 开头 34 位) |
GET/api/v1/openapi/topup/run立即执行检查并补充
请求参数
| 参数 | 必填 | 说明 |
apikey | 是 | 商户密钥,在客户中心创建获取 |
add | 否 | 已保存的地址(单条执行时必填) |
all | 否 | 传 1 对全部已保存地址各执行一次;不传 add 时必须显式传 all=1 |
响应字段(data)
add / ordered / sufficient / pending / currentEnergy / value / hour | 单条执行的结果,字段含义同「按档位补能量」 |
orderId / amount / currency / txid | 仅在 ordered=true 时返回:orderId、amount、currency、txid,含义同下单接口 |
list / total / balance | all=1 时返回 list(每个地址一项,字段同单条执行;失败的项带 error)、total、balance |
⚠️ run 与客户中心的自动充值使用 TRX 余额扣费。不传 add 时必须显式传 all=1,避免漏传参数导致给全部地址各下一单。
代码示例
完整的「下单 → 轮询到终态」流程(生产环境建议配置 Webhook 获取终态通知,替代轮询)。注意:URL 中含 &,在 shell 中调用时务必给整个 URL 加引号。
# Python — order and poll until terminal state
import time, requests
BASE = "https://api.trxapi.io/api/v1/openapi"
KEY = "YOUR_API_KEY"
def rent(address, value=65000, hour=1, trace=None):
params = {"apikey": KEY, "add": address, "value": value, "hour": hour}
if trace: params["traceId"] = trace
r = requests.get(f"{BASE}/getenergy", params=params, timeout=15).json()
assert r["code"] == 200, r
return r["data"]["orderId"]
def wait_done(order_id, timeout=60):
deadline = time.time() + timeout
while time.time() < deadline:
r = requests.get(f"{BASE}/order", params={"apikey": KEY, "orderId": order_id}, timeout=15).json()
if r["code"] == 200 and r["data"]["status"] in ("completed", "failed"):
return r["data"]
time.sleep(2)
raise TimeoutError(order_id)
order_id = rent("TR7NHqjeKQx...", trace="withdraw-8801")
print(wait_done(order_id))
// Node.js 18+ — order and poll (native fetch)
const BASE = 'https://api.trxapi.io/api/v1/openapi';
const KEY = process.env.TRXAPI_KEY;
async function call(path, params) {
const qs = new URLSearchParams({ apikey: KEY, ...params });
const res = await fetch(`${BASE}/${path}?${qs}`);
const body = await res.json();
if (body.code !== 200) throw new Error(`code ${body.code}`);
return body.data;
}
const { orderId } = await call('getenergy', { add: 'TR7NHqjeKQx...', value: 65000, hour: 1 });
for (;;) {
const o = await call('order', { orderId });
if (o.status !== 'processing') { console.log(o); break; }
await new Promise(r => setTimeout(r, 2000));
}
订单回调(Webhook)
订单进入终态(成功或失败)时,服务器会主动向你在客户中心配置的回调地址 POST 一条 JSON 通知,无需轮询。回调为账户级配置:名下所有 API Key 共用同一回调地址与签名密钥。
POSTPOST 你的回调地址订单回调(Webhook)
回调内容(JSON body)
| 参数 | 说明 |
event | 事件类型:order.completed(成功)或 order.failed(失败) |
orderId | 订单号,与下单接口返回的 orderId 一致 |
status | 订单终态:completed 或 failed |
txid | 链上交易哈希(成功时有值,失败为空) |
timestamp | 服务器发送时的 Unix 秒级时间戳 |
请求头
X-Timestamp | 发送时间戳(秒),参与签名计算 |
X-Signature | 签名:sha256=<hex(HMAC-SHA256)>,用于验证来源与完整性 |
# 服务器 → 你的回调地址
POST https://your-domain.com/webhook
X-Timestamp: 1712345678
X-Signature: sha256=9f86d081884c...
{
"event": "order.completed",
"orderId": "10001",
"status": "completed",
"txid": "a1b2c3d4...",
"timestamp": 1712345678
}
# 验签:用你的密钥按下式计算,与 X-Signature 比对
sig = "sha256=" + hex(hmac_sha256(secret, ts + "." + rawBody))
验签示例
# Python (Flask)
import hmac, hashlib
def verify(secret: str, ts: str, raw_body: bytes, header_sig: str) -> bool:
mac = hmac.new(secret.encode(), f"{ts}.".encode() + raw_body, hashlib.sha256)
expected = "sha256=" + mac.hexdigest()
return hmac.compare_digest(expected, header_sig)
// Node.js (Express — use the raw body, not the parsed JSON)
const crypto = require('crypto');
function verify(secret, ts, rawBody, headerSig) {
const expected = 'sha256=' + crypto.createHmac('sha256', secret)
.update(ts + '.' + rawBody).digest('hex');
return crypto.timingSafeEqual(Buffer.from(expected), Buffer.from(headerSig));
}
重试机制
以 HTTP 2xx 视为成功。失败按 1 分钟 / 5 分钟 / 30 分钟 / 2 小时 / 6 小时退避重试,最多 6 次,仍失败则标记为 failed。发送记录可在客户中心「回调通知」页查看。
⚠️ 安全要点:务必用「原始请求体(raw body)」参与验签,不要用重新序列化后的 JSON;验签失败的请求应直接丢弃;建议同时校验 X-Timestamp 与当前时间的偏差(如 5 分钟内)以防重放。回调可能因重试而重复送达,请按 orderId 做幂等处理。
错误码
所有响应均返回 code;code=200 表示成功,其余为对应错误。请以 code 判断结果,不要依赖 message 文案。
# example: order rejected for insufficient balance
{
"code": 502,
"message": "Insufficient balance",
"data": null
}
| code | message | 说明 |
| 200 | SUCCESS | 请求成功,结果见 data |
500 | 失败 / ERROR | 请求失败:参数错误、地址已激活、订单不存在、下单失败或服务暂时不可用等,具体原因见 message;不扣费或已自动退回 |
501 | 账户禁用 / Account disabled | apikey 不存在或已被禁用 |
502 | 余额不足 / Insufficient balance | 你的预付余额不足,请先充值 |
503 | IP 不在白名单 / IP not whitelisted | 来源 IP 不在该 apikey 的白名单(含未配置白名单),message 中带有本次请求 IP;白名单外的 IP 会被临时封禁 |
429 | 超出限额 / Rate limited | 请求过于频繁:每个 apikey 每秒 1 次(查价每秒 5 次),或鉴权失败次数过多;节点直连 API 另有每秒与每日限额 |
提示:为保障服务稳定,能量委托采用多通道自动路由,单个通道故障时会自动切换。若某次请求返回 500 且 message 为「服务暂时不可用」,表示本次未成交且未扣费,请稍后重试。如需专属通道与更高并发,请通过
[email protected] 联系商务。
最佳实践
下单与重试
- 传入
traceId:用你自己系统的唯一业务号(如提币单号)作为 traceId,响应中原样回显,方便把订单与内部系统对上。 - 失败重试要克制:收到
500 时先看 message 检查参数,不要无脑循环重试;收到 429 时降低频率(每个 apikey 每秒 1 次)。 - 谨防重复下单:下单为普通 GET 请求,超时后盲目重发可能产生重复订单与重复扣费;请以业务单号加锁,超时先查询订单再决定是否重下。需要「不够才补」时优先用
estimate / topup,它们会跳过能量已够或已有补充在途的地址。 - 下单前校验地址:在你自己的系统中先校验地址格式(T 开头 34 位),并对新地址先走激活接口,能显著降低失败率。
对账
- 每笔订单以
orderId + txid 双重记录;终态以订单查询或 Webhook 为准。 - 定时调用余额接口做余额告警(低于阈值提醒充值),避免业务高峰期因
502(余额不足)中断。 - 所有委托都可在区块浏览器按 txid 独立核验,对外争议时以链上记录为准。
安全
- apikey 只放服务端;进入版本库前用环境变量注入;为每个 apikey 配置最小范围的 IP 白名单。
- Webhook 必须验签 + 时间戳容差校验 + 按 orderId 幂等。
- 我们绝不会索取你的钱包私钥、助记词或钱包密码——任何这类要求都是假冒,详见安全说明。
常见问题
如何获得 apikey?
在客户中心(login.trxapi.io)注册账户,进入「API 密钥」页创建。密钥仅在创建时完整显示一次,之后只能重置不能查看。
支持 POST 或 JSON body 下单吗?
能量业务接口目前均为 GET + query string,简单稳定、便于调试。需要 POST 转发的是节点直连 API(见节点文档),JSON body 会原样转发给 TRON 节点。
下单接口有频率限制吗?
能量业务接口每个 apikey 每秒 1 次请求,查价接口每秒 5 次;节点直连 API 默认每天百万次、每秒 5 次。如有大并发批量委托需求,请联系
[email protected] 开通专属通道。
费用是怎么扣的?失败会退款吗?
下单成功即从预付余额扣费,响应中的 amount 是本单扣费金额、currency 是扣费币种。订单最终失败(status=failed)时费用自动退回余额;请求直接返回 500 时不扣费。
如何确认能量真的到账了?
用响应中的 txid 或接收地址在任意 TRON 区块浏览器查询,核对委托到账、能量数量与时长三项。链上记录与订单不符时,请附 orderId 与 txid 联系
[email protected]。
如何联调测试?
建议先用最小套餐(65,000 能量 / 1 小时)小额真实下单联调,并在区块浏览器核验到账;联调中遇到问题请附 traceId 与 orderId 联系
[email protected]。