You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ro...@apache.org on 2021/11/19 08:39:24 UTC

[cloudstack-go] branch main updated: generate: update listApis.json with 4.16.0.0 api cache

This is an automated email from the ASF dual-hosted git repository.

rohit pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudstack-go.git


The following commit(s) were added to refs/heads/main by this push:
     new 3d07af9  generate: update listApis.json with 4.16.0.0 api cache
3d07af9 is described below

commit 3d07af90412418b812286d0010edadd8ec783e6b
Author: Rohit Yadav <ro...@shapeblue.com>
AuthorDate: Fri Nov 19 14:07:20 2021 +0530

    generate: update listApis.json with 4.16.0.0 api cache
    
    Signed-off-by: Rohit Yadav <ro...@shapeblue.com>
---
 generate/listApis.json | 107840 +++++++++++++++++++++++-----------------------
 1 file changed, 53920 insertions(+), 53920 deletions(-)

diff --git a/generate/listApis.json b/generate/listApis.json
index b2ac5f1..6081aac 100644
--- a/generate/listApis.json
+++ b/generate/listApis.json
@@ -22,33 +22,33 @@
       ],
       "related": "",
       "response": [
-        {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
-        },
+        {},
         {
           "description": "the UUID of the latest async job acting on this object",
           "name": "jobid",
           "type": "string"
         },
         {
-          "description": "id of the resource",
-          "name": "resourceid",
-          "type": "string"
-        },
-        {
           "description": "resource type",
           "name": "resourcetype",
           "type": "resourceobjecttype"
         },
+        {},
         {
           "description": "base64 representation of resource icon",
           "name": "base64image",
           "type": "string"
         },
-        {},
-        {}
+        {
+          "description": "id of the resource",
+          "name": "resourceid",
+          "type": "string"
+        },
+        {
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
+        }
       ],
       "since": "4.16.0.0"
     },
@@ -58,36 +58,35 @@
       "name": "createVPCOffering",
       "params": [
         {
-          "description": "the ID of the service offering for the VPC router appliance",
+          "description": "desired service capabilities as part of vpc offering",
           "length": 255,
-          "name": "serviceofferingid",
-          "related": "createServiceOffering,updateServiceOffering,listServiceOfferings",
+          "name": "servicecapabilitylist",
           "required": false,
-          "type": "uuid"
+          "since": "4.4",
+          "type": "map"
         },
         {
-          "description": "the ID of the containing zone(s), null for public offerings",
+          "description": "set to true if the offering is to be enabled during creation. Default is false",
           "length": 255,
-          "name": "zoneid",
-          "related": "createZone,updateZone,listZones,listZones",
+          "name": "enable",
           "required": false,
-          "since": "4.13",
-          "type": "list"
+          "since": "4.16",
+          "type": "boolean"
         },
         {
-          "description": "services supported by the vpc offering",
+          "description": "the ID of the service offering for the VPC router appliance",
           "length": 255,
-          "name": "supportedservices",
-          "required": true,
-          "type": "list"
+          "name": "serviceofferingid",
+          "related": "createServiceOffering,updateServiceOffering,listServiceOfferings",
+          "required": false,
+          "type": "uuid"
         },
         {
-          "description": "desired service capabilities as part of vpc offering",
+          "description": "the name of the vpc offering",
           "length": 255,
-          "name": "servicecapabilitylist",
-          "required": false,
-          "since": "4.4",
-          "type": "map"
+          "name": "name",
+          "required": true,
+          "type": "string"
         },
         {
           "description": "the ID of the containing domain(s), null for public offerings",
@@ -98,26 +97,20 @@
           "type": "list"
         },
         {
-          "description": "set to true if the offering is to be enabled during creation. Default is false",
-          "length": 255,
-          "name": "enable",
-          "required": false,
-          "since": "4.16",
-          "type": "boolean"
-        },
-        {
-          "description": "the display text of the vpc offering",
+          "description": "services supported by the vpc offering",
           "length": 255,
-          "name": "displaytext",
+          "name": "supportedservices",
           "required": true,
-          "type": "string"
+          "type": "list"
         },
         {
-          "description": "the name of the vpc offering",
+          "description": "the ID of the containing zone(s), null for public offerings",
           "length": 255,
-          "name": "name",
-          "required": true,
-          "type": "string"
+          "name": "zoneid",
+          "related": "createZone,updateZone,listZones,listZones",
+          "required": false,
+          "since": "4.13",
+          "type": "list"
         },
         {
           "description": "provider to service mapping. If not specified, the provider for the service will be mapped to the default provider on the physical network",
@@ -125,40 +118,35 @@
           "name": "serviceproviderlist",
           "required": false,
           "type": "map"
+        },
+        {
+          "description": "the display text of the vpc offering",
+          "length": 255,
+          "name": "displaytext",
+          "required": true,
+          "type": "string"
         }
       ],
       "related": "updateVPCOffering,listVPCOfferings",
       "response": [
         {
-          "description": " indicated if the offering can support region level vpc",
-          "name": "supportsregionLevelvpc",
-          "type": "boolean"
-        },
-        {},
-        {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
+          "description": "an alternate display text of the vpc offering.",
+          "name": "displaytext",
           "type": "string"
         },
         {
-          "description": "the date this vpc offering was created",
-          "name": "created",
-          "type": "date"
+          "description": "the domain ID(s) this disk offering belongs to. Ignore this information as it is not currently applicable.",
+          "name": "domainid",
+          "type": "string"
         },
-        {},
         {
           "description": "the zone name(s) this disk offering belongs to. Ignore this information as it is not currently applicable.",
           "name": "zone",
           "type": "string"
         },
         {
-          "description": "true if vpc offering is default, false otherwise",
-          "name": "isdefault",
-          "type": "boolean"
-        },
-        {
-          "description": "the zone ID(s) this disk offering belongs to. Ignore this information as it is not currently applicable.",
-          "name": "zoneid",
+          "description": "the id of the vpc offering",
+          "name": "id",
           "type": "string"
         },
         {
@@ -167,25 +155,32 @@
           "type": "string"
         },
         {
-          "description": "an alternate display text of the vpc offering.",
-          "name": "displaytext",
+          "description": "state of the vpc offering. Can be Disabled/Enabled",
+          "name": "state",
           "type": "string"
         },
+        {},
         {
-          "description": "the domain ID(s) this disk offering belongs to. Ignore this information as it is not currently applicable.",
-          "name": "domainid",
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
+        },
+        {},
+        {
+          "description": "the name of the vpc offering",
+          "name": "name",
           "type": "string"
         },
         {
+          "description": "true if vpc offering is default, false otherwise",
+          "name": "isdefault",
+          "type": "boolean"
+        },
+        {
           "description": "the list of supported services",
           "name": "service",
           "response": [
             {
-              "description": "the service name",
-              "name": "name",
-              "type": "string"
-            },
-            {
               "description": "the list of capabilities",
               "name": "capability",
               "response": [
@@ -195,14 +190,14 @@
                   "type": "string"
                 },
                 {
-                  "description": "can this service capability value can be choosable while creatine network offerings",
-                  "name": "canchooseservicecapability",
-                  "type": "boolean"
-                },
-                {
                   "description": "the capability name",
                   "name": "name",
                   "type": "string"
+                },
+                {
+                  "description": "can this service capability value can be choosable while creatine network offerings",
+                  "name": "canchooseservicecapability",
+                  "type": "boolean"
                 }
               ],
               "type": "list"
@@ -212,14 +207,19 @@
               "name": "provider",
               "response": [
                 {
+                  "description": "true if individual services can be enabled/disabled",
+                  "name": "canenableindividualservice",
+                  "type": "boolean"
+                },
+                {
                   "description": "the physical network this belongs to",
                   "name": "physicalnetworkid",
                   "type": "string"
                 },
                 {
-                  "description": "the destination physical network",
-                  "name": "destinationphysicalnetworkid",
-                  "type": "string"
+                  "description": "services for this provider",
+                  "name": "servicelist",
+                  "type": "list"
                 },
                 {
                   "description": "the provider name",
@@ -232,49 +232,49 @@
                   "type": "string"
                 },
                 {
-                  "description": "true if individual services can be enabled/disabled",
-                  "name": "canenableindividualservice",
-                  "type": "boolean"
-                },
-                {
                   "description": "uuid of the network provider",
                   "name": "id",
                   "type": "string"
                 },
                 {
-                  "description": "services for this provider",
-                  "name": "servicelist",
-                  "type": "list"
+                  "description": "the destination physical network",
+                  "name": "destinationphysicalnetworkid",
+                  "type": "string"
                 }
               ],
               "type": "list"
+            },
+            {
+              "description": "the service name",
+              "name": "name",
+              "type": "string"
             }
           ],
           "type": "list"
         },
         {
-          "description": "the name of the vpc offering",
-          "name": "name",
-          "type": "string"
-        },
-        {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
-        },
-        {
           "description": " indicates if the vpc offering supports distributed router for one-hop forwarding",
           "name": "distributedvpcrouter",
           "type": "boolean"
         },
         {
-          "description": "the id of the vpc offering",
-          "name": "id",
+          "description": " indicated if the offering can support region level vpc",
+          "name": "supportsregionLevelvpc",
+          "type": "boolean"
+        },
+        {
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
           "type": "string"
         },
         {
-          "description": "state of the vpc offering. Can be Disabled/Enabled",
-          "name": "state",
+          "description": "the date this vpc offering was created",
+          "name": "created",
+          "type": "date"
+        },
+        {
+          "description": "the zone ID(s) this disk offering belongs to. Ignore this information as it is not currently applicable.",
+          "name": "zoneid",
           "type": "string"
         }
       ]
@@ -285,113 +285,92 @@
       "name": "createPod",
       "params": [
         {
-          "description": "Allocation state of this Pod for allocation of new resources",
+          "description": "the name of the Pod",
           "length": 255,
-          "name": "allocationstate",
-          "required": false,
+          "name": "name",
+          "required": true,
           "type": "string"
         },
         {
-          "description": "the starting IP address for the Pod",
+          "description": "the ending IP address for the Pod",
           "length": 255,
-          "name": "startip",
-          "required": true,
+          "name": "endip",
+          "required": false,
           "type": "string"
         },
         {
-          "description": "the gateway for the Pod",
+          "description": "the netmask for the Pod",
           "length": 255,
-          "name": "gateway",
+          "name": "netmask",
           "required": true,
           "type": "string"
         },
         {
-          "description": "the ending IP address for the Pod",
+          "description": "Allocation state of this Pod for allocation of new resources",
           "length": 255,
-          "name": "endip",
+          "name": "allocationstate",
           "required": false,
           "type": "string"
         },
         {
-          "description": "the Zone ID in which the Pod will be created",
+          "description": "the gateway for the Pod",
           "length": 255,
-          "name": "zoneid",
-          "related": "createZone,updateZone,listZones,listZones",
+          "name": "gateway",
           "required": true,
-          "type": "uuid"
+          "type": "string"
         },
         {
-          "description": "the netmask for the Pod",
+          "description": "the starting IP address for the Pod",
           "length": 255,
-          "name": "netmask",
+          "name": "startip",
           "required": true,
           "type": "string"
         },
         {
-          "description": "the name of the Pod",
+          "description": "the Zone ID in which the Pod will be created",
           "length": 255,
-          "name": "name",
+          "name": "zoneid",
+          "related": "createZone,updateZone,listZones,listZones",
           "required": true,
-          "type": "string"
+          "type": "uuid"
         }
       ],
       "related": "listPods,updatePod,createManagementNetworkIpRange",
       "response": [
         {
-          "description": "the IP ranges for the Pod",
-          "name": "ipranges",
-          "response": [
-            {
-              "description": "indicates Vlan ID for the range",
-              "name": "vlanid",
-              "type": "string"
-            },
-            {
-              "description": "the ending IP for the range",
-              "name": "endip",
-              "type": "string"
-            },
-            {
-              "description": "indicates if range is dedicated for CPVM and SSVM",
-              "name": "forsystemvms",
-              "type": "string"
-            },
-            {
-              "description": "the starting IP for the range",
-              "name": "startip",
-              "type": "string"
-            }
-          ],
-          "type": "list"
+          "description": "the Zone ID of the Pod",
+          "name": "zoneid",
+          "type": "string"
         },
         {
-          "description": "the ending IP for the Pod. This parameter is deprecated, please use 'endip' from ipranges parameter.",
-          "name": "endip",
-          "type": "list"
+          "description": "the netmask of the Pod",
+          "name": "netmask",
+          "type": "string"
         },
         {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
-          "type": "string"
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
         },
         {
-          "description": "the Zone ID of the Pod",
-          "name": "zoneid",
+          "description": "the gateway of the Pod",
+          "name": "gateway",
           "type": "string"
         },
         {
-          "description": "the starting IP for the Pod. This parameter is deprecated, please use 'startip' from ipranges parameter.",
-          "name": "startip",
+          "description": "indicates if range is dedicated for CPVM and SSVM. This parameter is deprecated, please use 'forsystemvms' from ipranges parameter.",
+          "name": "forsystemvms",
           "type": "list"
         },
         {
-          "description": "the name of the Pod",
-          "name": "name",
-          "type": "string"
+          "description": "true if the entity/resource has annotations",
+          "name": "hasannotations",
+          "type": "boolean"
         },
+        {},
         {
-          "description": "the ID of the Pod",
-          "name": "id",
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
           "type": "string"
         },
         {
@@ -399,53 +378,53 @@
           "name": "capacity",
           "response": [
             {
-              "description": "the capacity currently in use",
-              "name": "capacityused",
-              "type": "long"
+              "description": "the capacity type",
+              "name": "type",
+              "type": "short"
             },
             {
-              "description": "the percentage of capacity currently in use",
-              "name": "percentused",
+              "description": "the Cluster name",
+              "name": "clustername",
               "type": "string"
             },
             {
-              "description": "the Zone ID",
-              "name": "zoneid",
+              "description": "the capacity name",
+              "name": "name",
               "type": "string"
             },
             {
-              "description": "the total capacity available",
-              "name": "capacitytotal",
+              "description": "the capacity currently in allocated",
+              "name": "capacityallocated",
               "type": "long"
             },
             {
+              "description": "the Pod name",
+              "name": "podname",
+              "type": "string"
+            },
+            {
               "description": "the Zone name",
               "name": "zonename",
               "type": "string"
             },
             {
-              "description": "the Cluster name",
-              "name": "clustername",
+              "description": "the Zone ID",
+              "name": "zoneid",
               "type": "string"
             },
             {
-              "description": "the capacity currently in allocated",
-              "name": "capacityallocated",
+              "description": "the capacity currently in use",
+              "name": "capacityused",
               "type": "long"
             },
             {
-              "description": "the capacity type",
-              "name": "type",
-              "type": "short"
-            },
-            {
-              "description": "the capacity name",
-              "name": "name",
+              "description": "the percentage of capacity currently in use",
+              "name": "percentused",
               "type": "string"
             },
             {
-              "description": "the Pod name",
-              "name": "podname",
+              "description": "the Pod ID",
+              "name": "podid",
               "type": "string"
             },
             {
@@ -454,27 +433,21 @@
               "type": "string"
             },
             {
-              "description": "the Pod ID",
-              "name": "podid",
-              "type": "string"
+              "description": "the total capacity available",
+              "name": "capacitytotal",
+              "type": "long"
             }
           ],
           "type": "list"
         },
         {
-          "description": "the netmask of the Pod",
-          "name": "netmask",
+          "description": "the name of the Pod",
+          "name": "name",
           "type": "string"
         },
-        {},
-        {
-          "description": "indicates Vlan ID for the range. This parameter is deprecated, please use 'vlanid' from ipranges parameter.",
-          "name": "vlanid",
-          "type": "list"
-        },
         {
-          "description": "the gateway of the Pod",
-          "name": "gateway",
+          "description": "the ID of the Pod",
+          "name": "id",
           "type": "string"
         },
         {
@@ -482,26 +455,53 @@
           "name": "zonename",
           "type": "string"
         },
+        {},
+        {
+          "description": "the allocation state of the Pod",
+          "name": "allocationstate",
+          "type": "string"
+        },
         {
-          "description": "indicates if range is dedicated for CPVM and SSVM. This parameter is deprecated, please use 'forsystemvms' from ipranges parameter.",
-          "name": "forsystemvms",
+          "description": "the ending IP for the Pod. This parameter is deprecated, please use 'endip' from ipranges parameter.",
+          "name": "endip",
           "type": "list"
         },
         {
-          "description": "true if the entity/resource has annotations",
-          "name": "hasannotations",
-          "type": "boolean"
+          "description": "the starting IP for the Pod. This parameter is deprecated, please use 'startip' from ipranges parameter.",
+          "name": "startip",
+          "type": "list"
         },
-        {},
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
+          "description": "the IP ranges for the Pod",
+          "name": "ipranges",
+          "response": [
+            {
+              "description": "the starting IP for the range",
+              "name": "startip",
+              "type": "string"
+            },
+            {
+              "description": "indicates if range is dedicated for CPVM and SSVM",
+              "name": "forsystemvms",
+              "type": "string"
+            },
+            {
+              "description": "indicates Vlan ID for the range",
+              "name": "vlanid",
+              "type": "string"
+            },
+            {
+              "description": "the ending IP for the range",
+              "name": "endip",
+              "type": "string"
+            }
+          ],
+          "type": "list"
         },
         {
-          "description": "the allocation state of the Pod",
-          "name": "allocationstate",
-          "type": "string"
+          "description": "indicates Vlan ID for the range. This parameter is deprecated, please use 'vlanid' from ipranges parameter.",
+          "name": "vlanid",
+          "type": "list"
         }
       ]
     },
@@ -511,89 +511,89 @@
       "name": "ldapCreateAccount",
       "params": [
         {
-          "description": "Account UUID, required for adding account from external provisioning system",
+          "description": "Network domain for the account's networks",
           "length": 255,
-          "name": "accountid",
+          "name": "networkdomain",
           "required": false,
           "type": "string"
         },
         {
-          "description": "Unique username.",
+          "description": "User UUID, required for adding account from external provisioning system",
           "length": 255,
-          "name": "username",
-          "required": true,
+          "name": "userid",
+          "required": false,
           "type": "string"
         },
         {
-          "description": "details for account used to store specific parameters",
+          "description": "Creates the account under the specified role.",
           "length": 255,
-          "name": "accountdetails",
+          "name": "roleid",
+          "related": "createRole,importRole,listRoles,updateRole",
           "required": false,
-          "type": "map"
+          "type": "uuid"
         },
         {
-          "description": "Specifies a timezone for this command. For more information on the timezone parameter, see Time Zone Format.",
+          "description": "Creates the user under the specified domain.",
           "length": 255,
-          "name": "timezone",
+          "name": "domainid",
+          "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
           "required": false,
-          "type": "string"
+          "type": "uuid"
         },
         {
-          "description": "Creates the user under the specified account. If no account is specified, the username will be used as the account name.",
+          "description": "Type of the account. Specify 0 for user, 1 for root admin, and 2 for domain admin",
           "length": 255,
-          "name": "account",
+          "name": "accounttype",
           "required": false,
-          "type": "string"
+          "type": "short"
         },
         {
-          "description": "Creates the user under the specified domain.",
+          "description": "Specifies a timezone for this command. For more information on the timezone parameter, see Time Zone Format.",
           "length": 255,
-          "name": "domainid",
-          "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
+          "name": "timezone",
           "required": false,
-          "type": "uuid"
+          "type": "string"
         },
         {
-          "description": "Network domain for the account's networks",
+          "description": "Account UUID, required for adding account from external provisioning system",
           "length": 255,
-          "name": "networkdomain",
+          "name": "accountid",
           "required": false,
           "type": "string"
         },
         {
-          "description": "User UUID, required for adding account from external provisioning system",
+          "description": "Creates the user under the specified account. If no account is specified, the username will be used as the account name.",
           "length": 255,
-          "name": "userid",
+          "name": "account",
           "required": false,
           "type": "string"
         },
         {
-          "description": "Type of the account. Specify 0 for user, 1 for root admin, and 2 for domain admin",
+          "description": "details for account used to store specific parameters",
           "length": 255,
-          "name": "accounttype",
+          "name": "accountdetails",
           "required": false,
-          "type": "short"
+          "type": "map"
         },
         {
-          "description": "Creates the account under the specified role.",
+          "description": "Unique username.",
           "length": 255,
-          "name": "roleid",
-          "related": "createRole,importRole,listRoles,updateRole",
-          "required": false,
-          "type": "uuid"
+          "name": "username",
+          "required": true,
+          "type": "string"
         }
       ],
       "related": "createAccount,disableAccount,enableAccount,lockAccount,updateAccount,markDefaultZoneForAccount,listAccounts,listAccounts",
       "response": [
         {
-          "description": "the total number of projects being administrated by this account",
-          "name": "projecttotal",
+          "description": "the total number of network traffic bytes sent",
+          "name": "sentbytes",
           "type": "long"
         },
         {
-          "description": "the total number of virtual machines deployed by this account",
-          "name": "vmtotal",
-          "type": "long"
+          "description": "the total secondary storage space (in GiB) owned by account",
+          "name": "secondarystoragetotal",
+          "type": "float"
         },
         {
           "description": "the total primary storage space (in GiB) available to be used for this account",
@@ -601,43 +601,160 @@
           "type": "string"
         },
         {
-          "description": "true if account is default, false otherwise",
-          "name": "isdefault",
-          "type": "boolean"
-        },
-        {
-          "description": "the date when this account was created",
-          "name": "created",
-          "type": "date"
-        },
-        {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
-        },
-        {
-          "description": "Base64 string representation of the resource icon",
-          "name": "icon",
-          "type": "resourceiconresponse"
+          "description": "the network domain",
+          "name": "networkdomain",
+          "type": "string"
         },
         {
-          "description": "the total number of virtual machines running for this account",
-          "name": "vmrunning",
-          "type": "integer"
+          "description": "the list of users associated with account",
+          "name": "user",
+          "response": [
+            {
+              "description": "Base64 string representation of the resource icon",
+              "name": "icon",
+              "type": "resourceiconresponse"
+            },
+            {
+              "description": "the domain name of the user",
+              "name": "domain",
+              "type": "string"
+            },
+            {
+              "description": "the ID of the role",
+              "name": "roleid",
+              "type": "string"
+            },
+            {
+              "description": "the timezone user was created in",
+              "name": "timezone",
+              "type": "string"
+            },
+            {
+              "description": "the user state",
+              "name": "state",
+              "type": "string"
+            },
+            {
+              "description": "the user email address",
+              "name": "email",
+              "type": "string"
+            },
+            {
+              "description": "the domain ID of the user",
+              "name": "domainid",
+              "type": "string"
+            },
+            {
+              "description": "the api key of the user",
+              "name": "apikey",
+              "type": "string"
+            },
+            {
+              "description": "the user ID",
+              "name": "id",
+              "type": "string"
+            },
+            {
+              "description": "the date and time the user account was created",
+              "name": "created",
+              "type": "date"
+            },
+            {
+              "description": "the user name",
+              "name": "username",
+              "type": "string"
+            },
+            {
+              "description": "the account name of the user",
+              "name": "account",
+              "type": "string"
+            },
+            {
+              "description": "the secret key of the user",
+              "name": "secretkey",
+              "type": "string"
+            },
+            {
+              "description": "the source type of the user in lowercase, such as native, ldap, saml2",
+              "name": "usersource",
+              "type": "string"
+            },
+            {
+              "description": "true if user is default, false otherwise",
+              "name": "isdefault",
+              "type": "boolean"
+            },
+            {
+              "description": "the user lastname",
+              "name": "lastname",
+              "type": "string"
+            },
+            {
+              "description": "the boolean value representing if the updating target is in caller's child domain",
+              "name": "iscallerchilddomain",
+              "type": "boolean"
+            },
+            {
+              "description": "the account type of the user",
+              "name": "accounttype",
+              "type": "short"
+            },
+            {
+              "description": "the type of the role",
+              "name": "roletype",
+              "type": "string"
+            },
+            {
+              "description": "the name of the role",
+              "name": "rolename",
+              "type": "string"
+            },
+            {
+              "description": "the account ID of the user",
+              "name": "accountid",
+              "type": "string"
+            },
+            {
+              "description": "the user firstname",
+              "name": "firstname",
+              "type": "string"
+            }
+          ],
+          "type": "list"
         },
         {
-          "description": "the total number of cpu cores available to be created for this account",
-          "name": "cpuavailable",
+          "description": "the total number of networks owned by account",
+          "name": "networktotal",
+          "type": "long"
+        },
+        {
+          "description": "the total number of networks the account can own",
+          "name": "networklimit",
           "type": "string"
         },
         {
-          "description": "the total secondary storage space (in GiB) available to be used for this account",
-          "name": "secondarystorageavailable",
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
+        },
+        {
+          "description": "the total number of virtual machines deployed by this account",
+          "name": "vmtotal",
+          "type": "long"
+        },
+        {
+          "description": "the total number of vpcs the account can own",
+          "name": "vpclimit",
           "type": "string"
         },
         {
-          "description": "the network domain",
-          "name": "networkdomain",
+          "description": "the total number of cpu cores owned by account",
+          "name": "cputotal",
+          "type": "long"
+        },
+        {
+          "description": "the total number of virtual machines that can be deployed by this account",
+          "name": "vmlimit",
           "type": "string"
         },
         {
@@ -645,105 +762,109 @@
           "name": "domain",
           "type": "string"
         },
-        {},
         {
-          "description": "the total number of network traffic bytes sent",
-          "name": "sentbytes",
-          "type": "long"
+          "description": "the name of the role",
+          "name": "rolename",
+          "type": "string"
         },
         {
-          "description": "the total volume being used by this account",
-          "name": "volumetotal",
+          "description": "the total number of vpcs owned by account",
+          "name": "vpctotal",
           "type": "long"
         },
         {
-          "description": "the default zone of the account",
-          "name": "defaultzoneid",
-          "type": "string"
+          "description": "the total memory (in MB) owned by account",
+          "name": "memorytotal",
+          "type": "long"
         },
         {
-          "description": "the id of the account",
-          "name": "id",
+          "description": "the total primary storage space (in GiB) the account can own",
+          "name": "primarystoragelimit",
           "type": "string"
         },
         {
-          "description": "the total secondary storage space (in GiB) owned by account",
-          "name": "secondarystoragetotal",
-          "type": "float"
+          "description": "true if account is default, false otherwise",
+          "name": "isdefault",
+          "type": "boolean"
         },
         {
-          "description": "the total secondary storage space (in GiB) the account can own",
-          "name": "secondarystoragelimit",
+          "description": "path of the Domain the account belongs to",
+          "name": "domainpath",
           "type": "string"
         },
         {
-          "description": "the total number of vpcs the account can own",
-          "name": "vpclimit",
+          "description": "the total number of projects the account can own",
+          "name": "projectlimit",
           "type": "string"
         },
         {
-          "description": "the list of acl groups that account belongs to",
-          "name": "groups",
-          "type": "list"
+          "description": "the type of the role (Admin, ResourceAdmin, DomainAdmin, User)",
+          "name": "roletype",
+          "type": "string"
         },
         {
-          "description": "the total number of snapshots which can be stored by this account",
-          "name": "snapshotlimit",
+          "description": "the total number of projects available for administration by this account",
+          "name": "projectavailable",
           "type": "string"
         },
         {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
-          "type": "string"
+          "description": "the date when this account was created",
+          "name": "created",
+          "type": "date"
         },
         {
-          "description": "the total number of vpcs available to be created for this account",
-          "name": "vpcavailable",
+          "description": "the state of the account",
+          "name": "state",
           "type": "string"
         },
         {
-          "description": "id of the Domain the account belongs to",
-          "name": "domainid",
-          "type": "string"
+          "description": "details for the account",
+          "name": "accountdetails",
+          "type": "map"
         },
         {
-          "description": "the total number of cpu cores the account can own",
-          "name": "cpulimit",
+          "description": "the total volume which can be used by this account",
+          "name": "volumelimit",
           "type": "string"
         },
         {
-          "description": "the name of the role",
-          "name": "rolename",
+          "description": "the id of the account",
+          "name": "id",
           "type": "string"
         },
         {
-          "description": "the total primary storage space (in GiB) the account can own",
-          "name": "primarystoragelimit",
+          "description": "the list of acl groups that account belongs to",
+          "name": "groups",
+          "type": "list"
+        },
+        {
+          "description": "the total volume available for this account",
+          "name": "volumeavailable",
           "type": "string"
         },
         {
-          "description": "true if the account requires cleanup",
-          "name": "iscleanuprequired",
-          "type": "boolean"
+          "description": "the total primary storage space (in GiB) owned by account",
+          "name": "primarystoragetotal",
+          "type": "long"
         },
         {
-          "description": "the total number of projects the account can own",
-          "name": "projectlimit",
+          "description": "the total number of public ip addresses available for this account to acquire",
+          "name": "ipavailable",
           "type": "string"
         },
         {
-          "description": "the total number of snapshots available for this account",
-          "name": "snapshotavailable",
-          "type": "string"
+          "description": "the total number of virtual machines running for this account",
+          "name": "vmrunning",
+          "type": "integer"
         },
         {
-          "description": "path of the Domain the account belongs to",
-          "name": "domainpath",
+          "description": "the total number of templates which can be created by this account",
+          "name": "templatelimit",
           "type": "string"
         },
         {
-          "description": "the state of the account",
-          "name": "state",
+          "description": "the total secondary storage space (in GiB) available to be used for this account",
+          "name": "secondarystorageavailable",
           "type": "string"
         },
         {
@@ -752,216 +873,103 @@
           "type": "long"
         },
         {
-          "description": "the total volume which can be used by this account",
-          "name": "volumelimit",
-          "type": "string"
-        },
-        {
-          "description": "the type of the role (Admin, ResourceAdmin, DomainAdmin, User)",
-          "name": "roletype",
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
           "type": "string"
         },
         {
-          "description": "the total number of templates which have been created by this account",
-          "name": "templatetotal",
+          "description": "the total number of projects being administrated by this account",
+          "name": "projecttotal",
           "type": "long"
         },
         {
-          "description": "the total number of projects available for administration by this account",
-          "name": "projectavailable",
+          "description": "the total number of snapshots available for this account",
+          "name": "snapshotavailable",
           "type": "string"
         },
         {
-          "description": "the total number of networks owned by account",
-          "name": "networktotal",
+          "description": "the total number of snapshots stored by this account",
+          "name": "snapshottotal",
           "type": "long"
         },
         {
-          "description": "the total memory (in MB) the account can own",
-          "name": "memorylimit",
+          "description": "the total volume being used by this account",
+          "name": "volumetotal",
+          "type": "long"
+        },
+        {
+          "description": "the ID of the role",
+          "name": "roleid",
           "type": "string"
         },
         {
-          "description": "the total number of cpu cores owned by account",
-          "name": "cputotal",
-          "type": "long"
+          "description": "the name of the account",
+          "name": "name",
+          "type": "string"
         },
         {
-          "description": "the total number of public ip addresses allocated for this account",
-          "name": "iptotal",
-          "type": "long"
+          "description": "the total number of virtual machines available for this account to acquire",
+          "name": "vmavailable",
+          "type": "string"
         },
         {
-          "description": "the total number of templates available to be created by this account",
-          "name": "templateavailable",
+          "description": "the total secondary storage space (in GiB) the account can own",
+          "name": "secondarystoragelimit",
           "type": "string"
         },
         {
+          "description": "Base64 string representation of the resource icon",
+          "name": "icon",
+          "type": "resourceiconresponse"
+        },
+        {
           "description": "account type (admin, domain-admin, user)",
           "name": "accounttype",
           "type": "short"
         },
         {
-          "description": "the list of users associated with account",
-          "name": "user",
-          "response": [
-            {
-              "description": "the ID of the role",
-              "name": "roleid",
-              "type": "string"
-            },
-            {
-              "description": "the user firstname",
-              "name": "firstname",
-              "type": "string"
-            },
-            {
-              "description": "the user state",
-              "name": "state",
-              "type": "string"
-            },
-            {
-              "description": "the domain name of the user",
-              "name": "domain",
-              "type": "string"
-            },
-            {
-              "description": "Base64 string representation of the resource icon",
-              "name": "icon",
-              "type": "resourceiconresponse"
-            },
-            {
-              "description": "the boolean value representing if the updating target is in caller's child domain",
-              "name": "iscallerchilddomain",
-              "type": "boolean"
-            },
-            {
-              "description": "the user lastname",
-              "name": "lastname",
-              "type": "string"
-            },
-            {
-              "description": "the secret key of the user",
-              "name": "secretkey",
-              "type": "string"
-            },
-            {
-              "description": "the user ID",
-              "name": "id",
-              "type": "string"
-            },
-            {
-              "description": "the account type of the user",
-              "name": "accounttype",
-              "type": "short"
-            },
-            {
-              "description": "the account name of the user",
-              "name": "account",
-              "type": "string"
-            },
-            {
-              "description": "the date and time the user account was created",
-              "name": "created",
-              "type": "date"
-            },
-            {
-              "description": "the type of the role",
-              "name": "roletype",
-              "type": "string"
-            },
-            {
-              "description": "the name of the role",
-              "name": "rolename",
-              "type": "string"
-            },
-            {
-              "description": "the user email address",
-              "name": "email",
-              "type": "string"
-            },
-            {
-              "description": "the timezone user was created in",
-              "name": "timezone",
-              "type": "string"
-            },
-            {
-              "description": "the account ID of the user",
-              "name": "accountid",
-              "type": "string"
-            },
-            {
-              "description": "true if user is default, false otherwise",
-              "name": "isdefault",
-              "type": "boolean"
-            },
-            {
-              "description": "the user name",
-              "name": "username",
-              "type": "string"
-            },
-            {
-              "description": "the source type of the user in lowercase, such as native, ldap, saml2",
-              "name": "usersource",
-              "type": "string"
-            },
-            {
-              "description": "the domain ID of the user",
-              "name": "domainid",
-              "type": "string"
-            },
-            {
-              "description": "the api key of the user",
-              "name": "apikey",
-              "type": "string"
-            }
-          ],
-          "type": "list"
-        },
-        {},
-        {
-          "description": "the total number of snapshots stored by this account",
-          "name": "snapshottotal",
+          "description": "the total number of public ip addresses allocated for this account",
+          "name": "iptotal",
           "type": "long"
         },
         {
-          "description": "the total number of virtual machines available for this account to acquire",
-          "name": "vmavailable",
+          "description": "the total number of snapshots which can be stored by this account",
+          "name": "snapshotlimit",
           "type": "string"
         },
         {
-          "description": "the total volume available for this account",
-          "name": "volumeavailable",
+          "description": "the total number of templates available to be created by this account",
+          "name": "templateavailable",
           "type": "string"
         },
         {
-          "description": "the total number of vpcs owned by account",
-          "name": "vpctotal",
-          "type": "long"
-        },
-        {
-          "description": "the total memory (in MB) owned by account",
-          "name": "memorytotal",
-          "type": "long"
+          "description": "the total memory (in MB) available to be created for this account",
+          "name": "memoryavailable",
+          "type": "string"
         },
         {
-          "description": "the ID of the role",
-          "name": "roleid",
+          "description": "the total number of cpu cores the account can own",
+          "name": "cpulimit",
           "type": "string"
         },
         {
-          "description": "the total memory (in MB) available to be created for this account",
-          "name": "memoryavailable",
+          "description": "the total number of public ip addresses this account can acquire",
+          "name": "iplimit",
           "type": "string"
         },
         {
-          "description": "the total primary storage space (in GiB) owned by account",
-          "name": "primarystoragetotal",
+          "description": "the total number of templates which have been created by this account",
+          "name": "templatetotal",
           "type": "long"
         },
         {
-          "description": "the total number of virtual machines that can be deployed by this account",
-          "name": "vmlimit",
+          "description": "the total number of vpcs available to be created for this account",
+          "name": "vpcavailable",
+          "type": "string"
+        },
+        {
+          "description": "the total number of cpu cores available to be created for this account",
+          "name": "cpuavailable",
           "type": "string"
         },
         {
@@ -970,8 +978,8 @@
           "type": "string"
         },
         {
-          "description": "the total number of templates which can be created by this account",
-          "name": "templatelimit",
+          "description": "the total memory (in MB) the account can own",
+          "name": "memorylimit",
           "type": "string"
         },
         {
@@ -980,28 +988,20 @@
           "type": "integer"
         },
         {
-          "description": "the total number of networks the account can own",
-          "name": "networklimit",
-          "type": "string"
-        },
-        {
-          "description": "details for the account",
-          "name": "accountdetails",
-          "type": "map"
-        },
-        {
-          "description": "the name of the account",
-          "name": "name",
-          "type": "string"
+          "description": "true if the account requires cleanup",
+          "name": "iscleanuprequired",
+          "type": "boolean"
         },
+        {},
         {
-          "description": "the total number of public ip addresses available for this account to acquire",
-          "name": "ipavailable",
+          "description": "id of the Domain the account belongs to",
+          "name": "domainid",
           "type": "string"
         },
+        {},
         {
-          "description": "the total number of public ip addresses this account can acquire",
-          "name": "iplimit",
+          "description": "the default zone of the account",
+          "name": "defaultzoneid",
           "type": "string"
         }
       ],
