Skip to content
Translated page. The English version is the source of truth.

GET /apiv2/prices Deprecated

Deprecated

Endpoint ini telah kedaluwarsa (deprecated) dan akan dihapus dalam rilis mendatang. Silakan bermigrasi ke endpoint GET /apiv2/pricing baru yang menyediakan periode dinamis, pemfilteran layanan, diskon durasi, dan format respons yang terpadu.

Dapatkan harga sewa energy saat ini untuk berbagai periode waktu sepanjang hari.

Harga dapat berubah selama proses pemenuhan

Harga yang dikembalikan oleh endpoint ini dapat berubah saat pesanan sedang diproses. Penyedia energy dapat menolak permintaan delegasi, dalam hal ini Netts secara otomatis merutekan pesanan ke penyedia berikutnya yang tersedia. Netts berkomitmen tidak hanya untuk menawarkan harga yang paling kompetitif, tetapi juga untuk memastikan pasokan energy yang andal — oleh karena itu pesanan dapat dipenuhi dengan harga yang lebih tinggi daripada yang dikutip. Ini hanya berlaku untuk pesanan sebesar 300.000 unit energy ke atas.

URL Endpoint

GET https://netts.io/apiv2/prices

Header Permintaan

HeaderDiperlukanDeskripsiNilai
X-API-KEYYaKunci API Andastring
X-Real-IPYaAlamat IP dari whitelistIP address
X-FormatTidakFormat respons (default: extended JSON)now, compact, short, short1h, count

Parameter Permintaan

Tidak ada parameter yang diperlukan - mengembalikan semua informasi harga saat ini.

Contoh Permintaan

cURL

bash
curl -X GET https://netts.io/apiv2/prices \
  -H "X-API-KEY: your_api_key" \
  -H "X-Real-IP: your_whitelisted_ip"

Python

python
import requests

url = "https://netts.io/apiv2/prices"
headers = {
    "X-API-KEY": "your_api_key",
    "X-Real-IP": "your_whitelisted_ip"
}

response = requests.get(url, headers=headers)
data = response.json()

if response.status_code == 200:
    print(f"Status: {data.get('status')}")
    print(f"Current UTC time: {data.get('current_utc_time')}")
    print(f"Active period: {data.get('active_period')}")
    print(f"Host price: {data.get('host_price')} TRX")
    
    print("\nPrice periods:")
    for period in data.get('periods', []):
        is_active = period.get('is_active', False)
        active_marker = " *ACTIVE*" if is_active else ""
        print(f"\n{period.get('label')}{active_marker}:")
        print(f"  Time: {period.get('period')}")
        
        prices = period.get('prices', {})
        print(f"  < 200k energy: {prices.get('less_than_200k', {}).get('price_sun')} sun")
        print(f"  = 131k energy: {prices.get('equal_131k', {}).get('price_sun')} sun")  
        print(f"  > 200k energy: {prices.get('more_than_200k', {}).get('price_sun')} sun")
else:
    print(f"Error: {data.get('message', 'Unknown error')}")

Format Respons Compact

Baru di v2.1: Gunakan header X-Format untuk mendapatkan respons teks ringkas alih-alih struktur JSON lengkap.

Kapan Menggunakannya

  • Integrasi dengan sistem pemantauan
  • Tampilan harga sederhana
  • Pelacakan harga otomatis
  • Kebutuhan bandwidth minimal

Contoh Permintaan

bash
curl -X GET https://netts.io/apiv2/prices \
  -H "X-API-KEY: your_api_key" \
  -H "X-Real-IP: your_whitelisted_ip" \
  -H "X-Format: now"

Contoh Respons Compact

text
Daytime Hours (11:00-21:00 UTC): price=27 sun, 65k=1.755 TRX (0.52$), 131k=3.537 TRX (1.05$), 1m=27.000 TRX (7.99$)

Penjelasan Format Respons

Format compact menyediakan:

KomponenDeskripsiContoh
Label periodePeriode penetapan harga aktifDaytime Hours (11:00-21:00 UTC)
price=X sunHarga per unit energy dalam SUNprice=27 sun
65k=X.XXX TRX (X.XX$)Biaya untuk 65.000 unit energy65k=1.755 TRX (0.52$)
131k=X.XXX TRX (X.XX$)Biaya untuk 131.000 unit energy131k=3.537 TRX (1.05$)
1m=X.XXX TRX (X.XX$)Biaya untuk 1.000.000 unit energy1m=27.000 TRX (7.99$)

Rumus Perhitungan

TRX cost = (price_sun / 1,000,000) × energy_amount
USD cost = TRX_cost × current_TRX_USD_rate

Catatan: Nilai tukar TRX/USD diambil dari tabel chain_param dan di-cache selama 30 menit.

Tipe Konten

  • Format extended: application/json
  • Format compact: text/plain

Contoh Python

python
import requests

