package test

import (
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/account"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/audit"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/bservice"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/compute"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/disks"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/dpdknet"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/extnet"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/flipgroup"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/image"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/k8ci"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/k8s"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/kvmx86"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/lb"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/locations"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/pcidevice"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/prometheus"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/qospolicy"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/rg"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/secgroup"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/sep"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/stpolicy"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/tasks"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/trunk"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/user"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/vfpool"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/vgpu"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/vins"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudapi/zone"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/sdn/acsgroups"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/sdn/adrspools"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/sdn/defsecpolicies"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/sdn/logicalports"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/sdn/routers"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/sdn/routers/gwport"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/sdn/routers/policies"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/sdn/secpolicies"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/sdn/secpolicies/rule"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/sdn/segments"

	account_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/account"
	apiaccess_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/apiaccess"
	audit_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/audit"
	backup_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/backup"
	compute_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/compute"
	disks_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/disks"
	dpdknet_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/dpdknet"
	extnet_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/extnet"
	flipgroup_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/flipgroup"
	grid_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/grid"
	group_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/group"
	image_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/image"
	k8ci_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/k8ci"
	k8s_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/k8s"
	kvmx86_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/kvmx86"
	lb_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/lb"
	node_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/node"
	pcidevice_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/pcidevice"
	prometheus_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/prometheus"
	qospolicy_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/qospolicy"
	rg_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/rg"
	secgroup_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/secgroup"
	sep_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/sep"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/session"
	stpolicy_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/stpolicy"
	tasks_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/tasks"
	trunk_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/trunk"
	user_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/user"
	vfpool_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/vfpool"
	vgpu_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/vgpu"
	vins_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/vins"
	zone_cb "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/cloudbroker/zone"

	extnet_sdn "repository.basistech.ru/BASIS/decort-golang-sdk/pkg/sdn/extnet"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/sdn/flips"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/sdn/hypervisors"
	"repository.basistech.ru/BASIS/decort-golang-sdk/pkg/sdn/netobjgroups"
)

type EmptyStruct struct{}

