Skip to main content

Jawaban sukses

Semua jawaban sukses dibungkus data:
DELETE tidak pernah menjawab 204. Jawabannya 200 dengan "status": "deleted" bila sudah selesai, atau 202 dengan "status": "deleting" bila masih berjalan. Setelah selesai, resource hilang dari daftar dan detailnya menjawab 404.

Format data

  • Nama field snake_case. Id selalu string: UUID, kecuali id image yang berupa slug (mis. ubuntu-24-04).
  • Waktu dalam RFC 3339, UTC, tanpa milidetik: 2026-11-08T07:15:00Z. Tanggal saja (2026-11-08) dipakai untuk hari kalender Asia/Jakarta di billing.
  • Uang di billing dalam sen (1/100 Rupiah, field *_cents). Harga paket dalam Rupiah (price_monthly, price_hourly).
  • Field opsional yang kosong tidak dikirim. Daftar kosong dikirim sebagai [].

Jawaban error

  • code: string snake_case yang stabil. Pakai ini di kode Anda, bukan message.
  • message: penjelasan untuk manusia. Teksnya bisa berubah.
  • details: opsional. Untuk validation_error, field yang salah ada di details.fields.

Bahasa pesan

Kirim Accept-Language untuk memilih bahasa message: Header Content-Language di jawaban menyebut bahasa yang dipakai. Data resource (nama, status, dll.) tidak diterjemahkan.

Kode error umum

Kode spesifik: bila platform punya alasan yang lebih tepat, code memakai nama itu dalam huruf kecil, mis. volume_has_snapshots (409) saat menghapus volume yang masih punya snapshot. Tangani kode yang tidak Anda kenal berdasarkan status HTTP-nya.

Kapan mengulang

Pelacakan request

Setiap jawaban membawa header X-Request-Id. Anda boleh mengirim X-Request-Id sendiri (8–64 karakter: huruf, angka, ., _, -); bila valid, nilai itu dipakai dan dikembalikan. Catat id ini di log aplikasi Anda dan sertakan saat menghubungi dukungan. Jangan sertakan API key.