@@ -1022,8 +1022,18 @@
       ],
       "response": [
         {},
+        {
+          "description": "true if operation is executed successfully",
+          "name": "success",
+          "type": "boolean"
+        },
         {},
         {
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
+          "type": "string"
+        },
+        {
           "description": "the current status of the latest async job acting on this object",
           "name": "jobstatus",
           "type": "integer"
@@ -1032,16 +1042,6 @@
           "description": "any text associated with the success or failure",
           "name": "displaytext",
           "type": "string"
-        },
-        {
-          "description": "true if operation is executed successfully",
-          "name": "success",
-          "type": "boolean"
-        },
-        {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
-          "type": "string"
         }
       ],
       "since": "4.6.0"
@@ -1087,44 +1087,86 @@
       "related": "prepareTemplate,listIsos,registerIso,updateIso,copyTemplate,createTemplate,listTemplates,registerTemplate,updateTemplate,listTemplates,createTemplate,copyTemplate,registerTemplate,registerIso,copyIso,listIsos",
       "response": [
         {
-          "description": "Lists the download progress of a template across all secondary storages",
-          "name": "downloaddetails",
-          "type": "list"
-        },
-        {
-          "description": "additional key/value details tied with template",
-          "name": "details",
-          "type": "map"
-        },
-        {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
-          "type": "string"
+          "description": "true if the entity/resource has annotations",
+          "name": "hasannotations",
+          "type": "boolean"
         },
         {
-          "description": "the type of the template",
-          "name": "templatetype",
-          "type": "string"
+          "description": "the size of the template",
+          "name": "size",
+          "type": "long"
         },
         {
-          "description": "true if the template is ready to be deployed from, false otherwise.",
-          "name": "isready",
-          "type": "boolean"
+          "description": "the date this template was created",
+          "name": "created",
+          "type": "date"
         },
         {
-          "description": "the format of the template.",
-          "name": "format",
-          "type": "imageformat"
+          "description": "the list of resource tags associated",
+          "name": "tags",
+          "response": [
+            {
+              "description": "the account associated with the tag",
+              "name": "account",
+              "type": "string"
+            },
+            {
+              "description": "customer associated with the tag",
+              "name": "customer",
+              "type": "string"
+            },
+            {
+              "description": "id of the resource",
+              "name": "resourceid",
+              "type": "string"
+            },
+            {
+              "description": "the project id the tag belongs to",
+              "name": "projectid",
+              "type": "string"
+            },
+            {
+              "description": "the ID of the domain associated with the tag",
+              "name": "domainid",
+              "type": "string"
+            },
+            {
+              "description": "resource type",
+              "name": "resourcetype",
+              "type": "string"
+            },
+            {
+              "description": "the domain associated with the tag",
+              "name": "domain",
+              "type": "string"
+            },
+            {
+              "description": "tag value",
+              "name": "value",
+              "type": "string"
+            },
+            {
+              "description": "the project name where tag belongs to",
+              "name": "project",
+              "type": "string"
+            },
+            {
+              "description": "tag key name",
+              "name": "key",
+              "type": "string"
+            }
+          ],
+          "type": "set"
         },
         {
-          "description": "the status of the template",
-          "name": "status",
+          "description": "the name of the secondary storage host for the template",
+          "name": "hostname",
           "type": "string"
         },
         {
-          "description": "the processor bit size",
-          "name": "bits",
-          "type": "int"
+          "description": "the name of the OS type for this template.",
+          "name": "ostypename",
+          "type": "string"
         },
         {
           "description": "checksum of the template",
@@ -1132,171 +1174,115 @@
           "type": "string"
         },
         {
-          "description": "true if this template is a public template, false otherwise",
-          "name": "ispublic",
-          "type": "boolean"
-        },
-        {
-          "description": "the template ID of the parent template if present",
-          "name": "sourcetemplateid",
+          "description": "the status of the template",
+          "name": "status",
           "type": "string"
         },
         {
-          "description": "the date this template was created",
-          "name": "created",
-          "type": "date"
+          "description": "the format of the template.",
+          "name": "format",
+          "type": "imageformat"
         },
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
+          "description": "the tag of this template",
+          "name": "templatetag",
+          "type": "string"
         },
+        {},
         {
-          "description": "the ID of the domain to which the template belongs",
-          "name": "domainid",
+          "description": "the project id of the template",
+          "name": "projectid",
           "type": "string"
         },
         {
-          "description": "the name of the secondary storage host for the template",
-          "name": "hostname",
+          "description": "the type of the template",
+          "name": "templatetype",
           "type": "string"
         },
         {
-          "description": "the URL which the template/iso is registered from",
-          "name": "url",
-          "type": "string"
+          "description": "VMware only: true if template is deployed without orchestrating disks and networks but \"as-is\" defined in the template.",
+          "name": "deployasis",
+          "type": "boolean"
         },
         {
-          "description": "the ID of the secondary storage host for the template",
-          "name": "hostid",
+          "description": "if Datadisk template, then id of the root disk template this template belongs to",
+          "name": "parenttemplateid",
           "type": "string"
         },
         {
-          "description": "true if the reset password feature is enabled, false otherwise",
-          "name": "passwordenabled",
+          "description": "true if the template is managed across all Zones, false otherwise",
+          "name": "crossZones",
           "type": "boolean"
         },
         {
-          "description": "the template ID",
-          "name": "id",
-          "type": "string"
-        },
-        {
-          "description": "the size of the template",
-          "name": "size",
-          "type": "long"
+          "description": "true if the template is extractable, false otherwise",
+          "name": "isextractable",
+          "type": "boolean"
         },
+        {},
         {
           "description": "the account id to which the template belongs",
           "name": "accountid",
           "type": "string"
         },
         {
-          "description": "the ID of the OS type for this template.",
-          "name": "ostypeid",
-          "type": "string"
+          "description": "true if the template is ready to be deployed from, false otherwise.",
+          "name": "isready",
+          "type": "boolean"
         },
         {
-          "description": "the project id of the template",
-          "name": "projectid",
+          "description": "Lists the download progress of a template across all secondary storages",
+          "name": "downloaddetails",
+          "type": "list"
+        },
+        {
+          "description": "the ID of the domain to which the template belongs",
+          "name": "domainid",
           "type": "string"
         },
         {
-          "description": "true if the template is managed across all Zones, false otherwise",
-          "name": "crossZones",
-          "type": "boolean"
+          "description": "the physical size of the template",
+          "name": "physicalsize",
+          "type": "long"
         },
         {
-          "description": "VMware only: true if template is deployed without orchestrating disks and networks but \"as-is\" defined in the template.",
-          "name": "deployasis",
+          "description": "KVM Only: true if template is directly downloaded to Primary Storage bypassing Secondary Storage",
+          "name": "directdownload",
           "type": "boolean"
         },
         {
-          "description": "if Datadisk template, then id of the root disk template this template belongs to",
-          "name": "parenttemplateid",
-          "type": "string"
+          "description": "true if template is sshkey enabled, false otherwise",
+          "name": "sshkeyenabled",
+          "type": "boolean"
         },
         {
-          "description": "the list of resource tags associated",
-          "name": "tags",
-          "response": [
-            {
-              "description": "the ID of the domain associated with the tag",
-              "name": "domainid",
-              "type": "string"
-            },
-            {
-              "description": "tag value",
-              "name": "value",
-              "type": "string"
-            },
-            {
-              "description": "resource type",
-              "name": "resourcetype",
-              "type": "string"
-            },
-            {
-              "description": "customer associated with the tag",
-              "name": "customer",
-              "type": "string"
-            },
-            {
-              "description": "the domain associated with the tag",
-              "name": "domain",
-              "type": "string"
-            },
-            {
-              "description": "tag key name",
-              "name": "key",
-              "type": "string"
-            },
-            {
-              "description": "id of the resource",
-              "name": "resourceid",
-              "type": "string"
-            },
-            {
-              "description": "the project id the tag belongs to",
-              "name": "projectid",
-              "type": "string"
-            },
-            {
-              "description": "the account associated with the tag",
-              "name": "account",
-              "type": "string"
-            },
-            {
-              "description": "the project name where tag belongs to",
-              "name": "project",
-              "type": "string"
-            }
-          ],
-          "type": "set"
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
         },
         {
-          "description": "the name of the zone for this template",
-          "name": "zonename",
+          "description": "the template name",
+          "name": "name",
           "type": "string"
         },
         {
-          "description": "VMware only: additional key/value details tied with deploy-as-is template",
-          "name": "deployasisdetails",
-          "type": "map"
+          "description": "the template ID",
+          "name": "id",
+          "type": "string"
         },
         {
-          "description": "true if this template is a featured template, false otherwise",
-          "name": "isfeatured",
-          "type": "boolean"
+          "description": "the template display text",
+          "name": "displaytext",
+          "type": "string"
         },
-        {},
         {
-          "description": "the name of the OS type for this template.",
-          "name": "ostypename",
+          "description": "the template ID of the parent template if present",
+          "name": "sourcetemplateid",
           "type": "string"
         },
         {
-          "description": "true if the template is extractable, false otherwise",
-          "name": "isextractable",
+          "description": "true if this template is a public template, false otherwise",
+          "name": "ispublic",
           "type": "boolean"
         },
         {
@@ -1305,55 +1291,49 @@
           "type": "string"
         },
         {
-          "description": "the project name of the template",
-          "name": "project",
-          "type": "string"
+          "description": "additional key/value details tied with template",
+          "name": "details",
+          "type": "map"
         },
         {
-          "description": "true if template is sshkey enabled, false otherwise",
-          "name": "sshkeyenabled",
+          "description": "true if the reset password feature is enabled, false otherwise",
+          "name": "passwordenabled",
           "type": "boolean"
         },
         {
-          "description": "if root disk template, then ids of the datas disk templates this template owns",
-          "name": "childtemplates",
-          "type": "set"
-        },
-        {
-          "description": "the template display text",
-          "name": "displaytext",
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
           "type": "string"
         },
-        {},
         {
-          "description": "true if the entity/resource has annotations",
-          "name": "hasannotations",
+          "description": "true if this template is a featured template, false otherwise",
+          "name": "isfeatured",
           "type": "boolean"
         },
         {
-          "description": "the physical size of the template",
-          "name": "physicalsize",
-          "type": "long"
-        },
-        {
           "description": "the name of the domain to which the template belongs",
           "name": "domain",
           "type": "string"
         },
         {
-          "description": "Base64 string representation of the resource icon",
-          "name": "icon",
-          "type": "resourceiconresponse"
+          "description": "the hypervisor on which the template runs",
+          "name": "hypervisor",
+          "type": "string"
         },
         {
-          "description": "the template name",
-          "name": "name",
-          "type": "string"
+          "description": "true if template requires HVM enabled, false otherwise",
+          "name": "requireshvm",
+          "type": "boolean"
         },
         {
-          "description": "the tag of this template",
-          "name": "templatetag",
-          "type": "string"
+          "description": "the date this template was removed",
+          "name": "removed",
+          "type": "date"
+        },
+        {
+          "description": "the processor bit size",
+          "name": "bits",
+          "type": "int"
         },
         {
           "description": "the ID of the zone for this template",
@@ -1361,9 +1341,9 @@
           "type": "string"
         },
         {
-          "description": "true if template requires HVM enabled, false otherwise",
-          "name": "requireshvm",
-          "type": "boolean"
+          "description": "the ID of the OS type for this template.",
+          "name": "ostypeid",
+          "type": "string"
         },
         {
           "description": "true if template contains XS/VMWare tools inorder to support dynamic scaling of VM cpu/memory",
@@ -1371,23 +1351,43 @@
           "type": "boolean"
         },
         {
+          "description": "Base64 string representation of the resource icon",
+          "name": "icon",
+          "type": "resourceiconresponse"
+        },
+        {
+          "description": "the project name of the template",
+          "name": "project",
+          "type": "string"
+        },
+        {
+          "description": "VMware only: additional key/value details tied with deploy-as-is template",
+          "name": "deployasisdetails",
+          "type": "map"
+        },
+        {
           "description": "true if the ISO is bootable, false otherwise",
           "name": "bootable",
           "type": "boolean"
         },
         {
-          "description": "the date this template was removed",
-          "name": "removed",
-          "type": "date"
+          "description": "if root disk template, then ids of the datas disk templates this template owns",
+          "name": "childtemplates",
+          "type": "set"
         },
         {
-          "description": "KVM Only: true if template is directly downloaded to Primary Storage bypassing Secondary Storage",
-          "name": "directdownload",
-          "type": "boolean"
+          "description": "the ID of the secondary storage host for the template",
+          "name": "hostid",
+          "type": "string"
         },
         {
-          "description": "the hypervisor on which the template runs",
-          "name": "hypervisor",
+          "description": "the name of the zone for this template",
+          "name": "zonename",
+          "type": "string"
+        },
+        {
+          "description": "the URL which the template/iso is registered from",
+          "name": "url",
           "type": "string"
         }
       ]
@@ -1408,16 +1408,15 @@
       ],
       "response": [
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
+          "description": "true if operation is executed successfully",
+          "name": "success",
+          "type": "boolean"
         },
         {},
-        {},
         {
-          "description": "any text associated with the success or failure",
-          "name": "displaytext",
-          "type": "string"
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
         },
         {
           "description": "the UUID of the latest async job acting on this object",
@@ -1425,10 +1424,11 @@
           "type": "string"
         },
         {
-          "description": "true if operation is executed successfully",
-          "name": "success",
-          "type": "boolean"
-        }
+          "description": "any text associated with the success or failure",
+          "name": "displaytext",
+          "type": "string"
+        },
+        {}
       ]
     },
     {
@@ -1437,13 +1437,6 @@
       "name": "provisionCertificate",
       "params": [
         {
-          "description": "Name of the CA service provider, otherwise the default configured provider plugin will be used",
-          "length": 255,
-          "name": "provider",
-          "required": false,
-          "type": "string"
-        },
-        {
           "description": "Whether to attempt reconnection with host/agent after successful deployment of certificate. When option is not provided, configured global setting is used",
           "length": 255,
           "name": "reconnect",
@@ -1457,15 +1450,28 @@
           "related": "addHost,cancelHostMaintenance,cancelHostAsDegraded,declareHostAsDegraded,listHosts,prepareHostForMaintenance,reconnectHost,updateHost,addBaremetalHost,listExternalLoadBalancers",
           "required": true,
           "type": "uuid"
+        },
+        {
+          "description": "Name of the CA service provider, otherwise the default configured provider plugin will be used",
+          "length": 255,
+          "name": "provider",
+          "required": false,
+          "type": "string"
         }
       ],
       "response": [
+        {},
+        {},
         {
           "description": "true if operation is executed successfully",
           "name": "success",
           "type": "boolean"
         },
-        {},
+        {
+          "description": "any text associated with the success or failure",
+          "name": "displaytext",
+          "type": "string"
+        },
         {
           "description": "the UUID of the latest async job acting on this object",
           "name": "jobid",
@@ -1475,13 +1481,7 @@
           "description": "the current status of the latest async job acting on this object",
           "name": "jobstatus",
           "type": "integer"
-        },
-        {
-          "description": "any text associated with the success or failure",
-          "name": "displaytext",
-          "type": "string"
-        },
-        {}
+        }
       ],
       "since": "4.11.0"
     },