// getRequestsMapCloudAPI maps request path with request golang sdk structures for cloudapi most used requests
func getRequestsMapCloudAPI() map[string]interface{} {
	return map[string]interface{}{
		// account
		"/restmachine/cloudapi/account/addUser":                 account.AddUserRequest{},
		"/restmachine/cloudapi/account/deleteUser":              account.DeleteUserRequest{},
		"/restmachine/cloudapi/account/get":                     account.GetRequest{},
		"/restmachine/cloudapi/account/getConsumedAccountUnits": account.GetConsumedAccountUnitsRequest{},
		"/restmachine/cloudapi/account/getResourceConsumption":  account.GetResourceConsumptionRequest{},
		"/restmachine/cloudapi/account/list":                    account.ListRequest{},
		"/restmachine/cloudapi/account/listComputes":            account.ListComputesRequest{},
		"/restmachine/cloudapi/account/listDeleted":             account.ListDeletedRequest{},
		"/restmachine/cloudapi/account/listDisks":               account.ListDisksRequest{},
		"/restmachine/cloudapi/account/listFlipGroups":          account.ListFLIPGroupsRequest{},
		"/restmachine/cloudapi/account/listRG":                  account.ListRGRequest{},
		"/restmachine/cloudapi/account/listResourceConsumption": EmptyStruct{},
		"/restmachine/cloudapi/account/listTemplates":           account.ListTemplatesRequest{},
		"/restmachine/cloudapi/account/listVins":                account.ListVINSRequest{},
		"/restmachine/cloudapi/account/restore":                 account.RestoreRequest{},
		"/restmachine/cloudapi/account/update":                  account.UpdateRequest{},
		"/restmachine/cloudapi/account/updateUser":              account.UpdateUserRequest{},
		"/restmachine/cloudapi/account/add_acl_access":          account.AddACLAccessRequest{},
		"/restmachine/cloudapi/account/del_acl_access":          account.DelACLAccessRequest{},
		"/restmachine/cloudapi/account/update_acl_access":       account.UpdateACLAccessRequest{},

		//audit
		"/restmachine/cloudapi/audit/get":  audit.GetRequest{},
		"/restmachine/cloudapi/audit/list": audit.ListRequest{},

		//bservice
		"/restmachine/cloudapi/bservice/create":             bservice.CreateRequest{},
		"/restmachine/cloudapi/bservice/delete":             bservice.DeleteRequest{},
		"/restmachine/cloudapi/bservice/disable":            bservice.DisableRequest{},
		"/restmachine/cloudapi/bservice/enable":             bservice.EnableRequest{},
		"/restmachine/cloudapi/bservice/get":                bservice.GetRequest{},
		"/restmachine/cloudapi/bservice/groupAdd":           bservice.GroupAddRequest{},
		"/restmachine/cloudapi/bservice/groupComputeRemove": bservice.GroupComputeRemoveRequest{},
		"/restmachine/cloudapi/bservice/groupGet":           bservice.GroupGetRequest{},
		"/restmachine/cloudapi/bservice/groupParentAdd":     bservice.GroupParentAddRequest{},
		"/restmachine/cloudapi/bservice/groupParentRemove":  bservice.GroupParentRemoveRequest{},
		"/restmachine/cloudapi/bservice/groupRemove":        bservice.GroupRemoveRequest{},
		"/restmachine/cloudapi/bservice/groupResize":        bservice.GroupResizeRequest{},
		"/restmachine/cloudapi/bservice/groupStart":         bservice.GroupStartRequest{},
		"/restmachine/cloudapi/bservice/groupStop":          bservice.GroupStopRequest{},
		"/restmachine/cloudapi/bservice/groupUpdate":        bservice.GroupUpdateRequest{},
		"/restmachine/cloudapi/bservice/groupUpdateExtnet":  bservice.GroupUpdateExtNetRequest{},
		"/restmachine/cloudapi/bservice/groupUpdateVins":    bservice.GroupUpdateVINSRequest{},
		"/restmachine/cloudapi/bservice/list":               bservice.ListRequest{},
		"/restmachine/cloudapi/bservice/listDeleted":        bservice.ListDeletedRequest{},
		"/restmachine/cloudapi/bservice/restore":            bservice.RestoreRequest{},
		"/restmachine/cloudapi/bservice/snapshotCreate":     bservice.SnapshotCreateRequest{},
		"/restmachine/cloudapi/bservice/snapshotDelete":     bservice.SnapshotDeleteRequest{},
		"/restmachine/cloudapi/bservice/snapshotList":       bservice.SnapshotListRequest{},
		"/restmachine/cloudapi/bservice/snapshotRollback":   bservice.SnapshotRollbackRequest{},
		"/restmachine/cloudapi/bservice/start":              bservice.StartRequest{},
		"/restmachine/cloudapi/bservice/stop":               bservice.StopRequest{},
		"/restmachine/cloudapi/bservice/migrateToZone":      bservice.MigrateToZoneRequest{},
		// compute
		"/restmachine/cloudapi/compute/abort_shared_snapshot_merge":  compute.AbortSharedSnapshotMergeRequest{},
		"/restmachine/cloudapi/compute/shared_snapshot_merge_status": compute.SharedSnapshotMergeStatusRequest{},
		"/restmachine/cloudapi/compute/change_mtu":                   compute.ChangeMTURequest{},
		"/restmachine/cloudapi/compute/affinityLabelRemove":          compute.AffinityLabelRemoveRequest{},
		"/restmachine/cloudapi/compute/affinityLabelSet":             compute.AffinityLabelSetRequest{},
		"/restmachine/cloudapi/compute/affinityRelations":            compute.AffinityRelationsRequest{},
		"/restmachine/cloudapi/compute/affinityRuleAdd":              compute.AffinityRuleAddRequest{},
		"/restmachine/cloudapi/compute/affinityRuleRemove":           compute.AffinityRuleRemoveRequest{},
		"/restmachine/cloudapi/compute/affinityRulesClear":           compute.AffinityRulesClearRequest{},
		"/restmachine/cloudapi/compute/antiAffinityRuleAdd":          compute.AntiAffinityRuleAddRequest{},
		"/restmachine/cloudapi/compute/antiAffinityRuleRemove":       compute.AntiAffinityRuleRemoveRequest{},
		"/restmachine/cloudapi/compute/antiAffinityRulesClear":       compute.AffinityRulesClearRequest{},
		"/restmachine/cloudapi/compute/attachGpu":                    compute.AttachGPURequest{},
		"/restmachine/cloudapi/compute/attachPciDevice":              compute.AttachPCIDeviceRequest{},
		"/restmachine/cloudapi/compute/bootDiskSet":                  compute.BootDiskSetRequest{},
		"/restmachine/cloudapi/compute/bootOrderGet":                 compute.BootOrderGetRequest{},
		"/restmachine/cloudapi/compute/bootOrderSet":                 compute.BootOrderSetRequest{},
		"/restmachine/cloudapi/compute/cdEject":                      compute.CDEjectRequest{},
		"/restmachine/cloudapi/compute/cdInsert":                     compute.CDInsertRequest{},
		"/restmachine/cloudapi/compute/changeLinkState":              compute.ChangeLinkStateRequest{},
		"/restmachine/cloudapi/compute/change_qos_policies":          compute.ChangeQoSPoliciesRequest{},
		"/restmachine/cloudapi/compute/change_security_groups":       compute.ChangeSecGroupsRequest{},
		"/restmachine/cloudapi/compute/clone":                        compute.CloneRequest{},
		"/restmachine/cloudapi/compute/clone_abort":                  compute.CloneAbortRequest{},
		"/restmachine/cloudapi/compute/clone_status":                 compute.GetCloneStatusRequest{},
		"/restmachine/cloudapi/compute/createTemplate":               compute.CreateTemplateRequest{},
		"/restmachine/cloudapi/compute/createTemplateFromBlank":      compute.CreateTemplateFromBlankRequest{},
		"/restmachine/cloudapi/compute/delete":                       compute.DeleteRequest{},
		"/restmachine/cloudapi/compute/delete_cpu_alignment_profile": compute.DeleteCPUAlignmentProfileRequest{},
		"/restmachine/cloudapi/compute/deleteCustomFields":           compute.DeleteCustomFieldsRequest{},
		"/restmachine/cloudapi/compute/detachGpu":                    compute.DetachGPURequest{},
		"/restmachine/cloudapi/compute/detachPciDevice":              compute.DetachPCIDeviceRequest{},
		"/restmachine/cloudapi/compute/disable":                      compute.DisableRequest{},
		"/restmachine/cloudapi/compute/diskAdd":                      compute.DiskAddRequest{},
		"/restmachine/cloudapi/compute/diskAttach":                   compute.DiskAttachRequest{},
		"/restmachine/cloudapi/compute/diskDel":                      compute.DiskDelRequest{},
		"/restmachine/cloudapi/compute/diskDetach":                   compute.DiskDetachRequest{},
		"/restmachine/cloudapi/compute/diskMigrate":                  compute.DiskMigrateRequest{},
		"/restmachine/cloudapi/compute/diskQos":                      compute.DiskQOSRequest{},
		"/restmachine/cloudapi/compute/diskSwitchToReplication":      compute.DiskSwitchToReplicationRequest{},
		"/restmachine/cloudapi/compute/diskResize":                   compute.DiskResizeRequest{},
		"/restmachine/cloudapi/compute/enable":                       compute.EnableRequest{},
		"/restmachine/cloudapi/compute/get":                          compute.GetRequest{},
		"/restmachine/cloudapi/compute/get_cpu_alignment_profile":    compute.GetCPUAlignmentProfileRequest{},
		"/restmachine/cloudapi/compute/getConsoleUrl":                compute.GetConsoleURLRequest{},
		"/restmachine/cloudapi/compute/getCustomFields":              compute.GetCustomFieldsRequest{},
		"/restmachine/cloudapi/compute/getLog":                       compute.GetLogRequest{},
		"/restmachine/cloudapi/compute/list":                         compute.ListRequest{},
		"/restmachine/cloudapi/compute/listDeleted":                  compute.ListDeletedRequest{},
		"/restmachine/cloudapi/compute/listPciDevice":                compute.ListPCIDeviceRequest{},
		"/restmachine/cloudapi/compute/listVGpu":                     compute.ListVGPURequest{},
		"/restmachine/cloudapi/compute/moveToRg":                     compute.MoveToRGRequest{},
		"/restmachine/cloudapi/compute/netAttach":                    compute.NetAttachRequest{},
		"/restmachine/cloudapi/compute/netDetach":                    compute.NetDetachRequest{},
		"/restmachine/cloudapi/compute/pfwAdd":                       compute.PFWAddRequest{},
		"/restmachine/cloudapi/compute/pfwDel":                       compute.PFWDelRequest{},
		"/restmachine/cloudapi/compute/pfwList":                      compute.PFWListRequest{},
		"/restmachine/cloudapi/compute/pause":                        compute.PauseRequest{},
		"/restmachine/cloudapi/compute/pin_to_node":                  compute.PinToNodeRequest{},
		"/restmachine/cloudapi/compute/powerCycle":                   compute.PowerCycleRequest{},
		"/restmachine/cloudapi/compute/reboot":                       compute.RebootRequest{},
		"/restmachine/cloudapi/compute/redeploy":                     compute.RedeployRequest{},
		"/restmachine/cloudapi/compute/reset":                        compute.ResetRequest{},
		"/restmachine/cloudapi/compute/resize":                       compute.ResizeRequest{},
		"/restmachine/cloudapi/compute/restore":                      compute.RestoreRequest{},
		"/restmachine/cloudapi/compute/resume":                       compute.ResumeRequest{},
		"/restmachine/cloudapi/compute/set_cpu_alignment_profile":    compute.SetCPUAlignmentProfileRequest{},
		"/restmachine/cloudapi/compute/setCustomFields":              compute.SetCustomFieldsRequest{},
		"/restmachine/cloudapi/compute/snapshotCreate":               compute.SnapshotCreateRequest{},
		"/restmachine/cloudapi/compute/snapshotDelete":               compute.SnapshotDeleteRequest{},
		"/restmachine/cloudapi/compute/snapshotList":                 compute.SnapshotListRequest{},
		"/restmachine/cloudapi/compute/snapshotRollback":             compute.SnapshotRollbackRequest{},
		"/restmachine/cloudapi/compute/snapshotUsage":                compute.SnapshotUsageRequest{},
		"/restmachine/cloudapi/compute/start":                        compute.StartRequest{},
		"/restmachine/cloudapi/compute/stop":                         compute.StopRequest{},
		"/restmachine/cloudapi/compute/tagAdd":                       compute.TagAddRequest{},
		"/restmachine/cloudapi/compute/tagRemove":                    compute.TagRemoveRequest{},
		"/restmachine/cloudapi/compute/unpin_from_node":              compute.UnpinFromNodeRequest{},
		"/restmachine/cloudapi/compute/update":                       compute.UpdateRequest{},
		"/restmachine/cloudapi/compute/userGrant":                    compute.UserGrantRequest{},
		"/restmachine/cloudapi/compute/userList":                     compute.UserListRequest{},
		"/restmachine/cloudapi/compute/userRevoke":                   compute.UserRevokeRequest{},
		"/restmachine/cloudapi/compute/userUpdate":                   compute.UserUpdateRequest{},
		"/restmachine/cloudapi/compute/changeMac":                    compute.ChangeMACRequest{},
		"/restmachine/cloudapi/compute/changeIp":                     compute.ChangeIPRequest{},
		"/restmachine/cloudapi/compute/guest_agent_disable":          compute.GuestAgentDisableRequest{},
		"/restmachine/cloudapi/compute/guest_agent_enable":           compute.GuestAgentEnableRequest{},
		"/restmachine/cloudapi/compute/guest_agent_execute":          compute.GuestAgentExecuteRequest{},
		"/restmachine/cloudapi/compute/guest_agent_feature_get":      compute.GuestAgentFeatureGetRequest{},
		"/restmachine/cloudapi/compute/guest_agent_feature_update":   compute.GuestAgentFeatureUpdateRequest{},
		"/restmachine/cloudapi/compute/migrateToZone":                compute.MigrateToZoneRequest{},

		// disks
		"/restmachine/cloudapi/disks/change_disk_storage_policy": disks.ChangeDiskStoragePolicyRequest{},
		"/restmachine/cloudapi/disks/create":                     disks.CreateRequest{},
		"/restmachine/cloudapi/disks/delete":                     disks.DeleteRequest{},
		"/restmachine/cloudapi/disks/deleteDisks":                disks.DisksDeleteRequest{},
		"/restmachine/cloudapi/disks/fromPlatformDisk":           disks.FromPlatformDiskRequest{},
		"/restmachine/cloudapi/disks/get":                        disks.GetRequest{},
		"/restmachine/cloudapi/disks/limitIO":                    disks.LimitIORequest{},
		"/restmachine/cloudapi/disks/list":                       disks.ListRequest{},
		"/restmachine/cloudapi/disks/listDeleted":                disks.ListDeletedRequest{},
		"/restmachine/cloudapi/disks/listUnattached":             disks.ListUnattachedRequest{},
		"/restmachine/cloudapi/disks/rename":                     disks.RenameRequest{},
		"/restmachine/cloudapi/disks/replicate":                  disks.ReplicateRequest{},
		"/restmachine/cloudapi/disks/replicationResume":          disks.ReplicationResumeRequest{},
		"/restmachine/cloudapi/disks/replicationReverse":         disks.ReplicationReverseRequest{},
		"/restmachine/cloudapi/disks/replicationStart":           disks.ReplicationStartRequest{},
		"/restmachine/cloudapi/disks/replicationStatus":          disks.ReplicationStatusRequest{},
		"/restmachine/cloudapi/disks/replicationStop":            disks.ReplicationStopRequest{},
		"/restmachine/cloudapi/disks/replicationSuspend":         disks.ReplicationSuspendRequest{},
		"/restmachine/cloudapi/disks/resize2":                    disks.ResizeRequest{},
		"/restmachine/cloudapi/disks/restore":                    disks.RestoreRequest{},
		"/restmachine/cloudapi/disks/search":                     disks.SearchRequest{},
		"/restmachine/cloudapi/disks/share":                      disks.ShareRequest{},
		"/restmachine/cloudapi/disks/snapshotDelete":             disks.SnapshotDeleteRequest{},
		"/restmachine/cloudapi/disks/snapshotRollback":           disks.SnapshotRollbackRequest{},
		"/restmachine/cloudapi/disks/unshare":                    disks.UnshareRequest{},

		//dpdknet
		"/restmachine/cloudapi/dpdknet/get":  dpdknet.GetRequest{},
		"/restmachine/cloudapi/dpdknet/list": dpdknet.ListRequest{},

		// extnet
		"/restmachine/cloudapi/extnet/get":           extnet.GetRequest{},
		"/restmachine/cloudapi/extnet/getDefault":    EmptyStruct{},
		"/restmachine/cloudapi/extnet/getReservedIp": extnet.GetReservedIP{},
		"/restmachine/cloudapi/extnet/list":          extnet.ListRequest{},
		"/restmachine/cloudapi/extnet/listComputes":  extnet.ListComputesRequest{},

		// flipgroup
		"/restmachine/cloudapi/flipgroup/computeAdd":    flipgroup.ComputeAddRequest{},
		"/restmachine/cloudapi/flipgroup/computeRemove": flipgroup.ComputeRemoveRequest{},
		"/restmachine/cloudapi/flipgroup/create":        flipgroup.CreateRequest{},
		"/restmachine/cloudapi/flipgroup/delete":        flipgroup.DeleteRequest{},
		"/restmachine/cloudapi/flipgroup/edit":          flipgroup.EditRequest{},
		"/restmachine/cloudapi/flipgroup/get":           flipgroup.GetRequest{},
		"/restmachine/cloudapi/flipgroup/list":          flipgroup.ListRequest{},

		// image
		"/restmachine/cloudapi/image/change_storage_policy": image.ChangeStoragePolicyRequest{},
		"/restmachine/cloudapi/image/create":                image.CreateRequest{},
		"/restmachine/cloudapi/image/createVirtual":         image.CreateVirtualRequest{},
		"/restmachine/cloudapi/image/delete":                image.DeleteRequest{},
		"/restmachine/cloudapi/image/get":                   image.GetRequest{},
		"/restmachine/cloudapi/image/link":                  image.LinkRequest{},
		"/restmachine/cloudapi/image/list":                  image.ListRequest{},
		"/restmachine/cloudapi/image/rename":                image.RenameRequest{},

		// k8ci, k8s
		"/restmachine/cloudapi/k8ci/get":                      k8ci.GetRequest{},
		"/restmachine/cloudapi/k8ci/list":                     k8ci.ListRequest{},
		"/restmachine/cloudapi/k8ci/listDeleted":              k8ci.ListDeletedRequest{},
		"/restmachine/cloudapi/k8s/create":                    k8s.CreateRequest{},
		"/restmachine/cloudapi/k8s/delete":                    k8s.DeleteRequest{},
		"/restmachine/cloudapi/k8s/deleteMasterFromGroup":     k8s.DeleteMasterFromGroupRequest{},
		"/restmachine/cloudapi/k8s/deleteWorkerFromGroup":     k8s.DeleteWorkerFromGroupRequest{},
		"/restmachine/cloudapi/k8s/disable":                   k8s.DisableEnableRequest{},
		"/restmachine/cloudapi/k8s/enable":                    k8s.DisableEnableRequest{},
		"/restmachine/cloudapi/k8s/findGroupByLabel":          k8s.FindGroupByLabelRequest{},
		"/restmachine/cloudapi/k8s/get":                       k8s.GetRequest{},
		"/restmachine/cloudapi/k8s/getConfig":                 k8s.GetConfigRequest{},
		"/restmachine/cloudapi/k8s/getNodeAnnotations":        k8s.GetNodeAnnotationsRequest{},
		"/restmachine/cloudapi/k8s/getNodeLabels":             k8s.GetNodeLabelsRequest{},
		"/restmachine/cloudapi/k8s/getNodeTaints":             k8s.GetNodeTaintsRequest{},
		"/restmachine/cloudapi/k8s/getWorkerNodesMetaData":    k8s.GetWorkerNodesMetaDataRequest{},
		"/restmachine/cloudapi/k8s/list":                      k8s.ListRequest{},
		"/restmachine/cloudapi/k8s/listDeleted":               k8s.ListDeletedRequest{},
		"/restmachine/cloudapi/k8s/restore":                   k8s.RestoreRequest{},
		"/restmachine/cloudapi/k8s/start":                     k8s.StartRequest{},
		"/restmachine/cloudapi/k8s/stop":                      k8s.StopRequest{},
		"/restmachine/cloudapi/k8s/update":                    k8s.UpdateRequest{},
		"/restmachine/cloudapi/k8s/updateWorkerNodesMetaData": k8s.UpdateWorkerNodesMetaDataRequest{},
		"/restmachine/cloudapi/k8s/workerAdd":                 k8s.WorkerAddRequest{},
		"/restmachine/cloudapi/k8s/workersGroupAdd":           k8s.WorkersGroupAddRequest{},
		"/restmachine/cloudapi/k8s/workersGroupDelete":        k8s.WorkersGroupDeleteRequest{},
		"/restmachine/cloudapi/k8s/workersGroupGetByName":     k8s.WorkersGroupGetByNameRequest{},
		"/restmachine/cloudapi/k8s/workerReset":               k8s.WorkerResetRequest{},
		"/restmachine/cloudapi/k8s/workerRestart":             k8s.WorkerRestartRequest{},
		"/restmachine/cloudapi/k8s/migrateToZone":             k8s.MigrateToZoneRequest{},

		// kvmx86
		"/restmachine/cloudapi/kvmx86/create":      kvmx86.CreateRequest{},
		"/restmachine/cloudapi/kvmx86/createBlank": kvmx86.CreateBlankRequest{},

		// lb
		"/restmachine/cloudapi/lb/backendCreate":         lb.BackendCreateRequest{},
		"/restmachine/cloudapi/lb/backendDelete":         lb.BackendDeleteRequest{},
		"/restmachine/cloudapi/lb/backendServerAdd":      lb.BackendServerAddRequest{},
		"/restmachine/cloudapi/lb/backendServerDelete":   lb.BackendServerDeleteRequest{},
		"/restmachine/cloudapi/lb/backendServerUpdate":   lb.BackendServerUpdateRequest{},
		"/restmachine/cloudapi/lb/backendUpdate":         lb.BackendUpdateRequest{},
		"/restmachine/cloudapi/lb/configReset":           lb.ConfigResetRequest{},
		"/restmachine/cloudapi/lb/create":                lb.CreateRequest{},
		"/restmachine/cloudapi/lb/delete":                lb.DeleteRequest{},
		"/restmachine/cloudapi/lb/disable":               lb.DisableEnableRequest{},
		"/restmachine/cloudapi/lb/enable":                lb.DisableEnableRequest{},
		"/restmachine/cloudapi/lb/frontendBind":          lb.FrontendBindRequest{},
		"/restmachine/cloudapi/lb/frontendBindDelete":    lb.FrontendBindDeleteRequest{},
		"/restmachine/cloudapi/lb/frontendBindingUpdate": lb.FrontendBindUpdateRequest{},
		"/restmachine/cloudapi/lb/frontendCreate":        lb.FrontendCreateRequest{},
		"/restmachine/cloudapi/lb/frontendDelete":        lb.FrontendDeleteRequest{},
		"/restmachine/cloudapi/lb/get":                   lb.GetRequest{},
		"/restmachine/cloudapi/lb/makeHighlyAvailable":   lb.HighlyAvailableRequest{},
		"/restmachine/cloudapi/lb/list":                  lb.ListRequest{},
		"/restmachine/cloudapi/lb/listDeleted":           lb.ListDeletedRequest{},
		"/restmachine/cloudapi/lb/restart":               lb.RestartRequest{},
		"/restmachine/cloudapi/lb/restore":               lb.RestoreRequest{},
		"/restmachine/cloudapi/lb/start":                 lb.StartRequest{},
		"/restmachine/cloudapi/lb/stop":                  lb.StopRequest{},
		"/restmachine/cloudapi/lb/update":                lb.UpdateRequest{},
		"/restmachine/cloudapi/lb/updateSysctlParams":    lb.UpdateSysctParamsRequest{},
		"/restmachine/cloudapi/lb/migrateToZone":         lb.MigrateToZoneRequest{},

		// locations
		"/restmachine/cloudapi/locations/getUrl": EmptyStruct{},
		"/restmachine/cloudapi/locations/list":   locations.ListRequest{},

		// pcidevice
		"/restmachine/cloudapi/pcidevice/list": pcidevice.ListRequest{},

		// prometheus
		"/restmachine/cloudapi/prometheus/computeTransmitPackets": prometheus.ComputeTransmitPacketsRequest{},
		"/restmachine/cloudapi/prometheus/computeWriteRequests":   prometheus.ComputeWriteRequestsRequest{},
		"/restmachine/cloudapi/prometheus/computeCPUload":         prometheus.ComputeCPULoadRequest{},
		"/restmachine/cloudapi/prometheus/computeTransmitBytes":   prometheus.ComputeTransmitBytesRequest{},
		"/restmachine/cloudapi/prometheus/computeMemoryUsed":      prometheus.ComputeMemoryUsedRequest{},
		"/restmachine/cloudapi/prometheus/computeMemoryUsable":    prometheus.ComputeMemoryUsableRequest{},
		"/restmachine/cloudapi/prometheus/computeMemoryAvailable": prometheus.ComputeMemoryAvailableRequest{},
		"/restmachine/cloudapi/prometheus/computeReceiveBytes":    prometheus.ComputeReceiveBytesRequest{},
		"/restmachine/cloudapi/prometheus/computes":               prometheus.ComputesRequest{},
		"/restmachine/cloudapi/prometheus/computeReceivePackets":  prometheus.ComputeReceivePacketsRequest{},
		"/restmachine/cloudapi/prometheus/computeReadRequests":    prometheus.ComputeReadRequestsRequest{},
		"/restmachine/cloudapi/prometheus/computeWriteBytes":      prometheus.ComputeWriteBytesRequest{},
		"/restmachine/cloudapi/prometheus/computeReadBytes":       prometheus.ComputeReadBytesRequest{},
		"/restmachine/cloudapi/prometheus/computeMemoryUsage":     prometheus.ComputeMemoryUsageRequest{},
		"/restmachine/cloudapi/prometheus/computeMemoryUnused":    prometheus.ComputeMemoryUnusedRequest{},

		// network_qos_policy
		"/restmachine/cloudapi/network_qos_policy/create":      qospolicy.CreateRequest{},
		"/restmachine/cloudapi/network_qos_policy/create_rule": qospolicy.CreateRuleRequest{},
		"/restmachine/cloudapi/network_qos_policy/delete":      qospolicy.DeleteRequest{},
		"/restmachine/cloudapi/network_qos_policy/delete_rule": qospolicy.DeleteRuleRequest{},
		"/restmachine/cloudapi/network_qos_policy/get":         qospolicy.GetRequest{},
		"/restmachine/cloudapi/network_qos_policy/list":        qospolicy.ListRequest{},
		"/restmachine/cloudapi/network_qos_policy/update":      qospolicy.UpdateRequest{},

		// rg
		"/restmachine/cloudapi/rg/accessGrant":             rg.AccessGrantRequest{},
		"/restmachine/cloudapi/rg/accessRevoke":            rg.AccessRevokeRequest{},
		"/restmachine/cloudapi/rg/affinityGroupComputes":   rg.AffinityGroupComputesRequest{},
		"/restmachine/cloudapi/rg/affinityGroupsGet":       rg.AffinityGroupsGetRequest{},
		"/restmachine/cloudapi/rg/affinityGroupsList":      rg.AffinityGroupsListRequest{},
		"/restmachine/cloudapi/rg/create":                  rg.CreateRequest{},
		"/restmachine/cloudapi/rg/delete":                  rg.DeleteRequest{},
		"/restmachine/cloudapi/rg/disable":                 rg.DisableRequest{},
		"/restmachine/cloudapi/rg/enable":                  rg.EnableRequest{},
		"/restmachine/cloudapi/rg/get":                     rg.GetRequest{},
		"/restmachine/cloudapi/rg/getResourceConsumption":  rg.GetResourceConsumptionRequest{},
		"/restmachine/cloudapi/rg/list":                    rg.ListRequest{},
		"/restmachine/cloudapi/rg/listComputes":            rg.ListComputesRequest{},
		"/restmachine/cloudapi/rg/listDeleted":             rg.ListDeletedRequest{},
		"/restmachine/cloudapi/rg/listLb":                  rg.ListLBRequest{},
		"/restmachine/cloudapi/rg/listPFW":                 rg.ListPFWRequest{},
		"/restmachine/cloudapi/rg/listResourceConsumption": EmptyStruct{},
		"/restmachine/cloudapi/rg/listVins":                rg.ListVINSRequest{},
		"/restmachine/cloudapi/rg/restore":                 rg.RestoreRequest{},
		"/restmachine/cloudapi/rg/setDefNet":               rg.SetDefNetRequest{},
		"/restmachine/cloudapi/rg/update":                  rg.UpdateRequest{},
		"/restmachine/cloudapi/rg/usage":                   rg.UsageRequest{},
		"/restmachine/cloudapi/rg/removeDefNet":            rg.RemoveDefNetRequest{},
		"/restmachine/cloudapi/rg/add_storage_policy":      rg.AddStoragePolicyRequest{},
		"/restmachine/cloudapi/rg/del_storage_policy":      rg.DelStoragePolicyRequest{},
		"/restmachine/cloudapi/rg/add_acl_access":          rg.AddACLAccessRequest{},
		"/restmachine/cloudapi/rg/del_acl_access":          rg.DeleteACLAccessRequest{},
		"/restmachine/cloudapi/rg/update_acl_access":       rg.UpdateACLAccessRequest{},
		"/restmachine/cloudapi/rg/get_acl_access":          rg.GetACLAccessRequest{},

		// security_group
		"/restmachine/cloudapi/security_group/create":      secgroup.CreateRequest{},
		"/restmachine/cloudapi/security_group/create_rule": secgroup.CreateRuleRequest{},
		"/restmachine/cloudapi/security_group/delete":      secgroup.DeleteRequest{},
		"/restmachine/cloudapi/security_group/delete_rule": secgroup.DeleteRuleRequest{},
		"/restmachine/cloudapi/security_group/get":         secgroup.GetRequest{},
		"/restmachine/cloudapi/security_group/list":        secgroup.ListRequest{},
		"/restmachine/cloudapi/security_group/update":      secgroup.UpdateRequest{},

		// sep
		"/restmachine/cloudapi/sep/listAvailableSepAndPools": sep.ListAvailableSEPAndPoolsRequest{},

		// tasks
		"/restmachine/cloudapi/tasks/get":  tasks.GetRequest{},
		"/restmachine/cloudapi/tasks/list": tasks.ListRequest{},

		// storage policy
		"/restmachine/cloudapi/storage_policy/get":  stpolicy.GetRequest{},
		"/restmachine/cloudapi/storage_policy/list": stpolicy.ListRequest{},

		// trunk
		"/restmachine/cloudapi/trunk/get":  trunk.GetRequest{},
		"/restmachine/cloudapi/trunk/list": trunk.ListRequest{},

		// user
		"/restmachine/cloudapi/user/apiList":                user.APIListRequest{},
		"/restmachine/cloudapi/user/authenticate":           user.AuthenticateRequest{},
		"/restmachine/cloudapi/user/brief":                  EmptyStruct{},
		"/restmachine/cloudapi/user/get":                    user.GetRequest{},
		"/restmachine/cloudapi/user/getResourceConsumption": EmptyStruct{},
		"/restmachine/cloudapi/user/search":                 user.SearchRequest{},
		"/restmachine/cloudapi/user/setData":                user.SetDataRequest{},

		// vfpool
		"/restmachine/cloudapi/vfpool/get":  vfpool.GetRequest{},
		"/restmachine/cloudapi/vfpool/list": vfpool.ListRequest{},

		// vgpu
		"/restmachine/cloudapi/vgpu/list": vgpu.ListRequest{},

		// vins
		"/restmachine/cloudapi/vins/createInAccount":  vins.CreateInAccountRequest{},
		"/restmachine/cloudapi/vins/createInRG":       vins.CreateInRGRequest{},
		"/restmachine/cloudapi/vins/delete":           vins.DeleteRequest{},
		"/restmachine/cloudapi/vins/disable":          vins.DisableEnableRequest{},
		"/restmachine/cloudapi/vins/dnsApply":         vins.DNSApplyRequest{},
		"/restmachine/cloudapi/vins/enable":           vins.DisableEnableRequest{},
		"/restmachine/cloudapi/vins/extNetConnect":    vins.ExtNetConnectRequest{},
		"/restmachine/cloudapi/vins/extNetDisconnect": vins.ExtNetDisconnectRequest{},
		"/restmachine/cloudapi/vins/extNetList":       vins.ExtNetListRequest{},
		"/restmachine/cloudapi/vins/get":              vins.GetRequest{},
		"/restmachine/cloudapi/vins/ipList":           vins.IPListRequest{},
		"/restmachine/cloudapi/vins/ipRelease":        vins.IPReleaseRequest{},
		"/restmachine/cloudapi/vins/ipReserve":        vins.IPReserveRequest{},
		"/restmachine/cloudapi/vins/list":             vins.ListRequest{},
		"/restmachine/cloudapi/vins/listDeleted":      vins.ListDeletedRequest{},
		"/restmachine/cloudapi/vins/natRuleAdd":       vins.NATRuleAddRequest{},
		"/restmachine/cloudapi/vins/natRuleDel":       vins.NATRuleDelRequest{},
		"/restmachine/cloudapi/vins/natRuleList":      vins.NATRuleListRequest{},
		"/restmachine/cloudapi/vins/restore":          vins.RestoreRequest{},
		"/restmachine/cloudapi/vins/search":           vins.SearchRequest{},
		"/restmachine/cloudapi/vins/staticRouteAdd":   vins.StaticRouteAddRequest{},
		"/restmachine/cloudapi/vins/staticRouteDel":   vins.StaticRouteDelRequest{},
		"/restmachine/cloudapi/vins/staticRouteList":  vins.StaticRouteListRequest{},
		"/restmachine/cloudapi/vins/vnfdevRedeploy":   vins.VNFDevRedeployRequest{},
		"/restmachine/cloudapi/vins/vnfdevRestart":    vins.VNFDevRestartRequest{},
		"/restmachine/cloudapi/vins/migrateToZone":    vins.MigrateToZoneRequest{},

		// zone
		"/restmachine/cloudapi/zone/get":  zone.GetRequest{},
		"/restmachine/cloudapi/zone/list": zone.ListRequest{},
	}
}

