You can retrieve the list of supported OSes, Virtual Hardware, configurations, capabilities, etc. by using the EnvironmentalBrowser http://pubs.vmware.com/vsphere-51/index.jsp?topic=%2Fcom.vmware.wssdk.apiref.doc%2Fvim.EnvironmentBr...
For vHW version, take a look at the QueryConfigOptionDescriptor() which will return the list of ESXi hosts and the version of vHW it supports. Attached is a screenshot using the vSphere MOB