url = "https://netts.io/apiv2/prices"
headers = {
    "X-API-KEY": "your_api_key",
    "X-Real-IP": "your_whitelisted_ip",
    "X-Format": "now"  # Request compact format
}

response = requests.get(url, headers=headers)

if response.status_code == 200:
    print("Compact price data:")
    print(response.text)
    # Output: Daytime Hours (11:00-21:00 UTC): price=27 sun, 65k=1.755 TRX (0.52$), ...
else:
    print(f"Error: {response.status_code}")

Format Respons Ultra-Compact (short1h)

Baru di v2.2: Gunakan header X-Format: short1h untuk mendapatkan respons teks ultra-ringkas yang hanya berisi perhitungan energy, tanpa label periode dan harga per unit.

Kapan Menggunakannya

  • Dasbor pemantauan dengan ruang terbatas
  • Aplikasi seluler
  • Kebutuhan bandwidth minimal
  • Fokus hanya pada biaya akhir

Contoh Permintaan

bash
curl -X GET https://netts.io/apiv2/prices \
  -H "X-API-KEY: your_api_key" \
  -H "X-Real-IP: your_whitelisted_ip" \
  -H "X-Format: short1h"

Contoh Respons Ultra-Compact

text
65k=1.755 TRX (0.52$), 131k=3.537 TRX (1.05$), 1m=27.000 TRX (7.99$)

Penjelasan Format Respons

Format ultra-compact hanya menyediakan perhitungan biaya penting:

KomponenDeskripsiContoh
65k=X.XXX TRX (X.XX$)Biaya untuk 65.000 unit energy65k=1.755 TRX (0.52$)
131k=X.XXX TRX (X.XX$)Biaya untuk 131.000 unit energy131k=3.537 TRX (1.05$)
1m=X.XXX TRX (X.XX$)Biaya untuk 1.000.000 unit energy1m=27.000 TRX (7.99$)

Catatan: Format ini mengecualikan label periode dan harga per unit energy demi kekompakan maksimal.

Tipe Konten

  • Format ultra-compact: text/plain

Contoh Python

python
import requests

url = "https://netts.io/apiv2/prices"
headers = {
    "X-API-KEY": "your_api_key",
    "X-Real-IP": "your_whitelisted_ip",
    "X-Format": "short1h"  # Request ultra-compact format
}

response = requests.get(url, headers=headers)

if response.status_code == 200:
    print("Ultra-compact price data:")
    print(response.text)
    # Output: 65k=1.755 TRX (0.52$), 131k=3.537 TRX (1.05$), 1m=27.000 TRX (7.99$)
else:
    print(f"Error: {response.status_code}")

Format Respons Count (count)

Baru di v2.3: Gunakan header X-Format: count untuk mendapatkan perhitungan harga pesanan massal yang menunjukkan biaya untuk 1, 2, 3, 5, 10, dan 20 pesanan.

Kapan Menggunakannya

  • Tampilan harga pesanan massal
  • Kalkulator diskon volume
  • Alat perbandingan harga
  • Perencanaan kuantitas pesanan
  • Estimasi biaya untuk beberapa pesanan

Contoh Permintaan

bash
curl -X GET https://netts.io/apiv2/prices \
  -H "X-API-KEY: your_api_key" \
  -H "X-Real-IP: your_whitelisted_ip" \
  -H "X-Format: count"

Contoh Respons Count

text
1-1.690 TRX (0.50$), 2-3.380 TRX (1.00$), 3-5.070 TRX (1.50$), 5-8.450 TRX (2.50$), 10-16.900 TRX (5.00$), 20-33.800 TRX (10.00$)

Penjelasan Format Respons

Format count menyediakan penetapan harga yang dihitung untuk berbagai jumlah pesanan:

KomponenDeskripsiContoh
1-X.XXX TRX (X.XX$)Biaya untuk 1 pesanan (65.000 unit energy)1-1.690 TRX (0.50$)
2-X.XXX TRX (X.XX$)Biaya untuk 2 pesanan (131.000 unit energy)2-3.380 TRX (1.00$)
3-X.XXX TRX (X.XX$)Biaya untuk 3 pesanan (3 × 65.000 energy)3-5.070 TRX (1.50$)
5-X.XXX TRX (X.XX$)Biaya untuk 5 pesanan (5 × 65.000 energy)5-8.450 TRX (2.50$)
10-X.XXX TRX (X.XX$)Biaya untuk 10 pesanan (10 × 65.000 energy)10-16.900 TRX (5.00$)
20-X.XXX TRX (X.XX$)Biaya untuk 20 pesanan (20 × 65.000 energy)20-33.800 TRX (10.00$)

Rumus Perhitungan

1 order:  TRX cost = (price_sun_65k / 1,000,000) × 65,000
2 orders: TRX cost = (price_sun_131k / 1,000,000) × 131,000
3+ orders: TRX cost = (price_sun_65k / 1,000,000) × 65,000 × quantity
USD cost = TRX_cost × current_TRX_USD_rate

