EnergyFatherサービスは、USDTや他のTRC20クリプトトーケンのトランザクションを送信するために必要なエネルギーと帯域幅の購入(レンタル)を支援します。帯域幅は、TRXの送信、報酬の請求、Super Representativesの投票など、TRONブロックチェーン上のあらゆる種類のトランザクションを送信するためにも必要です。
エネルギー購入手続き
エネルギーを購入するには、EnergyFatherサービスに登録し、"Buyer > API tokens "のページから認証トークンを取得し、Buyerアカウントの残高を増やす必要があります。
注文を作成した後(メソッド‘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へのリクエストを確認(authorize)するには、 HTTPヘッダーを渡すべきである:
Token: {token}
認証トークンの管理は、コントロールパネルの「Buyer > API tokens」ページにあります。
例えば、123456の注文に関する情報は次のようにして得ることができる:
CURL -X POST 'https://panel.energyfather.com/api/v1/private/order/get/123456' -H 'Token: 123456xxxxxxxxxxxxxxxxxxxxxxNOPQRS'
注文状況
- "0" - 保留中です。 注文が作成されました。
- "1" - 支払いを待っています。 支払いリンクはすでに生成されており、EnergyFatherは支払いシステムからのコールバックを待っています。 このステータスは、注文がすべて内部口座で利用可能な資金で支払われる場合は使用されません。
- "2" - エネルギー委任の手続きが進行中。
- "3" - 委任。 エネルギーが与えられる。
- "4" - Reclaimed (Undelegated). 有料期間終了のため、エネルギーが引き出される。
- "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リクエストを送信する必要があります。
購入するエネルギー量を定義するには2つの方法がある:
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 (string, optional) - 応答フォーマット。 可能な値: json (default), xml.
- amount_source (string, 必須) - 委譲エネルギー量を決定するためのアルゴリズム。 値が "amount" の場合、パラメータ "amount" の値が使用される。 値が "estimate" の場合、必要なエネルギー量はパラメータ estimate_to, estimate_token, estimate_adjust_percent に基づいて計算される。 可能な値 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 (10進数、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"の場合、エネルギー供給期間(単位:日
- hours - "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"の場合、エネルギー供給期間(単位:日
- hours - "period_type=hours"の場合、エネルギー供給時間(単位:時間
- to - TRX エネルギーが供給される住所
- energy_amount - エネルギー量
- order_cost - オーダーコスト, 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 - リクエストパラメータ
- sort (文字列、 オプ シ ョ ナル ) - 項目の並べ替え。
- per_page (integer, optional) - レスポンスごとのエントリ数を制限する。
- 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)の各セクションには別の内部アカウントがあるため、アカウントには複数の口座が存在する。
account/list - リクエスト例
curl -X 'POST' 'https://panel.energyfather.com/api/v1/private/account/list' -H 'Token: 123456xxxxxxxxxxxxxxxxxxxxxxNOPQRS'
account/list - 回答例
{ "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" }
account/list - レスポンスパラメータ
- 内部口座の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