Appearance
POST /apiv2/reports/statement
Pesan file mutasi rekening — setiap operasi dari satu token selama periode tertentu, dalam format CSV atau PDF. File dibuat di latar belakang: permintaan akan langsung mengembalikan nomor pesanan, dan file dapat diambil setelah siap.
Untuk melihat data yang sama secara cepat tanpa menunggu, gunakan pratinjau mutasi sebagai gantinya — opsi ini merespons seketika tetapi membatasi jumlah operasi yang dikembalikan.
URL Dasar Endpoint
https://netts.io/apiv2/reportsHeader Permintaan
| Header | Wajib | Deskripsi |
|---|---|---|
X-API-KEY | ya | Kunci API dari dasbor |
X-Real-IP | ya | Alamat dari daftar putih kunci |
X-Idempotency-Key | tidak | Kunci Anda sendiri, 12–128 karakter berupa A-Z a-z 0-9 . _ : - |
Pesan file
bash
curl -s -X POST 'https://netts.io/apiv2/reports/statement' \
-H 'X-API-KEY: your-api-key' \
-H 'X-Real-IP: 203.0.113.10' \
-H 'Content-Type: application/json' \
-d '{
"client_request_id": "stmt-2026-09-usdt",
"address": "TXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"token_id": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
"date_from": "2026-09-01",
"date_to": "2026-09-30",
"format": "csv"
}'json
{
"status": "success",
"code": 0,
"msg": "created",
"data": {
"order_no": "REPxxxxxxxxxxxx",
"client_request_id": "stmt-2026-09-usdt",
"type": "statement",
"status": "queued",
"quota_bucket": "free",
"progress_pct": 0,
"address": "TXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"token_id": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t",
"date_from": "2026-09-01",
"date_to": "2026-09-30",
"format": "csv",
"created_at": "2026-09-06 17:01:51.868542+00:00",
"finished_at": null,
"expires_at": null,
"artifact_sha256": null,
"artifact_size": null,
"download_url": null
}
}| Bidang | Wajib | Catatan |
|---|---|---|
client_request_id | ya | Pengidentifikasi Anda. Unik per akun |
address | ya | TRON base58, 34 karakter |
token_id | tidak | TRX secara default; kontrak TRC20 atau id TRC10 |
date_from, date_to | ya | UTC, inklusif. Maksimal 366 hari |
format | tidak | csv secara default. PDF dibatasi hingga 5000 operasi |
Kemudian tunggu hasilnya
bash
curl -s 'https://netts.io/apiv2/reports/REPxxxxxxxxxxxx' \
-H 'X-API-KEY: your-api-key' -H 'X-Real-IP: 203.0.113.10'Bidang status akan berganti melalui queued → running → waiting_cypherarc → done. Dua status lainnya bersifat terminal: error, dengan alasan di error_code dan error_message, serta expired setelah file usang. Mutasi singkat biasanya siap dalam waktu kurang dari satu menit; anggap status apa pun selain done sebagai "terus menunggu".
Setelah statusnya done, download_url akan terisi — sebagai path, bukan URL lengkap — dan file dapat diambil:
bash
curl -s -OJ 'https://netts.io/apiv2/reports/REPxxxxxxxxxxxx/download' \
-H 'X-API-KEY: your-api-key' -H 'X-Real-IP: 203.0.113.10'File dikirim dalam format gzip. Pesanan CSV diunduh sebagai application/gzip dengan nama file .csv.gz di Content-Disposition; dekompresi sebelum diuraikan. Respons status memuat artifact_sha256 dan artifact_size untuk file terkompresi tepat seperti yang dikirimkan, sehingga Anda dapat memverifikasi unduhan tanpa permintaan kedua.
Daripada melakukan polling, daftarkan webhook dan dapatkan pemberitahuan saat file siap.
Mengulangi permintaan aman dilakukan
Kirim client_request_id yang sama, atau X-Idempotency-Key yang sama, dan Anda akan mendapatkan pesanan yang ada kembali alih-alih pesanan kedua dibuat. Respons memuat "msg": "existing" sehingga Anda dapat membedakan keduanya.
Menggunakan kembali pengidentifikasi dengan body yang berbeda adalah sebuah kesalahan, bukan pesanan baru: hal itu menghasilkan 409. Pengidentifikasi bersifat unik hanya dalam akun Anda — pengidentifikasi akun lain tidak akan pernah bertabrakan dengan milik Anda.
File bertahan selama 30 hari
Setelah itu pesanan menjadi expired dan pengunduhan menghasilkan 410. Pesan kembali jika Anda membutuhkannya nanti.
Batas Laju
10 permintaan per detik per endpoint, digunakan bersama di semua klien. Melebihi batas ini menghasilkan 429 dengan Retry-After: 1 dan pesan Endpoint rate limit exceeded (10 req/s shared).
Itulah satu-satunya batasan. Tidak ada kuota bulanan, tidak ada batasan jumlah file yang dapat Anda pesan, dan tidak ada batasan berapa banyak yang dibuat sekaligus — akun dengan saldo positif dapat memesan sebanyak yang diizinkan oleh batas laju. Pesanan yang melebihi kapasitas antrean pembuatan akan ditahan dan dicoba kembali secara otomatis alih-alih ditolak, sehingga lonjakan permintaan hanya mengorbankan latensi, bukan kegagalan.
Respons Error
| HTTP | Arti |
|---|---|
400 | alamat memiliki 34 karakter tetapi gagal dalam checksum base58 |
401 | kunci hilang atau tidak valid, atau IP sumber tidak ada dalam daftar putih |
402 | saldo akun di bawah batas minimum 4 TRX |
403 | kunci API diblokir; hubungi dukungan |
409 | pengidentifikasi yang sama digunakan dengan body berbeda — body berupa IDEMPOTENCY_CONFLICT |
410 | file telah kedaluwarsa |
422 | bidang tidak ada atau salah format, atau periode melebihi 366 hari |
429 | batas laju terlampaui — coba lagi setelah Retry-After |
Terkait
- Saldo — membaca saldo dan pratinjau mutasi instan
- Webhook laporan — pemberitahuan saat file siap