databases
POST /v1/databases/{databaseId}/upgrade
Move the database to a newer PostgreSQL major.
Autentikasi
Kirimkan kunci API sebagai token bearer. Titik akhir ini tidak menyatakan izin tertentu dalam spesifikasi, jadi berikan kunci Anda izin minimum yang diperlukan dan periksa responsnya alih-alih berasumsi.
Endpoint ini tidak memerlukan id organisasi. Kunci Anda telah mengidentifikasi organisasi tempatnya berafiliasi, dan respons akan dibatasi untuk organisasi tersebut.
Coba
Ganti apa pun di dalam tanda kurung sudut dengan nilai Anda sendiri, dan placeholder kunci dengan kunci dari dasbor Anda.
curl -X POST https://api.zinndigital.com/v1/databases/{databaseId}/upgrade \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "engine_version": <string> }'Sudah masuk? Konsol API di dasbor Anda akan mengisi ID organisasi asli dan kunci Anda sendiri, serta menjalankan permintaan terhadap API langsung sehingga Anda dapat melihat respons aktualnya. Buka titik akhir ini di konsol API
Detail
Gated on `databases.manage`. Returns `202` — the upgrade runs as a durable workflow because the operator rolls the primary over to an upgraded replica, which takes minutes and must survive a deploy or the customer closing the tab. ⛔ Refused with 422 when the target is not a major we run, when it is not newer than the current one (downgrading is not possible), and — importantly — when **the database has never been backed up**: if a switchover goes wrong the way back is a restore, and a restore with no backup is not a way back.
Parameter
| Nama | Jenis | Wajib | Tentang apa ini |
|---|---|---|---|
databaseId (path) | string | Ya | — |
Isi permintaan
| Nama | Jenis | Wajib | Tentang apa ini |
|---|---|---|---|
engine_version | string | Ya | The engine major to move to. Must be one this platform offers for the database's own engine, and newer than its current one. ⛔ Compared as version numbers, not as text: `"9.7" <… |
Tanggapan
| Nama | Jenis | Wajib | Tentang apa ini |
|---|---|---|---|
id | string | Ya | — |
label | string | Ya | The customer's own name for it. Never sent to the infrastructure. |
engine | string<postgres, mysql> | Ya | Which engine this database runs (`docs/497`). Modelled as a field from the start, which is why MySQL was additive rather than a migration of every row. |
engine_version | string | Ya | The engine's **major** — `"18"`, `"8.4"`. The patch level is ours to keep current and is deliberately not customer-selectable: choosing your own patch level means choosing to ru… |
engine_label | string | Tidak | The engine and version as a customer sees them — "PostgreSQL 18", "MySQL 8.4". Assembled by the API so three frontends cannot disagree about a product name. |
size | string | Ya | A code from `GET /v1/databases/catalogue`. |
status | string<provisioning, available, failed, suspended, deleting, deleted> | Ya | — |
status_detail | string | Tidak | Why a `failed` instance failed. Empty otherwise. |
host | string | Tidak | Empty until the instance is `available`. |
port | integer | Ya | — |
database_name | string | Ya | — |
username | string | Ya | — |
high_availability | boolean | Ya | Whether a standby replica is held with automatic failover. **The property customers actually choose on** — stated rather than inferred from the size, because an inference goes w… |
vcpu | integer | Tidak | — |
ram_gb | integer | Tidak | — |
storage_gb | integer | Tidak | — |
tls_required | boolean | Ya | Always true. TLS is a precondition of selling a publicly reachable database, not a feature that can be turned off. |
created_at | string | Ya | — |
last_backup_at | string | Tidak | When a backup last **completed**. `null` means none has ever run. |
order_line_id | object | Tidak | The paid basket line this database fulfils, or `null` for one that predates the purchase path or that staff tooling created. The subscription that bills it carries the same id. |
billing | ManagedDatabaseBilling | Tidak | The subscription paying for this database — what it costs, and when it next renews. ⛔ `null` means **no subscription pays for it**, which is a real state (a row created before d… |
restore_verified_at | string | Tidak | When a backup of this database was last proved restorable **by restoring it and reading a row back over a client connection**. ⛔ Deliberately separate from `last_backup_at`: a b… |
Kesalahan yang dapat dikembalikan oleh titik akhir ini
401 · 403 · 404 · 422