@@ -1491,6 +1491,13 @@
       "name": "addExternalFirewall",
       "params": [
         {
+          "description": "Password of the external firewall appliance.",
+          "length": 255,
+          "name": "password",
+          "required": true,
+          "type": "string"
+        },
+        {
           "description": "Username of the external firewall appliance.",
           "length": 255,
           "name": "username",
@@ -1506,13 +1513,6 @@
           "type": "uuid"
         },
         {
-          "description": "Password of the external firewall appliance.",
-          "length": 255,
-          "name": "password",
-          "required": true,
-          "type": "string"
-        },
-        {
           "description": "URL of the external firewall appliance.",
           "length": 255,
           "name": "url",
@@ -1523,34 +1523,45 @@
       "related": "listExternalFirewalls",
       "response": [
         {
+          "description": "the usage interface of the external firewall",
+          "name": "usageinterface",
+          "type": "string"
+        },
+        {
+          "description": "the private interface of the external firewall",
+          "name": "privateinterface",
+          "type": "string"
+        },
+        {
           "description": "the timeout (in seconds) for requests to the external firewall",
           "name": "timeout",
           "type": "string"
         },
-        {},
+        {
+          "description": "the public security zone of the external firewall",
+          "name": "publiczone",
+          "type": "string"
+        },
         {
           "description": "the number of times to retry requests to the external firewall",
           "name": "numretries",
           "type": "string"
         },
+        {},
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
+          "description": "the ID of the network device",
+          "name": "id",
+          "type": "string"
         },
+        {},
         {
           "description": "the UUID of the latest async job acting on this object",
           "name": "jobid",
           "type": "string"
         },
         {
-          "description": "the zone ID of the external firewall",
-          "name": "zoneid",
-          "type": "string"
-        },
-        {
-          "description": "the private security zone of the external firewall",
-          "name": "privatezone",
+          "description": "the public interface of the external firewall",
+          "name": "publicinterface",
           "type": "string"
         },
         {
@@ -1558,21 +1569,20 @@
           "name": "ipaddress",
           "type": "string"
         },
-        {},
         {
-          "description": "the username that's used to log in to the external firewall",
-          "name": "username",
+          "description": "the private security zone of the external firewall",
+          "name": "privatezone",
           "type": "string"
         },
         {
-          "description": "the ID of the network device",
-          "name": "id",
+          "description": "the username that's used to log in to the external firewall",
+          "name": "username",
           "type": "string"
         },
         {
-          "description": "the public security zone of the external firewall",
-          "name": "publiczone",
-          "type": "string"
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
         },
         {
           "description": "the ID of the external firewall",
@@ -1580,18 +1590,8 @@
           "type": "string"
         },
         {
-          "description": "the usage interface of the external firewall",
-          "name": "usageinterface",
-          "type": "string"
-        },
-        {
-          "description": "the private interface of the external firewall",
-          "name": "privateinterface",
-          "type": "string"
-        },
-        {
-          "description": "the public interface of the external firewall",
-          "name": "publicinterface",
+          "description": "the zone ID of the external firewall",
+          "name": "zoneid",
           "type": "string"
         }
       ]
@@ -1611,18 +1611,12 @@
         }
       ],
       "response": [
-        {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
-          "type": "string"
-        },
         {},
         {
           "description": "the current status of the latest async job acting on this object",
           "name": "jobstatus",
           "type": "integer"
         },
-        {},
         {
           "description": "any text associated with the success or failure",
           "name": "displaytext",
@@ -1632,7 +1626,13 @@
           "description": "true if operation is executed successfully",
           "name": "success",
           "type": "boolean"
-        }
+        },
+        {
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
+          "type": "string"
+        },
+        {}
       ]
     },
     {
@@ -1641,54 +1641,51 @@
       "name": "listVirtualMachinesMetrics",
       "params": [
         {
-          "description": "comma separated list of host details requested, value can be a list of [all, group, nics, stats, secgrp, tmpl, servoff, diskoff, iso, volume, min, affgrp]. If no parameter is passed in, the details will be defaulted to all",
+          "description": "list vms by vpc",
           "length": 255,
-          "name": "details",
+          "name": "vpcid",
+          "related": "createVPC,listVPCs,updateVPC,createVPC,listVPCs,updateVPC,migrateVPC",
           "required": false,
-          "type": "list"
+          "type": "uuid"
         },
         {
-          "description": "list vms by iso",
+          "description": "list only resources belonging to the domain specified",
           "length": 255,
-          "name": "isoid",
+          "name": "domainid",
+          "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
           "required": false,
           "type": "uuid"
         },
         {
-          "description": "the target hypervisor for the template",
+          "description": "list resources by display flag; only ROOT admin is eligible to pass this parameter",
           "length": 255,
-          "name": "hypervisor",
+          "name": "displayvm",
           "required": false,
-          "type": "string"
+          "since": "4.4",
+          "type": "boolean"
         },
         {
-          "description": "the availability zone ID",
+          "description": "the pod ID",
           "length": 255,
-          "name": "zoneid",
-          "related": "createZone,updateZone,listZones,listZones",
+          "name": "podid",
+          "related": "listPods,updatePod,createManagementNetworkIpRange",
           "required": false,
           "type": "uuid"
         },
         {
-          "description": "list resources by account. Must be used with the domainId parameter.",
-          "length": 255,
-          "name": "account",
-          "required": false,
-          "type": "string"
-        },
-        {
-          "description": "the user ID that created the VM and is under the account that owns the VM",
+          "description": "the security group ID",
           "length": 255,
-          "name": "userid",
-          "related": "createUser,disableUser,enableUser,getUser,listUsers,lockUser,updateUser",
+          "name": "securitygroupid",
+          "related": "createSecurityGroup,listSecurityGroups,updateSecurityGroup",
           "required": false,
+          "since": "4.15",
           "type": "uuid"
         },
         {
-          "description": "list vms by affinity group",
+          "description": "the storage ID where vm's volumes belong to",
           "length": 255,
-          "name": "affinitygroupid",
-          "related": "createAffinityGroup,listAffinityGroups",
+          "name": "storageid",
+          "related": "cancelStorageMaintenance,createStoragePool,listStoragePools,findStoragePoolsForMigration,enableStorageMaintenance,updateStoragePool,syncStoragePool,updateStorageCapabilities,listVsphereStoragePolicyCompatiblePools",
           "required": false,
           "type": "uuid"
         },
@@ -1700,68 +1697,56 @@
           "type": "string"
         },
         {
-          "description": "list resources by display flag; only ROOT admin is eligible to pass this parameter",
-          "length": 255,
-          "name": "displayvm",
-          "required": false,
-          "since": "4.4",
-          "type": "boolean"
-        },
-        {
-          "description": "list only resources belonging to the domain specified",
+          "description": "the group ID",
           "length": 255,
-          "name": "domainid",
-          "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
+          "name": "groupid",
+          "related": "createInstanceGroup,listInstanceGroups,updateInstanceGroup",
           "required": false,
           "type": "uuid"
         },
         {
-          "description": "If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false",
+          "description": "list vms by ssh keypair name",
           "length": 255,
-          "name": "listall",
+          "name": "keypair",
           "required": false,
-          "type": "boolean"
+          "type": "string"
         },
         {
-          "description": "",
+          "description": "the availability zone ID",
           "length": 255,
-          "name": "pagesize",
+          "name": "zoneid",
+          "related": "createZone,updateZone,listZones,listZones",
           "required": false,
-          "type": "integer"
+          "type": "uuid"
         },
         {
-          "description": "the host ID",
+          "description": "list vms by template",
           "length": 255,
-          "name": "hostid",
-          "related": "addHost,cancelHostMaintenance,cancelHostAsDegraded,declareHostAsDegraded,listHosts,prepareHostForMaintenance,reconnectHost,updateHost,addBaremetalHost,listExternalLoadBalancers",
+          "name": "templateid",
+          "related": "prepareTemplate,listIsos,registerIso,updateIso,copyTemplate,createTemplate,listTemplates,registerTemplate,updateTemplate,listTemplates,createTemplate,copyTemplate,registerTemplate,registerIso,copyIso,listIsos",
           "required": false,
           "type": "uuid"
         },
         {
-          "description": "list by the service offering",
+          "description": "comma separated list of host details requested, value can be a list of [all, group, nics, stats, secgrp, tmpl, servoff, diskoff, iso, volume, min, affgrp]. If no parameter is passed in, the details will be defaulted to all",
           "length": 255,
-          "name": "serviceofferingid",
-          "related": "createServiceOffering,updateServiceOffering,listServiceOfferings",
+          "name": "details",
           "required": false,
-          "since": "4.4",
-          "type": "uuid"
+          "type": "list"
         },
         {
-          "description": "the security group ID",
+          "description": "",
           "length": 255,
-          "name": "securitygroupid",
-          "related": "createSecurityGroup,listSecurityGroups,updateSecurityGroup",
+          "name": "pagesize",
           "required": false,
-          "since": "4.15",
-          "type": "uuid"
+          "type": "integer"
         },
         {
-          "description": "list vms by vpc",
+          "description": "name of the virtual machine (a substring match is made against the parameter value, data for all matching VMs will be returned)",
           "length": 255,
-          "name": "vpcid",
-          "related": "createVPC,listVPCs,updateVPC,createVPC,listVPCs,updateVPC,migrateVPC",
+          "name": "name",
           "required": false,
-          "type": "uuid"
+          "type": "string"
         },
         {
           "description": "the IDs of the virtual machines, mutually exclusive with id",
@@ -1773,12 +1758,11 @@
           "type": "list"
         },
         {
-          "description": "list vms by template",
+          "description": "the target hypervisor for the template",
           "length": 255,
-          "name": "templateid",
-          "related": "prepareTemplate,listIsos,registerIso,updateIso,copyTemplate,createTemplate,listTemplates,registerTemplate,updateTemplate,listTemplates,createTemplate,copyTemplate,registerTemplate,registerIso,copyIso,listIsos",
+          "name": "hypervisor",
           "required": false,
-          "type": "uuid"
+          "type": "string"
         },
         {
           "description": "list objects by project",
@@ -1789,121 +1773,177 @@
           "type": "uuid"
         },
         {
-          "description": "the ID of the virtual machine",
+          "description": "list vms by affinity group",
           "length": 255,
-          "name": "id",
-          "related": "assignVirtualMachine,migrateVirtualMachine,migrateVirtualMachineWithVolume,recoverVirtualMachine,attachIso,detachIso,addNicToVirtualMachine,deployVirtualMachine,destroyVirtualMachine,listVirtualMachines,scaleVirtualMachine,rebootVirtualMachine,removeNicFromVirtualMachine,resetPasswordForVirtualMachine,resetSSHKeyForVirtualMachine,restoreVirtualMachine,startVirtualMachine,stopVirtualMachine,updateDefaultNicForVirtualMachine,updateVirtualMachine,changeServiceForVirtua [...]
+          "name": "affinitygroupid",
+          "related": "createAffinityGroup,listAffinityGroups",
           "required": false,
           "type": "uuid"
         },
         {
-          "description": "",
+          "description": "list by the High Availability offering; true if filtering VMs with HA enabled; false for VMs with HA disabled",
           "length": 255,
-          "name": "page",
+          "name": "haenable",
           "required": false,
-          "type": "integer"
+          "since": "4.15",
+          "type": "boolean"
         },
         {
-          "description": "list vms by ssh keypair name",
+          "description": "List resources by tags (key/value pairs)",
           "length": 255,
-          "name": "keypair",
+          "name": "tags",
           "required": false,
-          "type": "string"
+          "type": "map"
         },
         {
-          "description": "name of the virtual machine (a substring match is made against the parameter value, data for all matching VMs will be returned)",
+          "description": "the host ID",
           "length": 255,
-          "name": "name",
+          "name": "hostid",
+          "related": "addHost,cancelHostMaintenance,cancelHostAsDegraded,declareHostAsDegraded,listHosts,prepareHostForMaintenance,reconnectHost,updateHost,addBaremetalHost,listExternalLoadBalancers",
           "required": false,
-          "type": "string"
+          "type": "uuid"
         },
         {
-          "description": "list by network type; true if need to list vms using Virtual Network, false otherwise",
+          "description": "list vms by iso",
           "length": 255,
-          "name": "forvirtualnetwork",
+          "name": "isoid",
           "required": false,
-          "type": "boolean"
+          "type": "uuid"
         },
         {
-          "description": "flag to display the resource icon for VMs",
+          "description": "state of the virtual machine. Possible values are: Running, Stopped, Present, Destroyed, Expunged. Present is used for the state equal not destroyed.",
           "length": 255,
-          "name": "showicon",
+          "name": "state",
           "required": false,
-          "since": "4.16.0.0",
-          "type": "boolean"
+          "type": "string"
         },
         {
-          "description": "the group ID",
+          "description": "the user ID that created the VM and is under the account that owns the VM",
           "length": 255,
-          "name": "groupid",
-          "related": "createInstanceGroup,listInstanceGroups,updateInstanceGroup",
+          "name": "userid",
+          "related": "createUser,disableUser,enableUser,getUser,listUsers,lockUser,updateUser",
           "required": false,
           "type": "uuid"
         },
         {
-          "description": "list by network id",
+          "description": "",
           "length": 255,
-          "name": "networkid",
-          "related": "createNetwork,listNetworks,updateNetwork,createNetwork,updateNetwork,listNetworks,migrateNetwork,listF5LoadBalancerNetworks,listNetscalerLoadBalancerNetworks,listNiciraNvpDeviceNetworks,listPaloAltoFirewallNetworks,listSrxFirewallNetworks,listBrocadeVcsDeviceNetworks",
+          "name": "page",
           "required": false,
-          "type": "uuid"
+          "type": "integer"
         },
         {
-          "description": "List resources by tags (key/value pairs)",
+          "description": "flag to display the resource icon for VMs",
           "length": 255,
-          "name": "tags",
+          "name": "showicon",
           "required": false,
-          "type": "map"
+          "since": "4.16.0.0",
+          "type": "boolean"
         },
         {
-          "description": "state of the virtual machine. Possible values are: Running, Stopped, Present, Destroyed, Expunged. Present is used for the state equal not destroyed.",
+          "description": "If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false",
           "length": 255,
-          "name": "state",
+          "name": "listall",
+          "required": false,
+          "type": "boolean"
+        },
+        {
+          "description": "list resources by account. Must be used with the domainId parameter.",
+          "length": 255,
+          "name": "account",
           "required": false,
           "type": "string"
         },
         {
-          "description": "the pod ID",
+          "description": "defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves.",
           "length": 255,
-          "name": "podid",
-          "related": "listPods,updatePod,createManagementNetworkIpRange",
+          "name": "isrecursive",
+          "required": false,
+          "type": "boolean"
+        },
+        {
+          "description": "list by network id",
+          "length": 255,
+          "name": "networkid",
+          "related": "createNetwork,listNetworks,updateNetwork,createNetwork,updateNetwork,listNetworks,migrateNetwork,listF5LoadBalancerNetworks,listNetscalerLoadBalancerNetworks,listNiciraNvpDeviceNetworks,listPaloAltoFirewallNetworks,listSrxFirewallNetworks,listBrocadeVcsDeviceNetworks",
           "required": false,
           "type": "uuid"
         },
         {
-          "description": "the storage ID where vm's volumes belong to",
+          "description": "list by the service offering",
           "length": 255,
-          "name": "storageid",
-          "related": "cancelStorageMaintenance,createStoragePool,listStoragePools,findStoragePoolsForMigration,enableStorageMaintenance,updateStoragePool,syncStoragePool,updateStorageCapabilities,listVsphereStoragePolicyCompatiblePools",
+          "name": "serviceofferingid",
+          "related": "createServiceOffering,updateServiceOffering,listServiceOfferings",
           "required": false,
+          "since": "4.4",
           "type": "uuid"
         },
         {
-          "description": "defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves.",
+          "description": "list by network type; true if need to list vms using Virtual Network, false otherwise",
           "length": 255,
-          "name": "isrecursive",
+          "name": "forvirtualnetwork",
           "required": false,
           "type": "boolean"
         },
         {
-          "description": "list by the High Availability offering; true if filtering VMs with HA enabled; false for VMs with HA disabled",
+          "description": "the ID of the virtual machine",
           "length": 255,
-          "name": "haenable",
+          "name": "id",
+          "related": "assignVirtualMachine,migrateVirtualMachine,migrateVirtualMachineWithVolume,recoverVirtualMachine,attachIso,detachIso,addNicToVirtualMachine,deployVirtualMachine,destroyVirtualMachine,listVirtualMachines,scaleVirtualMachine,rebootVirtualMachine,removeNicFromVirtualMachine,resetPasswordForVirtualMachine,resetSSHKeyForVirtualMachine,restoreVirtualMachine,startVirtualMachine,stopVirtualMachine,updateDefaultNicForVirtualMachine,updateVirtualMachine,changeServiceForVirtua [...]
           "required": false,
-          "since": "4.15",
-          "type": "boolean"
+          "type": "uuid"
         }
       ],
       "related": "",
       "response": [
         {
-          "description": "the memory used by the vm",
-          "name": "memorykbs",
+          "description": "the ID of the template for the virtual machine. A -1 is returned if the virtual machine was created from an ISO file.",
+          "name": "templateid",
+          "type": "string"
+        },
+        {
+          "description": "the pool type of the virtual machine",
+          "name": "pooltype",
+          "type": "string"
+        },
+        {
+          "description": "the hypervisor on which the template runs",
+          "name": "hypervisor",
+          "type": "string"
+        },
+        {
+          "description": "the write (io) of disk on the vm",
+          "name": "diskiowrite",
           "type": "long"
         },
         {
-          "description": "the password (if exists) of the virtual machine",
-          "name": "password",
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
+        },
+        {
+          "description": "instance name of the user vm; this parameter is returned to the ROOT admin only",
+          "name": "instancename",
+          "type": "string"
+        },
+        {
+          "description": "the date when this virtual machine was created",
+          "name": "created",
+          "type": "date"
+        },
+        {
+          "description": "the name of the virtual machine",
+          "name": "name",
+          "type": "string"
+        },
+        {
+          "description": "the read (io) of disk on the vm",
+          "name": "diskioread",
+          "type": "long"
+        },
+        {
+          "description": "ssh key-pair",
+          "name": "keypair",
           "type": "string"
         },
         {
@@ -1912,18 +1952,24 @@
           "type": "string"
         },
         {
-          "description": "public IP address id associated with vm via Static nat rule",
-          "name": "publicip",
+          "description": "the vgpu type used by the virtual machine",
+          "name": "vgpu",
           "type": "string"
         },
         {
-          "description": "the ID of the backup offering of the virtual machine",
-          "name": "backupofferingid",
+          "description": "the ID of the service offering of the virtual machine",
+          "name": "serviceofferingid",
           "type": "string"
         },
+        {},
         {
-          "description": "the name of the template for the virtual machine",
-          "name": "templatename",
+          "description": "the amount of the vm's CPU currently used",
+          "name": "cpuused",
+          "type": "string"
+        },
+        {
+          "description": "the user's ID who deployed the virtual machine",
+          "name": "userid",
           "type": "string"
         },
         {
@@ -1931,431 +1977,394 @@
           "name": "cputotal",
           "type": "string"
         },
-        {},
+        {
+          "description": "device type of the root volume",
+          "name": "rootdevicetype",
+          "type": "string"
+        },
+        {
+          "description": "the project name of the vm",
+          "name": "project",
+          "type": "string"
+        },
+        {
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
+          "type": "string"
+        },
+        {
+          "description": "Guest vm Boot Type",
+          "name": "boottype",
+          "type": "string"
+        },
+        {
+          "description": "State of the Service from LB rule",
+          "name": "servicestate",
+          "type": "string"
+        },
+        {
+          "description": "the name of the backup offering of the virtual machine",
+          "name": "backupofferingname",
+          "type": "string"
+        },
+        {
+          "description": "the password (if exists) of the virtual machine",
+          "name": "password",
+          "type": "string"
+        },
+        {
+          "description": "the ID of the backup offering of the virtual machine",
+          "name": "backupofferingid",
+          "type": "string"
+        },
+        {
+          "description": " an alternate display text of the template for the virtual machine",
+          "name": "templatedisplaytext",
+          "type": "string"
+        },
         {
           "description": "OS type id of the vm",
           "name": "ostypeid",
           "type": "string"
         },
         {
-          "description": "Os type ID of the virtual machine",
-          "name": "guestosid",
+          "description": "the name of the host for the virtual machine",
+          "name": "hostname",
           "type": "string"
         },
-        {},
+        {
+          "description": "the speed of each cpu",
+          "name": "cpuspeed",
+          "type": "integer"
+        },
+        {
+          "description": "the total disk iops",
+          "name": "diskiopstotal",
+          "type": "long"
+        },
+        {
+          "description": "true if the entity/resource has annotations",
+          "name": "hasannotations",
+          "type": "boolean"
+        },
+        {
+          "description": "true if high-availability is enabled, false otherwise",
+          "name": "haenable",
+          "type": "boolean"
+        },
+        {
+          "description": "the total memory capacity in GiB",
+          "name": "memorytotal",
+          "type": "string"
+        },
+        {
+          "description": "the total number of network traffic bytes sent",
+          "name": "sentbytes",
+          "type": "long"
+        },
         {
           "description": "Guest vm Boot Mode",
           "name": "bootmode",
           "type": "string"
         },
         {
-          "description": "the name of the backup offering of the virtual machine",
-          "name": "backupofferingname",
+          "description": "the ID of the disk offering of the virtual machine",
+          "name": "diskofferingid",
           "type": "string"
         },
         {
-          "description": "list of security groups associated with the virtual machine",
-          "name": "securitygroup",
+          "description": "OS name of the vm",
+          "name": "osdisplayname",
+          "type": "string"
+        },
+        {
+          "description": "network write in MiB",
+          "name": "networkwrite",
+          "type": "string"
+        },
+        {
+          "description": "the account associated with the virtual machine",
+          "name": "account",
+          "type": "string"
+        },
+        {
+          "description": "true if the password rest feature is enabled, false otherwise",
+          "name": "passwordenabled",
+          "type": "boolean"
+        },
+        {
+          "description": "the VM's primary IP address",
+          "name": "ipaddress",
+          "type": "string"
+        },
+        {
+          "description": "the number of cpu this virtual machine is running with",
+          "name": "cpunumber",
+          "type": "integer"
+        },
+        {
+          "description": "the name of the availability zone for the virtual machine",
+          "name": "zonename",
+          "type": "string"
+        },
+        {
+          "description": "network read in MiB",
+          "name": "networkread",
+          "type": "string"
+        },
+        {
+          "description": "the list of resource tags associated",
+          "name": "tags",
           "response": [
             {
-              "description": "the project id of the group",
-              "name": "projectid",
+              "description": "customer associated with the tag",
+              "name": "customer",
               "type": "string"
             },
             {
-              "description": "the list of resource tags associated with the rule",
-              "name": "tags",
-              "response": [
-                {
-                  "description": "resource type",
-                  "name": "resourcetype",
-                  "type": "string"
-                },
-                {
-                  "description": "tag key name",
-                  "name": "key",
-                  "type": "string"
-                },
-                {
-                  "description": "the domain associated with the tag",
-                  "name": "domain",
-                  "type": "string"
-                },
-                {
-                  "description": "the account associated with the tag",
-                  "name": "account",
-                  "type": "string"
-                },
-                {
-                  "description": "the project name where tag belongs to",
-                  "name": "project",
-                  "type": "string"
-                },
-                {
-                  "description": "the ID of the domain associated with the tag",
-                  "name": "domainid",
-                  "type": "string"
-                },
-                {
-                  "description": "tag value",
-                  "name": "value",
-                  "type": "string"
-                },
-                {
-                  "description": "the project id the tag belongs to",
-                  "name": "projectid",
-                  "type": "string"
-                },
-                {
-                  "description": "id of the resource",
-                  "name": "resourceid",
-                  "type": "string"
-                },
-                {
-                  "description": "customer associated with the tag",
-                  "name": "customer",
-                  "type": "string"
-                }
-              ],
-              "type": "set"
+              "description": "tag value",
+              "name": "value",
+              "type": "string"
             },
             {
-              "description": "the ID of the security group",
-              "name": "id",
+              "description": "the account associated with the tag",
+              "name": "account",
               "type": "string"
             },
             {
-              "description": "the name of the security group",
-              "name": "name",
+              "description": "id of the resource",
+              "name": "resourceid",
               "type": "string"
             },
             {
-              "description": "the project name of the group",
+              "description": "the project name where tag belongs to",
               "name": "project",
               "type": "string"
             },
             {
-              "description": "the list of ingress rules associated with the security group",
-              "name": "ingressrule",
-              "response": [
-                {
-                  "description": "the code for the ICMP message response",
-                  "name": "icmpcode",
-                  "type": "integer"
-                },
-                {
-                  "description": "account owning the security group rule",
-                  "name": "account",
-                  "type": "string"
-                },
-                {
-                  "description": "the CIDR notation for the base IP address of the security group rule",
-                  "name": "cidr",
-                  "type": "string"
-                },
-                {
-                  "description": "the starting IP of the security group rule",
-                  "name": "startport",
-                  "type": "integer"
-                },
-                {
-                  "description": "the ending IP of the security group rule ",
-                  "name": "endport",
-                  "type": "integer"
-                },
-                {
-                  "description": "the id of the security group rule",
-                  "name": "ruleid",
-                  "type": "string"
-                },
-                {
-                  "description": "the protocol of the security group rule",
-                  "name": "protocol",
-                  "type": "string"
-                },
-                {
-                  "description": "the type of the ICMP message response",
-                  "name": "icmptype",
-                  "type": "integer"
-                },
-                {
-                  "description": "security group name",
-                  "name": "securitygroupname",
-                  "type": "string"
-                },
-                {
-                  "description": "the list of resource tags associated with the rule",
-                  "name": "tags",
-                  "response": [
-                    {
-                      "description": "the account associated with the tag",
-                      "name": "account",
-                      "type": "string"
-                    },
-                    {
-                      "description": "customer associated with the tag",
-                      "name": "customer",
-                      "type": "string"
-                    },
-                    {
-                      "description": "resource type",
-                      "name": "resourcetype",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the project id the tag belongs to",
-                      "name": "projectid",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the domain associated with the tag",
-                      "name": "domain",
-                      "type": "string"
-                    },
-                    {
-                      "description": "tag value",
-                      "name": "value",
-                      "type": "string"
-                    },
-                    {
-                      "description": "tag key name",
-                      "name": "key",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the project name where tag belongs to",
-                      "name": "project",
-                      "type": "string"
-                    },
-                    {
-                      "description": "id of the resource",
-                      "name": "resourceid",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the ID of the domain associated with the tag",
-                      "name": "domainid",
-                      "type": "string"
-                    }
-                  ],
-                  "type": "set"
-                }
-              ],
-              "type": "set"
-            },
-            {
-              "description": "the domain ID of the security group",
+              "description": "the ID of the domain associated with the tag",
               "name": "domainid",
               "type": "string"
             },
             {
-              "description": "the list of virtualmachine ids associated with this securitygroup",
-              "name": "virtualmachineids",
-              "type": "set"
+              "description": "the project id the tag belongs to",
+              "name": "projectid",
+              "type": "string"
             },
             {
-              "description": "the domain name of the security group",
+              "description": "the domain associated with the tag",
               "name": "domain",
               "type": "string"
             },
             {
-              "description": "the description of the security group",
-              "name": "description",
+              "description": "tag key name",
+              "name": "key",
               "type": "string"
             },
             {
-              "description": "the account owning the security group",
-              "name": "account",
+              "description": "resource type",
+              "name": "resourcetype",
               "type": "string"
-            },
-            {
-              "description": "the list of egress rules associated with the security group",
-              "name": "egressrule",
-              "response": [
-                {
-                  "description": "the CIDR notation for the base IP address of the security group rule",
-                  "name": "cidr",
-                  "type": "string"
-                },
-                {
-                  "description": "the type of the ICMP message response",
-                  "name": "icmptype",
-                  "type": "integer"
-                },
-                {
-                  "description": "account owning the security group rule",
-                  "name": "account",
-                  "type": "string"
-                },
-                {
-                  "description": "the id of the security group rule",
-                  "name": "ruleid",
-                  "type": "string"
-                },
-                {
-                  "description": "the starting IP of the security group rule",
-                  "name": "startport",
-                  "type": "integer"
-                },
-                {
-                  "description": "the ending IP of the security group rule ",
-                  "name": "endport",
-                  "type": "integer"
-                },
-                {
-                  "description": "the protocol of the security group rule",
-                  "name": "protocol",
-                  "type": "string"
-                },
-                {
-                  "description": "the list of resource tags associated with the rule",
-                  "name": "tags",
-                  "response": [
-                    {
-                      "description": "tag value",
-                      "name": "value",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the project id the tag belongs to",
-                      "name": "projectid",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the domain associated with the tag",
-                      "name": "domain",
-                      "type": "string"
-                    },
-                    {
-                      "description": "id of the resource",
-                      "name": "resourceid",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the account associated with the tag",
-                      "name": "account",
-                      "type": "string"
-                    },
-                    {
-                      "description": "resource type",
-                      "name": "resourcetype",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the project name where tag belongs to",
-                      "name": "project",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the ID of the domain associated with the tag",
-                      "name": "domainid",
-                      "type": "string"
-                    },
-                    {
-                      "description": "tag key name",
-                      "name": "key",
-                      "type": "string"
-                    },
-                    {
-                      "description": "customer associated with the tag",
-                      "name": "customer",
-                      "type": "string"
-                    }
-                  ],
-                  "type": "set"
-                },
-                {
-                  "description": "the code for the ICMP message response",
-                  "name": "icmpcode",
-                  "type": "integer"
-                },
-                {
-                  "description": "security group name",
-                  "name": "securitygroupname",
-                  "type": "string"
-                }
-              ],
-              "type": "set"
-            },
-            {
-              "description": "the number of virtualmachines associated with this securitygroup",
-              "name": "virtualmachinecount",
-              "type": "integer"
             }
           ],
           "type": "set"
         },
         {
-          "description": "the ID of the disk offering of the virtual machine",
-          "name": "diskofferingid",
+          "description": "the date when this virtual machine was updated last time",
+          "name": "lastupdated",
+          "type": "date"
+        },
+        {
+          "description": "user generated name. The name of the virtual machine is returned if no displayname exists.",
+          "name": "displayname",
           "type": "string"
         },
         {
-          "description": "the outgoing network traffic on the host",
-          "name": "networkkbswrite",
-          "type": "long"
+          "description": "Base64 string representation of the resource icon",
+          "name": "icon",
+          "type": "resourceiconresponse"
         },
-        {},
         {
-          "description": "the list of resource tags associated",
-          "name": "tags",
+          "description": "the ID of the domain in which the virtual machine exists",
+          "name": "domainid",
+          "type": "string"
+        },
+        {
+          "description": "List of read-only Vm details as comma separated string.",
+          "name": "readonlydetails",
+          "type": "string"
+        },
+        {
+          "description": "the virtual network for the service offering",
+          "name": "forvirtualnetwork",
+          "type": "boolean"
+        },
+        {
+          "description": "the memory allocated for the virtual machine",
+          "name": "memory",
+          "type": "integer"
+        },
+        {
+          "description": "the list of nics associated with vm",
+          "name": "nic",
           "response": [
             {
-              "description": "resource type",
-              "name": "resourcetype",
+              "description": "the Secondary ipv4 addr of nic",
+              "name": "secondaryip",
+              "type": "list"
+            },
+            {
+              "description": "the isolation uri of the nic",
+              "name": "isolationuri",
               "type": "string"
             },
             {
-              "description": "the project id the tag belongs to",
-              "name": "projectid",
+              "description": "the traffic type of the nic",
+              "name": "traffictype",
               "type": "string"
             },
             {
-              "description": "the domain associated with the tag",
-              "name": "domain",
+              "description": "Id of the vm to which the nic belongs",
+              "name": "virtualmachineid",
               "type": "string"
             },
             {
-              "description": "the account associated with the tag",
-              "name": "account",
+              "description": "the name of the corresponding network",
+              "name": "networkname",
               "type": "string"
             },
             {
-              "description": "the ID of the domain associated with the tag",
-              "name": "domainid",
+              "description": "the type of the nic",
+              "name": "type",
               "type": "string"
             },
             {
-              "description": "id of the resource",
-              "name": "resourceid",
+              "description": "the ip address of the nic",
+              "name": "ipaddress",
               "type": "string"
             },
             {
-              "description": "the project name where tag belongs to",
-              "name": "project",
+              "description": "true if nic is default, false otherwise",
+              "name": "isdefault",
+              "type": "boolean"
+            },
+            {
+              "description": "the ID of the corresponding network",
+              "name": "networkid",
               "type": "string"
             },
             {
-              "description": "tag key name",
-              "name": "key",
+              "description": "the gateway of the nic",
+              "name": "gateway",
               "type": "string"
             },
             {
-              "description": "tag value",
-              "name": "value",
+              "description": "the isolated private VLAN type if available",
+              "name": "isolatedpvlantype",
               "type": "string"
             },
             {
-              "description": "customer associated with the tag",
-              "name": "customer",
+              "description": "Id of the NSX Logical Switch (if NSX based), null otherwise",
+              "name": "nsxlogicalswitch",
+              "type": "string"
+            },
+            {
+              "description": "IP addresses associated with NIC found for unmanaged VM",
+              "name": "ipaddresses",
+              "type": "list"
+            },
+            {
+              "description": "Id of the NSX Logical Switch Port (if NSX based), null otherwise",
+              "name": "nsxlogicalswitchport",
+              "type": "string"
+            },
+            {
+              "description": "ID of the VLAN/VNI if available",
+              "name": "vlanid",
+              "type": "integer"
+            },
+            {
+              "description": "the netmask of the nic",
+              "name": "netmask",
+              "type": "string"
+            },
+            {
+              "description": "Type of adapter if available",
+              "name": "adaptertype",
+              "type": "string"
+            },
+            {
+              "description": "true if nic is default, false otherwise",
+              "name": "macaddress",
+              "type": "string"
+            },
+            {
+              "description": "the extra dhcp options on the nic",
+              "name": "extradhcpoption",
+              "type": "list"
+            },
+            {
+              "description": "the gateway of IPv6 network",
+              "name": "ip6gateway",
+              "type": "string"
+            },
+            {
+              "description": "the isolated private VLAN if available",
+              "name": "isolatedpvlan",
+              "type": "integer"
+            },
+            {
+              "description": "the broadcast uri of the nic",
+              "name": "broadcasturi",
+              "type": "string"
+            },
+            {
+              "description": "the IPv6 address of network",
+              "name": "ip6address",
+              "type": "string"
+            },
+            {
+              "description": "the cidr of IPv6 network",
+              "name": "ip6cidr",
+              "type": "string"
+            },
+            {
+              "description": "device id for the network when plugged into the virtual machine",
+              "name": "deviceid",
+              "type": "string"
+            },
+            {
+              "description": "the ID of the nic",
+              "name": "id",
               "type": "string"
             }
           ],
           "type": "set"
         },
         {
-          "description": "the total memory capacity in GiB",
-          "name": "memorytotal",
+          "description": "the name of the domain in which the virtual machine exists",
+          "name": "domain",
+          "type": "string"
+        },
+        {},
+        {
+          "description": "the outgoing network traffic on the host",
+          "name": "networkkbswrite",
+          "type": "long"
+        },
+        {
+          "description": "the name of the disk offering of the virtual machine",
+          "name": "diskofferingname",
+          "type": "string"
+        },
+        {
+          "description": "the state of the virtual machine",
+          "name": "state",
+          "type": "string"
+        },
+        {
+          "description": "public IP address id associated with vm via Static nat rule",
+          "name": "publicip",
           "type": "string"
         },
         {
@@ -2364,60 +2373,60 @@
           "type": "string"
         },
         {
-          "description": "user generated name. The name of the virtual machine is returned if no displayname exists.",
-          "name": "displayname",
+          "description": "disk write in MiB",
+          "name": "diskwrite",
           "type": "string"
         },
         {
-          "description": "the total disk iops",
-          "name": "diskiopstotal",
-          "type": "long"
+          "description": "the user's name who deployed the virtual machine",
+          "name": "username",
+          "type": "string"
         },
         {
-          "description": "List of read-only Vm details as comma separated string.",
-          "name": "readonlydetails",
+          "description": "the name of the template for the virtual machine",
+          "name": "templatename",
           "type": "string"
         },
         {
-          "description": " an alternate display text of the template for the virtual machine",
-          "name": "templatedisplaytext",
+          "description": "public IP address id associated with vm via Static nat rule",
+          "name": "publicipid",
           "type": "string"
         },
         {
-          "description": "Guest vm Boot Type",
-          "name": "boottype",
+          "description": "the name of the service offering of the virtual machine",
+          "name": "serviceofferingname",
           "type": "string"
         },
         {
-          "description": "the incoming network traffic on the vm",
-          "name": "networkkbsread",
+          "description": "the name of the ISO attached to the virtual machine",
+          "name": "isoname",
+          "type": "string"
+        },
+        {
+          "description": "the read (bytes) of disk on the vm",
+          "name": "diskkbsread",
           "type": "long"
         },
         {
-          "description": "the virtual network for the service offering",
-          "name": "forvirtualnetwork",
-          "type": "boolean"
+          "description": "the memory used by the vm",
+          "name": "memorykbs",
+          "type": "long"
         },
         {
-          "description": "the user's ID who deployed the virtual machine",
-          "name": "userid",
+          "description": "the group ID of the virtual machine",
+          "name": "groupid",
           "type": "string"
         },
         {
+          "description": "Vm details in key/value pairs.",
+          "name": "details",
+          "type": "map"
+        },
+        {
           "description": "list of affinity groups associated with the virtual machine",
           "name": "affinitygroup",
           "response": [
             {
-              "description": "the project ID of the affinity group",
-              "name": "projectid",
-              "type": "string"
-            },
-            {
-              "description": "the type of the affinity group",
-              "name": "type",
-              "type": "string"
-            },
-            {
               "description": "the name of the affinity group",
               "name": "name",
               "type": "string"
@@ -2428,8 +2437,8 @@
               "type": "string"
             },
             {
-              "description": "the ID of the affinity group",
-              "name": "id",
+              "description": "the domain ID of the affinity group",
+              "name": "domainid",
               "type": "string"
             },
             {
@@ -2438,6 +2447,16 @@
               "type": "string"
             },
             {
+              "description": "the description of the affinity group",
+              "name": "description",
+              "type": "string"
+            },
+            {
+              "description": "the ID of the affinity group",
+              "name": "id",
+              "type": "string"
+            },
+            {
               "description": "virtual machine IDs associated with this affinity group",
               "name": "virtualmachineIds",
               "type": "list"
@@ -2448,31 +2467,21 @@
               "type": "string"
             },
             {
-              "description": "the domain ID of the affinity group",
-              "name": "domainid",
+              "description": "the project ID of the affinity group",
+              "name": "projectid",
               "type": "string"
             },
             {
-              "description": "the description of the affinity group",
-              "name": "description",
+              "description": "the type of the affinity group",
+              "name": "type",
               "type": "string"
             }
           ],
           "type": "set"
         },
         {
-          "description": "the ID of the ISO attached to the virtual machine",
-          "name": "isoid",
-          "type": "string"
-        },
-        {
-          "description": "true if the password rest feature is enabled, false otherwise",
-          "name": "passwordenabled",
-          "type": "boolean"
-        },
-        {
-          "description": "the read (bytes) of disk on the vm",
-          "name": "diskkbsread",
+          "description": "the internal memory that's free in vm or zero if it can not be calculated",
+          "name": "memoryintfreekbs",
           "type": "long"
         },
         {
@@ -2481,206 +2490,387 @@
           "type": "long"
         },
         {
-          "description": "the project id of the vm",
-          "name": "projectid",
-          "type": "string"
-        },
-        {
-          "description": "ssh key-pair",
-          "name": "keypair",
+          "description": "the ID of the ISO attached to the virtual machine",
+          "name": "isoid",
           "type": "string"
         },
         {
-          "description": "an optional field whether to the display the vm to the end user or not.",
-          "name": "displayvm",
-          "type": "boolean"
-        },
-        {
-          "description": "OS name of the vm",
-          "name": "osdisplayname",
+          "description": "the project id of the vm",
+          "name": "projectid",
           "type": "string"
         },
         {
-          "description": "network write in MiB",
-          "name": "networkwrite",
-          "type": "string"
+          "description": "device ID of the root volume",
+          "name": "rootdeviceid",
+          "type": "long"
         },
         {
-          "description": "the ID of the virtual machine",
-          "name": "id",
-          "type": "string"
+          "description": "the target memory in vm",
+          "name": "memorytargetkbs",
+          "type": "long"
         },
         {
-          "description": "the list of nics associated with vm",
-          "name": "nic",
+          "description": "list of security groups associated with the virtual machine",
+          "name": "securitygroup",
           "response": [
             {
-              "description": "Id of the vm to which the nic belongs",
-              "name": "virtualmachineid",
+              "description": "the name of the security group",
+              "name": "name",
               "type": "string"
             },
             {
-              "description": "Type of adapter if available",
-              "name": "adaptertype",
-              "type": "string"
-            },
-            {
-              "description": "IP addresses associated with NIC found for unmanaged VM",
-              "name": "ipaddresses",
-              "type": "list"
-            },
-            {
-              "description": "the ip address of the nic",
-              "name": "ipaddress",
-              "type": "string"
+              "description": "the list of egress rules associated with the security group",
+              "name": "egressrule",
+              "response": [
+                {
+                  "description": "the list of resource tags associated with the rule",
+                  "name": "tags",
+                  "response": [
+                    {
+                      "description": "the account associated with the tag",
+                      "name": "account",
+                      "type": "string"
+                    },
+                    {
+                      "description": "id of the resource",
+                      "name": "resourceid",
+                      "type": "string"
+                    },
+                    {
+                      "description": "the domain associated with the tag",
+                      "name": "domain",
+                      "type": "string"
+                    },
+                    {
+                      "description": "customer associated with the tag",
+                      "name": "customer",
+                      "type": "string"
+                    },
+                    {
+                      "description": "the project id the tag belongs to",
+                      "name": "projectid",
+                      "type": "string"
+                    },
+                    {
+                      "description": "the ID of the domain associated with the tag",
+                      "name": "domainid",
+                      "type": "string"
+                    },
+                    {
+                      "description": "tag key name",
+                      "name": "key",
+                      "type": "string"
+                    },
+                    {
+                      "description": "the project name where tag belongs to",
+                      "name": "project",
+                      "type": "string"
+                    },
+                    {
+                      "description": "tag value",
+                      "name": "value",
+                      "type": "string"
+                    },
+                    {
+                      "description": "resource type",
+                      "name": "resourcetype",
+                      "type": "string"
+                    }
+                  ],
+                  "type": "set"
+                },
+                {
+                  "description": "the protocol of the security group rule",
+                  "name": "protocol",
+                  "type": "string"
+                },
+                {
+                  "description": "the type of the ICMP message response",
+                  "name": "icmptype",
+                  "type": "integer"
+                },
+                {
+                  "description": "the id of the security group rule",
+                  "name": "ruleid",
+                  "type": "string"
+                },
+                {
+                  "description": "the code for the ICMP message response",
+                  "name": "icmpcode",
+                  "type": "integer"
+                },
+                {
+                  "description": "the CIDR notation for the base IP address of the security group rule",
+                  "name": "cidr",
+                  "type": "string"
+                },
+                {
+                  "description": "security group name",
+                  "name": "securitygroupname",
+                  "type": "string"
+                },
+                {
+                  "description": "the ending IP of the security group rule ",
+                  "name": "endport",
+                  "type": "integer"
+                },
+                {
+                  "description": "the starting IP of the security group rule",
+                  "name": "startport",
+                  "type": "integer"
+                },
+                {
+                  "description": "account owning the security group rule",
+                  "name": "account",
+                  "type": "string"
+                }
+              ],
+              "type": "set"
             },
             {
-              "description": "the cidr of IPv6 network",
-              "name": "ip6cidr",
+              "description": "the description of the security group",
+              "name": "description",
               "type": "string"
             },
             {
-              "description": "ID of the VLAN/VNI if available",
-              "name": "vlanid",
-              "type": "integer"
-            },
-            {
-              "description": "the isolated private VLAN type if available",
-              "name": "isolatedpvlantype",
-              "type": "string"
+              "description": "the list of resource tags associated with the rule",
+              "name": "tags",
+              "response": [
+                {
+                  "description": "the ID of the domain associated with the tag",
+                  "name": "domainid",
+                  "type": "string"
+                },
+                {
+                  "description": "the project id the tag belongs to",
+                  "name": "projectid",
+                  "type": "string"
+                },
+                {
+                  "description": "tag value",
+                  "name": "value",
+                  "type": "string"
+                },
+                {
+                  "description": "tag key name",
+                  "name": "key",
+                  "type": "string"
+                },
+                {
+                  "description": "the domain associated with the tag",
+                  "name": "domain",
+                  "type": "string"
+                },
+                {
+                  "description": "id of the resource",
+                  "name": "resourceid",
+                  "type": "string"
+                },
+                {
+                  "description": "resource type",
+                  "name": "resourcetype",
+                  "type": "string"
+                },
+                {
+                  "description": "customer associated with the tag",
+                  "name": "customer",
+                  "type": "string"
+                },
+                {
+                  "description": "the account associated with the tag",
+                  "name": "account",
+                  "type": "string"
+                },
+                {
+                  "description": "the project name where tag belongs to",
+                  "name": "project",
+                  "type": "string"
+                }
+              ],
+              "type": "set"
             },
             {
-              "description": "the type of the nic",
-              "name": "type",
+              "description": "the domain name of the security group",
+              "name": "domain",
               "type": "string"
             },
             {
-              "description": "the isolated private VLAN if available",
-              "name": "isolatedpvlan",
+              "description": "the number of virtualmachines associated with this securitygroup",
+              "name": "virtualmachinecount",
               "type": "integer"
             },
             {
-              "description": "the extra dhcp options on the nic",
-              "name": "extradhcpoption",
-              "type": "list"
-            },
-            {
-              "description": "the Secondary ipv4 addr of nic",
-              "name": "secondaryip",
-              "type": "list"
-            },
-            {
-              "description": "Id of the NSX Logical Switch Port (if NSX based), null otherwise",
-              "name": "nsxlogicalswitchport",
-              "type": "string"
-            },
-            {
-              "description": "the name of the corresponding network",
-              "name": "networkname",
-              "type": "string"
-            },
-            {
-              "description": "the IPv6 address of network",
-              "name": "ip6address",
-              "type": "string"
-            },
-            {
-              "description": "device id for the network when plugged into the virtual machine",
-              "name": "deviceid",
-              "type": "string"
-            },
-            {
-              "description": "true if nic is default, false otherwise",
-              "name": "isdefault",
-              "type": "boolean"
-            },
-            {
-              "description": "Id of the NSX Logical Switch (if NSX based), null otherwise",
-              "name": "nsxlogicalswitch",
-              "type": "string"
-            },
-            {
-              "description": "the gateway of IPv6 network",
-              "name": "ip6gateway",
-              "type": "string"
-            },
-            {
-              "description": "the netmask of the nic",
-              "name": "netmask",
-              "type": "string"
-            },
-            {
-              "description": "true if nic is default, false otherwise",
-              "name": "macaddress",
+              "description": "the project name of the group",
+              "name": "project",
               "type": "string"
             },
             {
-              "description": "the traffic type of the nic",
-              "name": "traffictype",
+              "description": "the project id of the group",
+              "name": "projectid",
               "type": "string"
             },
             {
-              "description": "the gateway of the nic",
-              "name": "gateway",
+              "description": "the account owning the security group",
+              "name": "account",
               "type": "string"
             },
             {
-              "description": "the isolation uri of the nic",
-              "name": "isolationuri",
+              "description": "the domain ID of the security group",
+              "name": "domainid",
               "type": "string"
             },
             {
-              "description": "the broadcast uri of the nic",
-              "name": "broadcasturi",
-              "type": "string"
+              "description": "the list of ingress rules associated with the security group",
+              "name": "ingressrule",
+              "response": [
+                {
+                  "description": "the protocol of the security group rule",
+                  "name": "protocol",
+                  "type": "string"
+                },
+                {
+                  "description": "the type of the ICMP message response",
+                  "name": "icmptype",
+                  "type": "integer"
+                },
+                {
+                  "description": "security group name",
+                  "name": "securitygroupname",
+                  "type": "string"
+                },
+                {
+                  "description": "the id of the security group rule",
+                  "name": "ruleid",
+                  "type": "string"
+                },
+                {
+                  "description": "the code for the ICMP message response",
+                  "name": "icmpcode",
+                  "type": "integer"
+                },
+                {
+                  "description": "account owning the security group rule",
+                  "name": "account",
+                  "type": "string"
+                },
+                {
+                  "description": "the starting IP of the security group rule",
+                  "name": "startport",
+                  "type": "integer"
+                },
+                {
+                  "description": "the CIDR notation for the base IP address of the security group rule",
+                  "name": "cidr",
+                  "type": "string"
+                },
+                {
+                  "description": "the list of resource tags associated with the rule",
+                  "name": "tags",
+                  "response": [
+                    {
+                      "description": "resource type",
+                      "name": "resourcetype",
+                      "type": "string"
+                    },
+                    {
+                      "description": "tag key name",
+                      "name": "key",
+                      "type": "string"
+                    },
+                    {
+                      "description": "the project name where tag belongs to",
+                      "name": "project",
+                      "type": "string"
+                    },
+                    {
+                      "description": "tag value",
+                      "name": "value",
+                      "type": "string"
+                    },
+                    {
+                      "description": "customer associated with the tag",
+                      "name": "customer",
+                      "type": "string"
+                    },
+                    {
+                      "description": "the project id the tag belongs to",
+                      "name": "projectid",
+                      "type": "string"
+                    },
+                    {
+                      "description": "id of the resource",
+                      "name": "resourceid",
+                      "type": "string"
+                    },
+                    {
+                      "description": "the account associated with the tag",
+                      "name": "account",
+                      "type": "string"
+                    },
+                    {
+                      "description": "the domain associated with the tag",
+                      "name": "domain",
+                      "type": "string"
+                    },
+                    {
+                      "description": "the ID of the domain associated with the tag",
+                      "name": "domainid",
+                      "type": "string"
+                    }
+                  ],
+                  "type": "set"
+                },
+                {
+                  "description": "the ending IP of the security group rule ",
+                  "name": "endport",
+                  "type": "integer"
+                }
+              ],
+              "type": "set"
             },
             {
-              "description": "the ID of the corresponding network",
-              "name": "networkid",
-              "type": "string"
+              "description": "the list of virtualmachine ids associated with this securitygroup",
+              "name": "virtualmachineids",
+              "type": "set"
             },
             {
-              "description": "the ID of the nic",
+              "description": "the ID of the security group",
               "name": "id",
               "type": "string"
             }
           ],
           "type": "set"
         },
+        {},
         {
-          "description": "the pool type of the virtual machine",
-          "name": "pooltype",
+          "description": "an alternate display text of the ISO attached to the virtual machine",
+          "name": "isodisplaytext",
           "type": "string"
         },
         {
-          "description": "the user's name who deployed the virtual machine",
-          "name": "username",
+          "description": "the ID of the virtual machine",
+          "name": "id",
           "type": "string"
         },
         {
-          "description": "the state of the virtual machine",
-          "name": "state",
+          "description": "the ID of the host for the virtual machine",
+          "name": "hostid",
           "type": "string"
         },
         {
-          "description": "the name of the service offering of the virtual machine",
-          "name": "serviceofferingname",
+          "description": "the group name of the virtual machine",
+          "name": "group",
           "type": "string"
         },
         {
-          "description": "true if the entity/resource has annotations",
-          "name": "hasannotations",
+          "description": "an optional field whether to the display the vm to the end user or not.",
+          "name": "displayvm",
           "type": "boolean"
         },
         {
-          "description": "disk write in MiB",
-          "name": "diskwrite",
-          "type": "string"
-        },
-        {
-          "description": "public IP address id associated with vm via Static nat rule",
-          "name": "publicipid",
-          "type": "string"
+          "description": "the incoming network traffic on the vm",
+          "name": "networkkbsread",
+          "type": "long"
         },
         {
           "description": "the write (bytes) of disk on the vm",
@@ -2688,214 +2878,98 @@
           "type": "long"
         },
         {
-          "description": "the ID of the host for the virtual machine",
-          "name": "hostid",
-          "type": "string"
+          "description": "true if vm contains XS/VMWare tools inorder to support dynamic scaling of VM cpu/memory.",
+          "name": "isdynamicallyscalable",
+          "type": "boolean"
         },
         {
-          "description": "the speed of each cpu",
-          "name": "cpuspeed",
-          "type": "integer"
-        },
+          "description": "Os type ID of the virtual machine",
+          "name": "guestosid",
+          "type": "string"
+        }
+      ],
+      "since": "4.9.3"
+    },
+    {
+      "description": "Lists hosts.",
+      "isasync": false,
+      "name": "listHosts",
+      "params": [
         {
-          "description": "the memory allocated for the virtual machine",
-          "name": "memory",
-          "type": "integer"
+          "description": "lists hosts existing in particular cluster",
+          "length": 255,
+          "name": "clusterid",
+          "related": "addCluster,listClusters,updateCluster",
+          "required": false,
+          "type": "uuid"
         },
         {
-          "description": "the name of the availability zone for the virtual machine",
-          "name": "zonename",
-          "type": "string"
+          "description": "list hosts for which out-of-band management is enabled",
+          "length": 255,
+          "name": "outofbandmanagementenabled",
+          "required": false,
+          "type": "boolean"
         },
         {
-          "description": "the date when this virtual machine was updated last time",
-          "name": "lastupdated",
-          "type": "date"
+          "description": "",
+          "length": 255,
+          "name": "page",
+          "required": false,
+          "type": "integer"
         },
         {
-          "description": "the total number of network traffic bytes sent",
-          "name": "sentbytes",
-          "type": "long"
+          "description": "comma separated list of host details requested, value can be a list of [ min, all, capacity, events, stats]",
+          "length": 255,
+          "name": "details",
+          "required": false,
+          "type": "list"
         },
         {
-          "description": "the ID of the service offering of the virtual machine",
-          "name": "serviceofferingid",
+          "description": "list hosts by resource state. Resource state represents current state determined by admin of host, value can be one of [Enabled, Disabled, Unmanaged, PrepareForMaintenance, ErrorInMaintenance, Maintenance, Error]",
+          "length": 255,
+          "name": "resourcestate",
+          "required": false,
           "type": "string"
         },
         {
-          "description": "the number of cpu this virtual machine is running with",
-          "name": "cpunumber",
+          "description": "",
+          "length": 255,
+          "name": "pagesize",
+          "required": false,
           "type": "integer"
         },
         {
-          "description": "the internal memory that's free in vm or zero if it can not be calculated",
-          "name": "memoryintfreekbs",
-          "type": "long"
+          "description": "the host type",
+          "length": 255,
+          "name": "type",
+          "required": false,
+          "type": "string"
         },
         {
-          "description": "the name of the domain in which the virtual machine exists",
-          "name": "domain",
-          "type": "string"
+          "description": "the id of the host",
+          "length": 255,
+          "name": "id",
+          "related": "addHost,cancelHostMaintenance,cancelHostAsDegraded,declareHostAsDegraded,listHosts,prepareHostForMaintenance,reconnectHost,updateHost,addBaremetalHost,listExternalLoadBalancers",
+          "required": false,
+          "type": "uuid"
         },
         {
-          "description": "the project name of the vm",
-          "name": "project",
-          "type": "string"
+          "description": "the Zone ID for the host",
+          "length": 255,
+          "name": "zoneid",
+          "related": "createZone,updateZone,listZones,listZones",
+          "required": false,
+          "type": "uuid"
         },
         {
-          "description": "an alternate display text of the ISO attached to the virtual machine",
-          "name": "isodisplaytext",
-          "type": "string"
+          "description": "the Pod ID for the host",
+          "length": 255,
+          "name": "podid",
+          "related": "listPods,updatePod,createManagementNetworkIpRange",
+          "required": false,
+          "type": "uuid"
         },
         {
-          "description": "Base64 string representation of the resource icon",
-          "name": "icon",
-          "type": "resourceiconresponse"
-        },
-        {
-          "description": "network read in MiB",
-          "name": "networkread",
-          "type": "string"
-        },
-        {
-          "description": "the read (io) of disk on the vm",
-          "name": "diskioread",
-          "type": "long"
-        },
-        {
-          "description": "the vgpu type used by the virtual machine",
-          "name": "vgpu",
-          "type": "string"
-        },
-        {
-          "description": "Vm details in key/value pairs.",
-          "name": "details",
-          "type": "map"
-        },
-        {
-          "description": "the name of the host for the virtual machine",
-          "name": "hostname",
-          "type": "string"
-        },
-        {
-          "description": "the ID of the domain in which the virtual machine exists",
-          "name": "domainid",
-          "type": "string"
-        },
-        {
-          "description": "device ID of the root volume",
-          "name": "rootdeviceid",
-          "type": "long"
-        },
-        {
-          "description": "the VM's primary IP address",
-          "name": "ipaddress",
-          "type": "string"
-        },
-        {
-          "description": "the name of the virtual machine",
-          "name": "name",
-          "type": "string"
-        },
-        {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
-        },
-        {
-          "description": "device type of the root volume",
-          "name": "rootdevicetype",
-          "type": "string"
-        },
-        {
-          "description": "the amount of the vm's CPU currently used",
-          "name": "cpuused",
-          "type": "string"
-        },
-        {
-          "description": "the group name of the virtual machine",
-          "name": "group",
-          "type": "string"
-        },
-        {
-          "description": "the account associated with the virtual machine",
-          "name": "account",
-          "type": "string"
-        },
-        {
-          "description": "true if vm contains XS/VMWare tools inorder to support dynamic scaling of VM cpu/memory.",
-          "name": "isdynamicallyscalable",
-          "type": "boolean"
-        },
-        {
-          "description": "the write (io) of disk on the vm",
-          "name": "diskiowrite",
-          "type": "long"
-        },
-        {
-          "description": "the ID of the template for the virtual machine. A -1 is returned if the virtual machine was created from an ISO file.",
-          "name": "templateid",
-          "type": "string"
-        },
-        {
-          "description": "the name of the ISO attached to the virtual machine",
-          "name": "isoname",
-          "type": "string"
-        },
-        {
-          "description": "State of the Service from LB rule",
-          "name": "servicestate",
-          "type": "string"
-        },
-        {
-          "description": "instance name of the user vm; this parameter is returned to the ROOT admin only",
-          "name": "instancename",
-          "type": "string"
-        },
-        {
-          "description": "the target memory in vm",
-          "name": "memorytargetkbs",
-          "type": "long"
-        },
-        {
-          "description": "the group ID of the virtual machine",
-          "name": "groupid",
-          "type": "string"
-        },
-        {
-          "description": "the name of the disk offering of the virtual machine",
-          "name": "diskofferingname",
-          "type": "string"
-        },
-        {
-          "description": "the hypervisor on which the template runs",
-          "name": "hypervisor",
-          "type": "string"
-        },
-        {
-          "description": "true if high-availability is enabled, false otherwise",
-          "name": "haenable",
-          "type": "boolean"
-        },
-        {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
-          "type": "string"
-        },
-        {
-          "description": "the date when this virtual machine was created",
-          "name": "created",
-          "type": "date"
-        }
-      ],
-      "since": "4.9.3"
-    },
-    {
-      "description": "Lists hosts.",
-      "isasync": false,
-      "name": "listHosts",
-      "params": [
-        {
           "description": "if true, list only hosts dedicated to HA",
           "length": 255,
           "name": "hahost",
@@ -2903,11 +2977,11 @@
           "type": "boolean"
         },
         {
-          "description": "comma separated list of host details requested, value can be a list of [ min, all, capacity, events, stats]",
+          "description": "the state of the host",
           "length": 255,
-          "name": "details",
+          "name": "state",
           "required": false,
-          "type": "list"
+          "type": "string"
         },
         {
           "description": "lists hosts in the same cluster as this VM and flag hosts with enough CPU/RAm to host this VM",
@@ -2918,35 +2992,6 @@
           "type": "uuid"
         },
         {
-          "description": "the id of the host",
-          "length": 255,
-          "name": "id",
-          "related": "addHost,cancelHostMaintenance,cancelHostAsDegraded,declareHostAsDegraded,listHosts,prepareHostForMaintenance,reconnectHost,updateHost,addBaremetalHost,listExternalLoadBalancers",
-          "required": false,
-          "type": "uuid"
-        },
-        {
-          "description": "the state of the host",
-          "length": 255,
-          "name": "state",
-          "required": false,
-          "type": "string"
-        },
-        {
-          "description": "the name of the host",
-          "length": 255,
-          "name": "name",
-          "required": false,
-          "type": "string"
-        },
-        {
-          "description": "the host type",
-          "length": 255,
-          "name": "type",
-          "required": false,
-          "type": "string"
-        },
-        {
           "description": "list hosts by its out-of-band management interface's power state. Its value can be one of [On, Off, Unknown]",
           "length": 255,
           "name": "outofbandmanagementpowerstate",
@@ -2954,20 +2999,6 @@
           "type": "string"
         },
         {
-          "description": "list hosts for which out-of-band management is enabled",
-          "length": 255,
-          "name": "outofbandmanagementenabled",
-          "required": false,
-          "type": "boolean"
-        },
-        {
-          "description": "",
-          "length": 255,
-          "name": "page",
-          "required": false,
-          "type": "integer"
-        },
-        {
           "description": "hypervisor type of host: XenServer,KVM,VMware,Hyperv,BareMetal,Simulator",
           "length": 255,
           "name": "hypervisor",
@@ -2975,27 +3006,11 @@
           "type": "string"
         },
         {
-          "description": "lists hosts existing in particular cluster",
-          "length": 255,
-          "name": "clusterid",
-          "related": "addCluster,listClusters,updateCluster",
-          "required": false,
-          "type": "uuid"
-        },
-        {
-          "description": "the Zone ID for the host",
-          "length": 255,
-          "name": "zoneid",
-          "related": "createZone,updateZone,listZones,listZones",
-          "required": false,
-          "type": "uuid"
-        },
-        {
-          "description": "",
+          "description": "the name of the host",
           "length": 255,
-          "name": "pagesize",
+          "name": "name",
           "required": false,
-          "type": "integer"
+          "type": "string"
         },
         {
           "description": "List by keyword",
@@ -3003,29 +3018,19 @@
           "name": "keyword",
           "required": false,
           "type": "string"
-        },
-        {
-          "description": "list hosts by resource state. Resource state represents current state determined by admin of host, value can be one of [Enabled, Disabled, Unmanaged, PrepareForMaintenance, ErrorInMaintenance, Maintenance, Error]",
-          "length": 255,
-          "name": "resourcestate",
-          "required": false,
-          "type": "string"
-        },
-        {
-          "description": "the Pod ID for the host",
-          "length": 255,
-          "name": "podid",
-          "related": "listPods,updatePod,createManagementNetworkIpRange",
-          "required": false,
-          "type": "uuid"
         }
       ],
       "related": "addHost,cancelHostMaintenance,cancelHostAsDegraded,declareHostAsDegraded,prepareHostForMaintenance,reconnectHost,updateHost,addBaremetalHost,listExternalLoadBalancers",
       "response": [
         {
-          "description": "the number of CPU sockets on the host",
-          "name": "cpusockets",
-          "type": "integer"
+          "description": "true if the host is Ha host (dedicated to vms started by HA process; false otherwise",
+          "name": "hahost",
+          "type": "boolean"
+        },
+        {
+          "description": "the IP address of the host",
+          "name": "ipaddress",
+          "type": "string"
         },
         {
           "description": "the CPU number of the host",
@@ -3033,33 +3038,28 @@
           "type": "integer"
         },
         {
-          "description": "true if local storage is active, false otherwise",
-          "name": "islocalstorageactive",
-          "type": "boolean"
-        },
-        {
-          "description": "the amount of the host's CPU currently allocated",
-          "name": "cpuallocated",
-          "type": "string"
+          "description": "the host hypervisor",
+          "name": "hypervisor",
+          "type": "hypervisortype"
         },
         {
-          "description": "true if the host is Ha host (dedicated to vms started by HA process; false otherwise",
-          "name": "hahost",
-          "type": "boolean"
+          "description": "true if the host is disconnected. False otherwise.",
+          "name": "disconnected",
+          "type": "date"
         },
         {
-          "description": "the last annotation set on this host by an admin",
-          "name": "annotation",
+          "description": "the amount of the host's memory currently allocated in percentage",
+          "name": "memoryallocatedpercentage",
           "type": "string"
         },
         {
-          "description": "the Zone name of the host",
-          "name": "zonename",
+          "description": "the amount of the host's CPU currently allocated",
+          "name": "cpuallocated",
           "type": "string"
         },
         {
-          "description": "the amount of the host's memory after applying the mem.overprovisioning.factor",
-          "name": "memorywithoverprovisioning",
+          "description": "the Zone ID of the host",
+          "name": "zoneid",
           "type": "string"
         },
         {
@@ -3068,14 +3068,19 @@
           "type": "date"
         },
         {
-          "description": "the admin that annotated this host",
-          "name": "username",
+          "description": "the number of CPU sockets on the host",
+          "name": "cpusockets",
+          "type": "integer"
+        },
+        {
+          "description": "the Pod name of the host",
+          "name": "podname",
           "type": "string"
         },
         {
-          "description": "the amount of the host's CPU currently allocated in MHz",
-          "name": "cpuallocatedvalue",
-          "type": "long"
+          "description": "the hypervisor version",
+          "name": "hypervisorversion",
+          "type": "string"
         },
         {
           "description": "the memory total of the host, this parameter is deprecated use memorywithoverprovisioning",
@@ -3088,117 +3093,61 @@
           "type": "string"
         },
         {
-          "description": "the total disk size of the host",
-          "name": "disksizetotal",
-          "type": "long"
-        },
-        {
-          "description": "Host details in key/value pairs.",
-          "name": "details",
-          "type": "map"
-        },
-        {
-          "description": "capabilities of the host",
-          "name": "capabilities",
+          "description": "the amount of the host's CPU after applying the cpu.overprovisioning.factor",
+          "name": "cpuwithoverprovisioning",
           "type": "string"
         },
         {
-          "description": "the host HA information information",
-          "name": "hostha",
-          "type": "hostharesponse"
+          "description": "the name of the host",
+          "name": "name",
+          "type": "string"
         },
         {
-          "description": "the OS category ID of the host",
-          "name": "oscategoryid",
-          "type": "string"
+          "description": "the host type",
+          "name": "type",
+          "type": "type"
         },
         {
-          "description": "the host's currently allocated disk size",
-          "name": "disksizeallocated",
+          "description": "the amount of the host's CPU currently allocated in MHz",
+          "name": "cpuallocatedvalue",
           "type": "long"
         },
         {
-          "description": "the amount of the host's CPU currently allocated in percentage",
-          "name": "cpuallocatedpercentage",
+          "description": "the host version",
+          "name": "version",
           "type": "string"
         },
         {
-          "description": "comma-separated list of tags for the host",
-          "name": "hosttags",
-          "type": "string"
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
         },
         {
-          "description": "the hypervisor version",
-          "name": "hypervisorversion",
+          "description": "events available for the host",
+          "name": "events",
           "type": "string"
         },
         {
-          "description": "the amount of the host's memory currently allocated in bytes",
-          "name": "memoryallocatedbytes",
+          "description": "the incoming network traffic on the host",
+          "name": "networkkbsread",
           "type": "long"
         },
         {
-          "description": "the CPU speed of the host",
-          "name": "cpuspeed",
+          "description": "the amount of the host's memory currently allocated",
+          "name": "memoryallocated",
           "type": "long"
         },
-        {},
-        {
-          "description": "the host version",
-          "name": "version",
-          "type": "string"
-        },
-        {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
-          "type": "string"
-        },
         {
-          "description": "the date and time the host was removed",
-          "name": "removed",
-          "type": "date"
-        },
-        {
-          "description": "the Zone ID of the host",
-          "name": "zoneid",
-          "type": "string"
-        },
-        {
-          "description": "the IP address of the host",
-          "name": "ipaddress",
+          "description": "the admin that annotated this host",
+          "name": "username",
           "type": "string"
         },
         {
-          "description": "the amount of the host's CPU currently used",
-          "name": "cpuused",
+          "description": "the Pod ID of the host",
+          "name": "podid",
           "type": "string"
         },
         {
-          "description": "true if the host has capability to support UEFI boot",
-          "name": "ueficapability",
-          "type": "boolean"
-        },
-        {
-          "description": "true if the host is disconnected. False otherwise.",
-          "name": "disconnected",
-          "type": "date"
-        },
-        {
-          "description": "the state of the host",
-          "name": "state",
-          "type": "status"
-        },
-        {
-          "description": "the host out-of-band management information",
-          "name": "outofbandmanagement",
-          "type": "outofbandmanagementresponse"
-        },
-        {
-          "description": "the host type",
-          "name": "type",
-          "type": "type"
-        },
-        {
           "description": "GPU cards present in the host",
           "name": "gpugroup",
           "response": [
@@ -3207,44 +3156,44 @@
               "name": "vgpu",
               "response": [
                 {
-                  "description": "Maximum no. of vgpu per gpu card (pgpu)",
-                  "name": "maxvgpuperpgpu",
+                  "description": "Video RAM for this vGPU type",
+                  "name": "videoram",
                   "type": "long"
                 },
                 {
-                  "description": "Model Name of vGPU",
-                  "name": "vgputype",
-                  "type": "string"
+                  "description": "Maximum X resolution per display",
+                  "name": "maxresolutionx",
+                  "type": "long"
                 },
                 {
-                  "description": "Video RAM for this vGPU type",
-                  "name": "videoram",
+                  "description": "Remaining capacity in terms of no. of more VMs that can be deployped with this vGPU type",
+                  "name": "remainingcapacity",
                   "type": "long"
                 },
                 {
-                  "description": "Maximum vgpu can be created with this vgpu type on the given gpu group",
-                  "name": "maxcapacity",
+                  "description": "Maximum no. of vgpu per gpu card (pgpu)",
+                  "name": "maxvgpuperpgpu",
                   "type": "long"
                 },
                 {
+                  "description": "Model Name of vGPU",
+                  "name": "vgputype",
+                  "type": "string"
+                },
+                {
                   "description": "Maximum displays per user",
                   "name": "maxheads",
                   "type": "long"
                 },
                 {
-                  "description": "Maximum X resolution per display",
-                  "name": "maxresolutionx",
+                  "description": "Maximum vgpu can be created with this vgpu type on the given gpu group",
+                  "name": "maxcapacity",
                   "type": "long"
                 },
                 {
                   "description": "Maximum Y resolution per display",
                   "name": "maxresolutiony",
                   "type": "long"
-                },
-                {
-                  "description": "Remaining capacity in terms of no. of more VMs that can be deployped with this vGPU type",
-                  "name": "remainingcapacity",
-                  "type": "long"
                 }
               ],
               "type": "list"
@@ -3258,129 +3207,180 @@
           "type": "list"
         },
         {
-          "description": "the cluster type of the cluster that host belongs to",
-          "name": "clustertype",
+          "description": "the OS category name of the host",
+          "name": "oscategoryname",
           "type": "string"
         },
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
+          "description": "the amount of the host's CPU currently allocated after applying the cpu.overprovisioning.factor",
+          "name": "cpuallocatedwithoverprovisioning",
+          "type": "string"
         },
         {
-          "description": "true if the entity/resource has annotations",
-          "name": "hasannotations",
-          "type": "boolean"
+          "description": "the host's currently allocated disk size",
+          "name": "disksizeallocated",
+          "type": "long"
         },
         {
-          "description": "the date and time the host was last pinged",
-          "name": "lastpinged",
-          "type": "date"
+          "description": "the cpu average load on the host",
+          "name": "cpuloadaverage",
+          "type": "double"
         },
         {
-          "description": "the ID of the host",
-          "name": "id",
-          "type": "string"
+          "description": "the host out-of-band management information",
+          "name": "outofbandmanagement",
+          "type": "outofbandmanagementresponse"
         },
+        {},
         {
-          "description": "the outgoing network traffic on the host",
-          "name": "networkkbswrite",
-          "type": "long"
+          "description": "the last time this host was annotated",
+          "name": "lastannotated",
+          "type": "date"
         },
         {
-          "description": "events available for the host",
-          "name": "events",
+          "description": "the management server ID of the host",
+          "name": "managementserverid",
           "type": "string"
         },
         {
-          "description": "the Pod name of the host",
-          "name": "podname",
-          "type": "string"
+          "description": "true if this host has enough CPU and RAM capacity to migrate a VM to it, false otherwise",
+          "name": "hasenoughcapacity",
+          "type": "boolean"
         },
         {
-          "description": "the amount of the host's CPU after applying the cpu.overprovisioning.factor",
-          "name": "cpuwithoverprovisioning",
-          "type": "string"
+          "description": "the total disk size of the host",
+          "name": "disksizetotal",
+          "type": "long"
         },
         {
-          "description": "the Pod ID of the host",
-          "name": "podid",
-          "type": "string"
+          "description": "true if the entity/resource has annotations",
+          "name": "hasannotations",
+          "type": "boolean"
         },
         {
-          "description": "the incoming network traffic on the host",
-          "name": "networkkbsread",
-          "type": "long"
+          "description": "true if local storage is active, false otherwise",
+          "name": "islocalstorageactive",
+          "type": "boolean"
         },
         {
-          "description": "the management server ID of the host",
-          "name": "managementserverid",
-          "type": "string"
+          "description": "true if this host is suitable(has enough capacity and satisfies all conditions like hosttags, max guests vm limit etc) to migrate a VM to it , false otherwise",
+          "name": "suitableformigration",
+          "type": "boolean"
         },
         {
-          "description": "the amount of the host's memory currently allocated in percentage",
-          "name": "memoryallocatedpercentage",
+          "description": "the cluster ID of the host",
+          "name": "clusterid",
           "type": "string"
         },
         {
-          "description": "the amount of the host's memory currently allocated",
-          "name": "memoryallocated",
+          "description": "the outgoing network traffic on the host",
+          "name": "networkkbswrite",
           "type": "long"
         },
         {
-          "description": "the host hypervisor",
-          "name": "hypervisor",
-          "type": "hypervisortype"
+          "description": "the host HA information information",
+          "name": "hostha",
+          "type": "hostharesponse"
         },
         {
-          "description": "the amount of the host's memory currently used",
-          "name": "memoryused",
-          "type": "long"
+          "description": "the Zone name of the host",
+          "name": "zonename",
+          "type": "string"
         },
         {
-          "description": "the cpu average load on the host",
-          "name": "cpuloadaverage",
-          "type": "double"
+          "description": "the date and time the host was last pinged",
+          "name": "lastpinged",
+          "type": "date"
         },
         {
-          "description": "the last time this host was annotated",
-          "name": "lastannotated",
-          "type": "date"
+          "description": "the amount of the host's memory currently allocated in bytes",
+          "name": "memoryallocatedbytes",
+          "type": "long"
         },
         {
-          "description": "the OS category name of the host",
-          "name": "oscategoryname",
+          "description": "capabilities of the host",
+          "name": "capabilities",
           "type": "string"
         },
         {
-          "description": "true if this host is suitable(has enough capacity and satisfies all conditions like hosttags, max guests vm limit etc) to migrate a VM to it , false otherwise",
-          "name": "suitableformigration",
-          "type": "boolean"
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
+          "type": "string"
+        },
+        {
+          "description": "Host details in key/value pairs.",
+          "name": "details",
+          "type": "map"
+        },
+        {
+          "description": "the amount of the host's memory currently used",
+          "name": "memoryused",
+          "type": "long"
         },
         {
           "description": "the cluster name of the host",
           "name": "clustername",
           "type": "string"
         },
-        {},
         {
-          "description": "the amount of the host's CPU currently allocated after applying the cpu.overprovisioning.factor",
-          "name": "cpuallocatedwithoverprovisioning",
+          "description": "the OS category ID of the host",
+          "name": "oscategoryid",
           "type": "string"
         },
         {
-          "description": "the cluster ID of the host",
-          "name": "clusterid",
+          "description": "the ID of the host",
+          "name": "id",
           "type": "string"
         },
         {
-          "description": "true if this host has enough CPU and RAM capacity to migrate a VM to it, false otherwise",
-          "name": "hasenoughcapacity",
+          "description": "the state of the host",
+          "name": "state",
+          "type": "status"
+        },
+        {
+          "description": "the CPU speed of the host",
+          "name": "cpuspeed",
+          "type": "long"
+        },
+        {
+          "description": "true if the host has capability to support UEFI boot",
+          "name": "ueficapability",
           "type": "boolean"
         },
         {
-          "description": "the name of the host",
-          "name": "name",
+          "description": "the amount of the host's CPU currently used",
+          "name": "cpuused",
+          "type": "string"
+        },
+        {
+          "description": "comma-separated list of tags for the host",
+          "name": "hosttags",
+          "type": "string"
+        },
+        {
+          "description": "the amount of the host's CPU currently allocated in percentage",
+          "name": "cpuallocatedpercentage",
+          "type": "string"
+        },
+        {
+          "description": "the amount of the host's memory after applying the mem.overprovisioning.factor",
+          "name": "memorywithoverprovisioning",
+          "type": "string"
+        },
+        {
+          "description": "the date and time the host was removed",
+          "name": "removed",
+          "type": "date"
+        },
+        {
+          "description": "the cluster type of the cluster that host belongs to",
+          "name": "clustertype",
+          "type": "string"
+        },
+        {},
+        {
+          "description": "the last annotation set on this host by an admin",
+          "name": "annotation",
           "type": "string"
         }
       ]
@@ -3391,19 +3391,19 @@
       "name": "deleteStoragePool",
       "params": [
         {
-          "description": "Force destroy storage pool (force expunge volumes in Destroyed state as a part of pool removal)",
-          "length": 255,
-          "name": "forced",
-          "required": false,
-          "type": "boolean"
-        },
-        {
           "description": "Storage pool id",
           "length": 255,
           "name": "id",
           "related": "cancelStorageMaintenance,createStoragePool,listStoragePools,findStoragePoolsForMigration,enableStorageMaintenance,updateStoragePool,syncStoragePool,updateStorageCapabilities,listVsphereStoragePolicyCompatiblePools",
           "required": true,
           "type": "uuid"
+        },
+        {
+          "description": "Force destroy storage pool (force expunge volumes in Destroyed state as a part of pool removal)",
+          "length": 255,
+          "name": "forced",
+          "required": false,
+          "type": "boolean"
         }
       ],
       "response": [
@@ -3413,22 +3413,22 @@
           "type": "string"
         },
         {
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
+        },
+        {
           "description": "the UUID of the latest async job acting on this object",
           "name": "jobid",
           "type": "string"
         },
+        {},
+        {},
         {
           "description": "true if operation is executed successfully",
           "name": "success",
           "type": "boolean"
-        },
-        {},
-        {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
-        },
-        {}
+        }
       ]
     },
     {
@@ -3437,11 +3437,12 @@
       "name": "listVsphereStoragePolicyCompatiblePools",
       "params": [
         {
-          "description": "List by keyword",
+          "description": "ID of the storage policy",
           "length": 255,
-          "name": "keyword",
+          "name": "policyid",
+          "related": "importVsphereStoragePolicies,listVsphereStoragePolicies",
           "required": false,
-          "type": "string"
+          "type": "uuid"
         },
         {
           "description": "",
@@ -3451,20 +3452,19 @@
           "type": "integer"
         },
         {
-          "description": "ID of the storage policy",
+          "description": "ID of the zone",
           "length": 255,
-          "name": "policyid",
-          "related": "importVsphereStoragePolicies,listVsphereStoragePolicies",
+          "name": "zoneid",
+          "related": "createZone,updateZone,listZones,listZones",
           "required": false,
           "type": "uuid"
         },
         {
-          "description": "ID of the zone",
+          "description": "List by keyword",
           "length": 255,
-          "name": "zoneid",
-          "related": "createZone,updateZone,listZones,listZones",
+          "name": "keyword",
           "required": false,
-          "type": "uuid"
+          "type": "string"
         },
         {
           "description": "",
@@ -3477,38 +3477,38 @@
       "related": "cancelStorageMaintenance,createStoragePool,listStoragePools,findStoragePoolsForMigration,enableStorageMaintenance,updateStoragePool,syncStoragePool,updateStorageCapabilities",
       "response": [
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
-        },
-        {
-          "description": "the host's currently used disk size",
-          "name": "disksizeused",
+          "description": "the host's currently allocated disk size",
+          "name": "disksizeallocated",
           "type": "long"
         },
         {
-          "description": "the name of the cluster for the storage pool",
-          "name": "clustername",
+          "description": "the storage pool path",
+          "name": "path",
           "type": "string"
         },
         {
-          "description": "the Zone ID of the storage pool",
-          "name": "zoneid",
+          "description": "the Pod name of the storage pool",
+          "name": "podname",
           "type": "string"
         },
         {
-          "description": "the storage pool path",
-          "name": "path",
+          "description": "the storage pool capabilities",
+          "name": "storagecapabilities",
+          "type": "map"
+        },
+        {
+          "description": "the storage pool type",
+          "name": "type",
           "type": "string"
         },
         {
-          "description": "the scope of the storage pool",
-          "name": "scope",
+          "description": "the Pod ID of the storage pool",
+          "name": "podid",
           "type": "string"
         },
         {
-          "description": "the IP address of the storage pool",
-          "name": "ipaddress",
+          "description": "the ID of the storage pool",
+          "name": "id",
           "type": "string"
         },
         {
@@ -3516,97 +3516,97 @@
           "name": "provider",
           "type": "string"
         },
+        {},
         {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
+          "description": "the tags for the storage pool",
+          "name": "tags",
           "type": "string"
         },
         {
-          "description": "the total disk size of the storage pool",
-          "name": "disksizetotal",
-          "type": "long"
-        },
-        {
           "description": "IOPS CloudStack can provision from this storage pool",
           "name": "capacityiops",
           "type": "long"
         },
         {
-          "description": "the ID of the storage pool",
-          "name": "id",
-          "type": "string"
+          "description": "the date and time the storage pool was created",
+          "name": "created",
+          "type": "date"
         },
         {
-          "description": "true if the entity/resource has annotations",
-          "name": "hasannotations",
-          "type": "boolean"
+          "description": "total min IOPS currently in use by volumes",
+          "name": "allocatediops",
+          "type": "long"
         },
         {
-          "description": "the Pod name of the storage pool",
-          "name": "podname",
+          "description": "the overprovisionfactor for the storage pool",
+          "name": "overprovisionfactor",
           "type": "string"
         },
         {
-          "description": "the name of the storage pool",
-          "name": "name",
+          "description": "the scope of the storage pool",
+          "name": "scope",
           "type": "string"
         },
+        {},
         {
-          "description": "the storage pool type",
-          "name": "type",
-          "type": "string"
+          "description": "the host's currently used disk size",
+          "name": "disksizeused",
+          "type": "long"
         },
         {
-          "description": "the Zone name of the storage pool",
-          "name": "zonename",
+          "description": "the state of the storage pool",
+          "name": "state",
+          "type": "storagepoolstatus"
+        },
+        {
+          "description": "the hypervisor type of the storage pool",
+          "name": "hypervisor",
           "type": "string"
         },
         {
-          "description": "true if this pool is suitable to migrate a volume, false otherwise",
-          "name": "suitableformigration",
-          "type": "boolean"
+          "description": "the name of the cluster for the storage pool",
+          "name": "clustername",
+          "type": "string"
         },
         {
-          "description": "the host's currently allocated disk size",
-          "name": "disksizeallocated",
-          "type": "long"
+          "description": "the name of the storage pool",
+          "name": "name",
+          "type": "string"
         },
         {
-          "description": "the storage pool capabilities",
-          "name": "storagecapabilities",
-          "type": "map"
+          "description": "true if the entity/resource has annotations",
+          "name": "hasannotations",
+          "type": "boolean"
         },
-        {},
         {
-          "description": "the Pod ID of the storage pool",
-          "name": "podid",
-          "type": "string"
+          "description": "the total disk size of the storage pool",
+          "name": "disksizetotal",
+          "type": "long"
         },
         {
-          "description": "the tags for the storage pool",
-          "name": "tags",
+          "description": "the IP address of the storage pool",
+          "name": "ipaddress",
           "type": "string"
         },
         {
-          "description": "the overprovisionfactor for the storage pool",
-          "name": "overprovisionfactor",
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
           "type": "string"
         },
         {
-          "description": "the state of the storage pool",
-          "name": "state",
-          "type": "storagepoolstatus"
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
         },
         {
-          "description": "the hypervisor type of the storage pool",
-          "name": "hypervisor",
+          "description": "the Zone name of the storage pool",
+          "name": "zonename",
           "type": "string"
         },
-        {},
         {
-          "description": "the date and time the storage pool was created",
-          "name": "created",
-          "type": "date"
+          "description": "true if this pool is suitable to migrate a volume, false otherwise",
+          "name": "suitableformigration",
+          "type": "boolean"
         },
         {
           "description": "the ID of the cluster for the storage pool",
@@ -3614,9 +3614,9 @@
           "type": "string"
         },
         {
-          "description": "total min IOPS currently in use by volumes",
-          "name": "allocatediops",
-          "type": "long"
+          "description": "the Zone ID of the storage pool",
+          "name": "zoneid",
+          "type": "string"
         }
       ]
     },
@@ -3626,27 +3626,25 @@
       "name": "updateStoragePool",
       "params": [
         {
-          "description": "false to disable the pool for allocation of new volumes, true to enable it back.",
+          "description": "comma-separated list of tags for the storage pool",
           "length": 255,
-          "name": "enabled",
+          "name": "tags",
           "required": false,
-          "type": "boolean"
+          "type": "list"
         },
         {
-          "description": "Change the name of the storage pool",
+          "description": "IOPS CloudStack can provision from this storage pool",
           "length": 255,
-          "name": "name",
-          "related": "cancelStorageMaintenance,createStoragePool,listStoragePools,findStoragePoolsForMigration,enableStorageMaintenance,updateStoragePool,syncStoragePool,updateStorageCapabilities",
+          "name": "capacityiops",
           "required": false,
-          "since": "4.15",
-          "type": "string"
+          "type": "long"
         },
         {
-          "description": "IOPS CloudStack can provision from this storage pool",
+          "description": "false to disable the pool for allocation of new volumes, true to enable it back.",
           "length": 255,
-          "name": "capacityiops",
+          "name": "enabled",
           "required": false,
-          "type": "long"
+          "type": "boolean"
         },
         {
           "description": "the Id of the storage pool",
@@ -3657,11 +3655,13 @@
           "type": "uuid"
         },
         {
-          "description": "comma-separated list of tags for the storage pool",
+          "description": "Change the name of the storage pool",
           "length": 255,
-          "name": "tags",
+          "name": "name",
+          "related": "cancelStorageMaintenance,createStoragePool,listStoragePools,findStoragePoolsForMigration,enableStorageMaintenance,updateStoragePool,syncStoragePool,updateStorageCapabilities",
           "required": false,
-          "type": "list"
+          "since": "4.15",
+          "type": "string"
         },
         {
           "description": "bytes CloudStack can provision from this storage pool",
@@ -3674,55 +3674,70 @@
       "related": "cancelStorageMaintenance,createStoragePool,listStoragePools,findStoragePoolsForMigration,enableStorageMaintenance,syncStoragePool,updateStorageCapabilities",
       "response": [
         {
+          "description": "the tags for the storage pool",
+          "name": "tags",
+          "type": "string"
+        },
+        {
+          "description": "the name of the storage pool",
+          "name": "name",
+          "type": "string"
+        },
+        {
+          "description": "the ID of the storage pool",
+          "name": "id",
+          "type": "string"
+        },
+        {
+          "description": "the hypervisor type of the storage pool",
+          "name": "hypervisor",
+          "type": "string"
+        },
+        {
           "description": "the host's currently used disk size",
           "name": "disksizeused",
           "type": "long"
         },
         {
-          "description": "the date and time the storage pool was created",
-          "name": "created",
-          "type": "date"
+          "description": "total min IOPS currently in use by volumes",
+          "name": "allocatediops",
+          "type": "long"
         },
         {
-          "description": "true if the entity/resource has annotations",
-          "name": "hasannotations",
+          "description": "true if this pool is suitable to migrate a volume, false otherwise",
+          "name": "suitableformigration",
           "type": "boolean"
         },
         {
-          "description": "the name of the cluster for the storage pool",
-          "name": "clustername",
-          "type": "string"
-        },
-        {
-          "description": "the state of the storage pool",
-          "name": "state",
-          "type": "storagepoolstatus"
+          "description": "the storage pool capabilities",
+          "name": "storagecapabilities",
+          "type": "map"
         },
-        {},
         {
           "description": "Storage provider for this pool",
           "name": "provider",
           "type": "string"
         },
         {
-          "description": "the ID of the storage pool",
-          "name": "id",
+          "description": "the Zone name of the storage pool",
+          "name": "zonename",
           "type": "string"
         },
+        {},
         {
           "description": "the Zone ID of the storage pool",
           "name": "zoneid",
           "type": "string"
         },
         {
-          "description": "true if this pool is suitable to migrate a volume, false otherwise",
-          "name": "suitableformigration",
-          "type": "boolean"
+          "description": "the scope of the storage pool",
+          "name": "scope",
+          "type": "string"
         },
         {
-          "description": "the host's currently allocated disk size",
-          "name": "disksizeallocated",
-          "type": "long"
+          "description": "the state of the storage pool",
+          "name": "state",
+          "type": "storagepoolstatus"
         },
         {
           "description": "the IP address of the storage pool",
@@ -3730,25 +3745,25 @@
           "type": "string"
         },
         {
-          "description": "the tags for the storage pool",
-          "name": "tags",
-          "type": "string"
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
         },
-        {},
         {
-          "description": "the scope of the storage pool",
-          "name": "scope",
+          "description": "the Pod ID of the storage pool",
+          "name": "podid",
           "type": "string"
         },
+        {},
         {
           "description": "the Pod name of the storage pool",
           "name": "podname",
           "type": "string"
         },
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
+          "description": "the total disk size of the storage pool",
+          "name": "disksizetotal",
+          "type": "long"
         },
         {
           "description": "IOPS CloudStack can provision from this storage pool",
@@ -3756,23 +3771,23 @@
           "type": "long"
         },
         {
-          "description": "the storage pool capabilities",
-          "name": "storagecapabilities",
-          "type": "map"
+          "description": "the ID of the cluster for the storage pool",
+          "name": "clusterid",
+          "type": "string"
         },
         {
-          "description": "the Pod ID of the storage pool",
-          "name": "podid",
-          "type": "string"
+          "description": "true if the entity/resource has annotations",
+          "name": "hasannotations",
+          "type": "boolean"
         },
         {
-          "description": "the name of the storage pool",
-          "name": "name",
+          "description": "the overprovisionfactor for the storage pool",
+          "name": "overprovisionfactor",
           "type": "string"
         },
         {
-          "description": "the storage pool path",
-          "name": "path",
+          "description": "the name of the cluster for the storage pool",
+          "name": "clustername",
           "type": "string"
         },
         {
@@ -3781,38 +3796,23 @@
           "type": "string"
         },
         {
-          "description": "the Zone name of the storage pool",
-          "name": "zonename",
-          "type": "string"
+          "description": "the date and time the storage pool was created",
+          "name": "created",
+          "type": "date"
         },
         {
-          "description": "the total disk size of the storage pool",
-          "name": "disksizetotal",
+          "description": "the host's currently allocated disk size",
+          "name": "disksizeallocated",
           "type": "long"
         },
         {
-          "description": "the storage pool type",
-          "name": "type",
-          "type": "string"
-        },
-        {
-          "description": "the hypervisor type of the storage pool",
-          "name": "hypervisor",
-          "type": "string"
-        },
-        {
-          "description": "the overprovisionfactor for the storage pool",
-          "name": "overprovisionfactor",
+          "description": "the storage pool path",
+          "name": "path",
           "type": "string"
         },
         {
-          "description": "total min IOPS currently in use by volumes",
-          "name": "allocatediops",
-          "type": "long"
-        },
-        {
-          "description": "the ID of the cluster for the storage pool",
-          "name": "clusterid",
+          "description": "the storage pool type",
+          "name": "type",
           "type": "string"
         }
       ],
@@ -3824,173 +3824,179 @@
       "name": "rebootSystemVm",
       "params": [
         {
-          "description": "The ID of the system virtual machine",
-          "length": 255,
-          "name": "id",
-          "related": "destroySystemVm,listSystemVms,migrateSystemVm,rebootSystemVm,startSystemVm,stopSystemVm,changeServiceForSystemVm,scaleSystemVm",
-          "required": true,
-          "type": "uuid"
-        },
-        {
           "description": "Force reboot the system VM (System VM is Stopped and then Started)",
           "length": 255,
           "name": "forced",
           "required": false,
           "since": "4.16.0",
           "type": "boolean"
+        },
+        {
+          "description": "The ID of the system virtual machine",
+          "length": 255,
+          "name": "id",
+          "related": "destroySystemVm,listSystemVms,migrateSystemVm,rebootSystemVm,startSystemVm,stopSystemVm,changeServiceForSystemVm,scaleSystemVm",
+          "required": true,
+          "type": "uuid"
         }
       ],
       "related": "destroySystemVm,listSystemVms,migrateSystemVm,startSystemVm,stopSystemVm,changeServiceForSystemVm,scaleSystemVm",
       "response": [
         {
-          "description": "the hostname for the system VM",
-          "name": "hostname",
-          "type": "string"
-        },
-        {
-          "description": "the name of the system VM",
-          "name": "name",
+          "description": "the Pod name for the system VM",
+          "name": "podname",
           "type": "string"
         },
         {
-          "description": "the public netmask for the system VM",
-          "name": "publicnetmask",
+          "description": "the system VM type",
+          "name": "systemvmtype",
           "type": "string"
         },
         {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
-          "type": "string"
+          "description": "the date and time the system VM was created",
+          "name": "created",
+          "type": "date"
         },
         {
-          "description": "the network domain for the system VM",
-          "name": "networkdomain",
+          "description": "the public IP address for the system VM",
+          "name": "publicip",
           "type": "string"
         },
         {
-          "description": "true if the entity/resource has annotations",
-          "name": "hasannotations",
-          "type": "boolean"
-        },
-        {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
+          "description": "the number of active console sessions for the console proxy system vm",
+          "name": "activeviewersessions",
           "type": "integer"
         },
         {
-          "description": "the private netmask for the system VM",
-          "name": "privatenetmask",
+          "description": "the Pod ID for the system VM",
+          "name": "podid",
           "type": "string"
         },
         {
-          "description": "the number of active console sessions for the console proxy system vm",
-          "name": "activeviewersessions",
-          "type": "integer"
+          "description": "the public MAC address for the system VM",
+          "name": "publicmacaddress",
+          "type": "string"
         },
         {
           "description": "the last disconnected date of host",
           "name": "disconnected",
           "type": "date"
         },
-        {},
-        {
-          "description": "the job status associated with the system VM.  This is only displayed if the router listed is part of a currently running asynchronous job.",
-          "name": "jobstatus",
-          "type": "integer"
-        },
-        {
-          "description": "the link local netmask for the system vm",
-          "name": "linklocalnetmask",
-          "type": "string"
-        },
         {
           "description": "the link local MAC address for the system vm",
           "name": "linklocalmacaddress",
           "type": "string"
         },
         {
-          "description": "the template ID for the system VM",
-          "name": "templateid",
+          "description": "the network domain for the system VM",
+          "name": "networkdomain",
           "type": "string"
         },
         {
-          "description": "the private MAC address for the system VM",
-          "name": "privatemacaddress",
+          "description": "the second DNS for the system VM",
+          "name": "dns2",
           "type": "string"
         },
+        {},
         {
-          "description": "the system VM type",
-          "name": "systemvmtype",
+          "description": "the link local IP address for the system vm",
+          "name": "linklocalip",
           "type": "string"
         },
         {
-          "description": "the Pod ID for the system VM",
-          "name": "podid",
+          "description": "the link local netmask for the system vm",
+          "name": "linklocalnetmask",
+          "type": "string"
+        },
+        {
+          "description": "the private IP address for the system VM",
+          "name": "privateip",
+          "type": "string"
+        },
+        {
+          "description": "the template name for the system VM",
+          "name": "templatename",
           "type": "string"
         },
         {
+          "description": "public vlan range",
+          "name": "publicvlan",
+          "type": "list"
+        },
+        {
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
+        },
+        {
           "description": "guest vlan range",
           "name": "guestvlan",
           "type": "string"
         },
         {
-          "description": "the first DNS for the system VM",
-          "name": "dns1",
+          "description": "the private netmask for the system VM",
+          "name": "privatenetmask",
           "type": "string"
         },
         {
-          "description": "the gateway for the system VM",
-          "name": "gateway",
+          "description": "the private MAC address for the system VM",
+          "name": "privatemacaddress",
           "type": "string"
         },
         {
-          "description": "the Zone name for the system VM",
-          "name": "zonename",
+          "description": "the template ID for the system VM",
+          "name": "templateid",
           "type": "string"
         },
         {
+          "description": "the job status associated with the system VM.  This is only displayed if the router listed is part of a currently running asynchronous job.",
+          "name": "jobstatus",
+          "type": "integer"
+        },
+        {
           "description": "the job ID associated with the system VM. This is only displayed if the router listed is part of a currently running asynchronous job.",
           "name": "jobid",
           "type": "string"
         },
         {
-          "description": "the host ID for the system VM",
-          "name": "hostid",
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
           "type": "string"
         },
         {
-          "description": "public vlan range",
-          "name": "publicvlan",
-          "type": "list"
+          "description": "the ID of the system VM",
+          "name": "id",
+          "type": "string"
         },
         {
-          "description": "the Pod name for the system VM",
-          "name": "podname",
+          "description": "the Zone ID for the system VM",
+          "name": "zoneid",
           "type": "string"
         },
         {
-          "description": "the template name for the system VM",
-          "name": "templatename",
-          "type": "string"
+          "description": "true if the entity/resource has annotations",
+          "name": "hasannotations",
+          "type": "boolean"
         },
+        {},
         {
-          "description": "the public MAC address for the system VM",
-          "name": "publicmacaddress",
+          "description": "the first DNS for the system VM",
+          "name": "dns1",
           "type": "string"
         },
         {
-          "description": "the private IP address for the system VM",
-          "name": "privateip",
+          "description": "the agent state of the system VM",
+          "name": "agentstate",
           "type": "string"
         },
         {
-          "description": "the systemvm agent version",
-          "name": "version",
+          "description": "the Zone name for the system VM",
+          "name": "zonename",
           "type": "string"
         },
         {
-          "description": "the second DNS for the system VM",
-          "name": "dns2",
+          "description": "the gateway for the system VM",
+          "name": "gateway",
           "type": "string"
         },
         {
@@ -3999,44 +4005,38 @@
           "type": "boolean"
         },
         {
-          "description": "the agent state of the system VM",
-          "name": "agentstate",
+          "description": "the hypervisor on which the template runs",
+          "name": "hypervisor",
           "type": "string"
         },
-        {},
-        {
-          "description": "the date and time the system VM was created",
-          "name": "created",
-          "type": "date"
-        },
         {
-          "description": "the state of the system VM",
-          "name": "state",
+          "description": "the hostname for the system VM",
+          "name": "hostname",
           "type": "string"
         },
         {
-          "description": "the hypervisor on which the template runs",
-          "name": "hypervisor",
+          "description": "the public netmask for the system VM",
+          "name": "publicnetmask",
           "type": "string"
         },
         {
-          "description": "the public IP address for the system VM",
-          "name": "publicip",
+          "description": "the systemvm agent version",
+          "name": "version",
           "type": "string"
         },
         {
-          "description": "the ID of the system VM",
-          "name": "id",
+          "description": "the host ID for the system VM",
+          "name": "hostid",
           "type": "string"
         },
         {
-          "description": "the Zone ID for the system VM",
-          "name": "zoneid",
+          "description": "the name of the system VM",
+          "name": "name",
           "type": "string"
         },
         {
-          "description": "the link local IP address for the system vm",
-          "name": "linklocalip",
+          "description": "the state of the system VM",
+          "name": "state",
           "type": "string"
         }
       ]
@@ -4047,18 +4047,19 @@
       "name": "importLdapUsers",
       "params": [
         {
-          "description": "List by keyword",
+          "description": "details for account used to store specific parameters",
           "length": 255,
-          "name": "keyword",
+          "name": "accountdetails",
           "required": false,
-          "type": "string"
+          "type": "map"
         },
         {
-          "description": "Specifies a timezone for this command. For more information on the timezone parameter, see Time Zone Format.",
+          "description": "Specifies the domain to which the ldap users are to be imported. If no domain is specified, a domain will created using group parameter. If the group is also not specified, a domain name based on the OU information will be created. If no OU hierarchy exists, will be defaulted to ROOT domain",
           "length": 255,
-          "name": "timezone",
+          "name": "domainid",
+          "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
           "required": false,
-          "type": "string"
+          "type": "uuid"
         },
         {
           "description": "Creates the account under the specified role.",
@@ -4076,47 +4077,46 @@
           "type": "string"
         },
         {
-          "description": "Type of the account.  Specify 0 for user, 1 for root admin, and 2 for domain admin",
+          "description": "",
           "length": 255,
-          "name": "accounttype",
+          "name": "pagesize",
           "required": false,
-          "type": "short"
+          "type": "integer"
         },
         {
-          "description": "",
+          "description": "Specifies the group name from which the ldap users are to be imported. If no group is specified, all the users will be imported.",
           "length": 255,
-          "name": "page",
+          "name": "group",
           "required": false,
-          "type": "integer"
+          "type": "string"
         },
         {
           "description": "",
           "length": 255,
-          "name": "pagesize",
+          "name": "page",
           "required": false,
           "type": "integer"
         },
         {
-          "description": "Specifies the group name from which the ldap users are to be imported. If no group is specified, all the users will be imported.",
+          "description": "List by keyword",
           "length": 255,
-          "name": "group",
+          "name": "keyword",
           "required": false,
           "type": "string"
         },
         {
-          "description": "details for account used to store specific parameters",
+          "description": "Specifies a timezone for this command. For more information on the timezone parameter, see Time Zone Format.",
           "length": 255,
-          "name": "accountdetails",
+          "name": "timezone",
           "required": false,
-          "type": "map"
+          "type": "string"
         },
         {
-          "description": "Specifies the domain to which the ldap users are to be imported. If no domain is specified, a domain will created using group parameter. If the group is also not specified, a domain name based on the OU information will be created. If no OU hierarchy exists, will be defaulted to ROOT domain",
+          "description": "Type of the account.  Specify 0 for user, 1 for root admin, and 2 for domain admin",
           "length": 255,
-          "name": "domainid",
-          "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
+          "name": "accounttype",
           "required": false,
-          "type": "uuid"
+          "type": "short"
         }
       ],
       "related": "searchLdap,listLdapUsers",
@@ -4127,24 +4127,18 @@
           "type": "string"
         },
         {
-          "description": "The user's email",
-          "name": "email",
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
           "type": "string"
         },
-        {},
         {
-          "description": "The user's lastname",
-          "name": "lastname",
+          "description": "The user's firstname",
+          "name": "firstname",
           "type": "string"
         },
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
-        },
-        {
-          "description": "The user's principle",
-          "name": "principal",
+          "description": "The user's email",
+          "name": "email",
           "type": "string"
         },
         {
@@ -4153,8 +4147,15 @@
           "type": "string"
         },
         {
-          "description": "The user's firstname",
-          "name": "firstname",
+          "description": "The user's principle",
+          "name": "principal",
+          "type": "string"
+        },
+        {},
+        {},
+        {
+          "description": "The user's lastname",
+          "name": "lastname",
           "type": "string"
         },
         {
@@ -4162,11 +4163,10 @@
           "name": "username",
           "type": "string"
         },
