Need help with your APIs? I offer API discovery, governance & evangelism services. Explore services →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

KubeVirt VMLifecycle API

Subresource operations for VM lifecycle management including start, stop, pause, unpause, restart, migrate, and adding/removing volumes.

KubeVirt VMLifecycle API is one of 8 APIs that KubeVirt publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

This API exposes 1 JSON Schema definition.

Tagged areas include VMLifecycle. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, a GitHub repository, and 1 JSON Schema.

This API exposes 6 operations across 6 paths, and defines 3 schemas. It is described by OpenAPI 3.1.0, at version 1.59.0.

Requests are made against a single base URL, https://{kubernetes-api-server}.

6 operations 6 paths 3 schemas 6 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.1.0
API Version
1.59.0
Server
https://{kubernetes-api-server}
License
Resource Areas
1

Paths & Operations 6

Across 6 paths, the API surfaces 6 operations — 6 PUT. Each is listed below with its method, path, parameters, and response codes.

VMLifecycle 6

Subresource operations for VM lifecycle management including start, stop, pause, unpause, restart, migrate, and adding/removing volumes.

PUT
/apis/kubevirt.io/v1/namespaces/{namespace}/virtualmachines/{name}/start
KubeVirt Start a VirtualMachine
startVirtualMachine 2 params body → 202400401404
PUT
/apis/kubevirt.io/v1/namespaces/{namespace}/virtualmachines/{name}/stop
KubeVirt Stop a VirtualMachine
stopVirtualMachine 2 params body → 202400401404
PUT
/apis/kubevirt.io/v1/namespaces/{namespace}/virtualmachines/{name}/restart
KubeVirt Restart a VirtualMachine
restartVirtualMachine 2 params body → 202400401404
PUT
/apis/kubevirt.io/v1/namespaces/{namespace}/virtualmachines/{name}/migrate
KubeVirt Migrate a VirtualMachine
migrateVirtualMachine 2 params → 202400401404
PUT
/apis/kubevirt.io/v1/namespaces/{namespace}/virtualmachineinstances/{name}/pause
KubeVirt Pause a VirtualMachineInstance
pauseVirtualMachineInstance 2 params → 202400401404
PUT
/apis/kubevirt.io/v1/namespaces/{namespace}/virtualmachineinstances/{name}/unpause
KubeVirt Unpause a VirtualMachineInstance
unpauseVirtualMachineInstance 2 params → 202400401404

Schemas 3

The contract defines 3 schemas that model the data the API accepts and returns. The most detailed are StopOptions (2 properties), RestartOptions (2 properties), StartOptions (2 properties). Each schema is shown below with its type and property counts.

StartOptions
object
Options for the VM start operation.
2 properties
RestartOptions
object
Options for the VM restart operation.
2 properties
StopOptions
object
Options for the VM stop operation.
2 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

kubevirt-vmlifecycle-api-openapi.yml Raw ↑

Other APIs KubeVirt publishes across the network.

KubeVirt DataSources API
KubeVirt DataVolumes API
KubeVirt StorageProfiles API
KubeVirt VirtualMachineInstanceMigrations API
KubeVirt VirtualMachineInstances API
KubeVirt VirtualMachines API
KubeVirt VMConsole API