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

Time Status API

Host Mode'daki adresler için durum bilgilerini alın — hesabınızdaki tüm adresler veya tek bir adres.

İki uç nokta bulunmaktadır:

  1. POST /apiv2/time/status — tüm adreslerinizin durumu (isteğe bağlı sayfalama ve hesap düzeyinde özet ile).
  2. GET /apiv2/time/status/{address} — belirli tek bir adresin durumu.

POST /apiv2/time/status

Endpoint URL'si

POST https://netts.io/apiv2/time/status

Kimlik Doğrulama

API anahtarınızı istek gövdesinde (api_key) veya X-API-KEY üstbilgisinde sağlayın. İstek IP'si, API anahtarınız için yapılandırılmış beyaz listede olmalıdır.

İstek Gövdesi

json
{
    "api_key": "your_api_key",
    "page": 1,
    "page_size": 50
}
ParametreTürGerekliAçıklama
api_keystringEvetAPI anahtarı (veya X-API-KEY üstbilgisi).
pageintegerHayırSayfa numarası, ≥ 1. page_size gerektirir.
page_sizeintegerHayırSayfa başına adres sayısı, 1–100. page gerektirir.

Sayfalama: Hem page hem de page_size sağlanırsa, sonuçlar sayfalanır ve bir pagination nesnesi dahil edilir. Bunlar olmadan, oluşturulma zamanına göre sıralanmış olarak (en yeniden başlayarak) tüm adresler döndürülür (en fazla 1000).

Örnek İstekler

cURL (tüm adresler):

bash
curl -X POST https://netts.io/apiv2/time/status \
  -H "Content-Type: application/json" \
  -d '{ "api_key": "YOUR_API_KEY_HERE" }'

cURL (sayfalanmış):

bash
curl -X POST https://netts.io/apiv2/time/status \
  -H "Content-Type: application/json" \
  -d '{ "api_key": "YOUR_API_KEY_HERE", "page": 1, "page_size": 50 }'

Python:

python
import requests

resp = requests.post(
    "https://netts.io/apiv2/time/status",
    json={"api_key": "YOUR_API_KEY_HERE"},  # add "page"/"page_size" to paginate
    timeout=30,
)
result = resp.json()

if result["code"] == 0:
    for a in result["data"]["addresses"]:
        # cycles_remaining is None in infinity mode — no limit to count down
        left = "unlimited" if a["cycles_remaining"] is None else f"{a['cycles_remaining']} left"
        print(a["address"], a["mode"], a["status"], left,
              f"spent {a['total_spent']} TRX")
else:
    print("Error:", result["msg"])

Node.js:

javascript
const axios = require('axios');

axios.post('https://netts.io/apiv2/time/status', { api_key: 'YOUR_API_KEY_HERE' })
    .then(({ data: result }) => {
        if (result.code === 0) {
            result.data.addresses.forEach(a => {
                // cycles_remaining is null in infinity mode — no limit to count down
                const left = a.cycles_remaining === null ? 'unlimited' : `${a.cycles_remaining} left`;
                console.log(a.address, a.mode, a.status, left, `spent ${a.total_spent} TRX`);
            });
        } else {
            console.error('Error:', result.msg);
        }
    })
    .catch(err => console.error('Request failed:', err.response?.data || err.message));

Yanıt