-        {},
         {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
-          "type": "string"
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
         }
       ],
       "since": "4.3.0"
@@ -4177,11 +4177,11 @@
       "name": "listNetworks",
       "params": [
         {
-          "description": "If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false",
+          "description": "",
           "length": 255,
-          "name": "listall",
+          "name": "page",
           "required": false,
-          "type": "boolean"
+          "type": "integer"
         },
         {
           "description": "true if network is system, false otherwise",
@@ -4191,115 +4191,114 @@
           "type": "boolean"
         },
         {
-          "description": "List by keyword",
+          "description": "flag to display the resource icon for networks",
           "length": 255,
-          "name": "keyword",
+          "name": "showicon",
           "required": false,
-          "type": "string"
+          "type": "boolean"
         },
         {
-          "description": "list networks by physical network id",
+          "description": "list resources by display flag; only ROOT admin is eligible to pass this parameter",
           "length": 255,
-          "name": "physicalnetworkid",
-          "related": "createPhysicalNetwork,listPhysicalNetworks,updatePhysicalNetwork",
+          "name": "displaynetwork",
           "required": false,
-          "type": "uuid"
+          "since": "4.4",
+          "type": "boolean"
         },
         {
-          "description": "list networks by ACL (access control list) type. Supported values are account and domain",
+          "description": "true if need to list only networks which support specifying IP ranges",
           "length": 255,
-          "name": "acltype",
+          "name": "specifyipranges",
           "required": false,
-          "type": "string"
+          "type": "boolean"
         },
         {
-          "description": "the type of the network. Supported values are: isolated, l2, shared and all",
+          "description": "list networks by ID",
           "length": 255,
-          "name": "type",
+          "name": "id",
+          "related": "createNetwork,listNetworks,updateNetwork,createNetwork,updateNetwork,listNetworks,migrateNetwork,listF5LoadBalancerNetworks,listNetscalerLoadBalancerNetworks,listNiciraNvpDeviceNetworks,listPaloAltoFirewallNetworks,listSrxFirewallNetworks,listBrocadeVcsDeviceNetworks",
           "required": false,
-          "type": "string"
+          "type": "uuid"
         },
         {
-          "description": "",
+          "description": "List networks by VPC",
           "length": 255,
-          "name": "page",
+          "name": "vpcid",
+          "related": "createVPC,listVPCs,updateVPC,createVPC,listVPCs,updateVPC,migrateVPC",
           "required": false,
-          "type": "integer"
+          "type": "uuid"
         },
         {
-          "description": "list networks by restartRequired",
+          "description": "list networks supporting certain services",
           "length": 255,
-          "name": "restartrequired",
+          "name": "supportedservices",
           "required": false,
-          "type": "boolean"
+          "type": "list"
         },
         {
-          "description": "list only resources belonging to the domain specified",
+          "description": "List by keyword",
           "length": 255,
-          "name": "domainid",
-          "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
+          "name": "keyword",
           "required": false,
-          "type": "uuid"
+          "type": "string"
         },
         {
-          "description": "list networks available for VM deployment",
+          "description": "list networks by restartRequired",
           "length": 255,
-          "name": "canusefordeploy",
+          "name": "restartrequired",
           "required": false,
           "type": "boolean"
         },
         {
-          "description": "the zone ID of the network",
+          "description": "list resources by account. Must be used with the domainId parameter.",
           "length": 255,
-          "name": "zoneid",
-          "related": "createZone,updateZone,listZones,listZones",
+          "name": "account",
           "required": false,
-          "type": "uuid"
+          "type": "string"
         },
         {
-          "description": "list networks by network offering ID",
+          "description": "list networks by ACL (access control list) type. Supported values are account and domain",
           "length": 255,
-          "name": "networkofferingid",
-          "related": "createNetworkOffering,updateNetworkOffering,listNetworkOfferings",
+          "name": "acltype",
           "required": false,
-          "type": "uuid"
+          "type": "string"
         },
         {
-          "description": "list resources by account. Must be used with the domainId parameter.",
+          "description": "",
           "length": 255,
-          "name": "account",
+          "name": "pagesize",
           "required": false,
-          "type": "string"
+          "type": "integer"
         },
         {
-          "description": "defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves.",
+          "description": "list networks available for VM deployment",
           "length": 255,
-          "name": "isrecursive",
+          "name": "canusefordeploy",
           "required": false,
           "type": "boolean"
         },
         {
-          "description": "list objects by project",
+          "description": "the type of the network. Supported values are: isolated, l2, shared and all",
           "length": 255,
-          "name": "projectid",
-          "related": "listProjectAccounts,activateProject,createProject,listProjects,suspendProject,updateProject",
+          "name": "type",
           "required": false,
-          "type": "uuid"
+          "type": "string"
         },
         {
-          "description": "list resources by display flag; only ROOT admin is eligible to pass this parameter",
+          "description": "list only resources belonging to the domain specified",
           "length": 255,
-          "name": "displaynetwork",
+          "name": "domainid",
+          "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
           "required": false,
-          "since": "4.4",
-          "type": "boolean"
+          "type": "uuid"
         },
         {
-          "description": "flag to display the resource icon for networks",
+          "description": "list networks by network offering ID",
           "length": 255,
-          "name": "showicon",
+          "name": "networkofferingid",
+          "related": "createNetworkOffering,updateNetworkOffering,listNetworkOfferings",
           "required": false,
-          "type": "boolean"
+          "type": "uuid"
         },
         {
           "description": "the network belongs to VPC",
@@ -4309,41 +4308,41 @@
           "type": "boolean"
         },
         {
-          "description": "List networks by VPC",
+          "description": "list networks by physical network id",
           "length": 255,
-          "name": "vpcid",
-          "related": "createVPC,listVPCs,updateVPC,createVPC,listVPCs,updateVPC,migrateVPC",
+          "name": "physicalnetworkid",
+          "related": "createPhysicalNetwork,listPhysicalNetworks,updatePhysicalNetwork",
           "required": false,
           "type": "uuid"
         },
         {
-          "description": "true if need to list only networks which support specifying IP ranges",
+          "description": "List resources by tags (key/value pairs)",
           "length": 255,
-          "name": "specifyipranges",
+          "name": "tags",
           "required": false,
-          "type": "boolean"
+          "type": "map"
         },
         {
-          "description": "list networks by ID",
+          "description": "the zone ID of the network",
           "length": 255,
-          "name": "id",
-          "related": "createNetwork,listNetworks,updateNetwork,createNetwork,updateNetwork,listNetworks,migrateNetwork,listF5LoadBalancerNetworks,listNetscalerLoadBalancerNetworks,listNiciraNvpDeviceNetworks,listPaloAltoFirewallNetworks,listSrxFirewallNetworks,listBrocadeVcsDeviceNetworks",
+          "name": "zoneid",
+          "related": "createZone,updateZone,listZones,listZones",
           "required": false,
           "type": "uuid"
         },
         {
-          "description": "",
+          "description": "If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false",
           "length": 255,
-          "name": "pagesize",
+          "name": "listall",
           "required": false,
-          "type": "integer"
+          "type": "boolean"
         },
         {
-          "description": "List resources by tags (key/value pairs)",
+          "description": "defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves.",
           "length": 255,
-          "name": "tags",
+          "name": "isrecursive",
           "required": false,
-          "type": "map"
+          "type": "boolean"
         },
         {
           "description": "type of the traffic",
@@ -4353,150 +4352,134 @@
           "type": "string"
         },
         {
-          "description": "list networks supporting certain services",
+          "description": "list objects by project",
           "length": 255,
-          "name": "supportedservices",
+          "name": "projectid",
+          "related": "listProjectAccounts,activateProject,createProject,listProjects,suspendProject,updateProject",
           "required": false,
-          "type": "list"
+          "type": "uuid"
         }
       ],
       "related": "createNetwork,updateNetwork,createNetwork,updateNetwork,listNetworks,migrateNetwork,listF5LoadBalancerNetworks,listNetscalerLoadBalancerNetworks,listNiciraNvpDeviceNetworks,listPaloAltoFirewallNetworks,listSrxFirewallNetworks,listBrocadeVcsDeviceNetworks",
       "response": [
         {
-          "description": "true if network is default, false otherwise",
-          "name": "isdefault",
+          "description": "the network's netmask",
+          "name": "netmask",
+          "type": "string"
+        },
+        {
+          "description": "list networks available for vm deployment",
+          "name": "canusefordeploy",
           "type": "boolean"
         },
         {
-          "description": "the list of services",
-          "name": "service",
+          "description": "Broadcast domain type of the network",
+          "name": "broadcastdomaintype",
+          "type": "string"
+        },
+        {
+          "description": "true if network can span multiple zones",
+          "name": "strechedl2subnet",
+          "type": "boolean"
+        },
+        {
+          "description": "the list of resource tags associated with network",
+          "name": "tags",
           "response": [
             {
-              "description": "the service provider name",
-              "name": "provider",
-              "response": [
-                {
-                  "description": "services for this provider",
-                  "name": "servicelist",
-                  "type": "list"
-                },
-                {
-                  "description": "true if individual services can be enabled/disabled",
-                  "name": "canenableindividualservice",
-                  "type": "boolean"
-                },
-                {
-                  "description": "the provider name",
-                  "name": "name",
-                  "type": "string"
-                },
-                {
-                  "description": "the physical network this belongs to",
-                  "name": "physicalnetworkid",
-                  "type": "string"
-                },
-                {
-                  "description": "the destination physical network",
-                  "name": "destinationphysicalnetworkid",
-                  "type": "string"
-                },
-                {
-                  "description": "state of the network provider",
-                  "name": "state",
-                  "type": "string"
-                },
-                {
-                  "description": "uuid of the network provider",
-                  "name": "id",
-                  "type": "string"
-                }
-              ],
-              "type": "list"
+              "description": "resource type",
+              "name": "resourcetype",
+              "type": "string"
             },
             {
-              "description": "the service name",
-              "name": "name",
+              "description": "tag key name",
+              "name": "key",
               "type": "string"
             },
             {
-              "description": "the list of capabilities",
-              "name": "capability",
-              "response": [
-                {
-                  "description": "can this service capability value can be choosable while creatine network offerings",
-                  "name": "canchooseservicecapability",
-                  "type": "boolean"
-                },
-                {
-                  "description": "the capability name",
-                  "name": "name",
-                  "type": "string"
-                },
-                {
-                  "description": "the capability value",
-                  "name": "value",
-                  "type": "string"
-                }
-              ],
-              "type": "list"
+              "description": "the domain associated with the tag",
+              "name": "domain",
+              "type": "string"
+            },
+            {
+              "description": "the project name where tag belongs to",
+              "name": "project",
+              "type": "string"
+            },
+            {
+              "description": "id of the resource",
+              "name": "resourceid",
+              "type": "string"
+            },
+            {
+              "description": "the project id the tag belongs to",
+              "name": "projectid",
+              "type": "string"
+            },
+            {
+              "description": "tag value",
+              "name": "value",
+              "type": "string"
+            },
+            {
+              "description": "the account associated with the tag",
+              "name": "account",
+              "type": "string"
+            },
+            {
+              "description": "the ID of the domain associated with the tag",
+              "name": "domainid",
+              "type": "string"
+            },
+            {
+              "description": "customer associated with the tag",
+              "name": "customer",
+              "type": "string"
             }
           ],
           "type": "list"
         },
+        {},
         {
-          "description": "the details of the network",
-          "name": "details",
-          "type": "map"
-        },
-        {
-          "description": "the name of the network",
-          "name": "name",
+          "description": "the project name of the address",
+          "name": "project",
           "type": "string"
         },
         {
-          "description": "network offering id the network is created from",
-          "name": "networkofferingid",
+          "description": "availability of the network offering the network is created from",
+          "name": "networkofferingavailability",
           "type": "string"
         },
         {
-          "description": "the total number of network traffic bytes sent",
-          "name": "sentbytes",
-          "type": "long"
-        },
-        {
-          "description": "list networks that are persistent",
-          "name": "ispersistent",
-          "type": "boolean"
+          "description": "display text of the network offering the network is created from",
+          "name": "networkofferingdisplaytext",
+          "type": "string"
         },
         {
-          "description": "the project name of the address",
-          "name": "project",
+          "description": "the first DNS for the network",
+          "name": "dns1",
           "type": "string"
         },
         {
-          "description": "an optional field, whether to the display the network to the end user or not.",
-          "name": "displaynetwork",
-          "type": "boolean"
+          "description": "Base64 string representation of the resource icon",
+          "name": "icon",
+          "type": "resourceiconresponse"
         },
         {
-          "description": "true if the entity/resource has annotations",
-          "name": "hasannotations",
+          "description": "If the network has redundant routers enabled",
+          "name": "redundantrouter",
           "type": "boolean"
         },
+        {},
         {
-          "description": "name of the network offering the network is created from",
-          "name": "networkofferingname",
+          "description": "The external id of the network",
+          "name": "externalid",
           "type": "string"
         },
         {
-          "description": "acl type - access type to the network",
-          "name": "acltype",
-          "type": "string"
-        },
-        {
-          "description": "the displaytext of the network",
-          "name": "displaytext",
-          "type": "string"
+          "description": "true if network offering is ip conserve mode enabled",
+          "name": "networkofferingconservemode",
+          "type": "boolean"
         },
         {
           "description": "the UUID of the latest async job acting on this object",
@@ -4504,115 +4487,165 @@
           "type": "string"
         },
         {
-          "description": "true network requires restart",
-          "name": "restartrequired",
-          "type": "boolean"
-        },
-        {
-          "description": "ACL name associated with the VPC network",
-          "name": "aclname",
+          "description": "the network's gateway",
+          "name": "gateway",
           "type": "string"
         },
         {
-          "description": "Broadcast domain type of the network",
-          "name": "broadcastdomaintype",
+          "description": "the name of the zone the network belongs to",
+          "name": "zonename",
           "type": "string"
         },
         {
-          "description": "Base64 string representation of the resource icon",
-          "name": "icon",
-          "type": "resourceiconresponse"
-        },
-        {
-          "description": "the id of the network",
-          "name": "id",
+          "description": "related to what other network configuration",
+          "name": "related",
           "type": "string"
         },
         {
-          "description": "the owner of the network",
-          "name": "account",
+          "description": "the domain name of the network owner",
+          "name": "domain",
           "type": "string"
         },
         {
-          "description": "The external id of the network",
-          "name": "externalid",
-          "type": "string"
+          "description": "true if network is default, false otherwise",
+          "name": "isdefault",
+          "type": "boolean"
         },
         {
-          "description": "related to what other network configuration",
-          "name": "related",
+          "description": "network offering id the network is created from",
+          "name": "networkofferingid",
           "type": "string"
         },
         {
-          "description": "the network CIDR of the guest network configured with IP reservation. It is the summation of CIDR and RESERVED_IP_RANGE",
-          "name": "networkcidr",
-          "type": "string"
+          "description": "true if users from subdomains can access the domain level network",
+          "name": "subdomainaccess",
+          "type": "boolean"
         },
         {
-          "description": "the project id of the ipaddress",
-          "name": "projectid",
-          "type": "string"
+          "description": "true if the entity/resource has annotations",
+          "name": "hasannotations",
+          "type": "boolean"
         },
         {
-          "description": "availability of the network offering the network is created from",
-          "name": "networkofferingavailability",
+          "description": "The vlan of the network. This parameter is visible to ROOT admins only",
+          "name": "vlan",
           "type": "string"
         },
         {
-          "description": "the domain id of the network owner",
-          "name": "domainid",
+          "description": "the displaytext of the network",
+          "name": "displaytext",
           "type": "string"
         },
-        {},
-        {
-          "description": "true if network offering is ip conserve mode enabled",
-          "name": "networkofferingconservemode",
-          "type": "boolean"
-        },
         {
           "description": "the type of the network",
           "name": "type",
           "type": "string"
         },
         {
-          "description": "the name of the zone the network belongs to",
-          "name": "zonename",
-          "type": "string"
-        },
-        {
-          "description": "If the network has redundant routers enabled",
-          "name": "redundantrouter",
-          "type": "boolean"
+          "description": "the total number of network traffic bytes received",
+          "name": "receivedbytes",
+          "type": "long"
         },
         {
-          "description": "the first DNS for the network",
-          "name": "dns1",
+          "description": "the physical network id",
+          "name": "physicalnetworkid",
           "type": "string"
         },
         {
-          "description": "the domain name of the network owner",
-          "name": "domain",
+          "description": "the id of the network",
+          "name": "id",
           "type": "string"
         },
         {
-          "description": "the traffic type of the network",
-          "name": "traffictype",
+          "description": "state of the network",
+          "name": "state",
           "type": "string"
         },
         {
-          "description": "the network domain",
-          "name": "networkdomain",
+          "description": "acl type - access type to the network",
+          "name": "acltype",
           "type": "string"
         },
         {
-          "description": "the second DNS for the network",
-          "name": "dns2",
+          "description": "the name of the network",
+          "name": "name",
           "type": "string"
         },
         {
-          "description": "the total number of network traffic bytes received",
-          "name": "receivedbytes",
-          "type": "long"
+          "description": "the list of services",
+          "name": "service",
+          "response": [
+            {
+              "description": "the service provider name",
+              "name": "provider",
+              "response": [
+                {
+                  "description": "the provider name",
+                  "name": "name",
+                  "type": "string"
+                },
+                {
+                  "description": "services for this provider",
+                  "name": "servicelist",
+                  "type": "list"
+                },
+                {
+                  "description": "uuid of the network provider",
+                  "name": "id",
+                  "type": "string"
+                },
+                {
+                  "description": "state of the network provider",
+                  "name": "state",
+                  "type": "string"
+                },
+                {
+                  "description": "the destination physical network",
+                  "name": "destinationphysicalnetworkid",
+                  "type": "string"
+                },
+                {
+                  "description": "true if individual services can be enabled/disabled",
+                  "name": "canenableindividualservice",
+                  "type": "boolean"
+                },
+                {
+                  "description": "the physical network this belongs to",
+                  "name": "physicalnetworkid",
+                  "type": "string"
+                }
+              ],
+              "type": "list"
+            },
+            {
+              "description": "the service name",
+              "name": "name",
+              "type": "string"
+            },
+            {
+              "description": "the list of capabilities",
+              "name": "capability",
+              "response": [
+                {
+                  "description": "the capability name",
+                  "name": "name",
+                  "type": "string"
+                },
+                {
+                  "description": "the capability value",
+                  "name": "value",
+                  "type": "string"
+                },
+                {
+                  "description": "can this service capability value can be choosable while creatine network offerings",
+                  "name": "canchooseservicecapability",
+                  "type": "boolean"
+                }
+              ],
+              "type": "list"
+            }
+          ],
+          "type": "list"
         },
         {
           "description": "Name of the VPC to which this network belongs",
@@ -4620,80 +4653,84 @@
           "type": "string"
         },
         {
-          "description": "true if network supports specifying ip ranges, false otherwise",
-          "name": "specifyipranges",
-          "type": "boolean"
+          "description": "the second DNS for the network",
+          "name": "dns2",
+          "type": "string"
         },
         {
-          "description": "list networks available for vm deployment",
-          "name": "canusefordeploy",
+          "description": "true if network supports specifying ip ranges, false otherwise",
+          "name": "specifyipranges",
           "type": "boolean"
         },
         {
-          "description": "ACL Id associated with the VPC network",
-          "name": "aclid",
+          "description": "name of the network offering the network is created from",
+          "name": "networkofferingname",
           "type": "string"
         },
         {
-          "description": "the physical network id",
-          "name": "physicalnetworkid",
+          "description": "zone id of the network",
+          "name": "zoneid",
           "type": "string"
         },
         {
-          "description": "The vlan of the network. This parameter is visible to ROOT admins only",
-          "name": "vlan",
+          "description": "the gateway of IPv6 network",
+          "name": "ip6gateway",
           "type": "string"
         },
-        {},
         {
           "description": "the network's IP range not to be used by CloudStack guest VMs and can be used for non CloudStack purposes",
           "name": "reservediprange",
           "type": "string"
         },
         {
-          "description": "true if network is system, false otherwise",
-          "name": "issystem",
+          "description": "an optional field, whether to the display the network to the end user or not.",
+          "name": "displaynetwork",
           "type": "boolean"
         },
         {
-          "description": "state of the network",
-          "name": "state",
+          "description": "the domain id of the network owner",
+          "name": "domainid",
           "type": "string"
         },
         {
-          "description": "the network's gateway",
-          "name": "gateway",
+          "description": "the traffic type of the network",
+          "name": "traffictype",
           "type": "string"
         },
         {
-          "description": "the gateway of IPv6 network",
-          "name": "ip6gateway",
+          "description": "the network CIDR of the guest network configured with IP reservation. It is the summation of CIDR and RESERVED_IP_RANGE",
+          "name": "networkcidr",
           "type": "string"
         },
         {
-          "description": "If a network is enabled for 'streched l2 subnet' then represents zones on which network currently spans",
-          "name": "zonesnetworkspans",
-          "type": "set"
+          "description": "the cidr of IPv6 network",
+          "name": "ip6cidr",
+          "type": "string"
         },
         {
-          "description": "VPC the network belongs to",
-          "name": "vpcid",
+          "description": "the project id of the ipaddress",
+          "name": "projectid",
           "type": "string"
         },
         {
-          "description": "display text of the network offering the network is created from",
-          "name": "networkofferingdisplaytext",
+          "description": "ACL Id associated with the VPC network",
+          "name": "aclid",
           "type": "string"
         },
         {
-          "description": "true if users from subdomains can access the domain level network",
-          "name": "subdomainaccess",
-          "type": "boolean"
+          "description": "broadcast uri of the network. This parameter is visible to ROOT admins only",
+          "name": "broadcasturi",
+          "type": "string"
         },
         {
-          "description": "the cidr of IPv6 network",
-          "name": "ip6cidr",
-          "type": "string"
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
+        },
+        {
+          "description": "true network requires restart",
+          "name": "restartrequired",
+          "type": "boolean"
         },
         {
           "description": "Cloudstack managed address space, all CloudStack managed VMs get IP address from CIDR",
@@ -4701,81 +4738,29 @@
           "type": "string"
         },
         {
-          "description": "zone id of the network",
-          "name": "zoneid",
-          "type": "string"
+          "description": "true if network is system, false otherwise",
+          "name": "issystem",
+          "type": "boolean"
         },
         {
-          "description": "the network's netmask",
-          "name": "netmask",
+          "description": "ACL name associated with the VPC network",
+          "name": "aclname",
           "type": "string"
         },
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
+          "description": "the network domain",
+          "name": "networkdomain",
+          "type": "string"
         },
         {
-          "description": "the list of resource tags associated with network",
-          "name": "tags",
-          "response": [
-            {
-              "description": "the project id the tag belongs to",
-              "name": "projectid",
-              "type": "string"
-            },
-            {
-              "description": "customer associated with the tag",
-              "name": "customer",
-              "type": "string"
-            },
-            {
-              "description": "the project name where tag belongs to",
-              "name": "project",
-              "type": "string"
-            },
-            {
-              "description": "tag value",
-              "name": "value",
-              "type": "string"
-            },
-            {
-              "description": "resource type",
-              "name": "resourcetype",
-              "type": "string"
-            },
-            {
-              "description": "the domain associated with the tag",
-              "name": "domain",
-              "type": "string"
-            },
-            {
-              "description": "tag key name",
-              "name": "key",
-              "type": "string"
-            },
-            {
-              "description": "the ID of the domain associated with the tag",
-              "name": "domainid",
-              "type": "string"
-            },
-            {
-              "description": "id of the resource",
-              "name": "resourceid",
-              "type": "string"
-            },
-            {
-              "description": "the account associated with the tag",
-              "name": "account",
-              "type": "string"
-            }
-          ],
-          "type": "list"
+          "description": "the details of the network",
+          "name": "details",
+          "type": "map"
         },
         {
-          "description": "true if network can span multiple zones",
-          "name": "strechedl2subnet",
-          "type": "boolean"
+          "description": "VPC the network belongs to",
+          "name": "vpcid",
+          "type": "string"
         },
         {
           "description": "the date this network was created",
@@ -4783,9 +4768,24 @@
           "type": "date"
         },
         {
-          "description": "broadcast uri of the network. This parameter is visible to ROOT admins only",
-          "name": "broadcasturi",
+          "description": "list networks that are persistent",
+          "name": "ispersistent",
+          "type": "boolean"
+        },
+        {
+          "description": "If a network is enabled for 'streched l2 subnet' then represents zones on which network currently spans",
+          "name": "zonesnetworkspans",
+          "type": "set"
+        },
+        {
+          "description": "the owner of the network",
+          "name": "account",
           "type": "string"
+        },
+        {
+          "description": "the total number of network traffic bytes sent",
+          "name": "sentbytes",
+          "type": "long"
         }
       ]
     },