// getRequestsMapCloudbroker maps request path with request golang sdk structures for cloudbroker most used requests
func getRequestsMapCloudbroker() map[string]interface{} {
	return map[string]interface{}{
		// account_cb
		"/restmachine/cloudbroker/account/addUser":                   account_cb.AddUserRequest{},
		"/restmachine/cloudbroker/account/add_storage_policy":        account_cb.AddStoragePolicyRequest{},
		"/restmachine/cloudbroker/account/create":                    account_cb.CreateRequest{},
		"/restmachine/cloudbroker/account/del_storage_policy":        account_cb.DelStoragePolicyRequest{},
		"/restmachine/cloudbroker/account/delete":                    account_cb.DeleteRequest{},
		"/restmachine/cloudbroker/account/deleteAccounts":            account_cb.DeleteAccountsRequest{},
		"/restmachine/cloudbroker/account/deleteUser":                account_cb.DeleteUserRequest{},
		"/restmachine/cloudbroker/account/disableAccounts":           account_cb.DisableAccountsRequest{},
		"/restmachine/cloudbroker/account/enableAccounts":            account_cb.EnableAccountsRequest{},
		"/restmachine/cloudbroker/account/get":                       account_cb.GetRequest{},
		"/restmachine/cloudbroker/account/getResourceConsumption":    account_cb.GetResourceConsumptionRequest{},
		"/restmachine/cloudbroker/account/grantAccessTemplates":      account_cb.GrantAccessTemplatesRequest{},
		"/restmachine/cloudbroker/account/list":                      account_cb.ListRequest{},
		"/restmachine/cloudbroker/account/listAvailableTemplates":    account_cb.ListAvailableTemplatesRequest{},
		"/restmachine/cloudbroker/account/listComputes":              account_cb.ListComputesRequest{},
		"/restmachine/cloudbroker/account/listDeleted":               account_cb.ListDeletedRequest{},
		"/restmachine/cloudbroker/account/listDisks":                 account_cb.ListDisksRequest{},
		"/restmachine/cloudbroker/account/listFlipGroups":            account_cb.ListFLIPGroupsRequest{},
		"/restmachine/cloudbroker/account/listRG":                    account_cb.ListRGRequest{},
		"/restmachine/cloudbroker/account/listResourceConsumption":   EmptyStruct{},
		"/restmachine/cloudbroker/account/listVins":                  account_cb.ListVINSRequest{},
		"/restmachine/cloudbroker/account/restore":                   account_cb.RestoreRequest{},
		"/restmachine/cloudbroker/account/revokeAccessTemplates":     account_cb.RevokeAccessTemplatesRequest{},
		"/restmachine/cloudbroker/account/setCpuAllocationParameter": account_cb.SetCPUAllocationParameterRequest{},
		"/restmachine/cloudbroker/account/setCpuAllocationRatio":     account_cb.SetCPUAllocationRatioRequest{},
		"/restmachine/cloudbroker/account/update":                    account_cb.UpdateRequest{},
		"/restmachine/cloudbroker/account/updateComputeFeatures":     account_cb.UpdateComputeFeaturesRequest{},
		"/restmachine/cloudbroker/account/updateResourceTypes":       account_cb.UpdateResourceTypesRequest{},
		"/restmachine/cloudbroker/account/updateUser":                account_cb.UpdateUserRequest{},
		"/restmachine/cloudbroker/account/addZone":                   account_cb.AddZoneRequest{},
		"/restmachine/cloudbroker/account/removeZone":                account_cb.RemoveZoneRequest{},
		"/restmachine/cloudbroker/account/add_acl_access":            account_cb.AddACLAccessRequest{},
		"/restmachine/cloudbroker/account/del_acl_access":            account_cb.DelACLAccessRequest{},
		"/restmachine/cloudbroker/account/update_acl_access":         account_cb.UpdateACLAccessRequest{},

		// apiaccess_cb
		"/restmachine/cloudbroker/apiaccess/apisExclude": apiaccess_cb.APIsExcludeRequest{},
		"/restmachine/cloudbroker/apiaccess/apiFind":     apiaccess_cb.APIFindRequest{},
		"/restmachine/cloudbroker/apiaccess/apisInclude": apiaccess_cb.APIsIncludeRequest{},
		"/restmachine/cloudbroker/apiaccess/copy":        apiaccess_cb.CopyRequest{},
		"/restmachine/cloudbroker/apiaccess/create":      apiaccess_cb.CreateRequest{},
		"/restmachine/cloudbroker/apiaccess/delete":      apiaccess_cb.DeleteRequest{},
		"/restmachine/cloudbroker/apiaccess/descUpdate":  apiaccess_cb.DescUpdateRequest{},
		"/restmachine/cloudbroker/apiaccess/get":         apiaccess_cb.GetRequest{},
		"/restmachine/cloudbroker/apiaccess/getFull":     EmptyStruct{},
		"/restmachine/cloudbroker/apiaccess/list":        apiaccess_cb.ListRequest{},
		"/restmachine/cloudbroker/apiaccess/setDefault":  apiaccess_cb.SetDefaultRequest{},
		"/restmachine/cloudbroker/apiaccess/subtract":    apiaccess_cb.SubtractRequest{},
		"/restmachine/cloudbroker/apiaccess/union":       apiaccess_cb.UnionRequest{},
		"/restmachine/cloudbroker/apiaccess/update":      apiaccess_cb.UpdateRequest{},
		"/restmachine/cloudbroker/apiaccess/userList":    apiaccess_cb.UserListRequest{},
		"/restmachine/cloudbroker/apiaccess/getDefault":  EmptyStruct{},

		// audit_cb
		"/restmachine/cloudbroker/audit/get":                audit_cb.GetRequest{},
		"/restmachine/cloudbroker/audit/linkedJobs":         audit_cb.LinkedJobsRequest{},
		"/restmachine/cloudbroker/audit/list":               audit_cb.ListRequest{},
		"/restmachine/cloudbroker/audit/exportAuditsToFile": EmptyStruct{},

		// backup_cb
		"/restmachine/cloudbroker/backup/abort_disks_backup":      backup_cb.AbortDisksBackupRequest{},
		"/restmachine/cloudbroker/backup/backup_disks_with_speed": backup_cb.BackupDisksWithSpeedRequest{},
		"/restmachine/cloudbroker/backup/createDiskBackup":        backup_cb.CreateDiskBackupRequest{},
		"/restmachine/cloudbroker/backup/createDisksBackup":       backup_cb.CreateDisksBackupRequest{},
		"/restmachine/cloudbroker/backup/deleteDiskBackup":        backup_cb.DeleteDiskBackupRequest{},
		"/restmachine/cloudbroker/backup/info":                    backup_cb.InfoRequest{},
		"/restmachine/cloudbroker/backup/listBackupPaths":         backup_cb.ListBackupPathsRequest{},
		"/restmachine/cloudbroker/backup/restoreDiskFromBackup":   backup_cb.RestoreDiskFromBackupRequest{},
		"/restmachine/cloudbroker/backup/restoreDisksFromBackup":  backup_cb.RestoreDisksFromBackupRequest{},
		"/restmachine/cloudbroker/backup/set_backup_speed":        backup_cb.SetBackupSpeedRequest{},

		// compute_cb
		"/restmachine/cloudbroker/compute/abort_shared_snapshot_merge":  compute_cb.AbortSharedSnapshotMergeRequest{},
		"/restmachine/cloudbroker/compute/shared_snapshot_merge_status": compute_cb.SharedSnapshotMergeStatusRequest{},
		"/restmachine/cloudbroker/compute/affinityGroupCheckStart":      compute_cb.AffinityGroupCheckStartRequest{},
		"/restmachine/cloudbroker/compute/affinityLabelRemove":          compute_cb.AffinityLabelRemoveRequest{},
		"/restmachine/cloudbroker/compute/affinityLabelSet":             compute_cb.AffinityLabelSetRequest{},
		"/restmachine/cloudbroker/compute/affinityRelations":            compute_cb.AffinityRelationsRequest{},
		"/restmachine/cloudbroker/compute/affinityRuleAdd":              compute_cb.AffinityRuleAddRequest{},
		"/restmachine/cloudbroker/compute/affinityRuleRemove":           compute_cb.AffinityRuleRemoveRequest{},
		"/restmachine/cloudbroker/compute/affinityRulesClear":           compute_cb.AffinityRulesClearRequest{},
		"/restmachine/cloudbroker/compute/antiAffinityRuleAdd":          compute_cb.AntiAffinityRuleAddRequest{},
		"/restmachine/cloudbroker/compute/antiAffinityRuleRemove":       compute_cb.AntiAffinityRuleRemoveRequest{},
		"/restmachine/cloudbroker/compute/antiAffinityRulesClear":       compute_cb.AffinityRulesClearRequest{},
		"/restmachine/cloudbroker/compute/attachGpu":                    compute_cb.AttachGPURequest{},
		"/restmachine/cloudbroker/compute/attachPciDevice":              compute_cb.AttachPCIDeviceRequest{},
		"/restmachine/cloudbroker/compute/bootDiskSet":                  compute_cb.BootDiskSetRequest{},
		"/restmachine/cloudbroker/compute/bootOrderGet":                 compute_cb.BootOrderGetRequest{},
		"/restmachine/cloudbroker/compute/bootOrderSet":                 compute_cb.BootOrderSetRequest{},
		"/restmachine/cloudbroker/compute/cdEject":                      compute_cb.CDEjectRequest{},
		"/restmachine/cloudbroker/compute/cdInsert":                     compute_cb.CDInsertRequest{},
		"/restmachine/cloudbroker/compute/changeLinkState":              compute_cb.ChangeLinkStateRequest{},
		"/restmachine/cloudbroker/compute/change_qos_policies":          compute.ChangeQoSPoliciesRequest{},
		"/restmachine/cloudbroker/compute/change_mtu":                   compute_cb.ChangeMTURequest{},
		"/restmachine/cloudbroker/compute/check_compute_placement":      compute_cb.CheckComputePlacementRequest{},
		"/restmachine/cloudbroker/compute/change_security_groups":       compute_cb.ChangeSecGroupsRequest{},
		"/restmachine/cloudbroker/compute/clone":                        compute_cb.CloneRequest{},
		"/restmachine/cloudbroker/compute/clone_abort":                  compute_cb.CloneAbortRequest{},
		"/restmachine/cloudbroker/compute/clone_status":                 compute_cb.GetCloneStatusRequest{},
		"/restmachine/cloudbroker/compute/createTemplate":               compute_cb.CreateTemplateRequest{},
		"/restmachine/cloudbroker/compute/createTemplateFromBlank":      compute_cb.CreateTemplateFromBlankRequest{},
		"/restmachine/cloudbroker/compute/delete":                       compute_cb.DeleteRequest{},
		"/restmachine/cloudbroker/compute/delete_cpu_alignment_profile": compute_cb.DeleteCPUAlignmentProfileRequest{},
		"/restmachine/cloudbroker/compute/deleteCustomFields":           compute_cb.DeleteCustomFieldsRequest{},
		"/restmachine/cloudbroker/compute/detachGpu":                    compute_cb.DetachGPURequest{},
		"/restmachine/cloudbroker/compute/detachPciDevice":              compute_cb.DetachPCIDeviceRequest{},
		"/restmachine/cloudbroker/compute/disable":                      compute_cb.DisableRequest{},
		"/restmachine/cloudbroker/compute/diskAdd":                      compute_cb.DiskAddRequest{},
		"/restmachine/cloudbroker/compute/diskAttach":                   compute_cb.DiskAttachRequest{},
		"/restmachine/cloudbroker/compute/diskDel":                      compute_cb.DiskDelRequest{},
		"/restmachine/cloudbroker/compute/diskDetach":                   compute_cb.DiskDetachRequest{},
		"/restmachine/cloudbroker/compute/diskMigrate":                  compute_cb.DiskMigrateRequest{},
		"/restmachine/cloudbroker/compute/diskResize":                   compute_cb.DiskResizeRequest{},
		"/restmachine/cloudbroker/compute/diskSwitchToReplication":      compute_cb.DiskSwitchToReplicationRequest{},
		"/restmachine/cloudbroker/compute/diskQos":                      compute_cb.DiskQOSRequest{},
		"/restmachine/cloudbroker/compute/enable":                       compute_cb.EnableRequest{},
		"/restmachine/cloudbroker/compute/get":                          compute_cb.GetRequest{},
		"/restmachine/cloudbroker/compute/get_cpu_alignment_profile":    compute_cb.GetCPUAlignmentProfileRequest{},
		"/restmachine/cloudbroker/compute/getConsoleUrl":                compute_cb.GetConsoleURLRequest{},
		"/restmachine/cloudbroker/compute/getCustomFields":              compute_cb.GetCustomFieldsRequest{},
		"/restmachine/cloudbroker/compute/list":                         compute_cb.ListRequest{},
		"/restmachine/cloudbroker/compute/listDeleted":                  compute_cb.ListDeletedRequest{},
		"/restmachine/cloudbroker/compute/listPciDevice":                compute_cb.ListPCIDeviceRequest{},
		"/restmachine/cloudbroker/compute/listVGpu":                     compute_cb.ListVGPURequest{},
		"/restmachine/cloudbroker/compute/massDelete":                   compute_cb.MassDeleteRequest{},
		"/restmachine/cloudbroker/compute/massStart":                    compute_cb.MassStartRequest{},
		"/restmachine/cloudbroker/compute/massStop":                     compute_cb.MassStopRequest{},
		"/restmachine/cloudbroker/compute/massReboot":                   compute_cb.MassRebootRequest{},
		"/restmachine/cloudbroker/compute/migrate":                      compute_cb.MigrateRequest{},
		"/restmachine/cloudbroker/compute/migrateStorage":               compute_cb.MigrateStorageRequest{},
		"/restmachine/cloudbroker/compute/migrateStorageAbort":          compute_cb.MigrateStorageAbortRequest{},
		"/restmachine/cloudbroker/compute/migrateStorageCleanup":        compute_cb.MigrateStorageCleanUpRequest{},
		"/restmachine/cloudbroker/compute/migrateStorageInfo":           compute_cb.MigrateStorageInfoRequest{},
		"/restmachine/cloudbroker/compute/migrate_storage_list":         compute_cb.MigrateStorageListRequest{},
		"/restmachine/cloudbroker/compute/moveToRg":                     compute_cb.MoveToRGRequest{},
		"/restmachine/cloudbroker/compute/netAttach":                    compute_cb.NetAttachRequest{},
		"/restmachine/cloudbroker/compute/netDetach":                    compute_cb.NetDetachRequest{},
		"/restmachine/cloudbroker/compute/netQos":                       compute_cb.NetQOSRequest{},
		"/restmachine/cloudbroker/compute/pfwAdd":                       compute_cb.PFWAddRequest{},
		"/restmachine/cloudbroker/compute/pfwDel":                       compute_cb.PFWDelRequest{},
		"/restmachine/cloudbroker/compute/pfwList":                      compute_cb.PFWListRequest{},
		"/restmachine/cloudbroker/compute/pause":                        compute_cb.PauseRequest{},
		"/restmachine/cloudbroker/compute/pin_to_node":                  compute_cb.PinToNodeRequest{},
		"/restmachine/cloudbroker/compute/powerCycle":                   compute_cb.PowerCycleRequest{},
		"/restmachine/cloudbroker/compute/raiseDown":                    EmptyStruct{},
		"/restmachine/cloudbroker/compute/reboot":                       compute_cb.RebootRequest{},
		"/restmachine/cloudbroker/compute/redeploy":                     compute_cb.RedeployRequest{},
		"/restmachine/cloudbroker/compute/reset":                        compute_cb.ResetRequest{},
		"/restmachine/cloudbroker/compute/resize":                       compute_cb.ResizeRequest{},
		"/restmachine/cloudbroker/compute/restore":                      compute_cb.RestoreRequest{},
		"/restmachine/cloudbroker/compute/resume":                       compute_cb.ResumeRequest{},
		"/restmachine/cloudbroker/compute/set_cpu_alignment_profile":    compute_cb.SetCPUAlignmentProfileRequest{},
		"/restmachine/cloudbroker/compute/setCustomFields":              compute_cb.SetCustomFieldsRequest{},
		"/restmachine/cloudbroker/compute/snapshotCreate":               compute_cb.SnapshotCreateRequest{},
		"/restmachine/cloudbroker/compute/snapshotDelete":               compute_cb.SnapshotDeleteRequest{},
		"/restmachine/cloudbroker/compute/snapshotEvictDisk":            compute_cb.SnapshotEvictDiskRequest{},
		"/restmachine/cloudbroker/compute/snapshotList":                 compute_cb.SnapshotListRequest{},
		"/restmachine/cloudbroker/compute/snapshotRollback":             compute_cb.SnapshotRollbackRequest{},
		"/restmachine/cloudbroker/compute/snapshotUsage":                compute_cb.SnapshotUsageRequest{},
		"/restmachine/cloudbroker/compute/start":                        compute_cb.StartRequest{},
		"/restmachine/cloudbroker/compute/start_migration_in":           compute_cb.StartMigrationINRequest{},
		"/restmachine/cloudbroker/compute/stop":                         compute_cb.StopRequest{},
		"/restmachine/cloudbroker/compute/stop_migration_in":            compute_cb.StopMigrationINRequest{},
		"/restmachine/cloudbroker/compute/tagAdd":                       compute_cb.TagAddRequest{},
		"/restmachine/cloudbroker/compute/tagRemove":                    compute_cb.TagRemoveRequest{},
		"/restmachine/cloudbroker/compute/unpin_from_node":              compute_cb.UnpinFromNodeRequest{},
		"/restmachine/cloudbroker/compute/update":                       compute_cb.UpdateRequest{},
		"/restmachine/cloudbroker/compute/userGrant":                    compute_cb.UserGrantRequest{},
		"/restmachine/cloudbroker/compute/userList":                     compute_cb.UserListRequest{},
		"/restmachine/cloudbroker/compute/userRevoke":                   compute_cb.UserRevokeRequest{},
		"/restmachine/cloudbroker/compute/userUpdate":                   compute_cb.UserUpdateRequest{},
		"/restmachine/cloudbroker/compute/changeIp":                     compute_cb.ChangeIPRequest{},
		"/restmachine/cloudbroker/compute/changeMac":                    compute_cb.ChangeMACRequest{},
		"/restmachine/cloudbroker/compute/setNetConfig":                 compute_cb.SetNetConfigRequest{},
		"/restmachine/cloudbroker/compute/guest_agent_disable":          compute_cb.GuestAgentDisableRequest{},
		"/restmachine/cloudbroker/compute/guest_agent_enable":           compute_cb.GuestAgentEnableRequest{},
		"/restmachine/cloudbroker/compute/guest_agent_execute":          compute_cb.GuestAgentExecuteRequest{},
		"/restmachine/cloudbroker/compute/guest_agent_feature_get":      compute_cb.GuestAgentFeatureGetRequest{},
		"/restmachine/cloudbroker/compute/guest_agent_feature_update":   compute_cb.GuestAgentFeatureUpdateRequest{},
		"/restmachine/cloudbroker/compute/change_read_only":             compute_cb.ChangeReadOnlyRequest{},
		"/restmachine/cloudbroker/compute/migrateToZone":                compute_cb.MigrateToZoneRequest{},
		"/restmachine/cloudbroker/compute/migrate_abort":                compute_cb.MigrateAbortRequest{},
		"/restmachine/cloudbroker/compute/start_migration_out":          compute_cb.StartMigrationOutRequest{},
		"/restmachine/cloudbroker/compute/stop_migration_out":           compute_cb.StopMigrationOutRequest{},

		// disks
		"/restmachine/cloudbroker/disks/change_disk_storage_policy": disks_cb.ChangeDiskStoragePolicyRequest{},
		"/restmachine/cloudbroker/disks/create":                     disks_cb.CreateRequest{},
		"/restmachine/cloudbroker/disks/delete":                     disks_cb.DeleteRequest{},
		"/restmachine/cloudbroker/disks/deleteDisks":                disks_cb.DeleteDisksRequest{},
		"/restmachine/cloudbroker/disks/depresent":                  disks_cb.DepresentRequest{},
		"/restmachine/cloudbroker/disks/fromPlatformDisk":           disks_cb.FromPlatformDiskRequest{},
		"/restmachine/cloudbroker/disks/get":                        disks_cb.GetRequest{},
		"/restmachine/cloudbroker/disks/limitIO":                    disks_cb.LimitIORequest{},
		"/restmachine/cloudbroker/disks/list":                       disks_cb.ListRequest{},
		"/restmachine/cloudbroker/disks/listDeleted":                disks_cb.ListDeletedRequest{},
		"/restmachine/cloudbroker/disks/listUnattached":             disks_cb.ListUnattachedRequest{},
		"/restmachine/cloudbroker/disks/rename":                     disks_cb.RenameRequest{},
		"/restmachine/cloudbroker/disks/present":                    disks_cb.PresentRequest{},
		"/restmachine/cloudbroker/disks/replicate":                  disks_cb.ReplicateRequest{},
		"/restmachine/cloudbroker/disks/replicationResume":          disks_cb.ReplicationResumeRequest{},
		"/restmachine/cloudbroker/disks/replicationReverse":         disks_cb.ReplicationReverseRequest{},
		"/restmachine/cloudbroker/disks/replicationStart":           disks_cb.ReplicationStartRequest{},
		"/restmachine/cloudbroker/disks/replicationStatus":          disks_cb.ReplicationStatusRequest{},
		"/restmachine/cloudbroker/disks/replicationStop":            disks_cb.ReplicationStopRequest{},
		"/restmachine/cloudbroker/disks/replicationSuspend":         disks_cb.ReplicationSuspendRequest{},
		"/restmachine/cloudbroker/disks/resize2":                    disks_cb.ResizeRequest{},
		"/restmachine/cloudbroker/disks/restore":                    disks_cb.RestoreRequest{},
		"/restmachine/cloudbroker/disks/search":                     disks_cb.SearchRequest{},
		"/restmachine/cloudbroker/disks/share":                      disks_cb.ShareRequest{},
		"/restmachine/cloudbroker/disks/snapshotDelete":             disks_cb.SnapshotDeleteRequest{},
		"/restmachine/cloudbroker/disks/snapshotRollback":           disks_cb.SnapshotRollbackRequest{},
		"/restmachine/cloudbroker/disks/unshare":                    disks_cb.UnshareRequest{},
		"/restmachine/cloudbroker/disks/migrate":                    disks_cb.MigrateRequest{},
		"/restmachine/cloudbroker/disks/migrate_abort":              disks_cb.MigrateAbortRequest{},
		"/restmachine/cloudbroker/disks/migrate_status":             disks_cb.GetMigrateStatusRequest{},
		"/restmachine/cloudbroker/disks/update":                     disks_cb.UpdateRequest{},

		// dpdknet
		"/restmachine/cloudbroker/dpdknet/get":     dpdknet_cb.GetRequest{},
		"/restmachine/cloudbroker/dpdknet/list":    dpdknet_cb.ListRequest{},
		"/restmachine/cloudbroker/dpdknet/disable": dpdknet_cb.DisableRequest{},
		"/restmachine/cloudbroker/dpdknet/enable":  dpdknet_cb.EnableRequest{},
		"/restmachine/cloudbroker/dpdknet/create":  dpdknet_cb.CreateRequest{},
		"/restmachine/cloudbroker/dpdknet/update":  dpdknet_cb.UpdateRequest{},
		"/restmachine/cloudbroker/dpdknet/delete":  dpdknet_cb.DeleteRequest{},

		// extnet
		"/restmachine/cloudbroker/extnet/accessAdd":               extnet_cb.AccessAddRequest{},
		"/restmachine/cloudbroker/extnet/accessRemove":            extnet_cb.AccessRemoveRequest{},
		"/restmachine/cloudbroker/extnet/addReservedIp":           extnet_cb.AddReserveIPRequest{},
		"/restmachine/cloudbroker/extnet/create":                  extnet_cb.CreateRequest{},
		"/restmachine/cloudbroker/extnet/dnsApply":                extnet_cb.DNSApplyRequest{},
		"/restmachine/cloudbroker/extnet/defaultQosUpdate":        extnet_cb.DefaultQOSUpdateRequest{},
		"/restmachine/cloudbroker/extnet/delReservedIp":           extnet_cb.DelReserveIPRequest{},
		"/restmachine/cloudbroker/extnet/destroy":                 extnet_cb.DestroyRequest{},
		"/restmachine/cloudbroker/extnet/deviceDeploy":            extnet_cb.DeviceDeployRequest{},
		"/restmachine/cloudbroker/extnet/deviceMigrate":           extnet_cb.DeviceMigrateRequest{},
		"/restmachine/cloudbroker/extnet/deviceRemove":            extnet_cb.DeviceRemoveRequest{},
		"/restmachine/cloudbroker/extnet/deviceRestart":           extnet_cb.DeviceRestartRequest{},
		"/restmachine/cloudbroker/extnet/disable":                 extnet_cb.DisableRequest{},
		"/restmachine/cloudbroker/extnet/enable":                  extnet_cb.EnableRequest{},
		"/restmachine/cloudbroker/extnet/get":                     extnet_cb.GetRequest{},
		"/restmachine/cloudbroker/extnet/getDefault":              EmptyStruct{},
		"/restmachine/cloudbroker/extnet/getReservedIp":           extnet.GetReservedIP{},
		"/restmachine/cloudbroker/extnet/ipsExclude":              extnet_cb.IPsExcludeRequest{},
		"/restmachine/cloudbroker/extnet/ipsExcludeRange":         extnet_cb.IPsExcludeRangeRequest{},
		"/restmachine/cloudbroker/extnet/ipsInclude":              extnet_cb.IPsExcludeRequest{},
		"/restmachine/cloudbroker/extnet/ipsIncludeRange":         extnet_cb.IPsExcludeRangeRequest{},
		"/restmachine/cloudbroker/extnet/list":                    extnet_cb.ListRequest{},
		"/restmachine/cloudbroker/extnet/ntpApply":                extnet_cb.NTPApplyRequest{},
		"/restmachine/cloudbroker/extnet/raiseDown":               EmptyStruct{},
		"/restmachine/cloudbroker/extnet/setDefault":              extnet_cb.SetDefaultRequest{},
		"/restmachine/cloudbroker/extnet/set_highly_available":    extnet_cb.SetHAModeRequest{},
		"/restmachine/cloudbroker/extnet/staticRouteAccessGrant":  extnet_cb.StaticRouteAccessGrantRequest{},
		"/restmachine/cloudbroker/extnet/staticRouteAccessRevoke": extnet_cb.StaticRouteAccessRevokeRequest{},
		"/restmachine/cloudbroker/extnet/staticRouteAdd":          extnet_cb.StaticRouteAddRequest{},
		"/restmachine/cloudbroker/extnet/staticRouteDel":          extnet_cb.StaticRouteDelRequest{},
		"/restmachine/cloudbroker/extnet/staticRouteList":         extnet_cb.StaticRouteListRequest{},
		"/restmachine/cloudbroker/extnet/update":                  extnet_cb.UpdateRequest{},
		"/restmachine/cloudbroker/extnet/migrateToZone":           extnet_cb.MigrateToZoneRequest{},

		// flipgroup
		"/restmachine/cloudbroker/flipgroup/computeAdd":    flipgroup_cb.ComputeAddRequest{},
		"/restmachine/cloudbroker/flipgroup/computeRemove": flipgroup_cb.ComputeRemoveRequest{},
		"/restmachine/cloudbroker/flipgroup/create":        flipgroup_cb.CreateRequest{},
		"/restmachine/cloudbroker/flipgroup/delete":        flipgroup_cb.DeleteRequest{},
		"/restmachine/cloudbroker/flipgroup/edit":          flipgroup_cb.EditRequest{},
		"/restmachine/cloudbroker/flipgroup/get":           flipgroup_cb.GetRequest{},
		"/restmachine/cloudbroker/flipgroup/list":          flipgroup_cb.ListRequest{},

		// grid
		"/restmachine/cloudbroker/grid/addCustomBackupPath":        grid_cb.AddCustomBackupPathRequest{},
		"/restmachine/cloudbroker/grid/changeSettings":             grid_cb.ChangeSettingsRequest{},
		"/restmachine/cloudbroker/grid/get":                        grid_cb.GetRequest{},
		"/restmachine/cloudbroker/grid/getBackup":                  grid_cb.GetBackupRequest{},
		"/restmachine/cloudbroker/grid/getDiagnosis":               grid_cb.GetDiagnosisRequest{},
		"/restmachine/cloudbroker/grid/getResourceConsumption":     grid_cb.GetResourceConsumptionRequest{},
		"/restmachine/cloudbroker/grid/list":                       grid_cb.ListRequest{},
		"/restmachine/cloudbroker/grid/listResourceConsumption":    EmptyStruct{},
		"/restmachine/cloudbroker/grid/purgeLogs":                  grid_cb.PurgeLogsRequest{},
		"/restmachine/cloudbroker/grid/removeCustomBackupPath":     grid_cb.RemoveCustomBackupPathRequest{},
		"/restmachine/cloudbroker/grid/rename":                     grid_cb.RenameRequest{},
		"/restmachine/cloudbroker/grid/setCpuAllocationParameter":  grid_cb.SetCPUAllocationParameterRequest{},
		"/restmachine/cloudbroker/grid/setCpuAllocationRatio":      grid_cb.SetCPUAllocationRatioRequest{},
		"/restmachine/cloudbroker/grid/setCpuAllocationRatioForVM": grid_cb.SetCPUAllocationRatioForVMRequest{},
		"/restmachine/cloudbroker/grid/setMemAllocationRatio":      grid_cb.SetMemAllocationRatioRequest{},
		"/restmachine/cloudbroker/grid/setPasswordPolicy":          grid_cb.SetPasswordPolicyRequest{},
		"/restmachine/cloudbroker/grid/status":                     EmptyStruct{},
		"/restmachine/cloudbroker/grid/getSettings":                grid_cb.GetSettingsRequest{},
		"/restmachine/cloudbroker/grid/set_resources_limit":        grid_cb.SetResourcesLimitRequest{},

		// group
		"/restmachine/cloudbroker/group/list": group_cb.ListRequest{},

		// image
		"/restmachine/cloudbroker/image/change_storage_policy": image_cb.ChangeStoragePolicyRequest{},
		"/restmachine/cloudbroker/image/createCDROMImage":      image_cb.CreateCDROMImageRequest{},
		"/restmachine/cloudbroker/image/createImage":           image_cb.CreateRequest{},
		"/restmachine/cloudbroker/image/createVirtual":         image_cb.CreateVirtualRequest{},
		"/restmachine/cloudbroker/image/delete":                image_cb.DeleteRequest{},
		"/restmachine/cloudbroker/image/deleteCDROMImage":      image_cb.DeleteCDROMImageRequest{},
		"/restmachine/cloudbroker/image/deleteImages":          image_cb.DeleteImagesRequest{},
		"/restmachine/cloudbroker/image/disable":               image_cb.DisableRequest{},
		"/restmachine/cloudbroker/image/edit":                  image_cb.EditRequest{},
		"/restmachine/cloudbroker/image/enable":                image_cb.EnableRequest{},
		"/restmachine/cloudbroker/image/get":                   image_cb.GetRequest{},
		"/restmachine/cloudbroker/image/grantAccess":           image_cb.GrantAccessRequest{},
		"/restmachine/cloudbroker/image/link":                  image_cb.LinkRequest{},
		"/restmachine/cloudbroker/image/list":                  image_cb.ListRequest{},
		"/restmachine/cloudbroker/image/rename":                image_cb.RenameRequest{},
		"/restmachine/cloudbroker/image/revokeAccess":          image_cb.RevokeAccessRequest{},
		"/restmachine/cloudbroker/image/share":                 image_cb.ShareRequest{},
		"/restmachine/cloudbroker/image/create_multi_image":    image_cb.CreateMultiImageRequest{},
		"/restmachine/cloudbroker/image/multi_image_add_links": image_cb.MultiImageAddLinksRequest{},
		"/restmachine/cloudbroker/image/multi_image_del_links": image_cb.MultiImageDelLinksRequest{},
		"/restmachine/cloudbroker/image/multi_image_export":    image_cb.MultiImageExportRequest{},

		// k8ci
		"/restmachine/cloudbroker/k8ci/accessAdd":    k8ci_cb.AccessAddRequest{},
		"/restmachine/cloudbroker/k8ci/accessRemove": k8ci_cb.AccessRemoveRequest{},
		"/restmachine/cloudbroker/k8ci/create":       k8ci_cb.CreateRequest{},
		"/restmachine/cloudbroker/k8ci/delete":       k8ci_cb.DeleteRequest{},
		"/restmachine/cloudbroker/k8ci/disable":      k8ci_cb.DisableRequest{},
		"/restmachine/cloudbroker/k8ci/enable":       k8ci_cb.EnableRequest{},
		"/restmachine/cloudbroker/k8ci/get":          k8ci_cb.GetRequest{},
		"/restmachine/cloudbroker/k8ci/list":         k8ci_cb.ListRequest{},
		"/restmachine/cloudbroker/k8ci/listDeleted":  k8ci_cb.ListDeletedRequest{},
		"/restmachine/cloudbroker/k8ci/restore":      k8ci_cb.RestoreRequest{},

		// k8s
		"/restmachine/cloudbroker/k8s/create":                    k8s_cb.CreateRequest{},
		"/restmachine/cloudbroker/k8s/delete":                    k8s_cb.DeleteRequest{},
		"/restmachine/cloudbroker/k8s/deleteMasterFromGroup":     k8s_cb.DeleteMasterFromGroupRequest{},
		"/restmachine/cloudbroker/k8s/deleteWorkerFromGroup":     k8s_cb.DeleteWorkerFromGroupRequest{},
		"/restmachine/cloudbroker/k8s/disable":                   k8s_cb.DisableRequest{},
		"/restmachine/cloudbroker/k8s/enable":                    k8s_cb.EnableRequest{},
		"/restmachine/cloudbroker/k8s/findGroupByLabel":          k8s_cb.FindGroupByLabelRequest{},
		"/restmachine/cloudbroker/k8s/get":                       k8s_cb.GetRequest{},
		"/restmachine/cloudbroker/k8s/getConfig":                 k8s_cb.GetConfigRequest{},
		"/restmachine/cloudbroker/k8s/getNodeAnnotations":        k8s_cb.GetNodeAnnotationsRequest{},
		"/restmachine/cloudbroker/k8s/getNodeLabels":             k8s_cb.GetNodeLabelsRequest{},
		"/restmachine/cloudbroker/k8s/getNodeTaints":             k8s_cb.GetNodeTaintsRequest{},
		"/restmachine/cloudbroker/k8s/getWorkerNodesMetaData":    k8s_cb.GetWorkerNodesMetaDataRequest{},
		"/restmachine/cloudbroker/k8s/list":                      k8s_cb.ListRequest{},
		"/restmachine/cloudbroker/k8s/listDeleted":               k8s_cb.ListDeletedRequest{},
		"/restmachine/cloudbroker/k8s/restore":                   k8s_cb.RestoreRequest{},
		"/restmachine/cloudbroker/k8s/start":                     k8s_cb.StartRequest{},
		"/restmachine/cloudbroker/k8s/stop":                      k8s_cb.StopRequest{},
		"/restmachine/cloudbroker/k8s/update":                    k8s_cb.UpdateRequest{},
		"/restmachine/cloudbroker/k8s/updateWorkerNodesMetaData": k8s_cb.UpdateWorkerNodesMetaDataRequest{},
		"/restmachine/cloudbroker/k8s/workerAdd":                 k8s_cb.WorkerAddRequest{},
		"/restmachine/cloudbroker/k8s/workersGroupAdd":           k8s_cb.WorkersGroupAddRequest{},
		"/restmachine/cloudbroker/k8s/workersGroupDelete":        k8s_cb.WorkersGroupDeleteRequest{},
		"/restmachine/cloudbroker/k8s/workersGroupGetByName":     k8s_cb.WorkersGroupGetByNameRequest{},
		"/restmachine/cloudbroker/k8s/workerReset":               k8s_cb.WorkerResetRequest{},
		"/restmachine/cloudbroker/k8s/workerRestart":             k8s_cb.WorkerRestartRequest{},
		"/restmachine/cloudbroker/k8s/migrateToZone":             k8s_cb.MigrateToZoneRequest{},

		// kvmx86
		"/restmachine/cloudbroker/kvmx86/create":      kvmx86_cb.CreateRequest{},
		"/restmachine/cloudbroker/kvmx86/createBlank": kvmx86_cb.CreateBlankRequest{},
		"/restmachine/cloudbroker/kvmx86/massCreate":  kvmx86_cb.MassCreateRequest{},

		// lb
		"/restmachine/cloudbroker/lb/backendCreate":         lb_cb.BackendCreateRequest{},
		"/restmachine/cloudbroker/lb/backendDelete":         lb_cb.BackendDeleteRequest{},
		"/restmachine/cloudbroker/lb/backendServerAdd":      lb_cb.BackendServerAddRequest{},
		"/restmachine/cloudbroker/lb/backendServerDelete":   lb_cb.BackendServerDeleteRequest{},
		"/restmachine/cloudbroker/lb/backendServerUpdate":   lb_cb.BackendServerUpdateRequest{},
		"/restmachine/cloudbroker/lb/backendUpdate":         lb_cb.BackendUpdateRequest{},
		"/restmachine/cloudbroker/lb/configReset":           lb_cb.ConfigResetRequest{},
		"/restmachine/cloudbroker/lb/create":                lb_cb.CreateRequest{},
		"/restmachine/cloudbroker/lb/delete":                lb_cb.DeleteRequest{},
		"/restmachine/cloudbroker/lb/disable":               lb_cb.DisableRequest{},
		"/restmachine/cloudbroker/lb/enable":                lb_cb.EnableRequest{},
		"/restmachine/cloudbroker/lb/frontendBind":          lb_cb.FrontendBindRequest{},
		"/restmachine/cloudbroker/lb/frontendBindDelete":    lb_cb.FrontendBindDeleteRequest{},
		"/restmachine/cloudbroker/lb/frontendBindingUpdate": lb_cb.FrontendBindUpdateRequest{},
		"/restmachine/cloudbroker/lb/frontendCreate":        lb_cb.FrontendCreateRequest{},
		"/restmachine/cloudbroker/lb/frontendDelete":        lb_cb.FrontendDeleteRequest{},
		"/restmachine/cloudbroker/lb/get":                   lb_cb.GetRequest{},
		"/restmachine/cloudbroker/lb/makeHighlyAvailable":   lb_cb.HighlyAvailableRequest{},
		"/restmachine/cloudbroker/lb/list":                  lb_cb.ListRequest{},
		"/restmachine/cloudbroker/lb/listDeleted":           lb_cb.ListDeletedRequest{},
		"/restmachine/cloudbroker/lb/restart":               lb_cb.RestartRequest{},
		"/restmachine/cloudbroker/lb/restore":               lb_cb.RestoreRequest{},
		"/restmachine/cloudbroker/lb/start":                 lb_cb.StartRequest{},
		"/restmachine/cloudbroker/lb/stop":                  lb_cb.StopRequest{},
		"/restmachine/cloudbroker/lb/update":                lb_cb.UpdateRequest{},
		"/restmachine/cloudbroker/lb/updateSysctlParams":    lb_cb.UpdateSysctParamsRequest{},
		"/restmachine/cloudbroker/lb/migrateToZone":         lb_cb.MigrateToZoneRequest{},

		// node
		"/restmachine/cloudbroker/node/add_ssh_identity":            node_cb.AddSSHIdentityRequest{},
		"/restmachine/cloudbroker/node/applyIpmiAction":             node_cb.ApplyIpmiActionRequest{},
		"/restmachine/cloudbroker/node/consumption":                 node_cb.ConsumptionRequest{},
		"/restmachine/cloudbroker/node/decommission":                node_cb.DecommissionRequest{},
		"/restmachine/cloudbroker/node/enable":                      node_cb.EnableRequest{},
		"/restmachine/cloudbroker/node/enableNodes":                 node_cb.EnableNodesRequest{},
		"/restmachine/cloudbroker/node/get":                         node_cb.GetRequest{},
		"/restmachine/cloudbroker/node/get_ssh_identity":            node_cb.GetSSHIdentityRequest{},
		"/restmachine/cloudbroker/node/list":                        node_cb.ListRequest{},
		"/restmachine/cloudbroker/node/maintenance":                 node_cb.MaintenanceRequest{},
		"/restmachine/cloudbroker/node/restrict":                    node_cb.RestrictRequest{},
		"/restmachine/cloudbroker/node/setCoreIsolation":            node_cb.SetCoreIsolationRequest{},
		"/restmachine/cloudbroker/node/setHugePages":                node_cb.SetHugePagesRequest{},
		"/restmachine/cloudbroker/node/setsriovstatus":              node_cb.SetSRIOVStatusRequest{},
		"/restmachine/cloudbroker/node/setVFsNumber":                node_cb.SetVFsNumberRequest{},
		"/restmachine/cloudbroker/node/update":                      node_cb.UpdateRequest{},
		"/restmachine/cloudbroker/node/update_description":          node_cb.UpdateDescriptionRequest{},
		"/restmachine/cloudbroker/node/setVFsParams":                node_cb.SetVFsParamsRequest{},
		"/restmachine/cloudbroker/node/get_logical_cores_count":     node_cb.GetLogicalCoresCountRequest{},
		"/restmachine/cloudbroker/node/set_cpu_allocation_ratio":    node_cb.SetCpuAllocationRatioRequest{},
		"/restmachine/cloudbroker/node/set_mem_allocation_ratio":    node_cb.SetMemAllocationRatioRequest{},
		"/restmachine/cloudbroker/node/set_resources_limit":         node_cb.SetResourcesLimitRequest{},
		"/restmachine/cloudbroker/node/autostart":                   node_cb.AutoStartRequest{},
		"/restmachine/cloudbroker/node/get_network_info":            node_cb.GetNetworkInfoRequest{},
		"/restmachine/cloudbroker/node/get_pci_devices":             node_cb.GetPCIDevicesRequest{},
		"/restmachine/cloudbroker/node/pci_device_driver_to_vfio":   node_cb.PCIDeviceDriverToVFIORequest{},
		"/restmachine/cloudbroker/node/pci_device_driver_to_kernel": node_cb.PCIDeviceDriverToKernelRequest{},
		"/restmachine/cloudbroker/node/install":                     node_cb.InstallRequest{},

		// pcidevice
		"/restmachine/cloudbroker/pcidevice/create":        pcidevice_cb.CreateRequest{},
		"/restmachine/cloudbroker/pcidevice/delete":        pcidevice_cb.DeleteRequest{},
		"/restmachine/cloudbroker/pcidevice/disable":       pcidevice_cb.DisableRequest{},
		"/restmachine/cloudbroker/pcidevice/enable":        pcidevice_cb.EnableRequest{},
		"/restmachine/cloudbroker/pcidevice/list":          pcidevice_cb.ListRequest{},
		"/restmachine/cloudbroker/pcidevice/access_grant":  pcidevice_cb.AccessGrantRequest{},
		"/restmachine/cloudbroker/pcidevice/access_revoke": pcidevice_cb.AccessRevokeRequest{},

		// prometheus
		"/restmachine/cloudbroker/prometheus/computeTransmitPackets": prometheus_cb.ComputeTransmitPacketsRequest{},
		"/restmachine/cloudbroker/prometheus/computeWriteRequests":   prometheus_cb.ComputeWriteRequestsRequest{},
		"/restmachine/cloudbroker/prometheus/computeCPUload":         prometheus_cb.ComputeCPULoadRequest{},
		"/restmachine/cloudbroker/prometheus/computeTransmitBytes":   prometheus_cb.ComputeTransmitBytesRequest{},
		"/restmachine/cloudbroker/prometheus/computeMemoryUsed":      prometheus_cb.ComputeMemoryUsedRequest{},
		"/restmachine/cloudbroker/prometheus/computeMemoryUsable":    prometheus_cb.ComputeMemoryUsableRequest{},
		"/restmachine/cloudbroker/prometheus/computeMemoryAvailable": prometheus_cb.ComputeMemoryAvailableRequest{},
		"/restmachine/cloudbroker/prometheus/computeReceiveBytes":    prometheus_cb.ComputeReceiveBytesRequest{},
		"/restmachine/cloudbroker/prometheus/computes":               prometheus_cb.ComputesRequest{},
		"/restmachine/cloudbroker/prometheus/computeReceivePackets":  prometheus_cb.ComputeReceivePacketsRequest{},
		"/restmachine/cloudbroker/prometheus/computeReadRequests":    prometheus_cb.ComputeReadRequestsRequest{},
		"/restmachine/cloudbroker/prometheus/computeWriteBytes":      prometheus_cb.ComputeWriteBytesRequest{},
		"/restmachine/cloudbroker/prometheus/computeReadBytes":       prometheus_cb.ComputeReadBytesRequest{},
		"/restmachine/cloudbroker/prometheus/computeMemoryUsage":     prometheus_cb.ComputeMemoryUsageRequest{},
		"/restmachine/cloudbroker/prometheus/computeMemoryUnused":    prometheus_cb.ComputeMemoryUnusedRequest{},

		// network_qos_policy
		"/restmachine/cloudbroker/network_qos_policy/create":      qospolicy_cb.CreateRequest{},
		"/restmachine/cloudbroker/network_qos_policy/create_rule": qospolicy_cb.CreateRuleRequest{},
		"/restmachine/cloudbroker/network_qos_policy/delete":      qospolicy_cb.DeleteRequest{},
		"/restmachine/cloudbroker/network_qos_policy/delete_rule": qospolicy_cb.DeleteRuleRequest{},
		"/restmachine/cloudbroker/network_qos_policy/get":         qospolicy_cb.GetRequest{},
		"/restmachine/cloudbroker/network_qos_policy/list":        qospolicy_cb.ListRequest{},
		"/restmachine/cloudbroker/network_qos_policy/update":      qospolicy_cb.UpdateRequest{},

		// rg
		"/restmachine/cloudbroker/rg/accessGrant":               rg_cb.AccessGrantRequest{},
		"/restmachine/cloudbroker/rg/accessRevoke":              rg_cb.AccessRevokeRequest{},
		"/restmachine/cloudbroker/rg/add_storage_policy":        rg_cb.AddStoragePolicyRequest{},
		"/restmachine/cloudbroker/rg/affinityGroupComputes":     rg_cb.AffinityGroupComputesRequest{},
		"/restmachine/cloudbroker/rg/affinityGroupsGet":         rg_cb.AffinityGroupsGetRequest{},
		"/restmachine/cloudbroker/rg/affinityGroupsList":        rg_cb.AffinityGroupsListRequest{},
		"/restmachine/cloudbroker/rg/create":                    rg_cb.CreateRequest{},
		"/restmachine/cloudbroker/rg/del_storage_policy":        rg_cb.DelStoragePolicyRequest{},
		"/restmachine/cloudbroker/rg/delete":                    rg_cb.DeleteRequest{},
		"/restmachine/cloudbroker/rg/disable":                   rg_cb.DisableRequest{},
		"/restmachine/cloudbroker/rg/enable":                    rg_cb.EnableRequest{},
		"/restmachine/cloudbroker/rg/get":                       rg_cb.GetRequest{},
		"/restmachine/cloudbroker/rg/getResourceConsumption":    rg_cb.GetResourceConsumptionRequest{},
		"/restmachine/cloudbroker/rg/list":                      rg_cb.ListRequest{},
		"/restmachine/cloudbroker/rg/listComputes":              rg_cb.ListComputesRequest{},
		"/restmachine/cloudbroker/rg/listDeleted":               rg_cb.ListDeletedRequest{},
		"/restmachine/cloudbroker/rg/listLb":                    rg_cb.ListLBRequest{},
		"/restmachine/cloudbroker/rg/listPFW":                   rg_cb.ListPFWRequest{},
		"/restmachine/cloudbroker/rg/listResourceConsumption":   EmptyStruct{},
		"/restmachine/cloudbroker/rg/listVins":                  rg_cb.ListVINSRequest{},
		"/restmachine/cloudbroker/rg/massDelete":                rg_cb.MassDeleteRequest{},
		"/restmachine/cloudbroker/rg/massDisable":               rg_cb.MassDisableRequest{},
		"/restmachine/cloudbroker/rg/massEnable":                rg_cb.MassEnableRequest{},
		"/restmachine/cloudbroker/rg/restore":                   rg_cb.RestoreRequest{},
		"/restmachine/cloudbroker/rg/setCpuAllocationParameter": rg_cb.SetCPUAllocationParameterRequest{},
		"/restmachine/cloudbroker/rg/setCpuAllocationRatio":     rg_cb.SetCPUAllocationRatioRequest{},
		"/restmachine/cloudbroker/rg/setDefNet":                 rg_cb.SetDefNetRequest{},
		"/restmachine/cloudbroker/rg/update":                    rg_cb.UpdateRequest{},
		"/restmachine/cloudbroker/rg/updateComputeFeatures":     rg_cb.UpdateComputeFeaturesRequest{},
		"/restmachine/cloudbroker/rg/updateResourceTypes":       rg_cb.UpdateResourceTypesRequest{},
		"/restmachine/cloudbroker/rg/usage":                     rg_cb.UsageRequest{},
		"/restmachine/cloudbroker/rg/removeDefNet":              rg_cb.RemoveDefNetRequest{},
		"/restmachine/cloudbroker/rg/add_acl_access":            rg_cb.AddACLAccessRequest{},
		"/restmachine/cloudbroker/rg/del_acl_access":            rg_cb.DeleteACLAccessRequest{},
		"/restmachine/cloudbroker/rg/update_acl_access":         rg_cb.UpdateACLAccessRequest{},
		"/restmachine/cloudbroker/rg/get_acl_access":            rg_cb.GetACLAccessRequest{},

		// security_group
		"/restmachine/cloudbroker/security_group/create":      secgroup_cb.CreateRequest{},
		"/restmachine/cloudbroker/security_group/create_rule": secgroup_cb.CreateRuleRequest{},
		"/restmachine/cloudbroker/security_group/delete":      secgroup_cb.DeleteRequest{},
		"/restmachine/cloudbroker/security_group/delete_rule": secgroup_cb.DeleteRuleRequest{},
		"/restmachine/cloudbroker/security_group/get":         secgroup_cb.GetRequest{},
		"/restmachine/cloudbroker/security_group/list":        secgroup_cb.ListRequest{},
		"/restmachine/cloudbroker/security_group/update":      secgroup_cb.UpdateRequest{},

		// sep
		"/restmachine/cloudbroker/sep/addConsumerNodes":         sep_cb.AddConsumerNodesRequest{},
		"/restmachine/cloudbroker/sep/addPool":                  sep_cb.AddPoolRequest{},
		"/restmachine/cloudbroker/sep/addProviderNodes":         sep_cb.AddProviderNodesRequest{},
		"/restmachine/cloudbroker/sep/configFieldEdit":          sep_cb.ConfigFieldEditRequest{},
		"/restmachine/cloudbroker/sep/configInsert":             sep_cb.ConfigInsertRequest{},
		"/restmachine/cloudbroker/sep/configValidate":           sep_cb.ConfigValidateRequest{},
		"/restmachine/cloudbroker/sep/consumption":              sep_cb.ConsumptionRequest{},
		"/restmachine/cloudbroker/sep/create":                   sep_cb.CreateRequest{},
		"/restmachine/cloudbroker/sep/decommission":             sep_cb.DecommissionRequest{},
		"/restmachine/cloudbroker/sep/delConsumerNodes":         sep_cb.DelConsumerNodesRequest{},
		"/restmachine/cloudbroker/sep/delete":                   sep_cb.DeleteRequest{},
		"/restmachine/cloudbroker/sep/delPool":                  sep_cb.DelPoolRequest{},
		"/restmachine/cloudbroker/sep/disable":                  sep_cb.DisableRequest{},
		"/restmachine/cloudbroker/sep/diskList":                 sep_cb.DiskListRequest{},
		"/restmachine/cloudbroker/sep/enable":                   sep_cb.EnableRequest{},
		"/restmachine/cloudbroker/sep/get":                      sep_cb.GetRequest{},
		"/restmachine/cloudbroker/sep/getConfig":                sep_cb.GetConfigRequest{},
		"/restmachine/cloudbroker/sep/getPool":                  sep_cb.GetPoolRequest{},
		"/restmachine/cloudbroker/sep/list":                     sep_cb.ListRequest{},
		"/restmachine/cloudbroker/sep/sharedLockStop":           sep_cb.SharedLockStopRequest{},
		"/restmachine/cloudbroker/sep/listAvailableSepAndPools": sep_cb.ListAvailableSEPAndPoolsRequest{},
		"/restmachine/cloudbroker/sep/sharedLockStart":          sep_cb.SharedLockStartRequest{},
		"/restmachine/cloudbroker/sep/getTemplate":              sep_cb.GetTemplateRequest{},

		// session
		"/restmachine/cloudbroker/session/get":  session.GetRequest{},
		"/restmachine/cloudbroker/session/list": session.ListRequest{},

		// storage_policy
		"/restmachine/cloudbroker/storage_policy/get":         stpolicy_cb.GetRequest{},
		"/restmachine/cloudbroker/storage_policy/list":        stpolicy_cb.ListRequest{},
		"/restmachine/cloudbroker/storage_policy/create":      stpolicy_cb.CreateRequest{},
		"/restmachine/cloudbroker/storage_policy/update":      stpolicy_cb.UpdateRequest{},
		"/restmachine/cloudbroker/storage_policy/add_pool":    stpolicy_cb.AddPoolRequest{},
		"/restmachine/cloudbroker/storage_policy/delete":      stpolicy_cb.DeleteRequest{},
		"/restmachine/cloudbroker/storage_policy/disable":     stpolicy_cb.DisableRequest{},
		"/restmachine/cloudbroker/storage_policy/enable":      stpolicy_cb.EnableRequest{},
		"/restmachine/cloudbroker/storage_policy/delete_pool": stpolicy_cb.DeletePoolRequest{},

		// tasks
		"/restmachine/cloudbroker/tasks/get":  tasks_cb.GetRequest{},
		"/restmachine/cloudbroker/tasks/list": tasks_cb.ListRequest{},

		// trunk
		"/restmachine/cloudbroker/trunk/get":           trunk_cb.GetRequest{},
		"/restmachine/cloudbroker/trunk/list":          trunk_cb.ListRequest{},
		"/restmachine/cloudbroker/trunk/create":        trunk_cb.CreateRequest{},
		"/restmachine/cloudbroker/trunk/enable":        trunk_cb.EnableRequest{},
		"/restmachine/cloudbroker/trunk/disable":       trunk_cb.DisableRequest{},
		"/restmachine/cloudbroker/trunk/destroy":       trunk_cb.DestroyRequest{},
		"/restmachine/cloudbroker/trunk/update":        trunk_cb.UpdateRequest{},
		"/restmachine/cloudbroker/trunk/access_grant":  trunk_cb.AccessGrantRequest{},
		"/restmachine/cloudbroker/trunk/access_revoke": trunk_cb.AccessRevokeRequest{},

		// user
		"/restmachine/cloudbroker/user/apiaccessJoin":        user_cb.APIAccessJoinRequest{},
		"/restmachine/cloudbroker/user/apiaccessLeave":       user_cb.APIAccessLeaveRequest{},
		"/restmachine/cloudbroker/user/apiaccessList":        user_cb.APIAccessListRequest{},
		"/restmachine/cloudbroker/user/apiList":              user_cb.APIListRequest{},
		"/restmachine/cloudbroker/user/block":                user_cb.BlockRequest{},
		"/restmachine/cloudbroker/user/create":               user_cb.CreateRequest{},
		"/restmachine/cloudbroker/user/delete":               user_cb.DeleteRequest{},
		"/restmachine/cloudbroker/user/deleteByGuid":         user_cb.DeleteByGUIDRequest{},
		"/restmachine/cloudbroker/user/deleteUsers":          user_cb.DeleteUsersRequest{},
		"/restmachine/cloudbroker/user/get":                  user_cb.GetRequest{},
		"/restmachine/cloudbroker/user/getMatchingUsernames": user_cb.GetMatchingUsernamesRequest{},
		"/restmachine/cloudbroker/user/list":                 user_cb.ListRequest{},
		"/restmachine/cloudbroker/user/unblock":              user_cb.UnblockRequest{},

		// vfpool
		"/restmachine/cloudbroker/vfpool/create":  vfpool_cb.CreateRequest{},
		"/restmachine/cloudbroker/vfpool/delete":  vfpool_cb.DeleteRequest{},
		"/restmachine/cloudbroker/vfpool/disable": vfpool_cb.DisableRequest{},
		"/restmachine/cloudbroker/vfpool/enable":  vfpool_cb.EnableRequest{},
		"/restmachine/cloudbroker/vfpool/get":     vfpool_cb.GetRequest{},
		"/restmachine/cloudbroker/vfpool/list":    vfpool_cb.ListRequest{},
		"/restmachine/cloudbroker/vfpool/update":  vfpool_cb.UpdateRequest{},

		// vgpu
		"/restmachine/cloudbroker/vgpu/create":  vgpu_cb.CreateRequest{},
		"/restmachine/cloudbroker/vgpu/destroy": vgpu_cb.DestroyRequest{},
		"/restmachine/cloudbroker/vgpu/list":    vgpu_cb.ListRequest{},

		// vins
		"/restmachine/cloudbroker/vins/createInAccount":         vins_cb.CreateInAccountRequest{},
		"/restmachine/cloudbroker/vins/createInRG":              vins_cb.CreateInRGRequest{},
		"/restmachine/cloudbroker/vins/defaultQosUpdate":        vins_cb.DefaultQOSUpdateRequest{},
		"/restmachine/cloudbroker/vins/delete":                  vins_cb.DeleteRequest{},
		"/restmachine/cloudbroker/vins/disable":                 vins_cb.DisableRequest{},
		"/restmachine/cloudbroker/vins/dnsApply":                vins_cb.DNSApplyRequest{},
		"/restmachine/cloudbroker/vins/enable":                  vins_cb.EnableRequest{},
		"/restmachine/cloudbroker/vins/extNetConnect":           vins_cb.ExtNetConnectRequest{},
		"/restmachine/cloudbroker/vins/extNetDisconnect":        vins_cb.ExtNetDisconnectRequest{},
		"/restmachine/cloudbroker/vins/extNetList":              vins_cb.ExtNetListRequest{},
		"/restmachine/cloudbroker/vins/get":                     vins_cb.GetRequest{},
		"/restmachine/cloudbroker/vins/ipList":                  vins_cb.IPListRequest{},
		"/restmachine/cloudbroker/vins/ipRelease":               vins_cb.IPReleaseRequest{},
		"/restmachine/cloudbroker/vins/ipReserve":               vins_cb.IPReserveRequest{},
		"/restmachine/cloudbroker/vins/list":                    vins_cb.ListRequest{},
		"/restmachine/cloudbroker/vins/listDeleted":             vins_cb.ListDeletedRequest{},
		"/restmachine/cloudbroker/vins/massDelete":              vins_cb.MassDeleteRequest{},
		"/restmachine/cloudbroker/vins/massDisable":             vins_cb.MassDisableRequest{},
		"/restmachine/cloudbroker/vins/massEnable":              vins_cb.MassEnableRequest{},
		"/restmachine/cloudbroker/vins/natRuleAdd":              vins_cb.NATRuleAddRequest{},
		"/restmachine/cloudbroker/vins/natRuleDel":              vins_cb.NATRuleDelRequest{},
		"/restmachine/cloudbroker/vins/natRuleList":             vins_cb.NATRuleListRequest{},
		"/restmachine/cloudbroker/vins/netQos":                  vins_cb.NetQOSRequest{},
		"/restmachine/cloudbroker/vins/raiseDown":               EmptyStruct{},
		"/restmachine/cloudbroker/vins/restore":                 vins_cb.RestoreRequest{},
		"/restmachine/cloudbroker/vins/search":                  vins_cb.SearchRequest{},
		"/restmachine/cloudbroker/vins/staticRouteAccessGrant":  vins_cb.StaticRouteAccessGrantRequest{},
		"/restmachine/cloudbroker/vins/staticRouteAccessRevoke": vins_cb.StaticRouteAccessRevokeRequest{},
		"/restmachine/cloudbroker/vins/staticRouteAdd":          vins_cb.StaticRouteAddRequest{},
		"/restmachine/cloudbroker/vins/staticRouteDel":          vins_cb.StaticRouteDelRequest{},
		"/restmachine/cloudbroker/vins/staticRouteList":         vins_cb.StaticRouteListRequest{},
		"/restmachine/cloudbroker/vins/update":                  vins_cb.UpdateRequest{},
		"/restmachine/cloudbroker/vins/vnfdevRedeploy":          vins_cb.VNFDevRedeployRequest{},
		"/restmachine/cloudbroker/vins/vnfdevRestart":           vins_cb.VNFDevRestartRequest{},
		"/restmachine/cloudbroker/vins/vnfdevReset":             vins_cb.VNFDevResetRequest{},
		"/restmachine/cloudbroker/vins/vnfdevStart":             vins_cb.VNFDevStartRequest{},
		"/restmachine/cloudbroker/vins/vnfdevStop":              vins_cb.VNFDevStopRequest{},
		"/restmachine/cloudbroker/vins/migrateToZone":           vins_cb.MigrateToZoneRequest{},

		// zone
		"/restmachine/cloudbroker/zone/get":                          zone_cb.GetRequest{},
		"/restmachine/cloudbroker/zone/list":                         zone_cb.ListRequest{},
		"/restmachine/cloudbroker/zone/create":                       zone_cb.CreateRequest{},
		"/restmachine/cloudbroker/zone/delete":                       zone_cb.DeleteRequest{},
		"/restmachine/cloudbroker/zone/update":                       zone_cb.UpdateRequest{},
		"/restmachine/cloudbroker/zone/addNode":                      zone_cb.AddNodeRequest{},
		"/restmachine/cloudbroker/zone/delNode":                      zone_cb.DelNodeRequest{},
		"/restmachine/cloudbroker/zone/node_autostart":               zone_cb.NodeAutoStartRequest{},
		"/restmachine/cloudbroker/zone/add_cpu_alignment_profile":    zone_cb.AddCPUAlignmentProfileRequest{},
		"/restmachine/cloudbroker/zone/delete_cpu_alignment_profile": zone_cb.DeleteCPUAlignmentProfileRequest{},
		"/restmachine/cloudbroker/zone/get_cpu_alignment_profile":    zone_cb.GetCPUAlignmentProfileRequest{},
		"/restmachine/cloudbroker/zone/list_cpu_alignment_profile":   zone_cb.ListCPUAlignmentProfileRequest{},
		"/restmachine/cloudbroker/zone/test_cpu_alignment_profile":   zone_cb.TestCPUAlignmentProfileRequest{},
		"/restmachine/cloudbroker/zone/set_resources_limit":          zone_cb.SetResourcesLimitRequest{},
		"/restmachine/cloudbroker/zone/update_cpu_alignment_profile": zone_cb.UpdateCPUAlignmentProfileRequest{},

		// security policy
		"/sdn/security_policy/create":    secpolicies.CreateRequest{},
		"/sdn/security_policy/delete":    secpolicies.DeleteRequest{},
		"/sdn/security_policy/get":       secpolicies.GetRequest{},
		"/sdn/security_policy/list":      secpolicies.ListRequest{},
		"/sdn/security_policy/move":      secpolicies.MoveRequest{},
		"/sdn/security_policy/update":    secpolicies.UpdateRequest{},
		"/sdn/security_policy/rule/get":  rule.GetRequest{},
		"/sdn/security_policy/rule/list": rule.ListRequest{},
	}
}