json
{
    "code": 0,
    "msg": "Status retrieved successfully",
    "data": {
        "summary": {
            "total_addresses": 3,
            "active_addresses": 2,
            "infinity_mode_count": 1,
            "total_cycles_ordered": 25,
            "total_open_orders": 3
        },
        "order_statistics": {
            "total_orders": 12,
            "open_orders": 3,
            "closed_orders": 9,
            "total_cycles_in_open_orders": 25,
            "total_delegations": 340,
            "total_amount_spent": 1502.4471
        },
        "addresses": [
            {
                "address": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE",
                "status": "active",
                "mode": "normal",
                "cycles_ordered": 25,
                "cycle_set": 25,
                "cycles_completed": 10,
                "cycles_remaining": 15,
                "cycles_total_lifetime": 214,
                "current_cycle_no": 3,
                "open_orders": 1,
                "total_spent": 962.1184,
                "bandwidth_delegated": true,
                "created_at": "2026-07-08T12:00:00.000000",
                "updated_at": "2026-07-09T10:00:00.000000"
            },
            {
                "address": "TYn8Y3khEsLJW2ChVWFMSMeRDow6KcbMTF",
                "status": "active",
                "mode": "infinity",
                "cycles_ordered": null,
                "cycle_set": 0,
                "cycles_completed": 83,
                "cycles_remaining": null,
                "cycles_total_lifetime": 115,
                "current_cycle_no": 5,
                "open_orders": 1,
                "total_spent": 519.1234,
                "bandwidth_delegated": true,
                "created_at": "2026-07-08T08:00:00.000000",
                "updated_at": "2026-07-09T09:30:00.000000"
            }
        ],
        "timestamp": "2026-07-09T12:34:50.123456"
    }
}

Sayfalama ile birlikte, data ayrıca şunları içerir:

json
"pagination": {
    "page": 1,
    "page_size": 50,
    "total_items": 150,
    "total_pages": 3,
    "has_next": true,
    "has_prev": false
}

summary alanları

AlanAçıklama
total_addressesHesabınız altındaki adres sayısı
active_addressesŞu anda aktif olan adresler
infinity_mode_countInfinity modunda çalışan aktif adresler
total_cycles_orderedAçık siparişlerdeki sipariş edilen döngülerin toplamı (infinity siparişleri hariç)
total_open_ordersTüm adreslerdeki açık sipariş sayısı

order_statistics alanları

AlanAçıklama
total_ordersŞimdiye kadar oluşturulmuş tüm siparişler
open_ordersŞu anda açık olan siparişler
closed_ordersKapatılmış siparişler
total_cycles_in_open_ordersAçık siparişlerdeki döngüler (infinity hariç)
total_delegationsTüm adreslerinizde fiilen gerçekleştirilen yetkilendirmeler
total_amount_spentTRX cinsinden fiilen tahsil edilen — bakiyenizden gerçekten düşülen toplam tutar

Adres nesnesi alanları

AlanTürAçıklama
addressstringTRON adresi
statusstring"active" veya "inactive"
modestring"normal", "infinity", veya "off" (etkin olmadığında)
cycles_orderedinteger | nullAçık siparişlerdeki sipariş edilen döngüler. Infinity modunda null
cycle_setintegerAdres için saklanan cycle_set değeri
cycles_completedintegerAdres en son başlatıldığından beri kullanılan döngüler. Modu durdurduğunuzda veya sipariş edilen döngüler tükendiğinde sıfırlanır
cycles_remaininginteger | nullcycles_ordered − cycles_completed. Infinity modunda null
cycles_total_lifetimeintegerBu adres için tüm geçmişi boyunca yapılan tüm yetkilendirmeler. Asla sıfırlanmaz
current_cycle_nointeger | nullAdres en son başlatıldığından bu yana geçerli yetkilendirmenin sırası. Etkin bir yetkilendirme olmadığında null
open_ordersintegerAdres için açık sipariş sayısı
total_spentnumberBu adres için TRX cinsinden fiilen tahsil edilen tutar
bandwidth_delegatedbooleanBandwidth'in şu anda yetkilendirilip yetkilendirilmediği. Bandwidth ücretsizdir ve döngü fiyatına dahildir
created_atstringEklendiği zamanın ISO zaman damgası
updated_atstringSon güncellemenin ISO zaman damgası

Infinity modu. cycles_ordered ve cycles_remaining değerleri 0 değil, null şeklindedir — geri sayılacak bir sınır yoktur. null değerini "sınırsız" olarak kabul edin ve "hiç döngü kalmadı" şeklinde yorumlamayın. cycles_completed yine de gerçek bir sayı bildirir.

