EnergyFather服务帮助购买(租用)在USDT和其他TRC20加密代币中发送交易所需的能源和带宽;在TRON区块链上发送任何类型的交易也需要带宽,例如发送TRX、索取奖励和为Super Representatives投票。
能源购买程序
要购买能源,您需要在 EnergyFather 服务中注册,从 "买家 > API 令牌 "页面获取授权令牌,并充值买家账户余额。
在创建订单(方法 ‘buy/energy’ )后,能量传递可能会延迟几秒甚至几分钟,因此在开发自动系统时,建议通过请求方法 ‘order/get/{guid}’ 定期检查订单执行情况。
例如,如果您计划发送 USDT,并希望通过购买能源来降低交易成本,您可以这样做:
- 要求使用 ‘buy/energy’ 方法估算所需能量并购买、
- 定期请求‘order/get/{guid}’ 方法,直到能量被下放(通常需要几秒钟)、
- 发送 USDT(购买的能源将用于支付交易费)。
一般说明
在本文档中,大括号‘{guid}’ 或 ‘{id}’ 中的表达式表示相应变量的值:
- ‘{guid}’ 是 EnergyFather 中对象的全局唯一标识符(通常为 8 位数)、
- ‘{id}’是该用户对象的顺序号(每个用户的编号从 ‘1’ 开始)。
API 终点
https://panel.energyfather.com/api/v1/private
请使用 POST 方法发送请求。
申请的授权
要确认(授权)对私有API的请求,应传递HTTP 标头:
Token: {token}
授权令牌管理位于控制面板的 "买家 > API 令牌 "页面。
例如,您可以通过以下方式获取订单 123456 的信息:
CURL -X POST 'https://panel.energyfather.com/api/v1/private/order/get/123456' -H 'Token: 123456xxxxxxxxxxxxxxxxxxxxxxNOPQRS'
订单状态
- "0" - 待定。 订单刚刚创建。
- "1" - 等待付款。 付款链接已经生成,EnergyFather 正在等待付款系统的回电。 如果订单完全由内部账户可用资金支付,则不使用此状态。
- "2" - 能源授权程序正在进行中。
- "3" - 委托。 发出能量。
- "4" - 回收(未授权)。 由于付费时间段结束,能量被收回。
- "5" - 已付款。 订单已支付,并加入能源交付队列。
- "6" - 错误。
通常的状态序列: 0, 5, 2, 3, 4.
- /api/v1/private/buy/energy - 购买能源(由内部账户支付)
- /api/v1/private/order/list - 获取订单清单
- /api/v1/private/order/get/{guid} - 获取有关您订单的信息
- /api/v1/private/account/list - 获取内部账户列表
- /api/v1/private/account/get/{id} - 获取内部账户信息
"buy/energy" 方法 - 购买能源(由内部账户支付)
注册客户要求从内部账户中扣款购买能源。 能源将立即发送到指定地址。
如果内部账户资金不足,订单将被创建,并立即出现"6"(错误)状态。 在这种情况下,您需要访问面板,存入一些资金,然后发送一个新的API 能源购买请求。
有两种方法可以确定要购买的能源量:
a) 您可以在"amount" 参数中设置准确的能量值,然后还应设置amount_source="amount"。
b) 如果不知道发送USDT 或其他令牌的交易需要多少能量,可以设置amount_source="estimate" 并填写相应的参数(estimate_to, estimate_token, estimate_adjust_percent)。
buy/energy: 请求精确能量的示例
curl -X 'POST' 'https://panel.energyfather.com/api/v1/private/buy/energy' -H 'Token: 123456xxxxxxxxxxxxxxxxxxxxxxNOPQRS' -d '{ "format": "json", "to": "TQHAAJWLLEjBgYq2sjUnq4kbKfajEXEvyE", "amount_source": "amount", "amount": 31895, "period_type": "days", "period_amount": 3 }'
buy/energy: 计算所需能量的请求示例
curl -X 'POST' 'https://panel.energyfather.com/api/v1/private/buy/energy' -H 'Token: 123456xxxxxxxxxxxxxxxxxxxxxxNOPQRS' -d '{ "format": "json", "to": "TQHAAJWLLEjBgYq2sjUnq4kbKfajEXEvyE", "amount_source": "estimate", "estimate_to": "TLVkYEp4Ue2RpK5v1XNZAB3769g44BSZyH,TJm6HiCMVZdBHbNHThdMv1RambstJPrfYo", "estimate_token": "USDT", "estimate_adjust_percent": 0.04, "period_type": "days", "period_amount": 3 }'
buy/energy: 请求参数
- to(字符串,必填)- 接收能量的TRON 地址
- period_amount (整数,必填)- 购买能源的时间段
- period_type(字符串,必填)- 时间段类型。 可能的值: days, hours.
- format(字符串,可选)--响应格式。 可能的值: json (default), xml.
- amount_source(字符串,必填)- 用于确定委托能量的算法。 如果值是"amount",则使用参数 "amount" 的值。 如果值为 "estimate",则根据参数 "amount"计算所需能量。 可能的值: amount, estimate.
- amount(整数,如果为 amount_source="amount",则必填)- 要购买的能量。 如果 amount_source="estimate" 则忽略。
- estimate_to(字符串,若为amount_source="estimate",则必填)- 用逗号分隔的、计划发送令牌交易的TRON 地址列表
- estimate_token(字符串,若为amount_source="estimate"则必填)- TRC20 标记。 可能的值(区分大小写): USDT, USDC, USDD, USDJ, JST, TUSD, stUSDT, WTRX.
- estimate_adjust_percent(十进制,若为 amount_source="estimate",则为必填项)- 以百分比表示的多余能量。 如果地址中的能量正好是所需的量,则需要多余的能量来避免烧毁 TRX。 建议值为 0.04%.
重要: 目前,只有 6 个周期有效: 1 hour 和 1, 3, 7, 15, 30 days。
buy/energy: 回应
如果成功,响应将包含订单GUID,您随后可以通过它获取订单的实际细节。
{ "status": "ok", "data": { "guid": 81373165, "estimate_task_id": null, "status": 0, "order_cost": "6.051", "to": "TQHAAJWLLEjBgYq2sjUnq4kbKfajEXEvyE", "energy_amount": 61000, "period_type": "hours", "energy_delegation_fee": "0.561000000000000000", "address_activation_fee": "0.000000000000000000", "hours": 1, "days": 0, "estimate_task": null }, "balance": "7.29412" }
如果请求中包含amount_source="estimate",那么响应中就会多出一个"estimate_task"部分。 例如
{ "status": "ok", "data": { "guid": 77082757, "estimate_task_id": 42708906, "status": 0, "order_cost": "0.561", "to": "TQHAAJWLLEjBgYq2sjUnq4kbKfajEXEvyE", "energy_amount": null, "period_type": "hours", "energy_delegation_fee": "0.561000000000000000", "address_activation_fee": "0.000000000000000000", "hours": 1, "days": 0, "estimate_task": { "id": 42708906, "token": "USDT", "currency": "USD", "from": "TQHAAJWLLEjBgYq2sjUnq4kbKfajEXEvyE", "to": [ "TLVkYEp4Ue2RpK5v1XNZAB3769g44BSZyH", "TJm6HiCMVZdBHbNHThdMv1RambstJPrfYo" ] } }, "balance": "18.29412" }
buy/energy: 响应参数
- guid--阶次 GUID
- balance-内部账户现有资金, TRX
- days - 能源供应的持续时间(天数),如果 "period_type=days"
- 艮--能源供应持续时间(小时),如果 "period_type=hours"
- estimate_task - 计算(估算)从一个 TRON 地址向另一个 TRON 地址列表发送 TRC20 交易所需的能量
"order/get/{guid}"方法--获取订单详情
获取有关具体订单的信息。
order/get/{guid} - 申请示例
curl -X 'POST' 'https://panel.energyfather.com/api/v1/private/order/get/12345' -H 'Token: 123456xxxxxxxxxxxxxxxxxxxxxxNOPQRS'
order/get/{guid} - 响应示例
{ "status": "ok", "data": { "guid": 81373165, "estimate_task_id": 32301594, "status": 3, "payment_status": 0, "order_cost_paid": "4.146350000000000000", "order_cost": "4.146350000000000000", "to": "TQHAAJWLLEjBgYq2sjUnq4kbKfajEXEvyE", "energy_amount": 31895, "period_type": "hours", "energy_delegation_fee": "0.000000000000000000", "address_activation_fee": "0.000000000000000000", "hours": 1, "days": 0, "resource_txs": [ { "order_guid": 81373165, "delegate_txid": "961b6fbd7cc2090d1a65abc06bfabde1046e02d35394f6eca8d05812a6e3ab7" } ], "estimate_task": { "id": 42708906, "token": "USDT", "currency": "USD", "from": "TQHAAJWLLEjBgYq2sjUnq4kbKfajEXEvyE", "to": [ "TLVkYEp4Ue2RpK5v1XNZAB3769g44BSZyH", "TJm6HiCMVZdBHbNHThdMv1RambstJPrfYo" ] } } }
order/get/{guid} - 响应参数
- guid--阶次 GUID
- balance-内部账户现有资金, TRX
- days - 能源供应的持续时间(天数),如果 "period_type=days"
- 艮--能源供应持续时间(小时),如果 "period_type=hours"
- to - TRX 能源输送地址
- energy_amount - 能量量
- 震 - 订单成本, TRX
- order_cost_paid - 已支付的金额,TRX(在内部账户资金不足的情况下,该金额将小于 "order_cost")
- address_activation_fee - 激活目的地址的费用, TRX
- energy_delegation_fee - 订单量太小的费用, TRX
- resource_txs - 包含TRON 区块链中资源委托和回收(未委托)交易列表的数组
- status - 订单状态,可能的值见本手册开头的说明
- payment_status - 订单在支付系统中的支付状态(可能的值取决于支付系统)
"order/list"方法 - 获取订单列表
获取订单列表。
order/list - 申请示例
curl -X 'POST' 'https://panel.energyfather.com/api/v1/private/order/list' -H 'Token: 123456xxxxxxxxxxxxxxxxxxxxxxNOPQRS'
order/list - 请求参数
- ↪So_2659(字符串,可选)--条目排序,默认为 "created_at|desc"。
- per_page(整数,可选)- 限制每次回复的条目数
- page(整数,可选)- 响应页面的顺序号
- filter(arrays(objects) 数组,可选)--条目筛选器
order/list - 响应示例
{ "current_page": 1, "data": [ { "guid": 96134274, "status": 4 }, { "guid": 81373165, "status": 3 } ], "first_page_url": "/api/v1/private/order/list?page=1", "from": 1, "last_page": 1, "last_page_url": "/api/v1/private/order/list?page=1", "links": [ { "url": null, "label": "pagination.previous", "active": false }, { "url": "/api/v1/private/order/list?page=1", "label": "1", "active": true }, { "url": null, "label": "pagination.next", "active": false } ], "next_page_url": null, "path": "/api/v1/private/order/list", "per_page": 15, "prev_page_url": null, "to": 2, "total": 2, "draw": null, "status": "ok" }
order/list - 响应参数
- guid - 订单的 GUID
- status - API 响应的状态
"account/list"法--列出内部账户
获取内部账户列表,包括当前可用资金数额。 由于网站的每个部分都有一个单独的内部账户(buyer, affiliate, seller, dealer),因此账户中有多个账户。
离 - 申请示例
curl -X 'POST' 'https://panel.energyfather.com/api/v1/private/account/list' -H 'Token: 123456xxxxxxxxxxxxxxxxxxxxxxNOPQRS'
离 - 响应示例
{ "current_page": 1, "data": [ { "guid": 29778748, "user_id": 81841325, "id": 1, "section": "affiliate", "currency": "TRX", "balance": "2.511531" }, { "guid": 64463815, "user_id": 81841325, "id": 2, "section": "buyer", "currency": "TRX", "balance": "41.704" } ], "first_page_url": "/api/v1/private/account/list?page=1", "from": 1, "last_page": 1, "last_page_url": "/api/v1/private/account/list?page=1", "links": [ { "url": null, "label": "pagination.previous", "active": false }, { "url": "/api/v1/private/account/list?page=1", "label": "1", "active": true }, { "url": null, "label": "pagination.next", "active": false } ], "next_page_url": null, "path": "/api/v1/private/account/list", "per_page": 15, "prev_page_url": null, "to": 2, "total": 2, "draw": null, "status": "ok" }
离 - 响应参数
- guid - 内部账户的 GUID
- id - 内部账户的顺序 ID
- section - 该余额属于哪个EnergyFather节
- balance - 可用资金
- currency - 货币
- user_id - 用户的 GUID
"account/get/{id}"方法--获取准确的内部账户
获取EnergyFather特定部分的内部账户余额。 由于每个部门都有自己的账户(buyer, affiliate, seller, dealer),因此每个用户都有多个账户。 您可以先使用"account/list"方法获取它们的列表,找出感兴趣账户的‘id’,然后使用此‘id’获取特定账户的余额。
account/get/{id} - 申请示例
curl -X 'POST' 'https://panel.energyfather.com/api/v1/private/account/get/1' -H 'Token: 123456xxxxxxxxxxxxxxxxxxxxxxNOPQRS'
account/get/{id} - 响应示例
{ "status": "ok", "data": { "guid": 64463815, "user_id": 81841325, "id": 2, "section": "buyer", "currency": "TRX", "balance": "41.704" } }
account/get/{id} - 响应参数
- guid - 内部账户的 GUID
- id - 内部账户的顺序 ID
- section - 该余额属于哪个EnergyFather节
- balance - 可用资金
- currency - 货币
- user_id - 用户的 GUID