Appearance
GET /apiv2/order_check
Ambil informasi mendetail tentang pesanan energy 1 jam tertentu, termasuk rincian biaya, detail aktivasi, dan informasi markup subuser.
URL Endpoint
GET https://netts.io/apiv2/order_checkHeader Permintaan
| Header | Diperlukan | Deskripsi |
|---|---|---|
| X-API-KEY | Ya | Kunci API Anda dari dasbor Netts |
Parameter Kueri
| Parameter | Tipe | Diperlukan | Deskripsi |
|---|---|---|---|
| order_id | string | Ya | ID Pesanan dalam format 1H{hash} (contoh, 1Ha1b2c3d4e5) |
Contoh Permintaan
cURL
bash
curl -X GET "https://netts.io/apiv2/order_check?order_id=1Ha1b2c3d4e5" \
-H "X-API-KEY: your_api_key"Python
python
import requests
url = "https://netts.io/apiv2/order_check"
headers = {
"X-API-KEY": "your_api_key"
}
params = {
"order_id": "1Ha1b2c3d4e5"
}
response = requests.get(url, headers=headers, params=params)
data = response.json()
if data.get("success"):
order = data.get("order", {})
print(f"Order ID: {order.get('id')}")
print(f"Total Cost: {order.get('cost')} TRX")
print(f"Energy: {order.get('energy')}")
print(f"Rate: {order.get('rate_sun')} sun/energy")
print(f"Target Address: {order.get('target_address')}")
# Check if activation was performed
activation = data.get("activation")
if activation:
print(f"Activation Cost: {activation.get('cost')} TRX")
print(f"Activation Hash: {activation.get('tx_hash')}")
else:
print(f"Error: {data.get('msg')}")JavaScript (Node.js)
javascript
const axios = require('axios');
const url = 'https://netts.io/apiv2/order_check';
const headers = {
'X-API-KEY': 'your_api_key'
};
const params = {
order_id: '1Ha1b2c3d4e5'
};
axios.get(url, { headers, params })
.then(response => {
const data = response.data;
if (data.success) {
console.log('Order:', data.order);
console.log('Activation:', data.activation);
} else {
console.log('Error:', data.msg);
}
})
.catch(error => console.error('Request failed:', error));Respons
Respons Sukses (200 OK)
json
{
"success": true,
"code": 10000,
"order": {
"id": "1Ha1b2c3d4e5",
"cost": 2.535,
"target_address": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE",
"energy": 65000,
"duration": "1 hour",
"tx_hashes": ["a1b2c3d4e5f6789012345678901234567890abcdef1234567890abcdef12345678"],
"timestamp": "2025-12-03T15:21:34.182127",
"rate_sun": 39.0,
"comments": null
},
"activation": null,
"subuser_payout": null
}Respons Sukses dengan Aktivasi (200 OK)
Ketika alamat target memerlukan aktivasi:
json
{
"success": true,
"code": 10000,
"order": {
"id": "1Ha1b2c3d4e5",
"cost": 3.635,
"target_address": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE",
"energy": 65000,
"duration": "1 hour",
"tx_hashes": ["a1b2c3d4e5f6789012345678901234567890abcdef1234567890abcdef12345678"],
"timestamp": "2025-12-03T15:21:34.182127",
"rate_sun": 39.0,
"comments": "Includes activation: 1.1 TRX"
},
"activation": {
"cost": 1.1,
"tx_hash": "b2c3d4e5f6789012345678901234567890abcdef1234567890abcdef123456789a"
},
"subuser_payout": null
}Respons Sukses dengan Pembayaran Subuser (200 OK)
Untuk pengguna induk yang melihat pesanan subuser:
json
{
"success": true,
"code": 10000,
"order": {
"id": "1Ha1b2c3d4e5",
"cost": 3.93,
"target_address": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE",
"energy": 65000,
"duration": "1 hour",
"tx_hashes": ["c3d4e5f6789012345678901234567890abcdef1234567890abcdef123456789abc"],
"timestamp": "2025-12-03T16:55:16.525118",
"rate_sun": 60.5,
"comments": "Includes activation: 1.1 TRX"
},
"activation": {
"cost": 1.1,
"tx_hash": "b2c3d4e5f6789012345678901234567890abcdef1234567890abcdef123456789a"
},
"subuser_payout": {
"parent_id": 12,
"gross_cost": 3.93,
"energy_markup": 0.195,
"activation_markup": 0.1,
"total_markup": 0.295,
"net_cost": 3.635,
"subuser_rate_sun": 43.5,
"parent_rate_sun": 39.0
}
}Bidang Respons
Respons Utama
| Bidang | Tipe | Deskripsi |
|---|---|---|
| success | boolean | true jika permintaan berhasil |
| code | integer | 10000 untuk permintaan yang berhasil |
| order | object | Detail pesanan |
| activation | object | null | Detail aktivasi (jika alamat diaktivasi) |
| subuser_payout | object | null | Detail markup subuser (hanya untuk pengguna induk) |
Objek Order
| Bidang | Tipe | Deskripsi |
|---|---|---|
| id | string | ID Pesanan dalam format 1H{hash} |
| cost | number | Total biaya yang dibayar oleh pengguna (TRX) |
| target_address | string | Alamat yang menerima energy |
| energy | integer | Jumlah Energy yang didelegasikan |
| duration | string | Durasi delegasi (selalu "1 hour") |
| tx_hashes | array | Daftar hash transaksi delegasi |
| timestamp | string | Waktu pembuatan pesanan (format ISO 8601) |
| rate_sun | number | Tarif energy dalam sun per unit energy |
| comments | string | null | Informasi tambahan (contoh, pemberitahuan aktivasi) |
Objek Activation
| Bidang | Tipe | Deskripsi |
|---|---|---|
| cost | number | Biaya aktivasi (TRX) |
| tx_hash | string | Hash transaksi aktivasi |
Objek Subuser Payout
Khusus Pengguna Induk
Bidang subuser_payout hanya disertakan untuk pengguna induk yang melihat pesanan subuser mereka. Subuser (mock users) tidak akan melihat bidang ini.
| Bidang | Tipe | Deskripsi |
|---|---|---|
| parent_id | integer | ID pengguna induk |
| gross_cost | number | Total biaya yang dibayar oleh subuser (TRX) |
| energy_markup | number | Jumlah markup energy (TRX) |
| activation_markup | number | Jumlah markup aktivasi (TRX) |
| total_markup | number | Total markup (energy + aktivasi) |
| net_cost | number | Biaya dikurangi markup (biaya sebenarnya untuk induk) |
| subuser_rate_sun | number | Tarif yang dibayar oleh subuser (sun/energy) |
| parent_rate_sun | number | Tarif sebenarnya tanpa markup (sun/energy) |
Respons Kesalahan
ID Pesanan Hilang (400)
json
{
"success": false,
"code": -2,
"msg": "order_id parameter required"
}Kesalahan Autentikasi (401)
json
{
"success": false,
"code": -1,
"msg": "API key not provided"
}json
{
"success": false,
"code": -1,
"msg": "Invalid API key or IP not in whitelist"
}Akses Ditolak (403)
Ketika mencoba melihat pesanan milik pengguna lain:
json
{
"success": false,
"code": -4,
"msg": "Order does not belong to this user"
}Pesanan Tidak Ditemukan (404)
json
{
"success": false,
"code": -3,
"msg": "Order not found"
}Kesalahan Server Internal (500)
json
{
"success": false,
"msg": "Internal server error"
}Referensi Kode Kesalahan
| Kode | Deskripsi | Status HTTP |
|---|---|---|
10000 | Berhasil | 200 |
-1 | Autentikasi gagal | 401 |
-2 | Parameter order_id hilang | 400 |
-3 | Pesanan tidak ditemukan | 404 |
-4 | Akses ditolak (bukan pesanan Anda) | 403 |
Batas Laju
Batas laju berikut berlaku untuk endpoint ini (per alamat IP):
| Periode | Batas | Deskripsi |
|---|---|---|
| 1 detik | 50 permintaan | Maksimum 50 permintaan per detik |
Header Batas Laju
http
RateLimit-Limit: 50
RateLimit-Remaining: 49
RateLimit-Reset: 1
X-RateLimit-Limit-Second: 50
X-RateLimit-Remaining-Second: 49Batas Laju Terlampaui (429)
json
{
"message": "API rate limit exceeded"
}Kontrol Akses
Kepemilikan Pesanan
Pengguna hanya dapat melihat pesanan mereka sendiri. API memeriksa kepemilikan berdasarkan:
- Pengguna Google: Mencocokkan
google_user_iddari pesanan dengan ID Google pengguna - Pengguna Telegram: Mencocokkan
tg_user_iddari pesanan dengan ID Telegram pengguna
Akses Induk-Subuser
Pengguna induk dapat melihat pesanan yang dibuat oleh subuser mereka. Dalam kasus ini:
- Bidang
subuser_payoutdisertakan dalam respons - Pengguna induk dapat melihat rincian markup dan biaya sebenarnya yang mereka tanggung
Akses Subuser (Mock)
Subuser yang melihat pesanan mereka sendiri akan melihat:
- Biaya sebenarnya (termasuk markup) di
order.cost - Tarif mereka (termasuk markup) di
order.rate_sun - Bidang
subuser_payouttidak disertakan
Kasus Penggunaan
1. Verifikasi Penyelesaian Pesanan
Setelah membuat pesanan dengan /apiv2/order1h, gunakan endpoint ini untuk memverifikasi:
- Pesanan berhasil diproses
- Energy berhasil didelegasikan ke alamat yang benar
- Jumlah biaya yang dikenakan sudah benar
2. Dapatkan Hash Transaksi
Ambil hash transaksi delegasi untuk verifikasi blockchain:
python
response = requests.get(
"https://netts.io/apiv2/order_check",
headers={"X-API-KEY": "your_api_key"},
params={"order_id": "1Ha1b2c3d4e5"}
)
data = response.json()
if data["success"]:
tx_hashes = data["order"]["tx_hashes"]
if tx_hashes:
print(f"Verify on Tronscan: https://tronscan.org/#/transaction/{tx_hashes[0]}")3. Lacak Biaya Subuser (Pengguna Induk)
Pengguna induk dapat memantau pesanan subuser dan pendapatan markup mereka:
python
response = requests.get(
"https://netts.io/apiv2/order_check",
headers={"X-API-KEY": "parent_api_key"},
params={"order_id": "1Ha1b2c3d4e5"}
)
data = response.json()
if data["success"] and data.get("subuser_payout"):
payout = data["subuser_payout"]
print(f"Subuser paid: {payout['gross_cost']} TRX")
print(f"Your markup: {payout['total_markup']} TRX")
print(f"Your actual cost: {payout['net_cost']} TRX")Catatan
- Pesanan dapat dikueri segera setelah pembuatan
- Hash transaksi dapat kosong jika penyedia tidak mengembalikannya
- Bidang
rate_sunmenunjukkan tarif efektif per unit energy dalam sun - Biaya aktivasi disertakan dalam total
costjika berlaku - Bidang
commentsmemberikan konteks tambahan (contoh, pemberitahuan aktivasi) - Endpoint ini hanya mengembalikan pesanan 1 jam yang dibuat melalui
/apiv2/order1h