database:read (baca) atau database:write (ubah). Semua jawaban yang memuat password juga butuh database:write. Key lama tanpa scope tidak punya akses database sama sekali. Lihat Scope.
Buat database
1
Pilih engine, versi, dan paket
zone_id, versi yang available: false belum ada di zona itu; pilih zona lain (zone_ids) atau versi lain. Harga paket dalam Rupiah per database.2
Buat
3
Tunggu running
Status
provisioning sampai running (beberapa menit). Pantau GET /databases/{id}.4
Ambil info koneksi
database:write. Jangan simpan jawaban ini di log.Start, stop, restart
Password admin
POST /databases/{id}/reset-password membuat password admin baru dan mengembalikannya sekali di jawaban (setelah itu hanya lewat info koneksi). 200 dengan applied: true = sudah berlaku; 202 dengan applied: false = masih diterapkan, password lama berlaku sampai selesai.
User dan database logis
- User dan database logis dibuat secara asinkron (
202): statuscreatingsampaiactive. - Password user baru dikembalikan sekali di jawaban
POST …/users. Simpan saat itu juga. PUT /databases/{id}/users/{username}/grantsdengan{"databases": [...]}menggantikan seluruh daftar database logis yang boleh diakses user (hak ALL);[]mencabut semuanya.POST /databases/{id}/users/{username}/rotate-passwordmembuat password baru (atau pakainew_password), dikembalikan sekali. Password lama berlaku sampai status user kembaliactive.- User admin tidak bisa dihapus, dan database logis awal tidak bisa dihapus.
- Perubahan user, backup, atau penghapusan saat task sebelumnya masih berjalan ditolak
409; ulangi beberapa detik kemudian.
Backup dan restore
Point-in-Time Recovery (PostgreSQL)
GET /databases/{id}/pitr: status dan jendela pemulihan (earliest_restorable_at…latest_restorable_at).PUT /databases/{id}/pitr: menyalakan PITR sebagai metode backup (backup harian dimatikan; database direstart sekali,202), atau mengubahretention_days/full_backup_interval_hoursbila sudah menyala (200).DELETE /databases/{id}/pitr: hanya bila ada metode backup lain; bila PITR satu-satunya metode →422.
Read replica (PostgreSQL)
- Hanya untuk PostgreSQL yang sedang berjalan. Replica ditagih seperti database dengan paketnya (
plan_idkosong = paket primary). - Replica hanya baca; login dengan user dan password primary (
credentials_fromdi info koneksi). Keadaan replikasi ada direplication.state. POST /databases/{id}/replicas/{replica_id}/promotemelepas replica menjadi database mandiri yang bisa ditulis. Tidak bisa dibatalkan.- Replica juga tampil di
GET /databasesdenganrole: replica.
Akses publik
1
Isi allowlist
2
Nyalakan
allowed_ips. Database di subnet privat tidak bisa punya akses publik.Hapus database
DELETE /databases/{id} menghapus database beserta VM, disk, dan alamat publiknya, dan menghentikan tagihannya. Hapus read replica-nya dulu. Jawaban 202; database deleting (tidak ditagih) lalu hilang (404).
