databases
POST /v1/databases/{databaseId}/upgrade
Move the database to a newer PostgreSQL major.
Автентифікація
Надішліть ключ API як маркер носія (bearer token). Ця кінцева точка не вказує конкретного дозволу в специфікації, тому надайте своєму ключу мінімально необхідні права та перевірте відповідь, замість того щоб припускати.
Цей кінцевий пункт не потребує ідентифікатора організації. Ваш ключ уже ідентифікує організацію, якій він належить, і відповідь обмежується її межами.
Спробувати
Замініть усе в кутових дужках власними значеннями, а заповнювач ключа — ключем із вашої панелі керування.
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> }'Увійшли в систему? Консоль API у вашій панелі керування автоматично підставляє ваш реальний ідентифікатор організації та ваш власний ключ, а також виконує запит до робочого API, щоб ви могли побачити справжню відповідь. Відкрийте цю кінцеву точку в консолі API
Деталі
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.
Параметри
| Назва | Тип | Обов'язкове | Що це таке |
|---|---|---|---|
databaseId (path) | string | Так | — |
Тіло запиту
| Назва | Тип | Обов'язкове | Що це таке |
|---|---|---|---|
engine_version | string | Так | 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" <… |
Відповідь
| Назва | Тип | Обов'язкове | Що це таке |
|---|---|---|---|
id | string | Так | — |
label | string | Так | The customer's own name for it. Never sent to the infrastructure. |
engine | string<postgres, mysql> | Так | 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 | Так | 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 | Ні | 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 | Так | A code from `GET /v1/databases/catalogue`. |
status | string<provisioning, available, failed, suspended, deleting, deleted> | Так | — |
status_detail | string | Ні | Why a `failed` instance failed. Empty otherwise. |
host | string | Ні | Empty until the instance is `available`. |
port | integer | Так | — |
database_name | string | Так | — |
username | string | Так | — |
high_availability | boolean | Так | 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 | Ні | — |
ram_gb | integer | Ні | — |
storage_gb | integer | Ні | — |
tls_required | boolean | Так | Always true. TLS is a precondition of selling a publicly reachable database, not a feature that can be turned off. |
created_at | string | Так | — |
last_backup_at | string | Ні | When a backup last **completed**. `null` means none has ever run. |
order_line_id | object | Ні | 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 | Ні | 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 | Ні | 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… |
Помилки, які може повертати ця кінцева точка
401 · 403 · 404 · 422