compute
POST /v1/compute/servers/{serverId}/console
Open an out-of-band console onto a server.
Санҷиши ҳаққоният
Kaliti API-ро ҳамчун рамзи доранда (bearer token) фиристед. Калит бояд дорои иҷозати sites.restart бошад; калиди бидуни он бо хатои 403 рад карда мешавад, на 404.
Ин нуқтаи поёнӣ ягон рақами мушаххаси созмонро талаб намекунад. Калиди шумо аллакай созмонеро, ки ба он тааллуқ дорад, муайян мекунад ва ҷавоб ба он маҳдуд карда мешавад.
Санҷидан
Ҳар чизро дар қаavски кунҷӣ бо қиматҳои худ ва ҷойи нигоҳдорандаи калидро бо калима аз панели идоракунии худ иваз кунед.
curl -X POST https://api.zinndigital.com/v1/compute/servers/{serverId}/console \
-H "Authorization: Bearer zdk_live_…"Воarid шудаед? Консоли API дар панели идоракунии шумо рақами мушаххаси ташкилоти воқеӣ ва калиди худро пур мекунад ва дархостро бар зидди API-и фаъол иҷро мекунад, то шумо посухи воқеиро бубинед. Ин нуқтаи ниҳоиро дар консоли API кушоед
Тафсилот
⭐⭐ **The control that works when SSH does not** — a bad firewall rule, a broken `sshd` config, a full disk, a kernel that will not boot. It is what turns "my server is unreachable, open a ticket" into something the customer fixes themselves. ⛔ **POST, not GET, because it MINTS a credential.** It is not idempotent, not cacheable, and must never end up in a browser history, a proxy log or a prefetch. The response carries a one-shot URL that reaches the machine's console as if sitting at its keyboard; it is returned once and stored nowhere. Every call is audit-logged — that one was opened and by whom, never the URL or the password. `503` on a range whose provider offers no console. Requires `sites.restart`.
Параметрҳо
| Ном | Намуд | Талаб карда мешавад | Ин чӣ аст |
|---|---|---|---|
serverId (path) | Uuid | Бале | The server's id, as `listComputeServers` reports it. **Ours** (UUIDv7), minted when the order row was written — never the provider's own identifier for the machine. |
Ҷавоб
| Ном | Намуд | Талаб карда мешавад | Ин чӣ аст |
|---|---|---|---|
url | string | Бале | The console address, for `kind: url` (a page a browser opens) and `kind: wss` (a WebSocket endpoint a VNC client connects to). ⛔ **Blank on a `vnc` console, and that is not a fa… |
password | string | Бале | The password the console asks for, when the provider issues one alongside the URL. `""` when the URL alone authenticates. |
expires_at | string | Бале | When it stops working, ISO-8601, or `""` when the provider does not say. ⛔ Blank does **not** mean "never" — these last minutes by design. A `url` and a `wss` console are both o… |
kind | string<url, wss, vnc> | Бале | ⛔⛔ **THREE genuinely different consoles, not three spellings of one, and `wss` was missing** (W22-B, D10906). `url` is a page a browser opens. `wss` is a one-shot WebSocket endp… |
host | string | Бале | The VNC host, for `kind: vnc`. ⛔ **May be blank, and that is a refusal rather than a gap**: where the only hostname a supplier states is its own branded one, we do not pass it on. |
port | integer | Бале | The VNC port, `0` when the provider does not state one. |
allowed_ips | string[] | Бале | The addresses currently permitted to reach the console. ⛔⛔ **An empty list on an IP-restricted console means NOBODY may connect** — the exact opposite of the "no restriction" an… |
ip_restricted | boolean | Бале | Whether the caller's address must be allow-listed before anything can connect. `false` means the credential alone is enough. |
Хатоҳое, ки ин нуқтаи ниҳоӣ метавонад баргардонад
401 · 403 · 404 · 422 · 429 · 503