EnterpriseVE.ProxmoxVE.Api 1.0.17

Api Client for Proxmox VE.

Suggested Alternatives

Corsinvest.ProxmoxVE.Api

Additional Details

See Corsinvest.ProxmoxVE.Api

Install-Package EnterpriseVE.ProxmoxVE.Api -Version 1.0.17
dotnet add package EnterpriseVE.ProxmoxVE.Api --version 1.0.17
<PackageReference Include="EnterpriseVE.ProxmoxVE.Api" Version="1.0.17" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add EnterpriseVE.ProxmoxVE.Api --version 1.0.17
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: EnterpriseVE.ProxmoxVE.Api, 1.0.17"
For F# scripts that support #r syntax, copy this into the source code to reference the package.

ATTENTION This package is deprecated.

See https://www.nuget.org/packages/Corsinvest.ProxmoxVE.Api

=================================================================================

EnterpriseVE.ProxmoxVE.Api

License

ProxmoVE Client API .Net

ProxmoxVE Api

Nuget Api

Nuget Extension

AppVeyor branch

    ______      __                       _              _    ________
   / ____/___  / /____  _________  _____(_)_______     | |  / / ____/
  / __/ / __ \/ __/ _ \/ ___/ __ \/ ___/ / ___/ _ \    | | / / __/
 / /___/ / / / /_/  __/ /  / /_/ / /  / (__  )  __/    | |/ / /___
/_____/_/ /_/\__/\___/_/  / .___/_/  /_/____/\___/     |___/_____/
                         /_/

                                                       (Made in Italy)

General

The client is generated from a JSON Api on Proxmox VE.

Main features

  • Easy to learn
  • Method named
  • Method native sufix Rest (prevent)
    • GetRest
    • CreateRest (Post)
    • SetRest (Put)
    • DeleteRest
  • Set ResponseType json, png
  • Full method generated from documentation
  • Comment any method and parameters
  • Parameters indexed eg [n] is structured in array index and value
  • Tree structure
    • client.Nodes["pve1"].Qemu[100].Snapshot().snapshotList().Response.data
  • Return data Proxmox VE
  • Return result status
    • StatusCode
    • ReasonPhrase
    • IsSuccessStatusCode
  • Wait task finish task
    • WaitForTaskToFinish
  • Method directry access
    • Get
    • Create (Post)
    • Set (Put)
    • Delete
  • Login return bool if access
  • Return Result class more information

Result

The result is class Result and contain properties:

  • Response returned from Proxmox VE (data,errors,...) dynamic ExpandoObject
  • ResponseInError (bool) : Contains errors from Proxmox VE.
  • StatusCode (System.Net.HttpStatusCode): Status code of the HTTP response.
  • ReasonPhrase (string): The reason phrase which typically is sent by servers together with the status code.
  • IsSuccessStatusCode (bool) : Gets a value that indicates if the HTTP response was successful.
  • GetError() (string) : Get error.

Example result:

{
  "data": {
    "smbios1": "uuid=9246585e-0c8b-4d02-8fe2-f48fd0da3975",
    "ide2": "none,media=cdrom",
    "onboot": 1,
    "boot": "cdn",
    "cores": 2,
    "agent": 1,
    "memory": 4096,
    "numa": 0,
    "bootdisk": "virtio0",
    "sockets": 1,
    "net0": "virtio=3A:39:38:30:36:31,bridge=vmbr0",
    "parent": "auto4hours170904080002",
    "digest": "acafde32daab50bce801fef2e029440c54ebe2f7",
    "vga": "qxl",
    "virtio0": "local-zfs:vm-100-disk-1,cache=writeback,size=50G",
    "ostype": "win8",
    "name": "phenometa"
  }
}

Usage

var client = new Client("10.92.90.91");
if (client.Login("root", "password"))
{
    var vm = client.Nodes["pve1"].Qemu[100];

    //config vm
    var config = vm.Config.VmConfig();
    Console.WriteLine(Client.ObjectToJson(config.Response));

    //create snapshot
    var response = vm.Snapshot.Snapshot("pippo2311");

    //update snapshot description
    vm.Snapshot["pippo2311"].Config.UpdateSnapshotConfig("descr");

    //delete snapshot
    vm.Snapshot["pippo2311"].Delsnapshot();

    //list of snapshot
    foreach (var snapshot in vm.Snapshot.SnapshotList().Response.data)
    {
        Console.WriteLine(Client.ObjectToJson(snapshot));
        Console.WriteLine(snapshot.name);
    }

    client.ResponseType = "png";
    var dataImg = client.Nodes["pve1"].Rrd.Rrd("cpu", "day").Response;
    Console.WriteLine("<img src=\"{dataImg}\" \>");
}

Extension Pack

The extension pack add functionality to API.

See VM.ClientExtension.cs, Storage.ClientExtension.cs, Node.ClientExtension.cs

Nuget Extension

ATTENTION This package is deprecated.

See https://www.nuget.org/packages/Corsinvest.ProxmoxVE.Api

