API server
Baca statistik tiket, penjualan, ulasan, dan giveaway servermu dari alatmu sendiri.
Yang ditampilkan API
API hanya-baca dan dibatasi untuk satu server. Ditujukan untuk halaman status, spreadsheet, dan alat internal yang ingin angka yang sama dengan dashboard tanpa login. API tidak bisa mengubah pengaturan, menutup tiket, atau membuat invoice.
Setiap endpoint berada di bawah https://noxyrbot.com/api/v1 dan mengembalikan JSON. Key menentukan servernya, jadi tidak ada endpoint yang menerima ID server.
- GET /api/v1/
- Scope mana yang aktif untuk key ini dan endpoint apa saja yang bisa dijangkau.
- GET /api/v1/server
- Nama, ikon, jumlah member, jumlah yang online, boost, dan tanggal dibuat.
- GET /api/v1/tickets
- Total, jumlah terbuka dan tertutup, volume 7 dan 30 hari, dan rating rata-rata.
- GET /api/v1/activity?days=30
- Pesan harian, bergabung dan keluar, hingga 90 hari.
- GET /api/v1/invoices
- Jumlah invoice, pendapatan per mata uang, dan status pembayaran. Dengan scope invoice links, ?limit= menambahkan invoice terbaru beserta URL gambar yang bisa diunduh.
- GET /api/v1/reviews
- Rating rata-rata, rincian bintang, dan lima ulasan publik terbaru.
- GET /api/v1/giveaways
- Jumlah giveaway yang aktif dan yang sudah berakhir, total peserta, dan giveaway yang sedang berjalan.
Membuat key
Setiap server hanya punya satu key. Key dibuat di halaman API server dan hanya ditampilkan sekali - yang disimpan hanya hash-nya, jadi key yang hilang harus dibuat ulang, dan itu akan membatalkan key lama.
- Buka server di dashboard dan pergi ke API.
- Tekan Generate dan salin key yang dimulai dengan nxr_. Key tidak akan ditampilkan lagi.
- Matikan scope yang tidak kamu butuhkan. Invoice links nonaktif secara default karena membuka gambar invoice pelanggan.
- Opsional: tekan Set up channel agar bot membuat kategori dan saluran API di server, lengkap dengan daftar endpoint.
Halaman ini juga menampilkan kapan key terakhir dipakai dan berapa banyak permintaan yang sudah dibuat, yang merupakan cara tercepat untuk mengenali key yang bocor. Nonaktifkan dengan sakelar, atau cabut untuk menghapusnya sepenuhnya.
Scope
Scope membatasi endpoint, bukan field. Permintaan ke endpoint yang scope-nya nonaktif akan mendapat 403 dengan pesan yang menyebut scope tersebut.
- overview
- /server
- tickets
- /tickets
- activity
- /activity
- invoices
- /invoices
- invoiceLinks
- Menambahkan daftar invoice terbaru dengan tautan gambar. Nonaktif secara default.
- reviews
- /reviews
- giveaways
- /giveaways
Autentikasi dan contoh permintaan
Kirim key sebagai Bearer token di header Authorization. Panggilan diizinkan dari browser (CORS terbuka), tetapi key di kode frontend adalah key publik, jadi panggil API dari server yang kamu kendalikan.
- curl -H "Authorization: Bearer nxr_your_key" https://noxyrbot.com/api/v1/tickets
- Respons: {"total":128,"open":4,"closed":124,"opened7d":9,"opened30d":41,"closed7d":8,"averageRating":4.6,"ratingsCount":37}
Batas permintaan
Setiap key boleh membuat 60 permintaan per menit. Batasnya dikembalikan dalam header RateLimit standar di setiap respons, dan jika dilampaui akan mengembalikan HTTP 429 dengan error "rate_limited". Jangan melakukan polling lebih cepat dari perubahan datanya - total tiket dan penjualan cukup dibaca sekali per menit.
Error
Setiap error berupa JSON dengan kode error yang bisa dibaca mesin dan pesan yang bisa dibaca manusia.
- 401 tidak diotorisasi
- Header Authorization tidak ada, bukan Bearer token, atau key-nya tidak ada.
- 403 key_disabled
- Key dinonaktifkan di dashboard.
- 403 scope_disabled
- Scope itu nonaktif untuk key ini.
- 404 not_found
- Endpoint tidak dikenal. Pesan menampilkan daftar endpoint yang valid.
- 404 guild_unavailable
- Bot sudah tidak ada di server.
- 429 rate_limited
- Lebih dari 60 permintaan dalam satu menit.
- 500 internal_error
- Terjadi kegagalan di sisi Noxyr. Coba lagi nanti.