@@ -4795,18 +4795,19 @@
       "name": "listDedicatedZones",
       "params": [
         {
-          "description": "the name of the account associated with the zone. Must be used with domainId.",
+          "description": "",
           "length": 255,
-          "name": "account",
+          "name": "pagesize",
           "required": false,
-          "type": "string"
+          "type": "integer"
         },
         {
-          "description": "",
+          "description": "the ID of the domain associated with the zone",
           "length": 255,
-          "name": "pagesize",
+          "name": "domainid",
+          "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
           "required": false,
-          "type": "integer"
+          "type": "uuid"
         },
         {
           "description": "List by keyword",
@@ -4816,6 +4817,13 @@
           "type": "string"
         },
         {
+          "description": "the name of the account associated with the zone. Must be used with domainId.",
+          "length": 255,
+          "name": "account",
+          "required": false,
+          "type": "string"
+        },
+        {
           "description": "",
           "length": 255,
           "name": "page",
@@ -4831,14 +4839,6 @@
           "type": "uuid"
         },
         {
-          "description": "the ID of the domain associated with the zone",
-          "length": 255,
-          "name": "domainid",
-          "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
-          "required": false,
-          "type": "uuid"
-        },
-        {
           "description": "the ID of the Zone",
           "length": 255,
           "name": "zoneid",
@@ -4850,14 +4850,15 @@
       "related": "dedicateZone",
       "response": [
         {
-          "description": "the ID of the Zone",
-          "name": "zoneid",
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
           "type": "string"
         },
+        {},
         {
-          "description": "the Name of the Zone",
-          "name": "zonename",
-          "type": "string"
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
         },
         {
           "description": "the Account Id to which the Zone is dedicated",
@@ -4866,30 +4867,29 @@
         },
         {},
         {
-          "description": "the Dedication Affinity Group ID of the zone",
-          "name": "affinitygroupid",
+          "description": "the ID of the Zone",
+          "name": "zoneid",
           "type": "string"
         },
-        {},
         {
-          "description": "the ID of the dedicated resource",
-          "name": "id",
+          "description": "the Name of the Zone",
+          "name": "zonename",
           "type": "string"
         },
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
-        },
-        {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
+          "description": "the Dedication Affinity Group ID of the zone",
+          "name": "affinitygroupid",
           "type": "string"
         },
         {
           "description": "the domain ID to which the Zone is dedicated",
           "name": "domainid",
           "type": "string"
+        },
+        {
+          "description": "the ID of the dedicated resource",
+          "name": "id",
+          "type": "string"
         }
       ]
     },
