Is there a bulk API to fetch Proxmox VM UUID (smbios1) for multiple VMs at once?

Pravallika Modugula

New Member
Jan 13, 2026
1
0
1
We are integrating our application with the Proxmox REST API to discover and manage VMs. Currently, we use the cluster/resources API to list all VMs across nodes, which works well for building the VM inventory. However, this API does not return VM UUID information ("smbios1": "uuid=048b1de0-e543-49b2-b945-37ee777cdd41"). To fetch the UUID, I need to call the VM config API (/nodes/{node}/qemu/{vmid}/config) for each individual VM.

In environments with a large number of VMs (100–500+), this results in one API call per VM, which impacts performance and user experience. The VM UUID is required for uniquely identifying VMs and for downstream operations in my application.

I’d like to know if there is any supported way to retrieve VM UUIDs in bulk (or via an extended API/parameter) without making per-VM config calls, or if the per-VM config API is the only available approach. If per-VM calls are unavoidable, are there any recommended best practices to handle this efficiently at scale?

Thanks in advance for any guidance.
 
Hi @Pravallika Modugula , welcome to the forum.

To answer your question: my understanding is that only the resources query returns a limited configuration subset for all VMs. If the particular parameter you are looking for is not available through that call, you will need to query each VM individually.

There have been several requests over time to add additional fields to resources, each driven by a unique workflow or automation need. As you can imagine, fulfilling all of them would eventually turn that query into a near-full configuration export.

While not ideal, it is possible to work around this by using SSH and filtering for the required value (for example, locating all smbios1 definitions). The alternative is to maintain a local mapping. Since this field rarely changes, the overhead is limited, you would simply need to capture it for newly created VMs going forward.

P.S. personally I think have a single API call that returns all configuration is not a bad idea.


Blockbridge : Ultra low latency all-NVME shared storage for Proxmox - https://www.blockbridge.com/proxmox