Catatan: Nilai tukar TRX/USD diambil dari tabel chain_param dan di-cache selama 30 menit.

Tipe Konten

  • Format count: text/plain

Contoh Python

python
import requests

url = "https://netts.io/apiv2/prices"
headers = {
    "X-API-KEY": "your_api_key",
    "X-Real-IP": "your_whitelisted_ip",
    "X-Format": "count"  # Request count format
}

response = requests.get(url, headers=headers)

if response.status_code == 200:
    print("Bulk order pricing:")
    print(response.text)
    # Output: 1-1.690 TRX (0.50$), 2-3.380 TRX (1.00$), 3-5.070 TRX (1.50$), ...
else:
    print(f"Error: {response.status_code}")

Respons

Respons Sukses (200 OK)

json
{
    "status": "success",
    "current_utc_time": "2025-09-02 06:50:39",
    "current_utc_hour": 6,
    "active_period": "05:00-07:00",
    "last_update": "2025-09-02 08:05:03",
    "host_price": 2.989,
    "periods": [
        {
            "label": "Early Morning Hours (05:00-07:00 UTC)",
            "period": "05:00-07:00",
            "is_active": true,
            "prices": {
                "less_than_200k": {
                    "price_sun": 17
                },
                "equal_131k": {
                    "price_sun": 17
                },
                "more_than_200k": {
                    "price_sun": 17
                }
            }
        },
        {
            "label": "Morning Hours (07:00-11:00 UTC)",
            "period": "07:00-11:00",
            "is_active": false,
            "prices": {
                "less_than_200k": {
                    "price_sun": 17
                },
                "equal_131k": {
                    "price_sun": 17
                },
                "more_than_200k": {
                    "price_sun": 17
                }
            }
        }
    ]
}

Bidang Respons

BidangTipeDeskripsi
statusstringSelalu "success" untuk permintaan yang berhasil
current_utc_timestringWaktu server saat ini dalam UTC
current_utc_hourintegerJam UTC saat ini (0-23)
active_periodstringPeriode penetapan harga yang sedang aktif
last_updatestringWaktu terakhir harga diperbarui
host_pricenumberHarga host saat ini dalam TRX
periodsarrayArray dari semua periode penetapan harga
periods[].labelstringNama periode yang mudah dibaca
periods[].periodstringRentang waktu (HH:MM-HH:MM)
periods[].is_activebooleanApakah periode ini sedang aktif
periods[].prices.less_than_200k.price_sunintegerHarga dalam SUN untuk energy < 200.000 unit
periods[].prices.equal_131k.price_sunintegerHarga dalam SUN untuk tepat 131.000 unit
periods[].prices.more_than_200k.price_sunintegerHarga dalam SUN untuk energy > 200.000 unit

Kategori Jumlah Energy

KategoriDeskripsiRentang Energy
less_than_200kPesanan kecil< 200.000 unit energy
equal_131kPesanan standarTepat 131.000 unit energy
more_than_200kPesanan besar> 200.000 unit energy

Periode Waktu

API mengembalikan harga untuk 5 periode waktu yang berbeda:

PeriodeRentang Waktu (UTC)Deskripsi
Early Morning05:00-07:00Periode permintaan lebih rendah
Morning07:00-11:00Jam kerja dimulai
Daytime11:00-21:00Jam kerja sibuk (peak)
Evening21:00-23:00Aktivitas malam
Night23:00-05:00Periode permintaan terendah

Batas Laju (Rate Limits)

Batas laju berikut berlaku untuk endpoint ini (per alamat IP):

PeriodeBatasDeskripsi
1 menit1 permintaanMaksimum 1 permintaan per menit
1 jam60 permintaanMaksimum 60 permintaan per jam

Header Batas Laju

http
RateLimit-Limit: 1
RateLimit-Remaining: 0
RateLimit-Reset: 21
X-RateLimit-Limit-Minute: 1
X-RateLimit-Remaining-Minute: 0
X-RateLimit-Limit-Hour: 60
X-RateLimit-Remaining-Hour: 59
Retry-After: 21

Batas Laju Terlampaui (429)

json
{
    "message": "API rate limit exceeded"
}

Respons Kesalahan

Kesalahan Autentikasi (401)

json
{
    "status": "error",
    "code": 401,
    "message": "Invalid API key or IP not in whitelist"
}

Kesalahan Server Internal (500)

json
{
    "status": "error",
    "message": "Internal server error"
}

Catatan

  • Tidak ada badan permintaan yang diperlukan - ini adalah permintaan GET
  • Semua harga dalam SUN (1 TRX = 1.000.000 SUN)
  • Harga bervariasi berdasarkan jumlah energy dan waktu (UTC)
  • Active period: Berubah sepanjang hari berdasarkan permintaan
  • Rate limiting: Pembatasan ketat karena operasi intensif basis data
  • Price updates: Harga diperbarui dari basis data secara berkala
  • Time zones: Semua waktu dalam UTC