@@ -4909,25 +4909,23 @@
       "related": "",
       "response": [
         {
-          "description": "the state of the storage pool",
-          "name": "state",
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
           "type": "string"
         },
-        {},
         {
-          "description": "controller of the pool",
-          "name": "controllerid",
+          "description": "the name of the storage pool",
+          "name": "name",
           "type": "string"
         },
         {
-          "description": "available iops of the pool",
-          "name": "maxiops",
-          "type": "long"
+          "description": "the ID of the storage pool",
+          "name": "id",
+          "type": "string"
         },
-        {},
         {
-          "description": "default gateway of the pool",
-          "name": "gateway",
+          "description": "the state of the storage pool",
+          "name": "state",
           "type": "string"
         },
         {
@@ -4936,25 +4934,27 @@
           "type": "integer"
         },
         {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
-          "type": "string"
+          "description": "available iops of the pool",
+          "name": "maxiops",
+          "type": "long"
         },
+        {},
         {
-          "description": "the name of the storage pool",
-          "name": "name",
-          "type": "string"
+          "description": "the current available space of the pool",
+          "name": "size",
+          "type": "long"
         },
         {
-          "description": "the ID of the storage pool",
-          "name": "id",
+          "description": "default gateway of the pool",
+          "name": "gateway",
           "type": "string"
         },
         {
-          "description": "the current available space of the pool",
-          "name": "size",
-          "type": "long"
-        }
+          "description": "controller of the pool",
+          "name": "controllerid",
+          "type": "string"
+        },
+        {}
       ]
     },
     {
@@ -4963,14 +4963,6 @@
       "name": "updatePodManagementNetworkIpRange",
       "params": [
         {
-          "description": "The current ending IP address.",
-          "length": 255,
-          "name": "currentendip",
-          "related": "listPods,updatePod,createManagementNetworkIpRange",
-          "required": true,
-          "type": "string"
-        },
-        {
           "description": "The new ending IP address.",
           "length": 255,
           "name": "newendip",
@@ -4986,6 +4978,13 @@
           "type": "string"
         },
         {
+          "description": "The new starting IP address.",
+          "length": 255,
+          "name": "newstartip",
+          "required": false,
+          "type": "string"
+        },
+        {
           "description": "UUID of POD, where the IP range belongs to.",
           "length": 255,
           "name": "podid",
@@ -4994,10 +4993,11 @@
           "type": "uuid"
         },
         {
-          "description": "The new starting IP address.",
+          "description": "The current ending IP address.",
           "length": 255,
-          "name": "newstartip",
-          "required": false,
+          "name": "currentendip",
+          "related": "listPods,updatePod,createManagementNetworkIpRange",
+          "required": true,
           "type": "string"
         }
       ],
@@ -5009,21 +5009,21 @@
           "type": "integer"
         },
         {
-          "description": "any text associated with the success or failure",
-          "name": "displaytext",
-          "type": "string"
-        },
-        {
           "description": "the UUID of the latest async job acting on this object",
           "name": "jobid",
           "type": "string"
         },
-        {},
         {
           "description": "true if operation is executed successfully",
           "name": "success",
           "type": "boolean"
-        }
+        },
+        {
+          "description": "any text associated with the success or failure",
+          "name": "displaytext",
+          "type": "string"
+        },
+        {}
       ],
       "since": "4.16.0.0"
     },
@@ -5033,6 +5033,14 @@
       "name": "updateFirewallRule",
       "params": [
         {
+          "description": "the ID of the firewall rule",
+          "length": 255,
+          "name": "id",
+          "related": "createPortForwardingRule,listPortForwardingRules,updatePortForwardingRule,createIpForwardingRule,listIpForwardingRules",
+          "required": true,
+          "type": "uuid"
+        },
+        {
           "description": "an optional field, whether to the display the rule to the end user or not",
           "length": 255,
           "name": "fordisplay",
@@ -5047,21 +5055,34 @@
           "required": false,
           "since": "4.4",
           "type": "string"
-        },
-        {
-          "description": "the ID of the firewall rule",
-          "length": 255,
-          "name": "id",
-          "related": "createPortForwardingRule,listPortForwardingRules,updatePortForwardingRule,createIpForwardingRule,listIpForwardingRules",
-          "required": true,
-          "type": "uuid"
         }
       ],
       "related": "createEgressFirewallRule,createFirewallRule,listEgressFirewallRules,listFirewallRules,updateEgressFirewallRule",
       "response": [
         {
-          "description": "the network id of the firewall rule",
-          "name": "networkid",
+          "description": "the ending port of firewall rule's port range",
+          "name": "endport",
+          "type": "integer"
+        },
+        {},
+        {
+          "description": "the public ip address for the firewall rule",
+          "name": "ipaddress",
+          "type": "string"
+        },
+        {
+          "description": "the cidr list to forward traffic from. Multiple entries are separated by a single comma character (,).",
+          "name": "cidrlist",
+          "type": "string"
+        },
+        {
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
+          "type": "string"
+        },
+        {
+          "description": "the network id of the firewall rule",
+          "name": "networkid",
           "type": "string"
         },
         {
@@ -5069,49 +5090,64 @@
           "name": "icmptype",
           "type": "integer"
         },
-        {},
+        {
+          "description": "the cidr list to forward traffic to. Multiple entries are separated by a single comma character (,).",
+          "name": "destcidrlist",
+          "type": "string"
+        },
         {
           "description": "error code for this icmp message",
           "name": "icmpcode",
           "type": "integer"
         },
+        {},
         {
-          "description": "the cidr list to forward traffic from. Multiple entries are separated by a single comma character (,).",
-          "name": "cidrlist",
+          "description": "the state of the rule",
+          "name": "state",
           "type": "string"
         },
         {
-          "description": "the public ip address for the firewall rule",
-          "name": "ipaddress",
+          "description": "the protocol of the firewall rule",
+          "name": "protocol",
           "type": "string"
         },
         {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
-          "type": "string"
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
         },
         {
-          "description": "the state of the rule",
-          "name": "state",
+          "description": "the ID of the firewall rule",
+          "name": "id",
           "type": "string"
         },
         {
+          "description": "is rule for display to the regular user",
+          "name": "fordisplay",
+          "type": "boolean"
+        },
+        {
           "description": "the list of resource tags associated with the rule",
           "name": "tags",
           "response": [
             {
+              "description": "the project id the tag belongs to",
+              "name": "projectid",
+              "type": "string"
+            },
+            {
               "description": "the domain associated with the tag",
               "name": "domain",
               "type": "string"
             },
             {
-              "description": "customer associated with the tag",
-              "name": "customer",
+              "description": "the ID of the domain associated with the tag",
+              "name": "domainid",
               "type": "string"
             },
             {
-              "description": "tag key name",
-              "name": "key",
+              "description": "customer associated with the tag",
+              "name": "customer",
               "type": "string"
             },
             {
@@ -5120,13 +5156,8 @@
               "type": "string"
             },
             {
-              "description": "id of the resource",
-              "name": "resourceid",
-              "type": "string"
-            },
-            {
-              "description": "the ID of the domain associated with the tag",
-              "name": "domainid",
+              "description": "tag key name",
+              "name": "key",
               "type": "string"
             },
             {
@@ -5135,63 +5166,32 @@
               "type": "string"
             },
             {
-              "description": "resource type",
-              "name": "resourcetype",
+              "description": "id of the resource",
+              "name": "resourceid",
               "type": "string"
             },
             {
-              "description": "the project id the tag belongs to",
-              "name": "projectid",
+              "description": "the project name where tag belongs to",
+              "name": "project",
               "type": "string"
             },
             {
-              "description": "the project name where tag belongs to",
-              "name": "project",
+              "description": "resource type",
+              "name": "resourcetype",
               "type": "string"
             }
           ],
           "type": "list"
         },
         {
-          "description": "the public ip address id for the firewall rule",
-          "name": "ipaddressid",
-          "type": "string"
-        },
-        {
           "description": "the starting port of firewall rule's port range",
           "name": "startport",
           "type": "integer"
         },
         {
-          "description": "the ID of the firewall rule",
-          "name": "id",
-          "type": "string"
-        },
-        {
-          "description": "the protocol of the firewall rule",
-          "name": "protocol",
-          "type": "string"
-        },
-        {},
-        {
-          "description": "the cidr list to forward traffic to. Multiple entries are separated by a single comma character (,).",
-          "name": "destcidrlist",
+          "description": "the public ip address id for the firewall rule",
+          "name": "ipaddressid",
           "type": "string"
-        },
-        {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
-        },
-        {
-          "description": "the ending port of firewall rule's port range",
-          "name": "endport",
-          "type": "integer"
-        },
-        {
-          "description": "is rule for display to the regular user",
-          "name": "fordisplay",
-          "type": "boolean"
         }
       ],
       "since": "4.4"