Üç döngü sayacı, üç farklı anlam. cycles_completed yalnızca adres en son başlatıldığından beri sayar, cycles_total_lifetime tüm geçmişini sayar ve current_cycle_no ise geçerli yetkilendirmenin sırasıdır. Farklı olmaları beklenir — tek bir adres için aynı anda 83, 115 ve 5 görebilirsiniz.

Hatalar

Tüm hatalar code = -1 kullanır:

msgNeden
API key required in body or X-API-KEY headerAPI anahtarı sağlanmadı
Invalid API key or IP not in whitelistKimlik doğrulama başarısız oldu
Page number must be >= 1page 1'den küçük
Page size must be >= 1page_size 1'den küçük
Page size must be <= 100page_size 100'den büyük
Database error getting statusSunucu tarafında geçici hata — tekrar deneyin
Internal server errorBeklenmeyen hata — tekrar deneyin veya destek ile iletişime geçin

GET /apiv2/time/status/

Tek bir adres için durum.

Endpoint URL'si

GET https://netts.io/apiv2/time/status/{address}

Kimlik Doğrulama

API anahtarınızı X-API-KEY üstbilgisinde gönderin. İstek IP'si beyaz listede olmalıdır.

Örnek İstek

bash
curl -X GET "https://netts.io/apiv2/time/status/TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE" \
  -H "X-API-KEY: YOUR_API_KEY_HERE"
python
import requests

address = "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE"
resp = requests.get(
    f"https://netts.io/apiv2/time/status/{address}",
    headers={"X-API-KEY": "YOUR_API_KEY_HERE"},
    timeout=30,
)
print(resp.json())

Yanıt

json
{
    "code": 0,
    "msg": "Address status retrieved successfully",
    "data": {
        "address_info": {
            "address": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE",
            "status": "active",
            "mode": "normal",
            "cycles_ordered": 25,
            "cycle_set": 25,
            "cycles_completed": 10,
            "cycles_remaining": 15,
            "cycles_total_lifetime": 214,
            "current_cycle_no": 3,
            "open_orders": 1,
            "total_spent": 962.1184,
            "bandwidth_delegated": true,
            "created_at": "2026-07-08T12:00:00.000000",
            "updated_at": "2026-07-09T10:00:00.000000"
        },
        "timestamp": "2026-07-09T12:34:50.123456"
    }
}

address_info, yukarıdaki adres nesnesi ile aynı alanları kullanır.

Hatalar

code = -1, örneğin:

msgNeden
API key required in X-API-KEY headerEksik üstbilgi
Invalid API key or IP not in whitelistKimlik doğrulama başarısız oldu
Address not found or doesn't belong to userBu hesap için bilinmeyen adres
Database error getting address statusSunucu tarafında geçici hata — tekrar deneyin
Internal server errorBeklenmeyen hata — tekrar deneyin veya destek ile iletişime geçin

HTTP durum kodları

Her iki uç nokta da hatalarını HTTP 200 ve negatif bir code ile döndürür — HTTP durumunu değil, code değerini kontrol edin. Hata gövdeleri her zaman "data": null içerir.

Bazı hatalar istek uç noktaya ulaşmadan önce döndürülür. Bunlar 200 dışı bir durum ve farklı bir gövde yapısı kullanır:

HTTPGövdeNeden
402{"detail": {"code": 1004, "msg": "Insufficient funds. Minimum balance is 4 TRX. Please top up your account."}}Hesap bakiyesi çok düşük
403{"detail": {"code": 1005, "msg": "API key is blocked. Contact support."}}API anahtarı engellendi — destek ile iletişime geçin
422{"detail": [ … ]}Yalnızca POST — istek gövdesi doğrulamadan geçemedi: bir alan yanlış türe sahip veya page/page_size parametreleri api_key olmadan gönderildi. Bu yanıtta code alanı bulunmadığına dikkat edin

İlgili Uç Noktalar

Notlar

  • Durum uç noktaları salt okunurdur.
  • Yalnızca hesabınıza ait adresler döndürülür.
  • Zaman damgaları ISO 8601 dizeleridir.