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:
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:
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: