Transaktionsverlauf
Gibt die eigenen Transaktionen Ihres Kontos zurück, die neuesten zuerst, mit Unterstützung für Seitenaufteilung und Status-Filterung. Aufgeführt werden nur Transaktionen, die von dem Konto aufgegeben wurden, zu dem der API-Schlüssel gehört. Guthabenaufladungen, Empfehlungsprämien und Auszahlungen sind keine Bestellungen und werden nicht aufgeführt.
POST /v1/transactions/history
Anfrage
Alle Parameter sind optional. Wenn keine Parameter angegeben werden, wird die erste Seite mit 10 Elementen zurückgegeben. Ein unbekannter status, eine page unter 1 oder ein per_page außerhalb von 1–50 wird mit Code 2 abgelehnt. Ein user_subscription_id, das keine Zeichenkette mit 1–26 Zeichen ist, wird ebenso abgelehnt.
Anfrage-Parameter
| Feld | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
| page | integer | Nein | Seitennummer (Standard: 1, Minimum: 1) |
| per_page | integer | Nein | Elemente pro Seite (Standard: 10, Maximum: 50) |
| status | string | Nein | Nach Transaktionsstatus filtern: new, pending, success oder failed (siehe Statusliste) |
| user_subscription_id | string | Nein | Nur die Transaktionen, die eines Ihrer Abonnements gekauft hat: dessen id, wie sie Abonnement-Historie und Abonnement starten zurückgeben. Eine id, die nicht zu Ihren Abonnements gehört, ergibt eine leere Seite |
#!/bin/bash
API_TOKEN="your_api_token"
API_SECRET="your_api_secret"
REQUEST_BODY='{
"page": 1,
"per_page": 10,
"status": "success"
}'
# Signatur berechnen
SIGNATURE=$(echo -n "${REQUEST_BODY}${API_SECRET}" | sha256sum | cut -d' ' -f1)
# API-Anfrage senden
curl -X POST "https://api.trxup.com/v1/transactions/history" \
-H "Authorization: Bearer ${API_TOKEN}" \
-H "X-Signature: ${SIGNATURE}" \
-H "Content-Type: application/json" \
-d "${REQUEST_BODY}"const crypto = require('crypto');
const axios = require('axios');
const apiToken = 'your_api_token';
const apiSecret = 'your_api_secret';
const requestBody = JSON.stringify({
page: 1,
per_page: 10,
status: 'success'
});
// Signatur berechnen
const signature = crypto
.createHash('sha256')
.update(requestBody + apiSecret)
.digest('hex');
// API-Anfrage senden
axios({
method: 'post',
url: 'https://api.trxup.com/v1/transactions/history',
headers: {
'Authorization': `Bearer ${apiToken}`,
'X-Signature': signature,
'Content-Type': 'application/json'
},
data: requestBody
})
.then(response => console.log(response.data))
.catch(error => console.error(error));<?php
$apiToken = 'your_api_token';
$apiSecret = 'your_api_secret';
$requestBody = json_encode([
'page' => 1,
'per_page' => 10,
'status' => 'success'
]);
// Signatur berechnen
$signature = hash('sha256', $requestBody . $apiSecret);
// API-Anfrage senden
$ch = curl_init('https://api.trxup.com/v1/transactions/history');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $requestBody);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $apiToken,
'X-Signature: ' . $signature,
'Content-Type: application/json'
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>import hashlib
import json
import requests
api_token = 'your_api_token'
api_secret = 'your_api_secret'
request_body = json.dumps({
'page': 1,
'per_page': 10,
'status': 'success'
})
# Signatur berechnen
signature = hashlib.sha256((request_body + api_secret).encode()).hexdigest()
# API-Anfrage senden
headers = {
'Authorization': f'Bearer {api_token}',
'X-Signature': signature,
'Content-Type': 'application/json'
}
response = requests.post(
'https://api.trxup.com/v1/transactions/history',
headers=headers,
data=request_body
)
print(response.json())Beispiel-Anfrage ohne Parameter
#!/bin/bash
API_TOKEN="your_api_token"
API_SECRET="your_api_secret"
REQUEST_BODY='{}'
# Signatur berechnen
SIGNATURE=$(echo -n "${REQUEST_BODY}${API_SECRET}" | sha256sum | cut -d' ' -f1)
# API-Anfrage senden
curl -X POST "https://api.trxup.com/v1/transactions/history" \
-H "Authorization: Bearer ${API_TOKEN}" \
-H "X-Signature: ${SIGNATURE}" \
-H "Content-Type: application/json" \
-d "${REQUEST_BODY}"Antwort
Die Antwort enthält eine Seite der Transaktionen des Kontos mit Seitenaufteilungsinformationen. Jedes Element hat genau die Felder, die Transaktionsstatus prüfen für dieselbe id zurückgibt.
Eine Transaktion, die mehrere Ressourcen auf einmal kauft (zum Beispiel Energie und Bandbreite zusammen), ist ein einziges Element, und ihr amount ist der gesamte dafür berechnete Betrag. Ihr service ist "energy", und params.amounts führt jede gekaufte Ressource auf.
Antwort-Felder
| Feld | Typ | Beschreibung |
|---|---|---|
| code | integer | Antwortcode (0 = erfolgreich) |
| request_id | string | Eindeutiger Anfrage-Bezeichner |
| result | object | Antwortdaten |
| result.page | integer | Aktuelle Seite |
| result.per_page | integer | Elemente pro Seite |
| result.total | integer | Gesamtanzahl der Transaktionen, die dem Filter entsprechen |
| result.items | array | Liste der Transaktionen, die neuesten zuerst |
| result.items[].id | string | Interne Transaktions-ID |
| result.items[].created_at | string | Erstellungszeitstempel (ISO 8601 Format) |
| result.items[].status | string | Transaktionsstatus (siehe Statusliste) |
| result.items[].external_id | string|null | Externe Transaktions-ID (falls angegeben) |
| result.items[].service | string | Diensttyp: "energy", "bandwidth" oder "activate_address" |
| result.items[].params | object|null | Ursprüngliche Anfrage-Parameter |
| result.items[].amount | string | Transaktionsbetrag in TRX |
| result.items[].hash | string|null | Transaktions-Hash; nur vorhanden, wenn status gleich success ist |
Antwort-Beispiel
Antwort auf die Anfrage ohne Parameter:
{
"code": 0,
"request_id": "64daeda7-15e4-4bcf-ae60-c94867af66d8",
"result": {
"page": 1,
"per_page": 10,
"total": 3,
"items": [
{
"id": "01M52FEER5JVJ16QNSVX75700Q",
"created_at": "2026-10-01T12:02:00+00:00",
"status": "new",
"external_id": null,
"service": "energy",
"params": {
"address": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
"amounts": {
"energy": 65000
},
"duration": 1
},
"amount": "3.58"
},
{
"id": "01M52FEEQT9TGZCHG1732ARRDN",
"created_at": "2026-10-01T12:01:00+00:00",
"status": "failed",
"external_id": "hist-energy",
"service": "energy",
"params": {
"address": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
"amounts": {
"energy": 65000
},
"duration": 1
},
"amount": "3.58"
},
{
"id": "01M52FEEPEY6V1SBAMCDMA4GTG",
"created_at": "2026-10-01T12:00:00+00:00",
"status": "success",
"external_id": "hist-bundle",
"service": "energy",
"params": {
"address": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
"amounts": {
"energy": 65000,
"bandwidth": 5000
},
"duration": 1
},
"amount": "3.64",
"hash": "aa11bb22cc33dd44ee55ff6600112233445566778899aabbccddeeff00112233"
}
]
}
}Mögliche Fehler
| Fehlercode | Key | Beschreibung |
|---|---|---|
| 1 | auth | Authentifizierungsfehler (ungültiger Token oder Signatur) |
| 2 | invalid_service_or_params | Ungültiger Service oder Parameter |
| 500 | internal_server_error | Interner Serverfehler |