// getRequestsMapSDN maps request path with request golang sdk structures for sdn most used requests
func getRequestsMapSDN() map[string]interface{} {
	return map[string]interface{}{
		// access_groups
		"/restmachine/sdn/access_group/list":        acsgroups.ListGroupsRequest{},
		"/restmachine/sdn/access_group/get":         acsgroups.GetGroupRequest{},
		"/restmachine/sdn/access_group/user_list":   acsgroups.UsersListRequest{},
		"/restmachine/sdn/access_group/create":      acsgroups.CreateRequest{},
		"/restmachine/sdn/access_group/delete":      acsgroups.DeleteRequest{},
		"/restmachine/sdn/access_group/user_add":    acsgroups.UserAddRequest{},
		"/restmachine/sdn/access_group/update":      acsgroups.UpdateRequest{},
		"/restmachine/sdn/access_group/user_delete": acsgroups.UserDeleteRequest{},
		"/restmachine/sdn/access_group/update_role": acsgroups.UserUpdateRoleRequest{},

		// address_pools
		"/restmachine/sdn/address_pool/create": adrspools.CreateRequest{},
		"/restmachine/sdn/address_pool/delete": adrspools.DeleteRequest{},
		"/restmachine/sdn/address_pool/get":    adrspools.GetRequest{},
		"/restmachine/sdn/address_pool/list":   adrspools.ListAddressPoolsRequest{},
		"/restmachine/sdn/address_pool/update": adrspools.UpdateRequest{},

		// default security policy
		"/restmachine/sdn/default_security_policy/list":   defsecpolicies.ListRequest{},
		"/restmachine/sdn/default_security_policy/update": defsecpolicies.UpdateRequest{},

		// extnet
		"/restmachine/sdn/external_network/port_add":    extnet_sdn.PortAddRequest{},
		"/restmachine/sdn/external_network/port_update": extnet_sdn.PortUpdateRequest{},
		"/restmachine/sdn/external_network/create":      extnet_sdn.CreateRequest{},
		"/restmachine/sdn/external_network/delete":      extnet_sdn.DeleteRequest{},
		"/restmachine/sdn/external_network/get":         extnet_sdn.GetRequest{},
		"/restmachine/sdn/external_network/list":        extnet_sdn.ListRequest{},
		"/restmachine/sdn/external_network/update":      extnet_sdn.UpdateRequest{},

		// floating ips
		"/restmachine/sdn/floating_ip/create": flips.CreateRequest{},
		"/restmachine/sdn/floating_ip/delete": flips.DeleteRequest{},
		"/restmachine/sdn/floating_ip/get":    flips.GetRequest{},
		"/restmachine/sdn/floating_ip/list":   flips.ListRequest{},
		"/restmachine/sdn/floating_ip/update": flips.UpdateRequest{},

		// hypervisors
		"/restmachine/sdn/hypervisor/connect_node":        hypervisors.ConnectNodeRequest{},
		"/restmachine/sdn/hypervisor/delete":              hypervisors.DeleteRequest{},
		"/restmachine/sdn/hypervisor/get":                 hypervisors.GetRequest{},
		"/restmachine/sdn/hypervisor/list":                hypervisors.ListRequest{},
		"/restmachine/sdn/hypervisor/update_display_name": hypervisors.UpdateDisplayNameRequest{},

		// network object groups
		"/restmachine/sdn/network_object_group/attach_external_network_ports": netobjgroups.AttachExtNetPortsRequest{},
		"/restmachine/sdn/network_object_group/attach_logical_ports":          netobjgroups.AttachLogicalPortsRequest{},
		"/restmachine/sdn/network_object_group/create":                        netobjgroups.CreateRequest{},
		"/restmachine/sdn/network_object_group/delete":                        netobjgroups.DeleteRequest{},
		"/restmachine/sdn/network_object_group/detach_external_network_ports": netobjgroups.DetachExtNetPortsRequest{},
		"/restmachine/sdn/network_object_group/detach_logical_ports":          netobjgroups.DetachLogicalPortsRequest{},
		"/restmachine/sdn/network_object_group/get":                           netobjgroups.GetRequest{},
		"/restmachine/sdn/network_object_group/list":                          netobjgroups.ListRequest{},
		"/restmachine/sdn/network_object_group/update":                        netobjgroups.UpdateRequest{},
		"/restmachine/sdn/network_object_group/attach_l2_connection_ports":    netobjgroups.AttachL2ConnectionPortsRequest{},
		"/restmachine/sdn/network_object_group/detach_l2_connection_ports":    netobjgroups.DetachL2ConnectionPortsRequest{},

		// segments
		"/restmachine/sdn/segment/create":  segments.CreateRequest{},
		"/restmachine/sdn/segment/delete":  segments.DeleteRequest{},
		"/restmachine/sdn/segment/get":     segments.GetRequest{},
		"/restmachine/sdn/segment/get_faa": segments.GetFAARequest{},
		"/restmachine/sdn/segment/list":    segments.ListRequest{},
		"/restmachine/sdn/segment/update":  segments.UpdateRequest{},

		// logical ports
		"/restmachine/sdn/logical_port/create":                   logicalports.CreateRequest{},
		"/restmachine/sdn/logical_port/delete":                   logicalports.DeleteRequest{},
		"/restmachine/sdn/logical_port/get":                      logicalports.GetRequest{},
		"/restmachine/sdn/logical_port/get_by_unique_identifier": logicalports.GetByUniqueIdentifierRequest{},
		"/restmachine/sdn/logical_port/list":                     logicalports.ListRequest{},
		"/restmachine/sdn/logical_port/update":                   logicalports.UpdateRequest{},
		"/restmachine/sdn/logical_port/migration_cancel":         logicalports.MigrateCancelRequest{},
		"/restmachine/sdn/logical_port/migration_start":          logicalports.MigrateStartRequest{},

		// routers
		"/restmachine/sdn/router/create":              routers.CreateRequest{},
		"/restmachine/sdn/router/delete":              extnet_sdn.DeleteRequest{},
		"/restmachine/sdn/router/gateway_port/create": gwport.CreateRequest{},
		"/restmachine/sdn/router/gateway_port/delete": gwport.DeleteRequest{},
		"/restmachine/sdn/router/gateway_port/get":    gwport.GetRequest{},
		"/restmachine/sdn/router/gateway_port/list":   gwport.ListRequest{},
		"/restmachine/sdn/router/gateway_port/update": gwport.UpdateRequest{},
		"/restmachine/sdn/router/get":                 routers.GetRequest{},
		"/restmachine/sdn/router/list":                routers.ListRequest{},
		"/restmachine/sdn/router/policies/list":       policies.ListRequest{},
		"/restmachine/sdn/router/update":              routers.UpdateRequest{},

		// version
		"/restmachine/sdn/version/get": nil,
	}
}
