{"id":23505084,"url":"https://github.com/mrkampf/proxmoxve","last_synced_at":"2025-04-06T13:08:47.088Z","repository":{"id":38019903,"uuid":"205725898","full_name":"MrKampf/proxmoxVE","owner":"MrKampf","description":"The is a PHP 8 ProxmoxVe API client. With it you can easily and quickly retrieve information from your Proxmox server or cluster.","archived":false,"fork":false,"pushed_at":"2025-02-26T15:01:00.000Z","size":428,"stargazers_count":57,"open_issues_count":2,"forks_count":27,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-06T13:08:39.342Z","etag":null,"topics":["api","api-client","composer","php","php-library","php7","php8","proxmox","proxmox-api","proxmox-apis","proxmox-cluster","proxmox-ve","proxmoxve"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MrKampf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-09-01T19:59:02.000Z","updated_at":"2025-03-26T14:21:17.000Z","dependencies_parsed_at":"2024-05-01T11:15:55.465Z","dependency_job_id":"f457c099-57c3-492e-a6e6-5874f3907fe7","html_url":"https://github.com/MrKampf/proxmoxVE","commit_stats":{"total_commits":158,"total_committers":10,"mean_commits":15.8,"dds":"0.24683544303797467","last_synced_commit":"b0c858d0c683f53d7a36141e391ae5a3f09da1db"},"previous_names":[],"tags_count":35,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrKampf%2FproxmoxVE","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrKampf%2FproxmoxVE/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrKampf%2FproxmoxVE/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MrKampf%2FproxmoxVE/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MrKampf","download_url":"https://codeload.github.com/MrKampf/proxmoxVE/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247485287,"owners_count":20946398,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","api-client","composer","php","php-library","php7","php8","proxmox","proxmox-api","proxmox-apis","proxmox-cluster","proxmox-ve","proxmoxve"],"created_at":"2024-12-25T09:18:35.553Z","updated_at":"2025-04-06T13:08:47.062Z","avatar_url":"https://github.com/MrKampf.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ProxmoxVE API\nThis **PHP 8+** Proxmox library allows, to interact with your Proxmox PVE server and cluster via API.\n\n[![Latest Stable Version](https://poser.pugx.org/mrkampf/proxmox-ve/v/stable)](https://packagist.org/packages/mrkampf/proxmox-ve)\n[![Total Downloads](https://poser.pugx.org/mrkampf/proxmox-ve/downloads)](https://packagist.org/packages/mrkampf/proxmox-ve)\n[![Latest Unstable Version](https://poser.pugx.org/mrkampf/proxmox-ve/v/unstable)](https://packagist.org/packages/mrkampf/proxmox-ve)\n[![License](https://poser.pugx.org/mrkampf/proxmox-ve/license)](https://packagist.org/packages/mrkampf/proxmox-ve)\n\n\u003e You find any errors, typos or you detect that something is not working as expected please open an [issue](https://github.com/MrKampf/proxmoxVE/issues/new). I'll try to release a fix asap.\n\n## Getting Started\n\nRecommended installation is using **Composer**. If you do not have **Composer**, what are you waiting for?\n\nIn the root of your project, execute the following:\n\n```sh\n$ composer require mrkampf/proxmox-ve\n```\n\nOr add this to your `composer.json` file:\n\n```json\n{\n    \"require\": {\n        \"mrkampf/proxmox-ve\": \"^0.4.4\"\n    }\n}\n```\n\nThen perform the installation:\n```sh\n$ composer install --no-dev\n```\n\n## Example\n\n---\n### From version 3.1\n\n```php\n\u003c?php\n// Require the autoloader\nrequire_once 'vendor/autoload.php';\n\n// Use the library namespace\nuse Proxmox\\PVE;\n\n// Then simply pass your credentials when creating the API client object.\n$proxmox = new PVE(\"hostname\", \"username\", \"password\", 8006, \"pve\", false);\n// Note: Use \"pam\" instead of \"pve\" if you're using Standard Linux PAM authentication.\n\n// Read all nodes\nprint_r($proxmox-\u003enodes()-\u003eget());\n\n// Read all LXC\nprint_r($proxmox-\u003enodes()-\u003elxc()-\u003eget());\n\n// Read all LXC for a node\nprint_r($proxmox-\u003enodes()-\u003enode(\"node_name\")-\u003elxc()-\u003eget());\n\n// Read all qemu\nprint_r($proxmox-\u003enodes()-\u003eqemu()-\u003eget());\n\n// Read all QEMU for a node\nprint_r($proxmox-\u003enodes()-\u003enode(\"node_name\")-\u003eqemu()-\u003eget());\n\n```\n\n---\n### API Token Support\n\n```php\n\u003c?php\n// Require the autoloader\nrequire_once 'vendor/autoload.php';\n\n// Use the library namespace\nuse Proxmox\\API;\n\n// Then simply pass your credentials when creating the API client object.\n$proxmox = new API(\"hostname\", \"USER@REALM!TOKENID\", \"aaaaaaaaa-bbb-cccc-dddd-ef0123456789\", 8006, false);\n\n// Read all nodes\nprint_r($proxmox-\u003enodes()-\u003eget());\n\n// Read all LXC\nprint_r($proxmox-\u003enodes()-\u003elxc()-\u003eget());\n\n// Read all LXC for a node\nprint_r($proxmox-\u003enodes()-\u003enode(\"node_name\")-\u003elxc()-\u003eget());\n\n// Read all qemu\nprint_r($proxmox-\u003enodes()-\u003eqemu()-\u003eget());\n\n// Read all QEMU for a node\nprint_r($proxmox-\u003enodes()-\u003enode(\"node_name\")-\u003eqemu()-\u003eget());\n\n```\n\n---\n### Example for lazy login\n\n```php\n\u003c?php\n// Require the autoloader\nrequire_once 'vendor/autoload.php';\n\n// Use the library namespace\nuse Proxmox\\PVE;\n\n//Example for lazy login\n$proxmox = new PVE(\"hostname\", \"username\", \"password\", 8006, \"pve\", false, true);\n\n//Login\n$proxmox-\u003egetApi()-\u003elogin();\n\n// Read all nodes\nprint_r($proxmox-\u003enodes()-\u003eget());\n\n```\n\n---\n### Example for custom http client\n\n```php\n\u003c?php\n// Require the autoloader\nrequire_once 'vendor/autoload.php';\n\n// Use the library namespace\nuse Proxmox\\PVE;\n\n$customGuzzleHttpClient = new GuzzleHttp\\Client();\n\n//Example for lazy login\n$proxmox = new PVE(\"hostname\", \"username\", \"password\", 8006, \"pve\", false, false, $customGuzzleHttpClient);\n\n// Read all nodes\nprint_r($proxmox-\u003enodes()-\u003eget());\n\n```\n\n---\n### For version 3.1\n\n| WARNING: The array options is after version 3.0 no longer supported! |\n| --- |\n\n```php\n\u003c?php\n// Require the autoloader\nrequire_once 'vendor/autoload.php';\n\n// Use the library namespace\nuse Proxmox\\PVE;\n\n/**\n * Connect established (For version 3.0) \n * \n * authType and port defaults to 'pam' and '8006' but you can specify them like so\n * \n * !!! WARNING !!!\n * This variant is after version 3.0 no longer supported\n * \n*/\n$credentials = [\n    'hostname' =\u003e '127.0.0.1',\n    'username' =\u003e 'root',\n    'password' =\u003e 'example',\n    'authType' =\u003e 'pam',\n    'port' =\u003e '8006',\n];\n\n// Then simply pass your credentials when creating the API client object.\n$proxmox = new PVE($credentials);\n\n//Read all nodes\nprint_r($proxmox-\u003enodes()-\u003eget());\n\n//Read all lxc\nprint_r($proxmox-\u003enodes()-\u003elxc()-\u003eget());\n\n//Read all qemu\nprint_r($proxmox-\u003enodes()-\u003eqemu()-\u003eget());\n```\n\n[LICENSE]:./LICENSE\n[PVE2 API Documentation]:http://pve.proxmox.com/pve-docs/api-viewer/index.html\n[ProxmoxVE API]:http://pve.proxmox.com/wiki/Proxmox_VE_API\n[Proxmox wiki]:http://pve.proxmox.com/wiki\n[Composer]:https://getcomposer.org/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrkampf%2Fproxmoxve","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrkampf%2Fproxmoxve","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrkampf%2Fproxmoxve/lists"}