@@ -5203,23 +5203,23 @@
       "params": [],
       "related": "",
       "response": [
-        {},
         {
           "description": "the UUID of the latest async job acting on this object",
           "name": "jobid",
           "type": "string"
         },
-        {},
         {
           "description": "is quota service enabled",
           "name": "isenabled",
           "type": "boolean"
         },
+        {},
         {
           "description": "the current status of the latest async job acting on this object",
           "name": "jobstatus",
           "type": "integer"
-        }
+        },
+        {}
       ],
       "since": "4.7.0"
     },
@@ -5229,10 +5229,10 @@
       "name": "listSrxFirewalls",
       "params": [
         {
-          "description": "the Physical Network ID",
+          "description": "SRX firewall device ID",
           "length": 255,
-          "name": "physicalnetworkid",
-          "related": "createPhysicalNetwork,listPhysicalNetworks,updatePhysicalNetwork",
+          "name": "fwdeviceid",
+          "related": "addSrxFirewall,configureSrxFirewall,listSrxFirewalls",
           "required": false,
           "type": "uuid"
         },
@@ -5246,24 +5246,24 @@
         {
           "description": "",
           "length": 255,
-          "name": "page",
+          "name": "pagesize",
           "required": false,
           "type": "integer"
         },
         {
-          "description": "SRX firewall device ID",
+          "description": "",
           "length": 255,
-          "name": "fwdeviceid",
-          "related": "addSrxFirewall,configureSrxFirewall,listSrxFirewalls",
+          "name": "page",
           "required": false,
-          "type": "uuid"
+          "type": "integer"
         },
         {
-          "description": "",
+          "description": "the Physical Network ID",
           "length": 255,
-          "name": "pagesize",
+          "name": "physicalnetworkid",
+          "related": "createPhysicalNetwork,listPhysicalNetworks,updatePhysicalNetwork",
           "required": false,
-          "type": "integer"
+          "type": "uuid"
         }
       ],
       "related": "addSrxFirewall,configureSrxFirewall",
@@ -5274,40 +5274,33 @@
           "type": "string"
         },
         {
-          "description": "the public interface of the external firewall",
-          "name": "publicinterface",
+          "description": "device name",
+          "name": "fwdevicename",
           "type": "string"
         },
-        {},
         {
-          "description": "device state",
-          "name": "fwdevicestate",
+          "description": "the public security zone of the external firewall",
+          "name": "publiczone",
           "type": "string"
         },
         {
-          "description": "the private interface of the external firewall",
-          "name": "privateinterface",
+          "description": "the physical network to which this SRX firewall belongs to",
+          "name": "physicalnetworkid",
           "type": "string"
         },
-        {},
-        {
-          "description": "device capacity",
-          "name": "fwdevicecapacity",
-          "type": "long"
-        },
         {
-          "description": "the private security zone of the external firewall",
-          "name": "privatezone",
+          "description": "the timeout (in seconds) for requests to the external firewall",
+          "name": "timeout",
           "type": "string"
         },
         {
-          "description": "device name",
-          "name": "fwdevicename",
-          "type": "string"
+          "description": "device capacity",
+          "name": "fwdevicecapacity",
+          "type": "long"
         },
         {
-          "description": "the physical network to which this SRX firewall belongs to",
-          "name": "physicalnetworkid",
+          "description": "device state",
+          "name": "fwdevicestate",
           "type": "string"
         },
         {
@@ -5316,11 +5309,6 @@
           "type": "string"
         },
         {
-          "description": "the management IP address of the external firewall",
-          "name": "ipaddress",
-          "type": "string"
-        },
-        {
           "description": "the current status of the latest async job acting on this object",
           "name": "jobstatus",
           "type": "integer"
@@ -5331,13 +5319,19 @@
           "type": "string"
         },
         {
-          "description": "the public security zone of the external firewall",
-          "name": "publiczone",
+          "description": "the public interface of the external firewall",
+          "name": "publicinterface",
           "type": "string"
         },
+        {},
         {
-          "description": "the zone ID of the external firewall",
-          "name": "zoneid",
+          "description": "the private interface of the external firewall",
+          "name": "privateinterface",
+          "type": "string"
+        },
+        {
+          "description": "the private security zone of the external firewall",
+          "name": "privatezone",
           "type": "string"
         },
         {
@@ -5346,8 +5340,14 @@
           "type": "string"
         },
         {
-          "description": "the timeout (in seconds) for requests to the external firewall",
-          "name": "timeout",
+          "description": "the zone ID of the external firewall",
+          "name": "zoneid",
+          "type": "string"
+        },
+        {},
+        {
+          "description": "the management IP address of the external firewall",
+          "name": "ipaddress",
           "type": "string"
         },
         {
@@ -5385,27 +5385,27 @@
       ],
       "response": [
         {
+          "description": "true if operation is executed successfully",
+          "name": "success",
+          "type": "boolean"
+        },
+        {},
+        {},
+        {
           "description": "the current status of the latest async job acting on this object",
           "name": "jobstatus",
           "type": "integer"
         },
-        {},
         {
           "description": "the UUID of the latest async job acting on this object",
           "name": "jobid",
           "type": "string"
         },
         {
-          "description": "true if operation is executed successfully",
-          "name": "success",
-          "type": "boolean"
-        },
-        {
           "description": "any text associated with the success or failure",
           "name": "displaytext",
           "type": "string"
-        },
-        {}
+        }
       ],
       "since": "3.0.0"
     },
@@ -5427,17 +5427,17 @@
       "response": [
         {},
         {
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
+        },
+        {
           "description": "the UUID of the latest async job acting on this object",
           "name": "jobid",
           "type": "string"
         },
         {},
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
-        },
-        {
           "description": "Hypervisor name",
           "name": "name",
           "type": "string"
@@ -5475,15 +5475,18 @@
       "related": "listOsTypes,addGuestOs",
       "response": [
         {
-          "description": "the ID of the OS type",
-          "name": "id",
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
+        },
+        {
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
           "type": "string"
         },
-        {},
-        {},
         {
-          "description": "the ID of the OS category",
-          "name": "oscategoryid",
+          "description": "the ID of the OS type",
+          "name": "id",
           "type": "string"
         },
         {
@@ -5492,20 +5495,17 @@
           "type": "boolean"
         },
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
+          "description": "the ID of the OS category",
+          "name": "oscategoryid",
+          "type": "string"
         },
         {
           "description": "the name/description of the OS type",
           "name": "description",
           "type": "string"
         },
-        {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
-          "type": "string"
-        }
+        {},
+        {}
       ],
       "since": "4.4.0"
     },
@@ -5515,11 +5515,12 @@
       "name": "updateResourceLimit",
       "params": [
         {
-          "description": "  Maximum resource limit.",
+          "description": "Update resource limits for all accounts in specified domain. If used with the account parameter, updates resource limits for a specified account in specified domain.",
           "length": 255,
-          "name": "max",
+          "name": "domainid",
+          "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
           "required": false,
-          "type": "long"
+          "type": "uuid"
         },
         {
           "description": "Update resource for a specified account. Must be used with the domainId parameter.",
@@ -5529,14 +5530,6 @@
           "type": "string"
         },
         {
-          "description": "Update resource limits for all accounts in specified domain. If used with the account parameter, updates resource limits for a specified account in specified domain.",
-          "length": 255,
-          "name": "domainid",
-          "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
-          "required": false,
-          "type": "uuid"
-        },
-        {
           "description": "Update resource limits for project",
           "length": 255,
           "name": "projectid",
@@ -5550,34 +5543,41 @@
           "name": "resourcetype",
           "required": true,
           "type": "integer"
+        },
+        {
+          "description": "  Maximum resource limit.",
+          "length": 255,
+          "name": "max",
+          "required": false,
+          "type": "long"
         }
       ],
       "related": "listResourceLimits",
       "response": [
-        {},
-        {
-          "description": "the project id of the resource limit",
-          "name": "projectid",
-          "type": "string"
-        },
         {
           "description": "the project name of the resource limit",
           "name": "project",
           "type": "string"
         },
         {
-          "description": "the domain ID of the resource limit",
-          "name": "domainid",
+          "description": "resource type. Values include 0, 1, 2, 3, 4, 6, 7, 8, 9, 10, 11. See the resourceType parameter for more information on these values.",
+          "name": "resourcetype",
           "type": "string"
         },
         {
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
+        },
+        {},
+        {
           "description": "the maximum number of the resource. A -1 means the resource currently has no limit.",
           "name": "max",
           "type": "long"
         },
         {
-          "description": "resource type name. Values include user_vm, public_ip, volume, snapshot, template, project, network, vpc, cpu, memory, primary_storage, secondary_storage.",
-          "name": "resourcetypename",
+          "description": "the domain name of the resource limit",
+          "name": "domain",
           "type": "string"
         },
         {
@@ -5586,26 +5586,26 @@
           "type": "string"
         },
         {
-          "description": "resource type. Values include 0, 1, 2, 3, 4, 6, 7, 8, 9, 10, 11. See the resourceType parameter for more information on these values.",
-          "name": "resourcetype",
+          "description": "the project id of the resource limit",
+          "name": "projectid",
           "type": "string"
         },
-        {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
-        },
+        {},
         {
           "description": "the account of the resource limit",
           "name": "account",
           "type": "string"
         },
         {
-          "description": "the domain name of the resource limit",
-          "name": "domain",
+          "description": "the domain ID of the resource limit",
+          "name": "domainid",
           "type": "string"
         },
-        {}
+        {
+          "description": "resource type name. Values include user_vm, public_ip, volume, snapshot, template, project, network, vpc, cpu, memory, primary_storage, secondary_storage.",
+          "name": "resourcetypename",
+          "type": "string"
+        }
       ]
     },
     {
@@ -5623,19 +5623,12 @@
         }
       ],
       "response": [
-        {},
         {
           "description": "any text associated with the success or failure",
           "name": "displaytext",
           "type": "string"
         },
         {
-          "description": "true if operation is executed successfully",
-          "name": "success",
-          "type": "boolean"
-        },
-        {},
-        {
           "description": "the current status of the latest async job acting on this object",
           "name": "jobstatus",
           "type": "integer"
@@ -5644,7 +5637,14 @@
           "description": "the UUID of the latest async job acting on this object",
           "name": "jobid",
           "type": "string"
-        }
+        },
+        {},
+        {
+          "description": "true if operation is executed successfully",
+          "name": "success",
+          "type": "boolean"
+        },
+        {}
       ]
     },
     {
@@ -5653,6 +5653,14 @@
       "name": "listHostsMetrics",
       "params": [
         {
+          "description": "the id of the host",
+          "length": 255,
+          "name": "id",
+          "related": "addHost,cancelHostMaintenance,cancelHostAsDegraded,declareHostAsDegraded,prepareHostForMaintenance,reconnectHost,updateHost,addBaremetalHost,listExternalLoadBalancers",
+          "required": false,
+          "type": "uuid"
+        },
+        {
           "description": "hypervisor type of host: XenServer,KVM,VMware,Hyperv,BareMetal,Simulator",
           "length": 255,
           "name": "hypervisor",
@@ -5660,14 +5668,21 @@
           "type": "string"
         },
         {
-          "description": "the Zone ID for the host",
+          "description": "the Pod ID for the host",
           "length": 255,
-          "name": "zoneid",
-          "related": "createZone,updateZone,listZones,listZones",
+          "name": "podid",
+          "related": "listPods,updatePod,createManagementNetworkIpRange",
           "required": false,
           "type": "uuid"
         },
         {
+          "description": "if true, list only hosts dedicated to HA",
+          "length": 255,
+          "name": "hahost",
+          "required": false,
+          "type": "boolean"
+        },
+        {
           "description": "list hosts for which out-of-band management is enabled",
           "length": 255,
           "name": "outofbandmanagementenabled",
@@ -5675,13 +5690,21 @@
           "type": "boolean"
         },
         {
-          "description": "the host type",
+          "description": "List by keyword",
           "length": 255,
-          "name": "type",
+          "name": "keyword",
           "required": false,
           "type": "string"
         },
         {
+          "description": "lists hosts in the same cluster as this VM and flag hosts with enough CPU/RAm to host this VM",
+          "length": 255,
+          "name": "virtualmachineid",
+          "related": "assignVirtualMachine,migrateVirtualMachine,migrateVirtualMachineWithVolume,recoverVirtualMachine,attachIso,detachIso,addNicToVirtualMachine,deployVirtualMachine,destroyVirtualMachine,listVirtualMachines,scaleVirtualMachine,rebootVirtualMachine,removeNicFromVirtualMachine,resetPasswordForVirtualMachine,resetSSHKeyForVirtualMachine,restoreVirtualMachine,startVirtualMachine,stopVirtualMachine,updateDefaultNicForVirtualMachine,updateVirtualMachine,changeServiceForVirtua [...]
+          "required": false,
+          "type": "uuid"
+        },
+        {
           "description": "",
           "length": 255,
           "name": "pagesize",
@@ -5689,34 +5712,33 @@
           "type": "integer"
         },
         {
-          "description": "if true, list only hosts dedicated to HA",
+          "description": "comma separated list of host details requested, value can be a list of [ min, all, capacity, events, stats]",
           "length": 255,
-          "name": "hahost",
+          "name": "details",
           "required": false,
-          "type": "boolean"
+          "type": "list"
         },
         {
-          "description": "lists hosts existing in particular cluster",
+          "description": "the Zone ID for the host",
           "length": 255,
-          "name": "clusterid",
-          "related": "addCluster,listClusters,updateCluster",
+          "name": "zoneid",
+          "related": "createZone,updateZone,listZones,listZones",
           "required": false,
           "type": "uuid"
         },
         {
-          "description": "the state of the host",
+          "description": "the name of the host",
           "length": 255,
-          "name": "state",
+          "name": "name",
           "required": false,
           "type": "string"
         },
         {
-          "description": "the Pod ID for the host",
+          "description": "the state of the host",
           "length": 255,
-          "name": "podid",
-          "related": "listPods,updatePod,createManagementNetworkIpRange",
+          "name": "state",
           "required": false,
-          "type": "uuid"
+          "type": "string"
         },
         {
           "description": "",
@@ -5726,48 +5748,26 @@
           "type": "integer"
         },
         {
-          "description": "list hosts by its out-of-band management interface's power state. Its value can be one of [On, Off, Unknown]",
-          "length": 255,
-          "name": "outofbandmanagementpowerstate",
-          "required": false,
-          "type": "string"
-        },
-        {
-          "description": "the id of the host",
-          "length": 255,
-          "name": "id",
-          "related": "addHost,cancelHostMaintenance,cancelHostAsDegraded,declareHostAsDegraded,prepareHostForMaintenance,reconnectHost,updateHost,addBaremetalHost,listExternalLoadBalancers",
-          "required": false,
-          "type": "uuid"
-        },
-        {
-          "description": "lists hosts in the same cluster as this VM and flag hosts with enough CPU/RAm to host this VM",
-          "length": 255,
-          "name": "virtualmachineid",
-          "related": "assignVirtualMachine,migrateVirtualMachine,migrateVirtualMachineWithVolume,recoverVirtualMachine,attachIso,detachIso,addNicToVirtualMachine,deployVirtualMachine,destroyVirtualMachine,listVirtualMachines,scaleVirtualMachine,rebootVirtualMachine,removeNicFromVirtualMachine,resetPasswordForVirtualMachine,resetSSHKeyForVirtualMachine,restoreVirtualMachine,startVirtualMachine,stopVirtualMachine,updateDefaultNicForVirtualMachine,updateVirtualMachine,changeServiceForVirtua [...]
-          "required": false,
-          "type": "uuid"
-        },
-        {
-          "description": "the name of the host",
+          "description": "the host type",
           "length": 255,
-          "name": "name",
+          "name": "type",
           "required": false,
           "type": "string"
         },
         {
-          "description": "List by keyword",
+          "description": "list hosts by its out-of-band management interface's power state. Its value can be one of [On, Off, Unknown]",
           "length": 255,
-          "name": "keyword",
+          "name": "outofbandmanagementpowerstate",
           "required": false,
           "type": "string"
         },
         {
-          "description": "comma separated list of host details requested, value can be a list of [ min, all, capacity, events, stats]",
+          "description": "lists hosts existing in particular cluster",
           "length": 255,
-          "name": "details",
+          "name": "clusterid",
+          "related": "addCluster,listClusters,updateCluster",
           "required": false,
-          "type": "list"
+          "type": "uuid"
         },
         {
           "description": "list hosts by resource state. Resource state represents current state determined by admin of host, value can be one of [Enabled, Disabled, Unmanaged, PrepareForMaintenance, ErrorInMaintenance, Maintenance, Error]",
@@ -5780,29 +5780,78 @@
       "related": "",
       "response": [
         {
-          "description": "the date and time the host was removed",
-          "name": "removed",
-          "type": "date"
+          "description": "the host HA information information",
+          "name": "hostha",
+          "type": "hostharesponse"
         },
         {
-          "description": "memory allocated notification threshold exceeded",
-          "name": "memoryallocatedthreshold",
+          "description": "true if the entity/resource has annotations",
+          "name": "hasannotations",
           "type": "boolean"
         },
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
+          "description": "GPU cards present in the host",
+          "name": "gpugroup",
+          "response": [
+            {
+              "description": "GPU cards present in the host",
+              "name": "gpugroupname",
+              "type": "string"
+            },
+            {
+              "description": "the list of enabled vGPUs",
+              "name": "vgpu",
+              "response": [
+                {
+                  "description": "Remaining capacity in terms of no. of more VMs that can be deployped with this vGPU type",
+                  "name": "remainingcapacity",
+                  "type": "long"
+                },
+                {
+                  "description": "Model Name of vGPU",
+                  "name": "vgputype",
+                  "type": "string"
+                },
+                {
+                  "description": "Maximum displays per user",
+                  "name": "maxheads",
+                  "type": "long"
+                },
+                {
+                  "description": "Maximum vgpu can be created with this vgpu type on the given gpu group",
+                  "name": "maxcapacity",
+                  "type": "long"
+                },
+                {
+                  "description": "Maximum no. of vgpu per gpu card (pgpu)",
+                  "name": "maxvgpuperpgpu",
+                  "type": "long"
+                },
+                {
+                  "description": "Video RAM for this vGPU type",
+                  "name": "videoram",
+                  "type": "long"
+                },
+                {
+                  "description": "Maximum Y resolution per display",
+                  "name": "maxresolutiony",
+                  "type": "long"
+                },
+                {
+                  "description": "Maximum X resolution per display",
+                  "name": "maxresolutionx",
+                  "type": "long"
+                }
+              ],
+              "type": "list"
+            }
+          ],
+          "type": "list"
         },
         {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
-          "type": "string"
-        },
-        {
-          "description": "Host details in key/value pairs.",
-          "name": "details",
-          "type": "map"
+          "description": "the CPU speed of the host",
+          "name": "cpuspeed",
+          "type": "long"
         },
         {
           "description": "the last annotation set on this host by an admin",
@@ -5810,30 +5859,24 @@
           "type": "string"
         },
         {
-          "description": "the hypervisor version",
-          "name": "hypervisorversion",
+          "description": "the Pod name of the host",
+          "name": "podname",
           "type": "string"
         },
-        {},
         {
-          "description": "the Zone name of the host",
-          "name": "zonename",
+          "description": "the hypervisor version",
+          "name": "hypervisorversion",
           "type": "string"
         },
         {
-          "description": "the amount of the host's CPU after applying the cpu.overprovisioning.factor",
-          "name": "cpuwithoverprovisioning",
+          "description": "events available for the host",
+          "name": "events",
           "type": "string"
         },
         {
-          "description": "the memory total of the host, this parameter is deprecated use memorywithoverprovisioning",
-          "name": "memorytotal",
-          "type": "long"
-        },
-        {
-          "description": "the resource state of the host",
-          "name": "resourcestate",
-          "type": "string"
+          "description": "the host type",
+          "name": "type",
+          "type": "type"
         },
         {
           "description": "the outgoing network traffic on the host",
@@ -5841,24 +5884,29 @@
           "type": "long"
         },
         {
-          "description": "the cluster ID of the host",
-          "name": "clusterid",
+          "description": "the cluster name of the host",
+          "name": "clustername",
           "type": "string"
         },
         {
-          "description": "the amount of the host's memory currently allocated in bytes",
-          "name": "memoryallocatedbytes",
-          "type": "long"
+          "description": "network write in GiB",
+          "name": "networkwrite",
+          "type": "string"
         },
         {
-          "description": "the host's currently allocated disk size",
-          "name": "disksizeallocated",
+          "description": "the amount of the host's memory currently used",
+          "name": "memoryused",
           "type": "long"
         },
         {
-          "description": "the date and time the host was last pinged",
-          "name": "lastpinged",
-          "type": "date"
+          "description": "the admin that annotated this host",
+          "name": "username",
+          "type": "string"
+        },
+        {
+          "description": "memory allocated disable threshold exceeded",
+          "name": "memoryallocateddisablethreshold",
+          "type": "boolean"
         },
         {
           "description": "the Zone ID of the host",
@@ -5866,9 +5914,9 @@
           "type": "string"
         },
         {
-          "description": "the host out-of-band management information",
-          "name": "outofbandmanagement",
-          "type": "outofbandmanagementresponse"
+          "description": "the total cpu allocated in Ghz",
+          "name": "cpuallocatedghz",
+          "type": "string"
         },
         {
           "description": "the amount of the host's CPU currently allocated",
@@ -5876,119 +5924,100 @@
           "type": "string"
         },
         {
-          "description": "the incoming network traffic on the host",
-          "name": "networkkbsread",
-          "type": "long"
-        },
-        {
-          "description": "network read in GiB",
-          "name": "networkread",
+          "description": "the total cpu capacity in Ghz",
+          "name": "cputotalghz",
           "type": "string"
         },
         {
-          "description": "true if the entity/resource has annotations",
-          "name": "hasannotations",
-          "type": "boolean"
-        },
-        {
-          "description": "cpu allocated disable threshold exceeded",
-          "name": "cpuallocateddisablethreshold",
-          "type": "boolean"
+          "description": "the management server ID of the host",
+          "name": "managementserverid",
+          "type": "string"
         },
         {
-          "description": "the total memory used in GiB",
-          "name": "memoryusedgb",
+          "description": "the Zone name of the host",
+          "name": "zonename",
           "type": "string"
         },
         {
-          "description": "comma-separated list of tags for the host",
-          "name": "hosttags",
-          "type": "string"
+          "description": "true if the host is Ha host (dedicated to vms started by HA process; false otherwise",
+          "name": "hahost",
+          "type": "boolean"
         },
+        {},
         {
-          "description": "the total disk size of the host",
-          "name": "disksizetotal",
+          "description": "the memory total of the host, this parameter is deprecated use memorywithoverprovisioning",
+          "name": "memorytotal",
           "type": "long"
         },
         {
-          "description": "memory usage disable threshold exceeded",
-          "name": "memorydisablethreshold",
+          "description": "cpu allocated notification threshold exceeded",
+          "name": "cpuallocatedthreshold",
           "type": "boolean"
         },
         {
-          "description": "the total cpu capacity in Ghz",
-          "name": "cputotalghz",
+          "description": "the Pod ID of the host",
+          "name": "podid",
           "type": "string"
         },
         {
-          "description": "the date and time the host was created",
-          "name": "created",
-          "type": "date"
-        },
-        {
-          "description": "true if the host is disconnected. False otherwise.",
-          "name": "disconnected",
-          "type": "date"
-        },
-        {
-          "description": "the total memory capacity in GiB",
-          "name": "memorytotalgb",
+          "description": "the cluster type of the cluster that host belongs to",
+          "name": "clustertype",
           "type": "string"
         },
         {
-          "description": "the host version",
-          "name": "version",
-          "type": "string"
+          "description": "out-of-band management power state",
+          "name": "powerstate",
+          "type": "powerstate"
         },
         {
-          "description": "the amount of the host's memory currently used",
-          "name": "memoryused",
-          "type": "long"
+          "description": "true if local storage is active, false otherwise",
+          "name": "islocalstorageactive",
+          "type": "boolean"
         },
         {
-          "description": "the host type",
-          "name": "type",
-          "type": "type"
+          "description": "the host hypervisor",
+          "name": "hypervisor",
+          "type": "hypervisortype"
         },
         {
-          "description": "the state of the host",
-          "name": "state",
-          "type": "status"
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
+          "type": "string"
         },
         {
-          "description": "the OS category name of the host",
-          "name": "oscategoryname",
-          "type": "string"
+          "description": "the amount of the host's memory currently allocated",
+          "name": "memoryallocated",
+          "type": "long"
         },
         {
-          "description": "the admin that annotated this host",
-          "name": "username",
+          "description": "the total memory allocated in GiB",
+          "name": "memoryallocatedgb",
           "type": "string"
         },
         {
-          "description": "instances on the host",
-          "name": "instances",
-          "type": "string"
+          "description": "the incoming network traffic on the host",
+          "name": "networkkbsread",
+          "type": "long"
         },
         {
-          "description": "cpu allocated notification threshold exceeded",
-          "name": "cpuallocatedthreshold",
-          "type": "boolean"
+          "description": "the average cpu load the last minute",
+          "name": "cpuloadaverage",
+          "type": "double"
         },
         {
-          "description": "memory allocated disable threshold exceeded",
-          "name": "memoryallocateddisablethreshold",
+          "description": "memory allocated notification threshold exceeded",
+          "name": "memoryallocatedthreshold",
           "type": "boolean"
         },
         {
-          "description": "the ID of the host",
-          "name": "id",
-          "type": "string"
+          "description": "memory usage disable threshold exceeded",
+          "name": "memorydisablethreshold",
+          "type": "boolean"
         },
         {
-          "description": "cpu usage disable threshold exceeded",
-          "name": "cpudisablethreshold",
-          "type": "boolean"
+          "description": "the amount of the host's CPU currently allocated in MHz",
+          "name": "cpuallocatedvalue",
+          "type": "long"
         },
         {
           "description": "the name of the host",
@@ -5996,74 +6025,84 @@
           "type": "string"
         },
         {
-          "description": "the CPU speed of the host",
-          "name": "cpuspeed",
-          "type": "long"
+          "description": "the state of the host",
+          "name": "state",
+          "type": "status"
         },
         {
-          "description": "the cluster name of the host",
-          "name": "clustername",
+          "description": "the number of CPU sockets on the host",
+          "name": "cpusockets",
+          "type": "integer"
+        },
+        {
+          "description": "the host out-of-band management information",
+          "name": "outofbandmanagement",
+          "type": "outofbandmanagementresponse"
+        },
+        {
+          "description": "the total memory used in GiB",
+          "name": "memoryusedgb",
           "type": "string"
         },
         {
-          "description": "the total memory allocated in GiB",
-          "name": "memoryallocatedgb",
+          "description": "instances on the host",
+          "name": "instances",
           "type": "string"
         },
         {
-          "description": "the host hypervisor",
-          "name": "hypervisor",
-          "type": "hypervisortype"
+          "description": "the total memory capacity in GiB",
+          "name": "memorytotalgb",
+          "type": "string"
         },
         {
-          "description": "the average cpu load the last minute",
-          "name": "cpuloadaverage",
-          "type": "double"
+          "description": "the CPU number of the host",
+          "name": "cpunumber",
+          "type": "integer"
         },
         {
-          "description": "the OS category ID of the host",
-          "name": "oscategoryid",
+          "description": "the total cpu used in Ghz",
+          "name": "cpuusedghz",
           "type": "string"
         },
         {
-          "description": "the amount of the host's CPU currently used",
-          "name": "cpuused",
-          "type": "string"
+          "description": "the total disk size of the host",
+          "name": "disksizetotal",
+          "type": "long"
         },
         {
-          "description": "the cpu average load on the host",
-          "name": "cpuloadaverage",
-          "type": "double"
+          "description": "the date and time the host was last pinged",
+          "name": "lastpinged",
+          "type": "date"
+        },
+        {
+          "description": "the date and time the host was created",
+          "name": "created",
+          "type": "date"
         },
         {},
         {
-          "description": "network write in GiB",
-          "name": "networkwrite",
+          "description": "the amount of the host's CPU currently allocated in percentage",
+          "name": "cpuallocatedpercentage",
           "type": "string"
         },
         {
-          "description": "true if the host is Ha host (dedicated to vms started by HA process; false otherwise",
-          "name": "hahost",
+          "description": "true if the host has capability to support UEFI boot",
+          "name": "ueficapability",
           "type": "boolean"
         },
         {
-          "description": "the amount of the host's CPU currently allocated after applying the cpu.overprovisioning.factor",
-          "name": "cpuallocatedwithoverprovisioning",
-          "type": "string"
-        },
-        {
-          "description": "the CPU number of the host",
-          "name": "cpunumber",
-          "type": "integer"
+          "description": "cpu allocated disable threshold exceeded",
+          "name": "cpuallocateddisablethreshold",
+          "type": "boolean"
         },
         {
-          "description": "the amount of the host's memory currently allocated in percentage",
-          "name": "memoryallocatedpercentage",
+          "description": "the amount of the host's memory after applying the mem.overprovisioning.factor",
+          "name": "memorywithoverprovisioning",
           "type": "string"
         },
         {
-          "description": "the amount of the host's CPU currently allocated in percentage",
-          "name": "cpuallocatedpercentage",
+          "description": "the cluster ID of the host",
+          "name": "clusterid",
           "type": "string"
         },
         {
@@ -6072,24 +6111,24 @@
           "type": "boolean"
         },
         {
-          "description": "the total cpu used in Ghz",
-          "name": "cpuusedghz",
+          "description": "the host version",
+          "name": "version",
           "type": "string"
         },
         {
-          "description": "out-of-band management power state",
-          "name": "powerstate",
-          "type": "powerstate"
+          "description": "Host details in key/value pairs.",
+          "name": "details",
+          "type": "map"
         },
         {
-          "description": "true if the host has capability to support UEFI boot",
-          "name": "ueficapability",
+          "description": "cpu usage disable threshold exceeded",
+          "name": "cpudisablethreshold",
           "type": "boolean"
         },
         {
-          "description": "the amount of the host's memory currently allocated",
-          "name": "memoryallocated",
-          "type": "long"
+          "description": "memory usage notification threshold exceeded",
+          "name": "memorythreshold",
+          "type": "boolean"
         },
         {
           "description": "cpu usage notification threshold exceeded",
@@ -6097,14 +6136,29 @@
           "type": "boolean"
         },
         {
-          "description": "the cluster type of the cluster that host belongs to",
-          "name": "clustertype",
-          "type": "string"
+          "description": "the cpu average load on the host",
+          "name": "cpuloadaverage",
+          "type": "double"
         },
         {
-          "description": "the number of CPU sockets on the host",
-          "name": "cpusockets",
-          "type": "integer"
+          "description": "the date and time the host was removed",
+          "name": "removed",
+          "type": "date"
+        },
+        {
+          "description": "the amount of the host's memory currently allocated in bytes",
+          "name": "memoryallocatedbytes",
+          "type": "long"
+        },
+        {
+          "description": "true if the host is disconnected. False otherwise.",
+          "name": "disconnected",
+          "type": "date"
+        },
+        {
+          "description": "true if this host has enough CPU and RAM capacity to migrate a VM to it, false otherwise",
+          "name": "hasenoughcapacity",
+          "type": "boolean"
         },
         {
           "description": "the last time this host was annotated",
@@ -6112,128 +6166,74 @@
           "type": "date"
         },
         {
-          "description": "the amount of the host's CPU currently allocated in MHz",
-          "name": "cpuallocatedvalue",
+          "description": "comma-separated list of tags for the host",
+          "name": "hosttags",
+          "type": "string"
+        },
+        {
+          "description": "the host's currently allocated disk size",
+          "name": "disksizeallocated",
           "type": "long"
         },
         {
-          "description": "events available for the host",
-          "name": "events",
+          "description": "the resource state of the host",
+          "name": "resourcestate",
           "type": "string"
         },
         {
-          "description": "GPU cards present in the host",
-          "name": "gpugroup",
-          "response": [
-            {
-              "description": "GPU cards present in the host",
-              "name": "gpugroupname",
-              "type": "string"
-            },
-            {
-              "description": "the list of enabled vGPUs",
-              "name": "vgpu",
-              "response": [
-                {
-                  "description": "Maximum displays per user",
-                  "name": "maxheads",
-                  "type": "long"
-                },
-                {
-                  "description": "Maximum Y resolution per display",
-                  "name": "maxresolutiony",
-                  "type": "long"
-                },
-                {
-                  "description": "Video RAM for this vGPU type",
-                  "name": "videoram",
-                  "type": "long"
-                },
-                {
-                  "description": "Maximum vgpu can be created with this vgpu type on the given gpu group",
-                  "name": "maxcapacity",
-                  "type": "long"
-                },
-                {
-                  "description": "Remaining capacity in terms of no. of more VMs that can be deployped with this vGPU type",
-                  "name": "remainingcapacity",
-                  "type": "long"
-                },
-                {
-                  "description": "Maximum X resolution per display",
-                  "name": "maxresolutionx",
-                  "type": "long"
-                },
-                {
-                  "description": "Model Name of vGPU",
-                  "name": "vgputype",
-                  "type": "string"
-                },
-                {
-                  "description": "Maximum no. of vgpu per gpu card (pgpu)",
-                  "name": "maxvgpuperpgpu",
-                  "type": "long"
-                }
-              ],
-              "type": "list"
-            }
-          ],
-          "type": "list"
+          "description": "the ID of the host",
+          "name": "id",
+          "type": "string"
         },
         {
-          "description": "the Pod ID of the host",
-          "name": "podid",
+          "description": "network read in GiB",
+          "name": "networkread",
           "type": "string"
         },
         {
-          "description": "the amount of the host's memory after applying the mem.overprovisioning.factor",
-          "name": "memorywithoverprovisioning",
+          "description": "the amount of the host's memory currently allocated in percentage",
+          "name": "memoryallocatedpercentage",
           "type": "string"
         },
         {
-          "description": "capabilities of the host",
-          "name": "capabilities",
+          "description": "the IP address of the host",
+          "name": "ipaddress",
           "type": "string"
         },
         {
-          "description": "the total cpu allocated in Ghz",
-          "name": "cpuallocatedghz",
+          "description": "the OS category ID of the host",
+          "name": "oscategoryid",
           "type": "string"
         },
         {
-          "description": "true if this host has enough CPU and RAM capacity to migrate a VM to it, false otherwise",
-          "name": "hasenoughcapacity",
-          "type": "boolean"
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
         },
         {
-          "description": "the IP address of the host",
-          "name": "ipaddress",
+          "description": "the amount of the host's CPU after applying the cpu.overprovisioning.factor",
+          "name": "cpuwithoverprovisioning",
           "type": "string"
         },
         {
-          "description": "the Pod name of the host",
-          "name": "podname",
+          "description": "the amount of the host's CPU currently used",
+          "name": "cpuused",
           "type": "string"
         },
         {
-          "description": "the management server ID of the host",
-          "name": "managementserverid",
+          "description": "the OS category name of the host",
+          "name": "oscategoryname",
           "type": "string"
         },
         {
-          "description": "true if local storage is active, false otherwise",
-          "name": "islocalstorageactive",
-          "type": "boolean"
-        },
-        {
-          "description": "memory usage notification threshold exceeded",
-          "name": "memorythreshold",
-          "type": "boolean"
+          "description": "the amount of the host's CPU currently allocated after applying the cpu.overprovisioning.factor",
+          "name": "cpuallocatedwithoverprovisioning",
+          "type": "string"
         },
         {
-          "description": "the host HA information information",
-          "name": "hostha",
-          "type": "hostharesponse"
+          "description": "capabilities of the host",
+          "name": "capabilities",
+          "type": "string"
         }
       ],
       "since": "4.9.3"
@@ -6254,23 +6254,23 @@
       ],
       "response": [
         {},
-        {},
         {
           "description": "the UUID of the latest async job acting on this object",
           "name": "jobid",
           "type": "string"
         },
-        {
-          "description": "true if operation is executed successfully",
-          "name": "success",
-          "type": "boolean"
-        },
+        {},
         {
           "description": "the current status of the latest async job acting on this object",
           "name": "jobstatus",
           "type": "integer"
         },
         {
+          "description": "true if operation is executed successfully",
+          "name": "success",
+          "type": "boolean"
+        },
+        {
           "description": "any text associated with the success or failure",
           "name": "displaytext",
           "type": "string"
@@ -6283,9 +6283,9 @@
       "name": "listAffinityGroups",
       "params": [
         {
-          "description": "lists affinity groups by name",
+          "description": "List by keyword",
           "length": 255,
-          "name": "name",
+          "name": "keyword",
           "required": false,
           "type": "string"
         },
@@ -6297,19 +6297,26 @@
           "type": "string"
         },
         {
-          "description": "",
+          "description": "list only resources belonging to the domain specified",
           "length": 255,
-          "name": "pagesize",
+          "name": "domainid",
+          "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
           "required": false,
-          "type": "integer"
+          "type": "uuid"
         },
         {
-          "description": "list objects by project",
+          "description": "defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves.",
           "length": 255,
-          "name": "projectid",
-          "related": "listProjectAccounts,activateProject,createProject,listProjects,suspendProject,updateProject",
+          "name": "isrecursive",
           "required": false,
-          "type": "uuid"
+          "type": "boolean"
+        },
+        {
+          "description": "lists affinity groups by name",
+          "length": 255,
+          "name": "name",
+          "required": false,
+          "type": "string"
         },
         {
           "description": "lists affinity groups by virtual machine ID",
@@ -6320,40 +6327,32 @@
           "type": "uuid"
         },
         {
-          "description": "defaults to false, but if true, lists all resources from the parent specified by the domainId till leaves.",
+          "description": "",
           "length": 255,
-          "name": "isrecursive",
+          "name": "page",
           "required": false,
-          "type": "boolean"
+          "type": "integer"
         },
         {
-          "description": "List by keyword",
+          "description": "lists affinity groups by type",
           "length": 255,
-          "name": "keyword",
+          "name": "type",
           "required": false,
           "type": "string"
         },
         {
-          "description": "If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false",
-          "length": 255,
-          "name": "listall",
-          "required": false,
-          "type": "boolean"
-        },
-        {
-          "description": "list only resources belonging to the domain specified",
+          "description": "",
           "length": 255,
-          "name": "domainid",
-          "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
+          "name": "pagesize",
           "required": false,
-          "type": "uuid"
+          "type": "integer"
         },
         {
-          "description": "lists affinity groups by type",
+          "description": "If set to false, list only resources belonging to the command's caller; if set to true - list resources that the caller is authorized to see. Default value is false",
           "length": 255,
-          "name": "type",
+          "name": "listall",
           "required": false,
-          "type": "string"
+          "type": "boolean"
         },
         {
           "description": "list the affinity group by the ID provided",
@@ -6364,44 +6363,51 @@
           "type": "uuid"
         },
         {
-          "description": "",
+          "description": "list objects by project",
           "length": 255,
-          "name": "page",
+          "name": "projectid",
+          "related": "listProjectAccounts,activateProject,createProject,listProjects,suspendProject,updateProject",
           "required": false,
-          "type": "integer"
+          "type": "uuid"
         }
       ],
       "related": "createAffinityGroup",
       "response": [
         {
-          "description": "the name of the affinity group",
-          "name": "name",
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
           "type": "string"
         },
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
+          "description": "the type of the affinity group",
+          "name": "type",
+          "type": "string"
         },
         {
-          "description": "the domain ID of the affinity group",
-          "name": "domainid",
+          "description": "the name of the affinity group",
+          "name": "name",
           "type": "string"
         },
+        {},
         {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
+          "description": "the account owning the affinity group",
+          "name": "account",
           "type": "string"
         },
         {},
         {
-          "description": "the ID of the affinity group",
-          "name": "id",
+          "description": "virtual machine IDs associated with this affinity group",
+          "name": "virtualmachineIds",
+          "type": "list"
+        },
+        {
+          "description": "the domain ID of the affinity group",
+          "name": "domainid",
           "type": "string"
         },
         {
-          "description": "the account owning the affinity group",
-          "name": "account",
+          "description": "the ID of the affinity group",
+          "name": "id",
           "type": "string"
         },
         {
@@ -6409,31 +6415,25 @@
           "name": "project",
           "type": "string"
         },
-        {},
         {
           "description": "the description of the affinity group",
           "name": "description",
           "type": "string"
         },
         {
-          "description": "the project ID of the affinity group",
-          "name": "projectid",
-          "type": "string"
-        },
-        {
           "description": "the domain name of the affinity group",
           "name": "domain",
           "type": "string"
         },
         {
-          "description": "the type of the affinity group",
-          "name": "type",
+          "description": "the project ID of the affinity group",
+          "name": "projectid",
           "type": "string"
         },
         {
-          "description": "virtual machine IDs associated with this affinity group",
-          "name": "virtualmachineIds",
-          "type": "list"
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
         }
       ]
     },
