compute
POST /v1/compute/servers/{serverId}/services/action
Start, stop or restart one service inside a server.
認証
ベアラー トークンとして API キーを送信します。キーには sites.view 権限が付与されている必要があります。権限のないキーは 404 ではなく 403 で拒否されます。
このエンドポイントは組織IDを受け付けません。お使いのキーによって所属する組織がすでに特定されており、レスポンスはその組織にスコープされます。
試してみる
アングルブラケット内のすべてをご自身の値に置き換え、キーのプレースホルダーをご利用中のダッシュボードのキーに置き換えてください。
curl -X POST https://api.zinndigital.com/v1/compute/servers/{serverId}/services/action \
-H "Authorization: Bearer zdk_live_…" \
-H "Content-Type: application/json" \
-d '{ "unit": <string>, "action": <string<start, stop, restart>> }'ログインしていますか?ダッシュボード内のAPIコンソールでは、実際の組織IDやお客様ご自身のキーが自動入力され、ライブAPIに対してリクエストが実行されるため、実際のレスポンスを確認することができます。 API コンソールでこのエンドポイントを開く
詳細
Acts on a single service unit inside the machine - Apache, MariaDB, ProFTPD - while the machine itself stays up. This is the difference between a customer whose site is down fixing it themselves in ten seconds and a customer opening a ticket. ⛔ Not the same blast radius as setComputeServerPower. That one moves the whole machine; this moves one unit inside a machine that keeps running. Stopping a web server or a database still takes every website on that box off the air, so the operation is audit-logged with the real actor. ⛔ unit must be a service the machine is currently running. The engine checks the name against the machine's own live service list before sending anything, so an arbitrary systemd unit - sshd.service, a firewall, the enrolment agent - is refused with a 422 that names what is available instead. The list this endpoint's sibling listComputeServerServices returns is exactly the set that may be named here. The response carries the provider's own confirmation sentence, which is worth showing to the customer verbatim. 404 for a server that is not the caller's; 422 for a machine that is not active, a unit it does not run, or a verb outside start/stop/restart. Requires sites.view and 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. |
リクエスト本文
| 名前 | タイプ | 必須 | これがその内容です |
|---|---|---|---|
unit | string | はい | The service unit to act on, exactly as listComputeServerServices reports it (httpd.service, mariadb.service, proftpd.service). ⛔ Must be a unit the machine is… |
action | string<start, stop, restart> | はい | ⛔ A closed vocabulary. reload, enable and disable are deliberately absent: they have never been proven against a provider, and a verb we have not proven is a button that may… |
返信
| 名前 | タイプ | 必須 | これがその内容です |
|---|---|---|---|
message | string | はい | The provider's own confirmation sentence — "Service proftpd.service was stopped successfully." — passed through verbatim, because it is more specific than anything we would… |
このエンドポイントが返すエラー
401 · 403 · 404 · 422 · 429 · 503