API dokumentācija

Pakalpojums EnergyFather palīdz pirkt (īrēt) enerģiju un joslas platumu, kas nepieciešams, lai nosūtītu darījumus ar USDT un citiem TRC20 kriptožetoniem; joslas platums ir nepieciešams arī, lai nosūtītu jebkāda veida darījumus TRON blokķēdē, piemēram, nosūtītu TRX, pieprasītu atlīdzības un balsotu par Super Representatives.

Enerģijas iepirkšanas procedūra

Lai iegādātos enerģiju, ir jāreģistrējas pakalpojumā EnergyFather, jāpaņem autorizācijas žetons no lapas "Pircējs > API žetoni" un jāpapildina Pircēja konta bilance.

Pēc pasūtījuma izveides (metode ‘buy/energy’) enerģija var tikt piegādāta ar vairāku sekunžu vai pat minūšu aizkavēšanos, tāpēc, izstrādājot automatizētas sistēmas, ir ieteicams periodiski pārbaudīt pasūtījuma izpildi, izmantojot metodi ‘order/get/{guid}’.

Piemēram, ja plānojat nosūtīt USDT un vēlaties, lai darījumi būtu lētāki, iegādājoties enerģiju, rīkojieties šādi:

  • pieprasīt ‘buy/energy’ metodi, lai aprēķinātu nepieciešamo enerģijas daudzumu un to iegādātos,
  • periodiski pieprasīt ‘order/get/{guid}’ metodi, līdz enerģija tiek deleģēta (parasti tas aizņem dažas sekundes),
  • nosūtīt USDT (nopirktā enerģija tiks izmantota, lai samaksātu darījuma maksu).

Vispārīgas piezīmes

Šajā dokumentācijā izteiksme, kas ietīta loka iekavās, piemēram, ‘{guid}’ vai ‘{id}’, nozīmē attiecīgā mainīgā vērtību:

  • ‘{guid}’ ir objekta globālais unikālais identifikators EnergyFather (parasti 8 cipari),
  • ‘{id}’ ir šī lietotāja objekta kārtas numurs (numerācija katram lietotājam sākas ar ‘1’).

API Gala punkts

https://panel.energyfather.com/api/v1/private

Nosūtiet pieprasījumus, izmantojot POST metodi.

Pieprasījumu autorizācija

Lai apstiprinātu (autorizētu) pieprasījumus privātam API, ir jānosūta galvene HTTP:

Token: {token}

Autorizācijas žetonu pārvaldība atrodas vadības panelī, lapā "Pircējs > API žetoni".

Piemēram, informāciju par pasūtījumu 123456 var iegūt šādi:

CURL -X POST 'https://panel.energyfather.com/api/v1/private/order/get/123456' 
-H 'Token: 123456xxxxxxxxxxxxxxxxxxxxxxNOPQRS'

Pasūtījuma statuss

  • "0" - Tiek gaidīts. Pasūtījums ir tikko izveidots.
  • "1" - Gaidām maksājumu. Maksājuma saite jau ir izveidota, EnergyFather tiek gaidīts atpakaļsaukums no maksājumu sistēmas. Šis statuss netiek izmantots, ja pasūtījums tiek apmaksāts pilnībā ar iekšējā kontā pieejamajiem līdzekļiem.
  • "2" - Enerģijas deleģēšanas procedūra turpinās.
  • "3" - Deleģēts. Enerģija tiek izdalīta.
  • "4" - Reclaimed (nedeleģēts). Enerģija tiek atsaukta sakarā ar apmaksātā laika perioda beigām.
  • "5" - Apmaksāts. Pasūtījums ir apmaksāts un pievienots enerģijas piegādes rindā.
  • "6" - Kļūda.

Parastā statusu secība: 0, 5, 2, 3, 4.

API metodes
  • /api/v1/private/buy/energy - pirkt enerģiju (maksā no iekšējā konta).
  • /api/v1/private/order/list - saņemiet savu pasūtījumu sarakstu
  • /api/v1/private/order/get/{guid} - saņemiet informāciju par savu pasūtījumu
  • /api/v1/private/account/list - iegūstiet iekšējo kontu sarakstu.
  • /api/v1/private/account/get/{id} - iegūstiet informāciju par savu iekšējo kontu.

"buy/energy" metode - pirkt enerģiju (maksā no iekšējā konta)

Reģistrēta klienta pieprasījums pirkt enerģiju, debetējot to no iekšējā konta. Enerģija nekavējoties tiek nosūtīta uz norādīto adresi.

