GET https://server.domain.tld/api/vms?expand=resources&attributes=href,id,name,operating_system.product_name
{
"name": "vms",
"count": 361,
"subcount": 361,
"resources": [
{
"href": "https://server.domain.tld/api/vms/100000000000208",
"id": 100000000000208,
"vendor": "vmware",
"name": "vm01.domain.tld",
"location": "vm01.domain.tld/vm01.domain.tld.vmx",
"last_sync_on": "2017-10-05T16:02:44Z",
"created_on": "2017-08-15T19:08:39Z",
"updated_on": "2017-10-06T15:00:17Z",
"guid": "abc123",
"last_scan_on": "2017-10-05T16:02:44Z",
"last_scan_attempt_on": "2017-10-05T16:00:46Z",
"uid_ems": "xyz345",
"boot_time": "2017-10-06T14:51:48Z",
"tools_status": "toolsNotRunning",
"standby_action": "checkpoint",
"power_state": "unknown",
"state_changed_on": "2017-10-06T15:00:17Z",
"previous_state": "poweredOff",
"connection_state": "connected",
"last_perf_capture_on": "2017-10-06T14:36:40Z",
"memory_reserve": 0,
"memory_reserve_expand": false,
"memory_limit": -1,
"memory_shares": 122880,
"memory_shares_level": "normal",
"cpu_reserve": 0,
"cpu_reserve_expand": false,
"cpu_limit": -1,
"cpu_shares": 4000,
"cpu_shares_level": "normal",
"template": false,
"ems_ref_obj": "vm-123",
"miq_group_id": 100000000000001,
"linked_clone": true,
"fault_tolerance": false,
"type": "ManageIQ::Providers::Vmware::InfraManager::Vm",
"ems_ref": "vm-123",
"cloud": false,
"raw_power_state": "unknown",
"tenant_id": 100000000000001,
"cpu_hot_add_enabled": false,
"cpu_hot_remove_enabled": false,
"memory_hot_add_enabled": false,
"actions": [
{
"name": "edit",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "add_lifecycle_event",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "add_event",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "refresh",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "shutdown_guest",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "reboot_guest",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "start",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "stop",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "suspend",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "shelve",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "shelve_offload",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "pause",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "request_console",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "reset",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "retire",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "delete",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "set_owner",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "set_ownership",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "scan",
"method": "post",
"href": "https://server.domain.tld/api/vms/100000000000208"
},
{
"name": "delete",
"method": "delete",
"href": "https://server.domain.tld/api/vms/100000000000208"
}
]
},
....
]
}
What i really want is to limit the fields returned to only those specified in the query (output like shown in #241 ). Maybe a syntax of /api/<collection>?attributes=a,b,c
?
GET https://server.domain.tld/api/vms?attributes=href,id,name,operating_system.product_name