Skip to content

Latest commit

 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
Sorry, we had to truncate this directory to 1,000 files. 550 entries were omitted from the list.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pve-go

Go SDK for the Proxmox Virtual Environment API. Generated from the upstream apidoc.js from Proxmox VE via openapi-generator-cli with custom Mustache template overrides.

Not an official Proxmox project. Community SDK derived from the upstream apidoc.js. Always verify against the upstream API viewer. https://pve.proxmox.com/.

Requires Go ≥ 1.22.

Install

go get github.com/client-api/pve-go

Usage

package main

import (
    "context"
    "fmt"

    "github.com/client-api/pve-go"
)

func main() {
    cfg := openapi.NewConfiguration()
    cfg.Servers[0].URL = "https://pve1.example.com:8006/api2/json"
    cfg.AddDefaultHeader("Authorization", "PVEAPIToken=user@realm!tokenid=uuid-secret")

    pve := openapi.NewPve(cfg)

    status, _, err := pve.QemuAPI.QemuVmStatus(context.Background(), "pve1", 100).Execute()
    if err != nil {
        panic(err)
    }
    fmt.Printf("%+v\n", status)
}

Pve is a brand alias for the generator's *APIClient, which already exposes every per-tag API as a struct field (QemuAPI, LxcAPI, ClusterAPI, …).

Compound configs

PVE encodes many fields as CLI-style shorthand strings (net0=virtio,bridge=vmbr0,firewall=1). Round-trip helpers are emitted for every compound config schema:

cfg := openapi.PveQemuNetConfig{
    Model:    "virtio",
    Bridge:   stringPtr("vmbr0"),
    Firewall: int32Ptr(1),
}
shorthand := cfg.ToShorthand()
// → "virtio,bridge=vmbr0,firewall=1"

License

Apache 2.0 — see LICENSE.

About

Go SDK for the Proxmox Virtual Environment (PVE) API.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages