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 VirtualMachines API

Operations for managing VirtualMachine (VM) resources. A VirtualMachine defines the desired state and configuration of a virtual machine, providing lifecycle management and persistence across restarts.

KubeVirt VirtualMachines 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 VirtualMachines. 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 2 paths, and defines 12 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 2 paths 12 schemas 1 DELETE2 GET1 PATCH1 POST1 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 2 paths, the API surfaces 6 operations — 1 DELETE, 2 GET, 1 PATCH, 1 POST, 1 PUT. Each is listed below with its method, path, parameters, and response codes.

VirtualMachines 6

Operations for managing VirtualMachine (VM) resources. A VirtualMachine defines the desired state and configuration of a virtual machine, providing lifecycle management and persis…

GET
/apis/kubevirt.io/v1/namespaces/{namespace}/virtualmachines
KubeVirt List VirtualMachines in a namespace
listNamespacedVirtualMachine 5 params → 200401403
POST
/apis/kubevirt.io/v1/namespaces/{namespace}/virtualmachines
KubeVirt Create a VirtualMachine
createNamespacedVirtualMachine 1 param body → 201400401403409
GET
/apis/kubevirt.io/v1/namespaces/{namespace}/virtualmachines/{name}
KubeVirt Get a VirtualMachine
readNamespacedVirtualMachine 2 params → 200401403404
PUT
/apis/kubevirt.io/v1/namespaces/{namespace}/virtualmachines/{name}
KubeVirt Replace a VirtualMachine
replaceNamespacedVirtualMachine 2 params body → 200400401404
PATCH
/apis/kubevirt.io/v1/namespaces/{namespace}/virtualmachines/{name}
KubeVirt Partially update a VirtualMachine
patchNamespacedVirtualMachine 2 params body → 200400401404
DELETE
/apis/kubevirt.io/v1/namespaces/{namespace}/virtualmachines/{name}
KubeVirt Delete a VirtualMachine
deleteNamespacedVirtualMachine 2 params → 200401403404

Schemas 12

The contract defines 12 schemas that model the data the API accepts and returns. The most detailed are VirtualMachineInstanceSpec (10 properties), Volume (9 properties), ObjectMeta (7 properties), Interface (7 properties). Each schema is shown below with its type and property counts.

VirtualMachineStatus
object
Observed status of a VirtualMachine.
5 properties
VirtualMachine
object
A KubeVirt VirtualMachine resource defining the desired configuration and lifecycle of a virtual machine. Provides persistent VM definition with start/stop con…
5 properties 4 required
ObjectMeta
object
Standard Kubernetes object metadata.
7 properties 1 required
VirtualMachineSpec
object
Specification of a VirtualMachine.
4 properties
VirtualMachineInstanceTemplateSpec
object
Template for creating a VirtualMachineInstance.
2 properties
Disk
object
A virtual disk device attached to the VM.
5 properties 1 required
VirtualMachineInstanceSpec
object
Specification of the virtual machine hardware and guest configuration.
10 properties
Interface
object
A virtual network interface device.
7 properties 1 required
Volume
object
A storage volume to attach to a disk device.
9 properties 1 required
Network
object
A network to attach a VM interface to.
3 properties 1 required
DomainSpec
object
Virtual hardware configuration for the VM guest.
6 properties
VirtualMachineList
object
List of VirtualMachine resources.
3 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

kubevirt-virtualmachines-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 VMConsole API
KubeVirt VMLifecycle API