API Dokumentation

Der EnergyFather-Dienst hilft dabei, die Energie und die Bandbreite zu kaufen (zu mieten), die benötigt werden, um Transaktionen in USDT und anderen TRC20-Kryptowährungen zu senden; Bandbreite wird auch benötigt, um jede Art von Transaktion auf der TRON-Blockchain zu senden, wie z. B. das Senden von TRX, das Beanspruchen von Belohnungen und die Abstimmung für Super Representatives.

Verfahren für den Energieeinkauf

Um Energie zu kaufen, müssen Sie sich beim EnergyFather-Dienst anmelden, das Autorisierungs-Token auf der Seite "Käufer > API Token" abrufen und den Kontostand des Käufers aufladen.

Nach der Erstellung eines Auftrags (Methode ‘buy/energy’) kann die Energie mit einer Verzögerung von mehreren Sekunden oder sogar Minuten geliefert werden. Bei der Entwicklung automatisierter Systeme empfiehlt es sich daher, die Auftragsausführung regelmäßig mit der Methode ‘order/get/{guid}’ zu überprüfen.

Wenn Sie beispielsweise eine Sendung USDT planen und die Transaktionen durch den Kauf von Energie verbilligen möchten, gehen Sie wie folgt vor:

  • die ‘buy/energy’-Methode anwenden, um die benötigte Energiemenge abzuschätzen und sie zu kaufen,
  • in regelmäßigen Abständen die ‘order/get/{guid}’-Methode anzufordern, bis die Energie delegiert ist (in der Regel dauert dies einige Sekunden),
  • senden USDT (die gekaufte Energie wird zur Bezahlung der Transaktionsgebühr verwendet).

Allgemeine Hinweise

In dieser Dokumentation bezeichnet ein in geschweifte Klammern eingeschlossener Ausdruck wie ‘{guid}’ oder ‘{id}’ den Wert der entsprechenden Variablen:

  • ‘{guid}’ ist der globale eindeutige Bezeichner des Objekts in EnergyFather (normalerweise 8 Ziffern),
  • ‘{id}’ ist die fortlaufende Nummer des Objekts für diesen Benutzer (die Nummerierung beginnt mit ‘1’ für jeden Benutzer).

API Endpunkt

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

Senden Sie Anfragen mit der Methode POST.

Autorisierung von Anfragen

Um Anfragen an einen privaten API zu bestätigen (zu autorisieren), sollte ein HTTP-Header übergeben werden:

Token: {token}

Die Verwaltung der Berechtigungsmarken befindet sich in der Systemsteuerung, auf der Seite "Käufer > API Marken".

Beispielsweise können Sie Informationen über die Bestellung 123456 auf folgende Weise erhalten:

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

Status der Bestellung

  • "0" - Ausstehend. Der Auftrag wurde soeben erstellt.
  • "1" - Warten auf die Zahlung. Die Zahlungsverbindung wurde bereits erstellt, EnergyFather wartet auf einen Rückruf vom Zahlungssystem. Dieser Status wird nicht verwendet, wenn der Auftrag vollständig durch Mittel auf dem internen Konto bezahlt wird.
  • "2" - Das Verfahren der Energiedelegation ist im Gange.
  • "3" - Delegiert. Energie wird abgegeben.
  • "4" - Zurückgefordert (nicht delegiert). Die Energie wird aufgrund des Endes des bezahlten Zeitraums entzogen.
  • "5" - Bezahlt. Der Auftrag wird bezahlt und in die Warteschlange für die Energielieferung aufgenommen.
  • "6" - Fehler.

Die übliche Reihenfolge der Status: 0, 5, 2, 3, 4.

API Methoden
  • /api/v1/private/buy/energy - Energie kaufen (vom internen Konto bezahlt)
  • /api/v1/private/order/list - eine Liste Ihrer Bestellungen erhalten
  • /api/v1/private/order/get/{guid} - Informationen über Ihre Bestellung erhalten
  • /api/v1/private/account/list - Erhalten Sie eine Liste Ihrer internen Konten
  • /api/v1/private/account/get/{id} - Informationen über Ihr internes Konto erhalten