@@ -6443,10 +6443,10 @@
       "name": "registerSSHKeyPair",
       "params": [
         {
-          "description": "Name of the keypair",
+          "description": "an optional account for the ssh key. Must be used with domainId.",
           "length": 255,
-          "name": "name",
-          "required": true,
+          "name": "account",
+          "required": false,
           "type": "string"
         },
         {
@@ -6465,32 +6465,37 @@
           "type": "uuid"
         },
         {
+          "description": "Name of the keypair",
+          "length": 255,
+          "name": "name",
+          "required": true,
+          "type": "string"
+        },
+        {
           "description": "an optional domainId for the ssh key. If the account parameter is used, domainId must also be used.",
           "length": 255,
           "name": "domainid",
           "related": "createDomain,listDomainChildren,listDomains,listDomains,updateDomain",
           "required": false,
           "type": "uuid"
-        },
-        {
-          "description": "an optional account for the ssh key. Must be used with domainId.",
-          "length": 255,
-          "name": "account",
-          "required": false,
-          "type": "string"
         }
       ],
       "related": "listSSHKeyPairs",
       "response": [
-        {},
         {
           "description": "the domain id of the keypair owner",
           "name": "domainid",
           "type": "string"
         },
         {
-          "description": "the domain name of the keypair owner",
-          "name": "domain",
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
+          "type": "string"
+        },
+        {},
+        {
+          "description": "Name of the keypair",
+          "name": "name",
           "type": "string"
         },
         {
@@ -6499,19 +6504,18 @@
           "type": "string"
         },
         {
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
+        },
+        {
           "description": "true if the entity/resource has annotations",
           "name": "hasannotations",
           "type": "boolean"
         },
         {
-          "description": "ID of the ssh keypair",
-          "name": "id",
-          "type": "string"
-        },
-        {},
-        {
-          "description": "Name of the keypair",
-          "name": "name",
+          "description": "the domain name of the keypair owner",
+          "name": "domain",
           "type": "string"
         },
         {
@@ -6520,15 +6524,11 @@
           "type": "string"
         },
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
-        },
-        {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
+          "description": "ID of the ssh keypair",
+          "name": "id",
           "type": "string"
-        }
+        },
+        {}
       ]
     },
     {
@@ -6546,13 +6546,18 @@
         }
       ],
       "response": [
+        {},
+        {
+          "description": "true if operation is executed successfully",
+          "name": "success",
+          "type": "boolean"
+        },
+        {},
         {
           "description": "any text associated with the success or failure",
           "name": "displaytext",
           "type": "string"
         },
-        {},
-        {},
         {
           "description": "the current status of the latest async job acting on this object",
           "name": "jobstatus",
@@ -6562,11 +6567,6 @@
           "description": "the UUID of the latest async job acting on this object",
           "name": "jobid",
           "type": "string"
-        },
-        {
-          "description": "true if operation is executed successfully",
-          "name": "success",
-          "type": "boolean"
         }
       ]
     },
@@ -6576,12 +6576,18 @@
       "name": "startRollingMaintenance",
       "params": [
         {
-          "description": "the IDs of the clusters to start maintenance on",
+          "description": "the command to execute while hosts are on maintenance",
           "length": 255,
-          "name": "clusterids",
-          "related": "addCluster,listClusters,updateCluster",
+          "name": "payload",
           "required": false,
-          "type": "list"
+          "type": "string"
+        },
+        {
+          "description": "if rolling mechanism should continue in case of an error",
+          "length": 255,
+          "name": "forced",
+          "required": false,
+          "type": "boolean"
         },
         {
           "description": "the IDs of the pods to start maintenance on",
@@ -6592,10 +6598,10 @@
           "type": "list"
         },
         {
-          "description": "the IDs of the zones to start maintenance on",
+          "description": "the IDs of the clusters to start maintenance on",
           "length": 255,
-          "name": "zoneids",
-          "related": "createZone,updateZone,listZones,listZones",
+          "name": "clusterids",
+          "related": "addCluster,listClusters,updateCluster",
           "required": false,
           "type": "list"
         },
@@ -6608,13 +6614,6 @@
           "type": "list"
         },
         {
-          "description": "if rolling mechanism should continue in case of an error",
-          "length": 255,
-          "name": "forced",
-          "required": false,
-          "type": "boolean"
-        },
-        {
           "description": "optional operation timeout (in seconds) that overrides the global timeout setting",
           "length": 255,
           "name": "timeout",
@@ -6622,25 +6621,25 @@
           "type": "integer"
         },
         {
-          "description": "the command to execute while hosts are on maintenance",
+          "description": "the IDs of the zones to start maintenance on",
           "length": 255,
-          "name": "payload",
+          "name": "zoneids",
+          "related": "createZone,updateZone,listZones,listZones",
           "required": false,
-          "type": "string"
+          "type": "list"
         }
       ],
       "related": "",
       "response": [
-        {},
-        {},
         {
-          "description": "in case of failure, details are displayed",
-          "name": "details",
+          "description": "the UUID of the latest async job acting on this object",
+          "name": "jobid",
           "type": "string"
         },
+        {},
         {
-          "description": "the UUID of the latest async job acting on this object",
-          "name": "jobid",
+          "description": "in case of failure, details are displayed",
+          "name": "details",
           "type": "string"
         },
         {
@@ -6648,11 +6647,6 @@
           "name": "hostsupdated",
           "response": [
             {
-              "description": "output of the maintenance script on the host",
-              "name": "output",
-              "type": "string"
-            },
-            {
               "description": "start date of the update on the host",
               "name": "startdate",
               "type": "string"
@@ -6671,6 +6665,11 @@
               "description": "end date of the update on the host",
               "name": "enddate",
               "type": "string"
+            },
+            {
+              "description": "output of the maintenance script on the host",
+              "name": "output",
+              "type": "string"
             }
           ],
           "type": "list"
@@ -6680,11 +6679,6 @@
           "name": "hostsskipped",
           "response": [
             {
-              "description": "the name of the skipped host",
-              "name": "hostname",
-              "type": "string"
-            },
-            {
               "description": "the reason to skip the host",
               "name": "reason",
               "type": "string"
@@ -6693,6 +6687,11 @@
               "description": "the ID of the skipped host",
               "name": "hostid",
               "type": "string"
+            },
+            {
+              "description": "the name of the skipped host",
+              "name": "hostname",
+              "type": "string"
             }
           ],
           "type": "list"
@@ -6702,6 +6701,7 @@
           "name": "success",
           "type": "boolean"
         },
+        {},
         {
           "description": "the current status of the latest async job acting on this object",
           "name": "jobstatus",
@@ -6723,18 +6723,18 @@
           "type": "boolean"
         },
         {
-          "description": "Name of the network ACL list",
+          "description": "an optional field, in case you want to set a custom id to the resource. Allowed to Root Admins only",
           "length": 255,
-          "name": "name",
+          "name": "customid",
           "required": false,
+          "since": "4.4",
           "type": "string"
         },
         {
-          "description": "an optional field, in case you want to set a custom id to the resource. Allowed to Root Admins only",
+          "description": "Name of the network ACL list",
           "length": 255,
-          "name": "customid",
+          "name": "name",
           "required": false,
-          "since": "4.4",
           "type": "string"
         },
         {
@@ -6755,27 +6755,27 @@
       ],
       "response": [
         {
-          "description": "any text associated with the success or failure",
-          "name": "displaytext",
-          "type": "string"
-        },
-        {
-          "description": "true if operation is executed successfully",
-          "name": "success",
-          "type": "boolean"
+          "description": "the current status of the latest async job acting on this object",
+          "name": "jobstatus",
+          "type": "integer"
         },
+        {},
+        {},
         {
           "description": "the UUID of the latest async job acting on this object",
           "name": "jobid",
           "type": "string"
         },
-        {},
         {
-          "description": "the current status of the latest async job acting on this object",
-          "name": "jobstatus",
-          "type": "integer"
+          "description": "any text associated with the success or failure",
+          "name": "displaytext",
+          "type": "string"
         },
-        {}
+        {
+          "description": "true if operation is executed successfully",
+          "name": "success",
+          "type": "boolean"
+        }
       ],
       "since": "4.4"
     },
@@ -6804,371 +6804,102 @@
       "related": "assignVirtualMachine,migrateVirtualMachine,migrateVirtualMachineWithVolume,recoverVirtualMachine,attachIso,detachIso,addNicToVirtualMachine,deployVirtualMachine,destroyVirtualMachine,listVirtualMachines,scaleVirtualMachine,rebootVirtualMachine,removeNicFromVirtualMachine,resetPasswordForVirtualMachine,resetSSHKeyForVirtualMachine,startVirtualMachine,stopVirtualMachine,updateDefaultNicForVirtualMachine,updateVirtualMachine,changeServiceForVirtualMachine,revertToVMSnapsho [...]
       "response": [
         {
-          "description": "the incoming network traffic on the vm",
-          "name": "networkkbsread",
+          "description": "the target memory in vm",
+          "name": "memorytargetkbs",
           "type": "long"
         },
         {
-          "description": "list of security groups associated with the virtual machine",
-          "name": "securitygroup",
+          "description": "the name of the host for the virtual machine",
+          "name": "hostname",
+          "type": "string"
+        },
+        {},
+        {
+          "description": "the list of resource tags associated",
+          "name": "tags",
           "response": [
             {
-              "description": "the account owning the security group",
-              "name": "account",
+              "description": "resource type",
+              "name": "resourcetype",
               "type": "string"
             },
             {
-              "description": "the list of virtualmachine ids associated with this securitygroup",
-              "name": "virtualmachineids",
-              "type": "set"
-            },
-            {
-              "description": "the ID of the security group",
-              "name": "id",
+              "description": "the project id the tag belongs to",
+              "name": "projectid",
               "type": "string"
             },
             {
-              "description": "the domain name of the security group",
-              "name": "domain",
+              "description": "the ID of the domain associated with the tag",
+              "name": "domainid",
               "type": "string"
             },
             {
-              "description": "the list of egress rules associated with the security group",
-              "name": "egressrule",
-              "response": [
-                {
-                  "description": "the CIDR notation for the base IP address of the security group rule",
-                  "name": "cidr",
-                  "type": "string"
-                },
-                {
-                  "description": "account owning the security group rule",
-                  "name": "account",
-                  "type": "string"
-                },
-                {
-                  "description": "security group name",
-                  "name": "securitygroupname",
-                  "type": "string"
-                },
-                {
-                  "description": "the list of resource tags associated with the rule",
-                  "name": "tags",
-                  "response": [
-                    {
-                      "description": "customer associated with the tag",
-                      "name": "customer",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the project id the tag belongs to",
-                      "name": "projectid",
-                      "type": "string"
-                    },
-                    {
-                      "description": "resource type",
-                      "name": "resourcetype",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the account associated with the tag",
-                      "name": "account",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the domain associated with the tag",
-                      "name": "domain",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the project name where tag belongs to",
-                      "name": "project",
-                      "type": "string"
-                    },
-                    {
-                      "description": "id of the resource",
-                      "name": "resourceid",
-                      "type": "string"
-                    },
-                    {
-                      "description": "tag key name",
-                      "name": "key",
-                      "type": "string"
-                    },
-                    {
-                      "description": "tag value",
-                      "name": "value",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the ID of the domain associated with the tag",
-                      "name": "domainid",
-                      "type": "string"
-                    }
-                  ],
-                  "type": "set"
-                },
-                {
-                  "description": "the id of the security group rule",
-                  "name": "ruleid",
-                  "type": "string"
-                },
-                {
-                  "description": "the type of the ICMP message response",
-                  "name": "icmptype",
-                  "type": "integer"
-                },
-                {
-                  "description": "the code for the ICMP message response",
-                  "name": "icmpcode",
-                  "type": "integer"
-                },
-                {
-                  "description": "the starting IP of the security group rule",
-                  "name": "startport",
-                  "type": "integer"
-                },
-                {
-                  "description": "the protocol of the security group rule",
-                  "name": "protocol",
-                  "type": "string"
-                },
-                {
-                  "description": "the ending IP of the security group rule ",
-                  "name": "endport",
-                  "type": "integer"
-                }
-              ],
-              "type": "set"
-            },
-            {
-              "description": "the project name of the group",
+              "description": "the project name where tag belongs to",
               "name": "project",
               "type": "string"
             },
             {
-              "description": "the domain ID of the security group",
-              "name": "domainid",
+              "description": "customer associated with the tag",
+              "name": "customer",
               "type": "string"
             },
             {
-              "description": "the description of the security group",
-              "name": "description",
+              "description": "id of the resource",
+              "name": "resourceid",
               "type": "string"
             },
             {
-              "description": "the project id of the group",
-              "name": "projectid",
+              "description": "the domain associated with the tag",
+              "name": "domain",
               "type": "string"
             },
             {
-              "description": "the name of the security group",
-              "name": "name",
+              "description": "the account associated with the tag",
+              "name": "account",
               "type": "string"
             },
             {
-              "description": "the number of virtualmachines associated with this securitygroup",
-              "name": "virtualmachinecount",
-              "type": "integer"
-            },
-            {
-              "description": "the list of ingress rules associated with the security group",
-              "name": "ingressrule",
-              "response": [
-                {
-                  "description": "the starting IP of the security group rule",
-                  "name": "startport",
-                  "type": "integer"
-                },
-                {
-                  "description": "account owning the security group rule",
-                  "name": "account",
-                  "type": "string"
-                },
-                {
-                  "description": "the type of the ICMP message response",
-                  "name": "icmptype",
-                  "type": "integer"
-                },
-                {
-                  "description": "the list of resource tags associated with the rule",
-                  "name": "tags",
-                  "response": [
-                    {
-                      "description": "the domain associated with the tag",
-                      "name": "domain",
-                      "type": "string"
-                    },
-                    {
-                      "description": "tag value",
-                      "name": "value",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the project id the tag belongs to",
-                      "name": "projectid",
-                      "type": "string"
-                    },
-                    {
-                      "description": "tag key name",
-                      "name": "key",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the account associated with the tag",
-                      "name": "account",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the project name where tag belongs to",
-                      "name": "project",
-                      "type": "string"
-                    },
-                    {
-                      "description": "the ID of the domain associated with the tag",
-                      "name": "domainid",
-                      "type": "string"
-                    },
-                    {
-                      "description": "id of the resource",
-                      "name": "resourceid",
-                      "type": "string"
-                    },
-                    {
-                      "description": "resource type",
-                      "name": "resourcetype",
-                      "type": "string"
-                    },
-                    {
-                      "description": "customer associated with the tag",
-                      "name": "customer",
-                      "type": "string"
-                    }
-                  ],
-                  "type": "set"
-                },
-                {
-                  "description": "the code for the ICMP message response",
-                  "name": "icmpcode",
-                  "type": "integer"
-                },
-                {
-                  "description": "security group name",
-                  "name": "securitygroupname",
-                  "type": "string"
-                },
-                {
-                  "description": "the protocol of the security group rule",
-                  "name": "protocol",
-                  "type": "string"
-                },
-                {
-                  "description": "the ending IP of the security group rule ",
-                  "name": "endport",
-                  "type": "integer"
-                },
-                {
-                  "description": "the CIDR notation for the base IP address of the security group rule",
-                  "name": "cidr",
-                  "type": "string"
-                },
-                {
-                  "description": "the id of the security group rule",
-                  "name": "ruleid",
-                  "type": "string"
-                }
-              ],
-              "type": "set"
+              "description": "tag key name",
+              "name": "key",
+              "type": "string"
             },
             {
-              "description": "the list of resource tags associated with the rule",
-              "name": "tags",
-              "response": [
-                {
-                  "description": "resource type",
-                  "name": "resourcetype",
-                  "type": "string"
-                },
-                {
-                  "description": "the ID of the domain associated with the tag",
-                  "name": "domainid",
-                  "type": "string"
-                },
-                {
-                  "description": "the domain associated with the tag",
-                  "name": "domain",
-                  "type": "string"
-                },
-                {
-                  "description": "tag value",
-                  "name": "value",
-                  "type": "string"
-                },
-                {
-                  "description": "tag key name",
-                  "name": "key",
-                  "type": "string"
-                },
-                {
-                  "description": "the account associated with the tag",
-                  "name": "account",
-                  "type": "string"
-                },
-                {
-                  "description": "id of the resource",
-                  "name": "resourceid",
-                  "type": "string"
-                },
-                {
-                  "description": "customer associated with the tag",
-                  "name": "customer",
-                  "type": "string"
-                },
-                {
-                  "description": "the project id the tag belongs to",
-                  "name": "projectid",
-                  "type": "string"
-                },
-                {
-                  "description": "the project name where tag belongs to",
-                  "name": "project",
-                  "type": "string"
-                }
-              ],
-              "type": "set"
+              "description": "tag value",
+              "name": "value",
+              "type": "string"
             }
           ],
           "type": "set"
         },
         {
-          "description": "the ID of the host for the virtual machine",
-          "name": "hostid",
+          "description": "the name of the availability zone for the virtual machine",
+          "name": "zonename",
           "type": "string"
         },
         {
-          "description": "the ID of the availablility zone for the virtual machine",
-          "name": "zoneid",
+          "description": "the hypervisor on which the template runs",
+          "name": "hypervisor",
           "type": "string"
         },
         {
-          "description": "the account associated with the virtual machine",
-          "name": "account",
-          "type": "string"
+          "description": "the write (bytes) of disk on the vm",
+          "name": "diskkbswrite",
+          "type": "long"
         },
         {
-          "description": "the ID of the virtual machine",
-          "name": "id",
+          "description": "Guest vm Boot Mode",
+          "name": "bootmode",
           "type": "string"
         },
         {
-          "description": "the memory used by the vm",
-          "name": "memorykbs",
-          "type": "long"
+          "description": "the date when this virtual machine was updated last time",
+          "name": "lastupdated",
+          "type": "date"
         },
         {
-          "description": " an alternate display text of the template for the virtual machine",
-          "name": "templatedisplaytext",
-          "type": "string"
+          "description": "Vm details in key/value pairs.",
+          "name": "details",
+          "type": "map"
         },
         {
           "description": "an optional field whether to the display the vm to the end user or not.",
@@ -7176,95 +6907,24 @@
           "type": "boolean"
         },
         {
-          "description": "the group name of the virtual machine",
-          "name": "group",
-          "type": "string"
-        },
-        {
-          "description": "Base64 string representation of the resource icon",
-          "name": "icon",
-          "type": "resourceiconresponse"
-        },
-        {
-          "description": "the name of the domain in which the virtual machine exists",
-          "name": "domain",
-          "type": "string"
-        },
-        {
-          "description": "Os type ID of the virtual machine",
-          "name": "guestosid",
-          "type": "string"
-        },
-        {
-          "description": "instance name of the user vm; this parameter is returned to the ROOT admin only",
-          "name": "instancename",
-          "type": "string"
-        },
-        {
-          "description": "the memory allocated for the virtual machine",
-          "name": "memory",
-          "type": "integer"
-        },
-        {
-          "description": "the name of the backup offering of the virtual machine",
-          "name": "backupofferingname",
+          "description": "the account associated with the virtual machine",
+          "name": "account",
           "type": "string"
         },
         {
-          "description": "the target memory in vm",
-          "name": "memorytargetkbs",
+          "description": "the memory used by the vm",
+          "name": "memorykbs",
           "type": "long"
         },
         {
-          "description": "the user's name who deployed the virtual machine",
-          "name": "username",
-          "type": "string"
-        },
-        {
           "description": "the ID of the disk offering of the virtual machine",
           "name": "diskofferingid",
           "type": "string"
         },
-        {},
-        {
-          "description": "true if high-availability is enabled, false otherwise",
-          "name": "haenable",
-          "type": "boolean"
-        },
-        {
-          "description": "the name of the ISO attached to the virtual machine",
-          "name": "isoname",
-          "type": "string"
-        },
-        {
-          "description": "Vm details in key/value pairs.",
-          "name": "details",
-          "type": "map"
-        },
-        {
-          "description": "the date when this virtual machine was created",
-          "name": "created",
-          "type": "date"
-        },
-        {
-          "description": "device type of the root volume",
-          "name": "rootdevicetype",
-          "type": "string"
-        },
-        {
-          "description": "user generated name. The name of the virtual machine is returned if no displayname exists.",
-          "name": "displayname",
-          "type": "string"
-        },
-        {
-          "description": "the ID of the service offering of the virtual machine",
-          "name": "serviceofferingid",
-          "type": "string"
-        },
         {
-          "description": "the password (if exists) of the virtual machine",
-          "name": "password",
-          "type": "string"
+          "description": "the internal memory that's free in vm or zero if it can not be calculated",
+          "name": "memoryintfreekbs",
+          "type": "long"
         },
         {
           "description": "the current status of the latest async job acting on this object",
@@ -7272,95 +6932,38 @@
           "type": "integer"
         },
         {
-          "description": "the list of resource tags associated",
-          "name": "tags",
-          "response": [
-            {
-              "description": "the project name where tag belongs to",
-              "name": "project",
-              "type": "string"
-            },
-            {
-              "description": "the domain associated with the tag",
-              "name": "domain",
-              "type": "string"
-            },
-            {
-              "description": "id of the resource",
-              "name": "resourceid",
-              "type": "string"
-            },
-            {
-              "description": "tag key name",
-              "name": "key",
... 151980 lines suppressed ...