Ja iekšējā kontā nav pietiekamu līdzekļu, pasūtījums tiks izveidots un uzreiz iegūs statusu "6" (kļūda). Šādā gadījumā jums ir jāapmeklē panelis, jāiemaksā daļa līdzekļu un pēc tam jānosūta jauns API pieprasījums enerģijas iegādei.

Ir divi veidi, kā noteikt iepērkamo enerģijas daudzumu:

a) Jūs varat iestatīt precīzu enerģijas daudzumu parametrā "amount", tad jums vajadzētu iestatīt arī amount_source="amount".

b) Ja nezināt, cik daudz enerģijas ir nepieciešams darījumam, lai nosūtītu USDT vai citu žetonu, varat iestatīt amount_source="estimate" un aizpildīt attiecīgos parametrus (estimate_to, estimate_token, estimate_adjust_percent).

buy/energy: Pieprasījuma piemērs ar precīzu enerģijas daudzumu

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: Pieprasījuma piemērs ar nepieciešamā enerģijas daudzuma aprēķinu

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: Pieprasījuma params

  • to (virkne, obligāts) - TRON adrese, uz kuru jādeleģē enerģija.
  • period_amount (vesels skaitlis, obligāts) - enerģijas pirkšanas periods
  • period_type (virkne, obligāts) - laika perioda veids. Iespējamās vērtības: days, hours.
  • format (virkne, pēc izvēles) - atbildes formāts. Iespējamās vērtības: json (default), xml.
  • amount_source (virkne, obligāts) - algoritms deleģētās enerģijas apjoma noteikšanai. Ja vērtība ir "amount", tad tiek izmantota parametra "amount" vērtība. Ja vērtība ir "estimate", tad nepieciešamais enerģijas daudzums tiek aprēķināts, pamatojoties uz parametru estimate_to, estimate_token, estimate_adjust_percent. Iespējamās vērtības: amount, estimate.
  • amount (vesels skaitlis, obligāts, ja amount_source="amount") - iepērkamās enerģijas daudzums. Ja amount_source="estimate", to neņem vērā.
  • estimate_to (virkne, obligāts, ja amount_source="estimate") - ar komatu atdalīts to adrešu saraksts TRON, uz kurām plānots nosūtīt žetonu darījumus.
  • estimate_token (virkne, obligāts, ja amount_source="estimate") - simbols TRC20. Iespējamās vērtības (atkarībā no burtu un ciparu lieluma): USDT, USDC, USDD, USDJ, JST, TUSD, stUSDT, WTRX.
  • estimate_adjust_percent (decimālskaitlis, obligāts, ja amount_source="estimate") - enerģijas pārpalikums, kas izteikts procentos. Šis pārpalikums ir nepieciešams, lai izvairītos no sadegšanas TRX, kas var notikt, ja adresē ir tieši tik daudz enerģijas, cik nepieciešams. Ieteicamā vērtība ir 0.04%.

Svarīgi: pašlaik ir spēkā tikai 6 periodi: 1 hour un 1, 3, 7, 15, 30 days.

buy/energy: Atbilde

Veiksmes gadījumā atbildē būs norādīts pasūtījums GUID, pēc kura vēlāk varēsiet iegūt tā faktisko informāciju.

{
	"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"
}

Ja pieprasījumā ir amount_source="estimate", tad atbildē ir papildu sadaļa "estimate_task". Piemēram:

{
	"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: Atbildes params

  • guid - pasūtījums GUID
  • balance - iekšējā kontā pašlaik pieejamie līdzekļi, TRX
  • days - enerģijas piegādes ilgums dienās, ja "period_type=days"
  • hours - enerģijas piegādes ilgums stundās, ja "period_type=hours"
  • estimate_task - enerģijas aprēķins (aplēse), kas nepieciešama, lai nosūtītu TRC20 darījumus no vienas TRON adreses uz citu TRON adrešu sarakstu.

"order/get/{guid}" metode - pasūtījuma informācijas iegūšana

Informācijas iegūšana par konkrēto pasūtījumu.

order/get/{guid} - Pieprasījuma piemērs

curl -X 'POST' 
  'https://panel.energyfather.com/api/v1/private/order/get/12345' 
  -H 'Token: 123456xxxxxxxxxxxxxxxxxxxxxxNOPQRS'

order/get/{guid} - atbildes piemērs

{
	"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} - Atbildes params

  • guid - pasūtījums GUID
  • balance - iekšējā kontā pašlaik pieejamie līdzekļi, TRX
  • days - enerģijas piegādes ilgums dienās, ja "period_type=days"
  • hours - enerģijas piegādes ilgums stundās, ja "period_type=hours"
  • to - TRX adrese, kur tiek piegādāta enerģija
  • energy_amount - enerģijas daudzums
  • order_cost - pasūtījuma izmaksas, TRX
  • order_cost_paid - jau samaksātā summa TRX (nepietiekamu līdzekļu iekšējā kontā gadījumā šī summa būs mazāka par "order_cost").
  • address_activation_fee - maksa par galamērķa adreses aktivizēšanu, TRX
  • energy_delegation_fee - maksa par pārāk mazu pasūtījuma apjomu, TRX
  • resource_txs - masīvs, kas satur to darījumu sarakstu TRON blokķēdē, kuros resursi ir deleģēti un atgūti (nedeleģēti).
  • status - pasūtījuma statuss, iespējamās vērtības ir aprakstītas šīs rokasgrāmatas sākumā.
  • payment_status - rīkojuma maksājuma statuss maksājumu sistēmā (iespējamās vērtības atkarīgas no maksājumu sistēmas).

"order/list" metode - pasūtījumu saraksta iegūšana

Pasūtījumu saraksta iegūšana.

order/list - Pieprasījuma piemērs

curl -X 'POST' 
  'https://panel.energyfather.com/api/v1/private/order/list' 
  -H 'Token: 123456xxxxxxxxxxxxxxxxxxxxxxNOPQRS'

order/list - Pieprasījuma params

  • sort (virkne, pēc izvēles) - ierakstu šķirošana, pēc noklusējuma "created_at|desc"
  • per_page (vesels skaitlis, pēc izvēles) - ierobežo ierakstu skaitu vienā atbildē.
  • page (vesels skaitlis, pēc izvēles) - atbildes lapas kārtas numurs.
  • filter (masīvs arrays(objects), pēc izvēles) - ierakstu filtrs

order/list - atbildes piemērs

{
	"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 - Atbildes params

  • guid - pasūtījuma GUID
  • status - atbildes statuss API

"account/list" metode - iekšējo kontu uzskaitījums

Iekšējo kontu saraksta iegūšana, ieskaitot pašlaik pieejamo līdzekļu apjomu. Tā kā katrai vietnes sadaļai ir atsevišķs iekšējais konts (buyer, affiliate, seller, dealer), kontā ir vairāki konti.

account/list - Pieprasījuma piemērs

curl -X 'POST' 
  'https://panel.energyfather.com/api/v1/private/account/list' 
  -H 'Token: 123456xxxxxxxxxxxxxxxxxxxxxxNOPQRS'

account/list - Atbildes piemērs

{
	"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 - Atbildes params

  • guid - iekšējā konta GUID
  • id - iekšējā konta secība ID
  • section - pie kuras EnergyFather sadaļas pieder šis atlikums
  • balance - pieejamie līdzekļi
  • currency - valūta
  • user_id - GUID lietotājs

"account/get/{id}" metode - precīza iekšējā konta iegūšana

Iekšējā konta atlikuma iegūšana konkrētai sadaļai EnergyFather. Tā kā katrai sekcijai ir savs konts (buyer, affiliate, seller, dealer), katram lietotājam ir vairāki konti. Vispirms var izmantot metodi "account/list", lai iegūtu to sarakstu, noskaidrot interesējošā konta ‘id’ un pēc tam izmantot šo ‘id’, lai iegūtu konkrētā konta atlikumu.

account/get/{id} - Pieprasījuma piemērs

curl -X 'POST' 
  'https://panel.energyfather.com/api/v1/private/account/get/1' 
  -H 'Token: 123456xxxxxxxxxxxxxxxxxxxxxxNOPQRS'

account/get/{id} - atbildes piemērs

{
	"status": "ok",
	"data": {
		"guid": 64463815,
		"user_id": 81841325,
		"id": 2,
		"section": "buyer",
		"currency": "TRX",
		"balance": "41.704"
	}
}

account/get/{id} - Atbildes params

  • guid - iekšējā konta GUID
  • id - iekšējā konta kārtas ID
  • section - pie kuras EnergyFather sadaļas pieder šis atlikums
  • balance - pieejamie līdzekļi
  • currency - valūta
  • user_id - GUID lietotājs