スナップショットを管理
/api/v1/servers/:id/snapshots/action
所属組織のサーバースナップショットを作成・改名・削除・復元します。レスポンスはスナップショットではなく操作の情報です。
呼び出す前に
削除と復元には confirm=true が必要です。復元するとサーバーのデータが置き換わります。同じ requestKey では元の操作が返されます。むやみに再試行せず、その taskKey で照会してください。
API のフィールド名、型、コードはすべての言語で共通です。
リクエスト例
curl "https://tovahub.com/api/v1/servers/507f1f77bcf86cd799439012/snapshots/action" -X POST \
-H "Authorization: Bearer $TOVAHUB_TOKEN" \
-H "Content-Type: application/json" \
--data '{
"action": "create",
"requestKey": "docs_example_001",
"name": "before-update"
}'表示のみ。このページから API リクエストは送信されません。
パラメーター
idパス · 必須string
リソース ID。24 桁の16進数文字列です。対応する一覧エンドポイントが返すプラットフォーム ID を使用し、プロバイダーのインスタンス ID は使用しないでください。
actionJSON ボディ · 必須"create" | "update" | "delete" | "restore"
スナップショット操作。
requestKeyJSON ボディ · 必須string
8–100 文字。使用できるのは A–Z、a–z、0–9、アンダースコア、ハイフンです。同じ操作を再試行するときは、同じキーと完全に同じ入力を使用してください。
snapshotIdJSON ボディ · 任意string
プロバイダーのスナップショット ID。1–80 文字。update、delete、restore に必要です。
nameJSON ボディ · 任意string
前後の空白を除いた名前。1–30 文字。create と update に必要です。
descriptionJSON ボディ · 任意string
前後の空白を除いた説明。最大 255 文字。
confirmJSON ボディ · 任意boolean
影響を確認後にのみtrueにします。stop(強制電源オフ)、terminate、reinstall、changepass、スナップショットの削除・復元で必須です。
レスポンス
HTTP ステータス 200 / 202
スナップショットの作成、更新、削除、復元後に、永続化されたタスク状態を返します。
taskKeystring固定のプラットフォーム操作キー。
actionstring記録された操作名。
statestring ('started' | 'succeeded' | 'failed')プラットフォーム側の操作状態。プロバイダーのタスク状態とは異なります。
pendingbooleantrue の場合は HTTP ステータス 202、それ以外は 200。
localFinishPendingbooleanスナップショット要求が succeeded で、保存済みの応答と有効な完了時刻があり、プロバイダーのタスク ID がなく、受付後のローカル処理が未完了の場合は true。元の action と requestKey で recover_snapshot を呼び出してください。タスクの GET は読み取り専用です。
taskIdstring | null存在する場合、プロバイダーのタスク識別子。
taskStatusstring | null最後に観測されたプロバイダーのタスク状態。
errorstring | null存在する場合、機密情報を除去した記録済みエラー。
createdAtstring (ISO 8601)プラットフォーム側の操作作成日時。
finishedAtstring (ISO 8601) | null存在する場合、プラットフォーム側の完了日時。