=================================================================================

EnterpriseVE.ProxmoxVE.Api

License

ProxmoVE Client API .Net

ProxmoxVE Api

Nuget Api

Nuget Extension

AppVeyor branch

    ______      __                       _              _    ________
   / ____/___  / /____  _________  _____(_)_______     | |  / / ____/
  / __/ / __ \/ __/ _ \/ ___/ __ \/ ___/ / ___/ _ \    | | / / __/
 / /___/ / / / /_/  __/ /  / /_/ / /  / (__  )  __/    | |/ / /___
/_____/_/ /_/\__/\___/_/  / .___/_/  /_/____/\___/     |___/_____/
                         /_/

                                                       (Made in Italy)

General

The client is generated from a JSON Api on Proxmox VE.

Main features

  • Easy to learn
  • Method named
  • Method native sufix Rest (prevent)
    • GetRest
    • CreateRest (Post)
    • SetRest (Put)
    • DeleteRest
  • Set ResponseType json, png
  • Full method generated from documentation
  • Comment any method and parameters
  • Parameters indexed eg [n] is structured in array index and value
  • Tree structure
    • client.Nodes["pve1"].Qemu[100].Snapshot().snapshotList().Response.data
  • Return data Proxmox VE
  • Return result status
    • StatusCode
    • ReasonPhrase
    • IsSuccessStatusCode
  • Wait task finish task
    • WaitForTaskToFinish
  • Method directry access
    • Get
    • Create (Post)
    • Set (Put)
    • Delete
  • Login return bool if access
  • Return Result class more information

Result

The result is class Result and contain properties:

  • Response returned from Proxmox VE (data,errors,...) dynamic ExpandoObject
  • ResponseInError (bool) : Contains errors from Proxmox VE.
  • StatusCode (System.Net.HttpStatusCode): Status code of the HTTP response.
  • ReasonPhrase (string): The reason phrase which typically is sent by servers together with the status code.
  • IsSuccessStatusCode (bool) : Gets a value that indicates if the HTTP response was successful.
  • GetError() (string) : Get error.

Example result:

{
  "data": {
    "smbios1": "uuid=9246585e-0c8b-4d02-8fe2-f48fd0da3975",
    "ide2": "none,media=cdrom",
    "onboot": 1,
    "boot": "cdn",
    "cores": 2,
    "agent": 1,
    "memory": 4096,
    "numa": 0,
    "bootdisk": "virtio0",
    "sockets": 1,
    "net0": "virtio=3A:39:38:30:36:31,bridge=vmbr0",
    "parent": "auto4hours170904080002",
    "digest": "acafde32daab50bce801fef2e029440c54ebe2f7",
    "vga": "qxl",
    "virtio0": "local-zfs:vm-100-disk-1,cache=writeback,size=50G",
    "ostype": "win8",
    "name": "phenometa"
  }
}

Usage

var client = new Client("10.92.90.91");
if (client.Login("root", "password"))
{
    var vm = client.Nodes["pve1"].Qemu[100];

    //config vm
    var config = vm.Config.VmConfig();
    Console.WriteLine(Client.ObjectToJson(config.Response));

    //create snapshot
    var response = vm.Snapshot.Snapshot("pippo2311");

    //update snapshot description
    vm.Snapshot["pippo2311"].Config.UpdateSnapshotConfig("descr");

    //delete snapshot
    vm.Snapshot["pippo2311"].Delsnapshot();

    //list of snapshot
    foreach (var snapshot in vm.Snapshot.SnapshotList().Response.data)
    {
        Console.WriteLine(Client.ObjectToJson(snapshot));
        Console.WriteLine(snapshot.name);
    }

    client.ResponseType = "png";
    var dataImg = client.Nodes["pve1"].Rrd.Rrd("cpu", "day").Response;
    Console.WriteLine("<img src=\"{dataImg}\" \>");
}

Extension Pack

The extension pack add functionality to API.

See VM.ClientExtension.cs, Storage.ClientExtension.cs, Node.ClientExtension.cs

Nuget Extension

NuGet packages (1)

Showing the top 1 NuGet packages that depend on EnterpriseVE.ProxmoxVE.Api:

Package Downloads
EnterpriseVE.ProxmoxVE.Api.Extension
Api Client for Proxmox VE.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated
1.0.17 665 12/5/2018
1.0.16 517 11/12/2018
1.0.15 688 5/18/2018
1.0.14 693 1/29/2018
1.0.13 634 11/2/2017
1.0.12 613 10/20/2017
1.0.11 634 10/4/2017
1.0.10 588 9/26/2017
1.0.9 574 9/25/2017
1.0.8 609 9/17/2017
1.0.7 583 9/15/2017
1.0.6 591 9/12/2017
1.0.5 639 9/6/2017
1.0.4 657 9/4/2017
1.0.3 655 9/4/2017
1.0.2-beta 682 9/4/2017
1.0.1-beta 677 9/2/2017