API文件

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方法
  • /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