API meninggalkan beta pada tanggal dua Juli. Ia tiba di dalam revisi platform 5.4 pada bulan Juni, berjalan sebagai beta undangan sejak Februari dengan lebih dari empat ratus akun yang aktif, dan tidak berubah bentuk sejak April. Berversi, terdokumentasi, dan dicakup oleh komitmen ketersediaan yang sama seperti panel.
Menyebutnya terlambat adalah pernyataan yang terlalu lunak. Alasannya tidak misterius: antarmuka yang duduk di atas sistem provisioning yang membutuhkan tiga setengah menit untuk membangun server akan menjadi antarmuka untuk memilih pemintal. Kami menulis ulang antrean terlebih dahulu, pada tahun 2025, dan pengurutannya disengaja, bukan kebetulan.
Apa yang dilakukannya
| Grup | Apa yang dapat Anda lakukan | Catatan |
|---|---|---|
| Instans | Buat, ubah ukuran, bangun ulang, snapshot, pulihkan, hancurkan | Ubah ukuran naik adalah langsung, ubah ukuran turun membutuhkan satu reboot |
| Citra | Daftar katalog OS, daftarkan ISO kustom dengan URL | Instal iso kustom masih manual dan masih lambat |
| Jaringan | Tambahkan IPv4, edit DNS terbalik, minta IPv6 /48 | Didelegasikan, tidak pernah diproksi |
| Pemfilteran | Baca peristiwa serangan, dorong aturan layer-7 pada DDoS Pro | Pemfilteran dasar tidak memiliki apa pun untuk dikonfigurasi |
| Penagihan | Baca saldo, daftar faktur, buka faktur isi ulang | Tidak ada kolom kartu, karena tidak ada kartu |
| Peristiwa | Polling log peristiwa atau daftarkan webhook | Ditandatangani dengan rahasia per-akun |
Semuanya adalah JSON melalui HTTPS, dan setiap objek yang dapat ditampilkan panel adalah objek yang dapat dikembalikan API. Tidak ada tingkatan fungsionalitas yang dicadangkan untuk antarmuka web, yang merupakan janji yang membuat kami menanggung biaya: panel sekarang menggunakan titik akhir publik yang sama seperti yang Anda gunakan, sehingga API yang rusak adalah panel yang rusak dan kami mengetahuinya segera.
Otentikasi
Token dibuat di panel, diberi cakupan, dan ditampilkan hanya sekali. Tidak ada otentikasi kata sandi, tidak ada cookie sesi, tidak ada pengalihan ke penyedia identitas yang harus kami percayai dengan sesuatu yang telah kami berusaha keras untuk tidak kumpulkan.
Token membawa cakupan baca, tulis, atau penagihan, pembatasan opsional ke satu situs, pembatasan opsional ke daftar instans, dan kedaluwarsa yang Anda tetapkan. Enam puluh hari adalah default. Token dapat dicabut satu per satu dan pencabutan berlaku di tepi dalam waktu dua detik, yang lebih penting dari yang terdengar ketika server build dipasang ulang oleh seseorang yang tidak tahu apa yang ada di dalamnya.
Karena akun di sini adalah alamat email dan hash kata sandi, tidak ada objek pelanggan untuk diambil. API tidak memiliki bidang nama, tidak ada bidang alamat, tidak ada bidang perusahaan, dan tidak ada bidang pajak, persis seperti alasan formulir pendaftaran juga tidak.
Batas laju, idempotensi, kesalahan
Enam ratus pembacaan per menit dan enam puluh penulisan, dihitung per token dan bukan per akun, sehingga satu skrip yang berisik tidak dapat membuat otomatisasi Anda yang lain kelaparan. Batas dikembalikan dalam header pada setiap respons, termasuk yang berhasil.
Setiap penulisan menerima kunci idempotensi. Ulangi pembuatan dengan kunci yang sama dan Anda mendapatkan instans asli kembali daripada yang kedua ditagihkan di sampingnya. Ini adalah fitur tunggal yang paling disyukuri oleh penguji beta, yang memberi tahu Anda sesuatu tentang bagaimana industri lainnya menangani tiket yang larut dalam waktu penyediaan.
Kesalahan adalah kode mesin yang terdokumentasi, satu kalimat yang dapat dibaca manusia, dan pengenal permintaan. Tempel pengenal ke tiket dan dukungan dapat melihat permintaan yang sama yang Anda lihat, tanpa meminta Anda untuk mereproduksinya.
Apa yang secara sengaja tidak dilakukannya
- Tidak ada fiat, selamanya. Titik akhir penagihan membaca saldo Anda dan membuka faktur isi ulang. Penyelesaian tetap dengan OxaPay dan rantai yang Anda pilih, persis seperti yang dijelaskan di halaman pembayaran.
- Tidak ada sub-akun atau peran. Diminta terus-menerus. Tidak dibangun, karena implementasi yang jelas berarti menyimpan struktur siapa-bekerja-untuk-siapa, dan kami lebih suka mengirim token bertingkah yang kedaluwarsa dan membiarkan Anda menyimpan bagan organisasi Anda sendiri.
- Tidak ada autoscaling. Instans adalah inti khusus pada silikon nyata, bukan kolam yang dapat kami panggil. Anda dapat membuat dan menghancurkan sesuai jadwal Anda sendiri; kami tidak akan berpura-pura abstraksi elastis terletak di bawah.
- Tidak ada matriks SDK. Satu klien referensi, dan HTTP polos sebagai kontrak. Enam pengikatan bahasa yang setengah terpelihara akan menua lebih buruk daripada dokumentasi.
Apa yang ingin kami rusak
Beta menemukan sembilan bug yang layak diperbaiki, tiga di antaranya milik kami dengan cara yang menarik dan enam di antaranya adalah dokumentasi yang berbohong. Jika Anda menemukan yang kesepuluh, penyalahgunaan batas laju baik-baik saja dan diharapkan selama pengujian, dan dukungan lebih suka memiliki pengenal permintaan daripada tangkapan layar.
Referensi ada di dokumen. Changelog untuk revisi 5.4 mencantumkan tujuh titik akhir yang berubah bentuk antara Februari dan April, dan itu adalah satu-satunya perubahan yang melanggar yang akan ada di dalam versi satu.