action hetzner_post_servers_id_actions_change_type { label: "Change the Type of a Server" description: "Changes the type (Cores, RAM and disk sizes) of a Server.\n\nServer must be powered off for this command to succeed.\n\nThis copies the content of its disk, and starts it again.\n\nYou can only migrate to Server types with the same `storage_type` and equal or bigger disks. Shrinking disks is not possible as it might destroy data.\n\nIf the disk gets upgraded, the Server type can not be downgraded any more. If you plan to downgrade the Server type, set `upgrade_disk` to `false`.\n\n#### Call specific error codes\n\n| Code | Description |\n|-------------------------------|----------------------------------------------------------------------|\n| `invalid_server_type` | The server type does not fit for the given server or is deprecated |\n| `server_not_stopped` | The action requires a stopped server |\n" provider: hetzner method: POST path: "/servers/{id}/actions/change_type" encoding: json input: { type: "object" properties: { id: { type: "integer" } server_type: { type: "string" description: "ID or name of Server type the Server should migrate to" } upgrade_disk: { type: "boolean" description: "If false, do not upgrade the disk (this allows downgrading the Server type later)" } } required: ["id", "server_type", "upgrade_disk"] additionalProperties: false } output: { type: "object" required: ["action"] properties: { action: { type: "object" required: ["command", "error", "finished", "id", "progress", "resources", "started", "status"] properties: { command: { type: "string" description: "Command executed in the Action" } error: { type: "object" description: "Error message for the Action if error occurred, otherwise null" required: ["code", "message"] properties: { code: { type: "string" description: "Fixed machine readable code" } message: { type: "string" description: "Humanized error message" } } } finished: { type: "string" description: "Point in time when the Action was finished (in ISO-8601 format). Only set if the Action is finished otherwise null." } id: { type: "integer" description: "ID of the Resource" } progress: { type: "number" description: "Progress of Action in percent" } resources: { type: "array" description: "Resources the Action relates to" items: { type: "object" required: ["id", "type"] properties: { id: { type: "integer" description: "ID of the Resource" } type: { type: "string" description: "Type of resource referenced" } } } } started: { type: "string" description: "Point in time when the Action was started (in ISO-8601 format)" } status: { type: "string" description: "Status of the Action" enum: ["success", "running", "error"] } } } } } }