Die "buy/energy"-Methode - Energie kaufen (bezahlt vom internen Konto)

Anfrage zum Kauf von Energie durch einen registrierten Kunden mit Abbuchung vom internen Konto. Die Energie wird sofort an die angegebene Adresse gesendet.

Wenn das interne Konto keine ausreichende Deckung aufweist, wird der Auftrag erstellt und erhält sofort den Status "6" (Fehler). In diesem Fall müssen Sie das Panel besuchen, etwas Geld einzahlen und dann eine neue API Anfrage für den Energieeinkauf senden.

Es gibt zwei Möglichkeiten, die zu erwerbende Energiemenge zu bestimmen:

a) Sie können die genaue Energiemenge im Parameter "amount" einstellen, dann sollten Sie auch amount_source="amount" einstellen.

b) Wenn Sie nicht wissen, wie viel Energie für eine Transaktion erforderlich ist, um USDT oder einen anderen Token zu senden, können Sie amount_source="estimate" einstellen und die entsprechenden Parameter (estimate_to, estimate_token, estimate_adjust_percent) ausfüllen.

buy/energy: Beispielanfrage mit genauer Energiemenge

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: Beispielanfrage mit Berechnung der benötigten Energiemenge

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: Parameter anfordern

  • to (String, erforderlich) - TRON Adresse, an die die Energie delegiert werden soll
  • period_amount (ganze Zahl, erforderlich) - Zeitraum für den Kauf von Energie
  • period_type (String, erforderlich) - Art des Zeitraums. Mögliche Werte: days, hours.
  • format (String, optional) - Antwortformat. Mögliche Werte: json (default), xml.
  • amount_source (String, erforderlich) - Algorithmus zur Bestimmung der Menge der delegierten Energie. Wenn der Wert "amount" ist, wird der Wert des Parameters "amount" verwendet. Ist der Wert "estimate", so wird die erforderliche Energiemenge auf der Grundlage des Parameters estimate_to, estimate_token, estimate_adjust_percent berechnet. Mögliche Werte: amount, estimate.
  • amount (ganze Zahl, erforderlich, wenn amount_source="amount") - Menge der zu erwerbenden Energie. Sie wird ignoriert, wenn amount_source="estimate".
  • estimate_to (String, erforderlich, wenn amount_source="estimate") - durch Kommata getrennte Liste von TRON Adressen, an die Token-Transaktionen gesendet werden sollen
  • estimate_token (String, erforderlich, wenn amount_source="estimate") - das TRC20-Token. Mögliche Werte (Groß- und Kleinschreibung beachten): USDT, USDC, USDD, USDJ, JST, TUSD, stUSDT, WTRX.
  • estimate_adjust_percent (dezimal, erforderlich, wenn amount_source="estimate") - die überschüssige Energiemenge, ausgedrückt in Prozent. Dieser Überschuss wird benötigt, um ein Verbrennen TRX zu vermeiden, was passieren kann, wenn die Adresse genau die erforderliche Energiemenge hat. Der empfohlene Wert ist 0.04%..

Wichtig: Derzeit sind nur 6 Zeiträume gültig: 1 hour und 1, 3, 7, 15, 30 days.

buy/energy: Antwort

Im Erfolgsfall enthält die Antwort die Bestellung GUID, über die Sie später die tatsächlichen Einzelheiten erfahren können.

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

Wenn die Anfrage amount_source="estimate" enthält, hat die Antwort einen zusätzlichen Abschnitt "estimate_task". Zum Beispiel:

