Skip to content
Get started

Devices

List registered devices
client.Devices.List(ctx) (*[]Device, error)
get/devices
Register a device for passthrough
client.Devices.New(ctx, body) (*Device, error)
post/devices
Get device details
client.Devices.Get(ctx, id) (*Device, error)
get/devices/{id}
Unregister device
client.Devices.Delete(ctx, id) error
delete/devices/{id}
Discover passthrough-capable devices on host
client.Devices.ListAvailable(ctx) (*[]AvailableDevice, error)
get/devices/available
ModelsExpand Collapse
type AvailableDevice struct{…}
DeviceID string

PCI device ID (hex)

IommuGroup int64

IOMMU group number

PciAddress string

PCI address

VendorID string

PCI vendor ID (hex)

CurrentDriver stringoptional

Currently bound driver (null if none)

DeviceName stringoptional

Human-readable device name

VendorName stringoptional

Human-readable vendor name

type Device struct{…}
ID string

Auto-generated unique identifier (CUID2 format)

BoundToVfio bool

Whether the device is currently bound to the vfio-pci driver, which is required for VM passthrough.

  • true: Device is bound to vfio-pci and ready for (or currently in use by) a VM. The device's native driver has been unloaded.
  • false: Device is using its native driver (e.g., nvidia) or no driver. Hypeman will automatically bind to vfio-pci when attaching to an instance.
CreatedAt Time

Registration timestamp (RFC3339)

formatdate-time
DeviceID string

PCI device ID (hex)

IommuGroup int64

IOMMU group number

PciAddress string

PCI address

Type of PCI device

Accepts one of the following:
const DeviceTypeGPU DeviceType = "gpu"
const DeviceTypePci DeviceType = "pci"
VendorID string

PCI vendor ID (hex)

AttachedTo stringoptional

Instance ID if attached

Name stringoptional

Device name (user-provided or auto-generated from PCI address)

type DeviceType string

Type of PCI device

Accepts one of the following:
const DeviceTypeGPU DeviceType = "gpu"
const DeviceTypePci DeviceType = "pci"