pikvm
- GET /pikvm-inventory/power/sse
Monitor PiKVM Power State (SSE)
Streams real-time power state updates from PiKVM via Server-Sent Events. Credentials are fetched from bmc_infos table.
- Query Parameters:
bmc_ip (string) – PiKVM IP address
- GET /pikvm-inventory/power/status
Get PiKVM power status
Get the current power state from PiKVM. Credentials are fetched from database using pikvm_ip.
- Query Parameters:
pikvm_ip (string) – PiKVM IP address
- Status Codes:
200 OK – Power status
400 Bad Request – Invalid request
401 Unauthorized – PiKVM credentials not found
500 Internal Server Error – Internal server error
- Response JSON Object:
message (string)
power_on (boolean)
status (string)
- POST /pikvm-inventory/provision
Full PiKVM Provision Flow
Build a Debian Live ISO, upload it to PiKVM MSD, boot the server, and wait for OS installation to complete.
- Request JSON Object:
bmc_ip (string) – ── PiKVM connection ────────────────────────────────────────────── (required)
control_node_ip (string) – ── Control-node info (auto-detected if empty) ────────────────────
hostname (string) – ── Debian preseed fields (same as NodeProvisionPayload) ──────────
os_password (string) – default: adminadmin (also used for root password)
os_username (string) – default: admin
pool_type (string) – mirror, raidz1, stripe, single
prefix_id (integer) – NetBox prefix ID for IPAM auto-allocation (from GET /api/v2/ipam/vlans)
selected_disks[] (string)
selected_nic (string) – e.g. “enp0s3”
selected_nic_mac (string) – MAC address of the selected NIC
static_dns (string)
static_gateway (string)
static_ip (string) – ── Optional IPAM / static IP ─────────────────────────────────────
static_netmask (string)
timezone (string) – default: UTC
- Status Codes:
200 OK – Provisioning started (async)
400 Bad Request – Invalid request
401 Unauthorized – PiKVM credential validation failed
500 Internal Server Error – Internal server error
- Response JSON Object:
job_id (string)
message (string)
pikvm_ip (string)
status (string)
- POST /pikvm-inventory/reveal
Reveal hardware connected to PiKVM
Create custom Debian hardware reveal ISO for PiKVM connected systems
- Request JSON Object:
controlNodeIp (string) – IP of the control node running karios-core (required)
pikvmIP (string) – PiKVM IP (credentials fetched from database) (required)
- Status Codes:
200 OK – ISO creation started
400 Bad Request – Bad Request
500 Internal Server Error – Internal Server Error