{
	"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: Antwort-Parameter

  • guid - die Bestellung GUID
  • balance - derzeit auf dem internen Konto verfügbare Mittel, TRX.
  • days - Dauer der Energiebereitstellung in Tagen, wenn "period_type=days"
  • hours - Dauer der Energiebereitstellung in Stunden, wenn "period_type=hours"
  • estimate_task - Berechnung (Schätzung) der Energie, die benötigt wird, um TRC20-Transaktionen von einer TRON-Adresse an die Liste einer anderen TRON-Adresse zu senden

Die "order/get/{guid}"-Methode - Einzelheiten der Bestellung abrufen

Einholung von Informationen über den konkreten Auftrag.

order/get/{guid} - Beispielanfrage

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

order/get/{guid} - Beispielantwort

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

  • guid - die Bestellung GUID
  • balance - derzeit auf dem internen Konto verfügbare Mittel, TRX.
  • days - Dauer der Energiebereitstellung in Tagen, wenn "period_type=days"
  • hours - Dauer der Energiebereitstellung in Stunden, wenn "period_type=hours"
  • to - TRX Adresse, an die die Energie geliefert wird
  • energy_amount - Energiemenge
  • order_cost - Auftragskosten, TRX.
  • order_cost_paid - bereits gezahlter Betrag, TRX (bei unzureichender Deckung des internen Kontos ist dieser Betrag geringer als "order_cost")
  • address_activation_fee - Höhe der Gebühr für die Aktivierung der Zieladresse, TRX.
  • energy_delegation_fee - Gebühr für zu geringe Bestellmenge, TRX.
  • resource_txs - Array mit der Liste der Transaktionen in der TRON-Blockchain, bei denen Ressourcen delegiert und zurückverlangt werden (nicht delegiert)
  • status - Auftragsstatus, mögliche Werte sind am Anfang des Handbuchs beschrieben
  • payment_status - Zahlungsstatus des Auftrags im Zahlungssystem (mögliche Werte hängen vom Zahlungssystem ab)

Die "order/list"-Methode - Abrufen der Liste der Aufträge

Abrufen der Liste der Aufträge.

order/list - Beispielanfrage

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

order/list - Parameter anfordern

  • sort (string, optional) - Sortierung der Einträge, standardmäßig "created_at|desc"
  • per_page (ganze Zahl, optional) - Begrenzung der Anzahl der Einträge pro Antwort
  • page (ganze Zahl, optional) - fortlaufende Nummer der Antwortseite
  • filter (Array von arrays(objects), optional) - Filter der Einträge

order/list - Beispielantwort

{
	"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 - Antwort-Parameter

  • guid - GUID der Bestellung
  • status - Status der API Antwort

Die "account/list"-Methode - Auflistung der internen Konten

Abrufen einer Liste der internen Konten, einschließlich des derzeit verfügbaren Betrags der Mittel. Da es für jeden Bereich der Website ein separates internes Konto gibt (buyer, affiliate, seller, dealer), gibt es mehrere Konten auf dem Konto.

account/list - Beispielanfrage

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

account/list - Beispielantwort

{
	"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 - Antwort-Parameter

  • guid - GUID des internen Kontos
  • id - fortlaufend ID des internen Kontos
  • section - zu welchem EnergyFather Abschnitt dieser Saldo gehört
  • balance - verfügbare Mittel
  • currency - Währung
  • user_id - GUID des Nutzers

Die "account/get/{id}"-Methode - Ermittlung des genauen internen Kontos

Abrufen des Saldos des internen Kontos für eine bestimmte Abteilung EnergyFather. Da jeder Bereich sein eigenes Konto (buyer, affiliate, seller, dealer) hat, gibt es für jeden Benutzer mehrere Konten. Sie können zunächst die "account/list"-Methode verwenden, um deren Liste zu erhalten, das ‘id’ des betreffenden Kontos herauszufinden und dann dieses ‘id’ verwenden, um den Saldo eines bestimmten Kontos zu ermitteln.

account/get/{id} - Beispielanfrage

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

account/get/{id} - Beispielantwort

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

account/get/{id} - Antwort-Parameter

  • guid - GUID des internen Kontos
  • id - fortlaufende ID des internen Kontos
  • section - zu welchem EnergyFather Abschnitt dieser Saldo gehört
  • balance - verfügbare Mittel
  • currency - Währung
  • user_id - GUID des Nutzers