databases

POST /v1/databases/{databaseId}/upgrade

Move the database to a newer PostgreSQL major.

כל נקודות הקצה מסוג databases

אימות

שלח מפתח API כטוקן Bearer. נקודת קצה זו אינה מציינת הרשאת ספציפית במפרט, לכן הקצה למפתח שלך את המינימום הנדרש ובדוק את התגובה במקום להניח הנחות.

נקודת קצה זו אינה דורשת מזהה ארגון. המפתח שלך כבר מזהה את הארגון שאליו הוא שייך, והתגובה מוגבלת אליו בלבד.

נסה זאת

החלף כל דבר בסוגריים זוויתיים בערכים משלך, ואת מציין מיקום המפתח במפתח מלוח הבקרה שלך.

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_versionstringכן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" <…

תשובה

שםסוגנדרשמה זה
idstringכן
labelstringכןThe customer's own name for it. Never sent to the infrastructure.
enginestring<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_versionstringכן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_labelstringלא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.
sizestringכןA code from `GET /v1/databases/catalogue`.
statusstring<provisioning, available, failed, suspended, deleting, deleted>כן
status_detailstringלאWhy a `failed` instance failed. Empty otherwise.
hoststringלאEmpty until the instance is `available`.
portintegerכן
database_namestringכן
usernamestringכן
high_availabilitybooleanכן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…
vcpuintegerלא
ram_gbintegerלא
storage_gbintegerלא
tls_requiredbooleanכןAlways true. TLS is a precondition of selling a publicly reachable database, not a feature that can be turned off.
created_atstringכן
last_backup_atstringלאWhen a backup last **completed**. `null` means none has ever run.
order_line_idobjectלא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.
billingManagedDatabaseBillingלא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_atstringלא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