Add support for getters
diff --git a/cloudstack/APIDiscoveryService.go b/cloudstack/APIDiscoveryService.go
index 5c50a55..35722b6 100644
--- a/cloudstack/APIDiscoveryService.go
+++ b/cloudstack/APIDiscoveryService.go
@@ -51,6 +51,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListApisParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListApisParams instance,
 // as then you are sure you have configured all required params
 func (s *APIDiscoveryService) NewListApisParams() *ListApisParams {
diff --git a/cloudstack/AccountService.go b/cloudstack/AccountService.go
index 426a4bd..80b2cc2 100644
--- a/cloudstack/AccountService.go
+++ b/cloudstack/AccountService.go
@@ -92,6 +92,14 @@
 	p.p["account"] = v
 }
 
+func (p *AddAccountToProjectParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *AddAccountToProjectParams) SetEmail(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -99,6 +107,14 @@
 	p.p["email"] = v
 }
 
+func (p *AddAccountToProjectParams) GetEmail() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["email"].(string)
+	return value, ok
+}
+
 func (p *AddAccountToProjectParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -106,6 +122,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *AddAccountToProjectParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *AddAccountToProjectParams) SetProjectroleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -113,6 +137,14 @@
 	p.p["projectroleid"] = v
 }
 
+func (p *AddAccountToProjectParams) GetProjectroleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectroleid"].(string)
+	return value, ok
+}
+
 func (p *AddAccountToProjectParams) SetRoletype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -120,6 +152,14 @@
 	p.p["roletype"] = v
 }
 
+func (p *AddAccountToProjectParams) GetRoletype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["roletype"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddAccountToProjectParams instance,
 // as then you are sure you have configured all required params
 func (s *AccountService) NewAddAccountToProjectParams(projectid string) *AddAccountToProjectParams {
@@ -232,6 +272,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateAccountParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateAccountParams) SetAccountdetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -239,6 +287,14 @@
 	p.p["accountdetails"] = v
 }
 
+func (p *CreateAccountParams) GetAccountdetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accountdetails"].(map[string]string)
+	return value, ok
+}
+
 func (p *CreateAccountParams) SetAccountid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -246,6 +302,14 @@
 	p.p["accountid"] = v
 }
 
+func (p *CreateAccountParams) GetAccountid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accountid"].(string)
+	return value, ok
+}
+
 func (p *CreateAccountParams) SetAccounttype(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -253,6 +317,14 @@
 	p.p["accounttype"] = v
 }
 
+func (p *CreateAccountParams) GetAccounttype() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accounttype"].(int)
+	return value, ok
+}
+
 func (p *CreateAccountParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -260,6 +332,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateAccountParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateAccountParams) SetEmail(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -267,6 +347,14 @@
 	p.p["email"] = v
 }
 
+func (p *CreateAccountParams) GetEmail() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["email"].(string)
+	return value, ok
+}
+
 func (p *CreateAccountParams) SetFirstname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -274,6 +362,14 @@
 	p.p["firstname"] = v
 }
 
+func (p *CreateAccountParams) GetFirstname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["firstname"].(string)
+	return value, ok
+}
+
 func (p *CreateAccountParams) SetLastname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -281,6 +377,14 @@
 	p.p["lastname"] = v
 }
 
+func (p *CreateAccountParams) GetLastname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lastname"].(string)
+	return value, ok
+}
+
 func (p *CreateAccountParams) SetNetworkdomain(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -288,6 +392,14 @@
 	p.p["networkdomain"] = v
 }
 
+func (p *CreateAccountParams) GetNetworkdomain() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkdomain"].(string)
+	return value, ok
+}
+
 func (p *CreateAccountParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -295,6 +407,14 @@
 	p.p["password"] = v
 }
 
+func (p *CreateAccountParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *CreateAccountParams) SetRoleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -302,6 +422,14 @@
 	p.p["roleid"] = v
 }
 
+func (p *CreateAccountParams) GetRoleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["roleid"].(string)
+	return value, ok
+}
+
 func (p *CreateAccountParams) SetTimezone(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -309,6 +437,14 @@
 	p.p["timezone"] = v
 }
 
+func (p *CreateAccountParams) GetTimezone() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["timezone"].(string)
+	return value, ok
+}
+
 func (p *CreateAccountParams) SetUserid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -316,6 +452,14 @@
 	p.p["userid"] = v
 }
 
+func (p *CreateAccountParams) GetUserid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userid"].(string)
+	return value, ok
+}
+
 func (p *CreateAccountParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -323,6 +467,14 @@
 	p.p["username"] = v
 }
 
+func (p *CreateAccountParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateAccountParams instance,
 // as then you are sure you have configured all required params
 func (s *AccountService) NewCreateAccountParams(email string, firstname string, lastname string, password string, username string) *CreateAccountParams {
@@ -463,6 +615,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteAccountParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteAccountParams instance,
 // as then you are sure you have configured all required params
 func (s *AccountService) NewDeleteAccountParams(id string) *DeleteAccountParams {
@@ -534,6 +694,14 @@
 	p.p["account"] = v
 }
 
+func (p *DeleteAccountFromProjectParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *DeleteAccountFromProjectParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -541,6 +709,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *DeleteAccountFromProjectParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteAccountFromProjectParams instance,
 // as then you are sure you have configured all required params
 func (s *AccountService) NewDeleteAccountFromProjectParams(account string, projectid string) *DeleteAccountFromProjectParams {
@@ -620,6 +796,14 @@
 	p.p["account"] = v
 }
 
+func (p *DisableAccountParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *DisableAccountParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -627,6 +811,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *DisableAccountParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *DisableAccountParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -634,6 +826,14 @@
 	p.p["id"] = v
 }
 
+func (p *DisableAccountParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *DisableAccountParams) SetLock(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -641,6 +841,14 @@
 	p.p["lock"] = v
 }
 
+func (p *DisableAccountParams) GetLock() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lock"].(bool)
+	return value, ok
+}
+
 // You should always use this function to get a new DisableAccountParams instance,
 // as then you are sure you have configured all required params
 func (s *AccountService) NewDisableAccountParams(lock bool) *DisableAccountParams {
@@ -799,6 +1007,14 @@
 	p.p["account"] = v
 }
 
+func (p *EnableAccountParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *EnableAccountParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -806,6 +1022,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *EnableAccountParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *EnableAccountParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -813,6 +1037,14 @@
 	p.p["id"] = v
 }
 
+func (p *EnableAccountParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new EnableAccountParams instance,
 // as then you are sure you have configured all required params
 func (s *AccountService) NewEnableAccountParams() *EnableAccountParams {
@@ -947,6 +1179,14 @@
 	p.p["accountid"] = v
 }
 
+func (p *GetSolidFireAccountIdParams) GetAccountid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accountid"].(string)
+	return value, ok
+}
+
 func (p *GetSolidFireAccountIdParams) SetStorageid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -954,6 +1194,14 @@
 	p.p["storageid"] = v
 }
 
+func (p *GetSolidFireAccountIdParams) GetStorageid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storageid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new GetSolidFireAccountIdParams instance,
 // as then you are sure you have configured all required params
 func (s *AccountService) NewGetSolidFireAccountIdParams(accountid string, storageid string) *GetSolidFireAccountIdParams {
@@ -1047,6 +1295,14 @@
 	p.p["accounttype"] = v
 }
 
+func (p *ListAccountsParams) GetAccounttype() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accounttype"].(int64)
+	return value, ok
+}
+
 func (p *ListAccountsParams) SetDetails(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1054,6 +1310,14 @@
 	p.p["details"] = v
 }
 
+func (p *ListAccountsParams) GetDetails() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].([]string)
+	return value, ok
+}
+
 func (p *ListAccountsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1061,6 +1325,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListAccountsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListAccountsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1068,6 +1340,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListAccountsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListAccountsParams) SetIscleanuprequired(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1075,6 +1355,14 @@
 	p.p["iscleanuprequired"] = v
 }
 
+func (p *ListAccountsParams) GetIscleanuprequired() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iscleanuprequired"].(bool)
+	return value, ok
+}
+
 func (p *ListAccountsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1082,6 +1370,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListAccountsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListAccountsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1089,6 +1385,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListAccountsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListAccountsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1096,6 +1400,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListAccountsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListAccountsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1103,6 +1415,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListAccountsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListAccountsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1110,6 +1430,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListAccountsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListAccountsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1117,6 +1445,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListAccountsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListAccountsParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1124,6 +1460,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListAccountsParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListAccountsParams instance,
 // as then you are sure you have configured all required params
 func (s *AccountService) NewListAccountsParams() *ListAccountsParams {
@@ -1366,6 +1710,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListProjectAccountsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListProjectAccountsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1373,6 +1725,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListProjectAccountsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListProjectAccountsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1380,6 +1740,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListProjectAccountsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListProjectAccountsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1387,6 +1755,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListProjectAccountsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListProjectAccountsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1394,6 +1770,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListProjectAccountsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListProjectAccountsParams) SetProjectroleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1401,6 +1785,14 @@
 	p.p["projectroleid"] = v
 }
 
+func (p *ListProjectAccountsParams) GetProjectroleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectroleid"].(string)
+	return value, ok
+}
+
 func (p *ListProjectAccountsParams) SetRole(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1408,6 +1800,14 @@
 	p.p["role"] = v
 }
 
+func (p *ListProjectAccountsParams) GetRole() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["role"].(string)
+	return value, ok
+}
+
 func (p *ListProjectAccountsParams) SetUserid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1415,6 +1815,14 @@
 	p.p["userid"] = v
 }
 
+func (p *ListProjectAccountsParams) GetUserid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListProjectAccountsParams instance,
 // as then you are sure you have configured all required params
 func (s *AccountService) NewListProjectAccountsParams(projectid string) *ListProjectAccountsParams {
@@ -1568,6 +1976,14 @@
 	p.p["account"] = v
 }
 
+func (p *LockAccountParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *LockAccountParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1575,6 +1991,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *LockAccountParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new LockAccountParams instance,
 // as then you are sure you have configured all required params
 func (s *AccountService) NewLockAccountParams(account string, domainid string) *LockAccountParams {
@@ -1714,6 +2138,14 @@
 	p.p["account"] = v
 }
 
+func (p *MarkDefaultZoneForAccountParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *MarkDefaultZoneForAccountParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1721,6 +2153,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *MarkDefaultZoneForAccountParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *MarkDefaultZoneForAccountParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1728,6 +2168,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *MarkDefaultZoneForAccountParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new MarkDefaultZoneForAccountParams instance,
 // as then you are sure you have configured all required params
 func (s *AccountService) NewMarkDefaultZoneForAccountParams(account string, domainid string, zoneid string) *MarkDefaultZoneForAccountParams {
@@ -1904,6 +2352,14 @@
 	p.p["account"] = v
 }
 
+func (p *UpdateAccountParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *UpdateAccountParams) SetAccountdetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1911,6 +2367,14 @@
 	p.p["accountdetails"] = v
 }
 
+func (p *UpdateAccountParams) GetAccountdetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accountdetails"].(map[string]string)
+	return value, ok
+}
+
 func (p *UpdateAccountParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1918,6 +2382,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *UpdateAccountParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *UpdateAccountParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1925,6 +2397,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateAccountParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateAccountParams) SetNetworkdomain(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1932,6 +2412,14 @@
 	p.p["networkdomain"] = v
 }
 
+func (p *UpdateAccountParams) GetNetworkdomain() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkdomain"].(string)
+	return value, ok
+}
+
 func (p *UpdateAccountParams) SetNewname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1939,6 +2427,14 @@
 	p.p["newname"] = v
 }
 
+func (p *UpdateAccountParams) GetNewname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["newname"].(string)
+	return value, ok
+}
+
 func (p *UpdateAccountParams) SetRoleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1946,6 +2442,14 @@
 	p.p["roleid"] = v
 }
 
+func (p *UpdateAccountParams) GetRoleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["roleid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateAccountParams instance,
 // as then you are sure you have configured all required params
 func (s *AccountService) NewUpdateAccountParams() *UpdateAccountParams {
diff --git a/cloudstack/AddressService.go b/cloudstack/AddressService.go
index 59ae7a9..0e76635 100644
--- a/cloudstack/AddressService.go
+++ b/cloudstack/AddressService.go
@@ -91,6 +91,14 @@
 	p.p["account"] = v
 }
 
+func (p *AssociateIpAddressParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *AssociateIpAddressParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -98,6 +106,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *AssociateIpAddressParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *AssociateIpAddressParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -105,6 +121,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *AssociateIpAddressParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *AssociateIpAddressParams) SetIpaddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -112,6 +136,14 @@
 	p.p["ipaddress"] = v
 }
 
+func (p *AssociateIpAddressParams) GetIpaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddress"].(string)
+	return value, ok
+}
+
 func (p *AssociateIpAddressParams) SetIsportable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -119,6 +151,14 @@
 	p.p["isportable"] = v
 }
 
+func (p *AssociateIpAddressParams) GetIsportable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isportable"].(bool)
+	return value, ok
+}
+
 func (p *AssociateIpAddressParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -126,6 +166,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *AssociateIpAddressParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *AssociateIpAddressParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -133,6 +181,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *AssociateIpAddressParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *AssociateIpAddressParams) SetRegionid(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -140,6 +196,14 @@
 	p.p["regionid"] = v
 }
 
+func (p *AssociateIpAddressParams) GetRegionid() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["regionid"].(int)
+	return value, ok
+}
+
 func (p *AssociateIpAddressParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -147,6 +211,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *AssociateIpAddressParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 func (p *AssociateIpAddressParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -154,6 +226,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *AssociateIpAddressParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AssociateIpAddressParams instance,
 // as then you are sure you have configured all required params
 func (s *AddressService) NewAssociateIpAddressParams() *AssociateIpAddressParams {
@@ -256,6 +336,14 @@
 	p.p["id"] = v
 }
 
+func (p *DisassociateIpAddressParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DisassociateIpAddressParams instance,
 // as then you are sure you have configured all required params
 func (s *AddressService) NewDisassociateIpAddressParams(id string) *DisassociateIpAddressParams {
@@ -407,6 +495,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetAllocatedonly(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -414,6 +510,14 @@
 	p.p["allocatedonly"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetAllocatedonly() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["allocatedonly"].(bool)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetAssociatednetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -421,6 +525,14 @@
 	p.p["associatednetworkid"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetAssociatednetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["associatednetworkid"].(string)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -428,6 +540,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -435,6 +555,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetForloadbalancing(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -442,6 +570,14 @@
 	p.p["forloadbalancing"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetForloadbalancing() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forloadbalancing"].(bool)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetForvirtualnetwork(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -449,6 +585,14 @@
 	p.p["forvirtualnetwork"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetForvirtualnetwork() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forvirtualnetwork"].(bool)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -456,6 +600,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetIpaddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -463,6 +615,14 @@
 	p.p["ipaddress"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetIpaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddress"].(string)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -470,6 +630,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetIssourcenat(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -477,6 +645,14 @@
 	p.p["issourcenat"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetIssourcenat() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["issourcenat"].(bool)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetIsstaticnat(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -484,6 +660,14 @@
 	p.p["isstaticnat"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetIsstaticnat() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isstaticnat"].(bool)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -491,6 +675,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -498,6 +690,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -505,6 +705,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -512,6 +720,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -519,6 +735,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -526,6 +750,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -533,6 +765,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -540,6 +780,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -547,6 +795,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetVlanid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -554,6 +810,14 @@
 	p.p["vlanid"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetVlanid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vlanid"].(string)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -561,6 +825,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 func (p *ListPublicIpAddressesParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -568,6 +840,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListPublicIpAddressesParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListPublicIpAddressesParams instance,
 // as then you are sure you have configured all required params
 func (s *AddressService) NewListPublicIpAddressesParams() *ListPublicIpAddressesParams {
@@ -695,6 +975,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateIpAddressParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateIpAddressParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -702,6 +990,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateIpAddressParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateIpAddressParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -709,6 +1005,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateIpAddressParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateIpAddressParams instance,
 // as then you are sure you have configured all required params
 func (s *AddressService) NewUpdateIpAddressParams(id string) *UpdateIpAddressParams {
diff --git a/cloudstack/AffinityGroupService.go b/cloudstack/AffinityGroupService.go
index bb71bde..4537303 100644
--- a/cloudstack/AffinityGroupService.go
+++ b/cloudstack/AffinityGroupService.go
@@ -80,6 +80,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateAffinityGroupParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateAffinityGroupParams) SetDescription(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -87,6 +95,14 @@
 	p.p["description"] = v
 }
 
+func (p *CreateAffinityGroupParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *CreateAffinityGroupParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -94,6 +110,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateAffinityGroupParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateAffinityGroupParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -101,6 +125,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateAffinityGroupParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateAffinityGroupParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -108,6 +140,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *CreateAffinityGroupParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *CreateAffinityGroupParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -115,6 +155,14 @@
 	p.p["type"] = v
 }
 
+func (p *CreateAffinityGroupParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateAffinityGroupParams instance,
 // as then you are sure you have configured all required params
 func (s *AffinityGroupService) NewCreateAffinityGroupParams(name string, affinityGroupType string) *CreateAffinityGroupParams {
@@ -209,6 +257,14 @@
 	p.p["account"] = v
 }
 
+func (p *DeleteAffinityGroupParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *DeleteAffinityGroupParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -216,6 +272,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *DeleteAffinityGroupParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *DeleteAffinityGroupParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -223,6 +287,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteAffinityGroupParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *DeleteAffinityGroupParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -230,6 +302,14 @@
 	p.p["name"] = v
 }
 
+func (p *DeleteAffinityGroupParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *DeleteAffinityGroupParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -237,6 +317,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *DeleteAffinityGroupParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteAffinityGroupParams instance,
 // as then you are sure you have configured all required params
 func (s *AffinityGroupService) NewDeleteAffinityGroupParams() *DeleteAffinityGroupParams {
@@ -312,6 +400,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListAffinityGroupTypesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListAffinityGroupTypesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -319,6 +415,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListAffinityGroupTypesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListAffinityGroupTypesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -326,6 +430,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListAffinityGroupTypesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListAffinityGroupTypesParams instance,
 // as then you are sure you have configured all required params
 func (s *AffinityGroupService) NewListAffinityGroupTypesParams() *ListAffinityGroupTypesParams {
@@ -419,6 +531,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListAffinityGroupsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListAffinityGroupsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -426,6 +546,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListAffinityGroupsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListAffinityGroupsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -433,6 +561,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListAffinityGroupsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListAffinityGroupsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -440,6 +576,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListAffinityGroupsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListAffinityGroupsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -447,6 +591,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListAffinityGroupsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListAffinityGroupsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -454,6 +606,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListAffinityGroupsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListAffinityGroupsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -461,6 +621,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListAffinityGroupsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListAffinityGroupsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -468,6 +636,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListAffinityGroupsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListAffinityGroupsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -475,6 +651,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListAffinityGroupsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListAffinityGroupsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -482,6 +666,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListAffinityGroupsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListAffinityGroupsParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -489,6 +681,14 @@
 	p.p["type"] = v
 }
 
+func (p *ListAffinityGroupsParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 func (p *ListAffinityGroupsParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -496,6 +696,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *ListAffinityGroupsParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListAffinityGroupsParams instance,
 // as then you are sure you have configured all required params
 func (s *AffinityGroupService) NewListAffinityGroupsParams() *ListAffinityGroupsParams {
@@ -660,6 +868,14 @@
 	p.p["affinitygroupids"] = v
 }
 
+func (p *UpdateVMAffinityGroupParams) GetAffinitygroupids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["affinitygroupids"].([]string)
+	return value, ok
+}
+
 func (p *UpdateVMAffinityGroupParams) SetAffinitygroupnames(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -667,6 +883,14 @@
 	p.p["affinitygroupnames"] = v
 }
 
+func (p *UpdateVMAffinityGroupParams) GetAffinitygroupnames() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["affinitygroupnames"].([]string)
+	return value, ok
+}
+
 func (p *UpdateVMAffinityGroupParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -674,6 +898,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateVMAffinityGroupParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateVMAffinityGroupParams instance,
 // as then you are sure you have configured all required params
 func (s *AffinityGroupService) NewUpdateVMAffinityGroupParams(id string) *UpdateVMAffinityGroupParams {
diff --git a/cloudstack/AlertService.go b/cloudstack/AlertService.go
index a9262a2..7d1c3a1 100644
--- a/cloudstack/AlertService.go
+++ b/cloudstack/AlertService.go
@@ -73,6 +73,14 @@
 	p.p["enddate"] = v
 }
 
+func (p *ArchiveAlertsParams) GetEnddate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enddate"].(string)
+	return value, ok
+}
+
 func (p *ArchiveAlertsParams) SetIds(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -80,6 +88,14 @@
 	p.p["ids"] = v
 }
 
+func (p *ArchiveAlertsParams) GetIds() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ids"].([]string)
+	return value, ok
+}
+
 func (p *ArchiveAlertsParams) SetStartdate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -87,6 +103,14 @@
 	p.p["startdate"] = v
 }
 
+func (p *ArchiveAlertsParams) GetStartdate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startdate"].(string)
+	return value, ok
+}
+
 func (p *ArchiveAlertsParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -94,6 +118,14 @@
 	p.p["type"] = v
 }
 
+func (p *ArchiveAlertsParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ArchiveAlertsParams instance,
 // as then you are sure you have configured all required params
 func (s *AlertService) NewArchiveAlertsParams() *ArchiveAlertsParams {
@@ -183,6 +215,14 @@
 	p.p["enddate"] = v
 }
 
+func (p *DeleteAlertsParams) GetEnddate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enddate"].(string)
+	return value, ok
+}
+
 func (p *DeleteAlertsParams) SetIds(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -190,6 +230,14 @@
 	p.p["ids"] = v
 }
 
+func (p *DeleteAlertsParams) GetIds() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ids"].([]string)
+	return value, ok
+}
+
 func (p *DeleteAlertsParams) SetStartdate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -197,6 +245,14 @@
 	p.p["startdate"] = v
 }
 
+func (p *DeleteAlertsParams) GetStartdate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startdate"].(string)
+	return value, ok
+}
+
 func (p *DeleteAlertsParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -204,6 +260,14 @@
 	p.p["type"] = v
 }
 
+func (p *DeleteAlertsParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteAlertsParams instance,
 // as then you are sure you have configured all required params
 func (s *AlertService) NewDeleteAlertsParams() *DeleteAlertsParams {
@@ -296,6 +360,14 @@
 	p.p["description"] = v
 }
 
+func (p *GenerateAlertParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *GenerateAlertParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -303,6 +375,14 @@
 	p.p["name"] = v
 }
 
+func (p *GenerateAlertParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *GenerateAlertParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -310,6 +390,14 @@
 	p.p["podid"] = v
 }
 
+func (p *GenerateAlertParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *GenerateAlertParams) SetType(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -317,6 +405,14 @@
 	p.p["type"] = v
 }
 
+func (p *GenerateAlertParams) GetType() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(int)
+	return value, ok
+}
+
 func (p *GenerateAlertParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -324,6 +420,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *GenerateAlertParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new GenerateAlertParams instance,
 // as then you are sure you have configured all required params
 func (s *AlertService) NewGenerateAlertParams(description string, name string, alertType int) *GenerateAlertParams {
@@ -411,6 +515,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListAlertsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListAlertsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -418,6 +530,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListAlertsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListAlertsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -425,6 +545,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListAlertsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListAlertsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -432,6 +560,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListAlertsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListAlertsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -439,6 +575,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListAlertsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListAlertsParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -446,6 +590,14 @@
 	p.p["type"] = v
 }
 
+func (p *ListAlertsParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListAlertsParams instance,
 // as then you are sure you have configured all required params
 func (s *AlertService) NewListAlertsParams() *ListAlertsParams {
diff --git a/cloudstack/AsyncjobService.go b/cloudstack/AsyncjobService.go
index 8bdaf4b..022821f 100644
--- a/cloudstack/AsyncjobService.go
+++ b/cloudstack/AsyncjobService.go
@@ -80,6 +80,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListAsyncJobsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListAsyncJobsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -87,6 +95,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListAsyncJobsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListAsyncJobsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -94,6 +110,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListAsyncJobsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListAsyncJobsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -101,6 +125,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListAsyncJobsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListAsyncJobsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -108,6 +140,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListAsyncJobsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListAsyncJobsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -115,6 +155,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListAsyncJobsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListAsyncJobsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -122,6 +170,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListAsyncJobsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListAsyncJobsParams) SetStartdate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -129,6 +185,14 @@
 	p.p["startdate"] = v
 }
 
+func (p *ListAsyncJobsParams) GetStartdate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startdate"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListAsyncJobsParams instance,
 // as then you are sure you have configured all required params
 func (s *AsyncjobService) NewListAsyncJobsParams() *ListAsyncJobsParams {
@@ -195,6 +259,14 @@
 	p.p["jobid"] = v
 }
 
+func (p *QueryAsyncJobResultParams) GetJobID() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["jobid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new QueryAsyncJobResultParams instance,
 // as then you are sure you have configured all required params
 func (s *AsyncjobService) NewQueryAsyncJobResultParams(jobid string) *QueryAsyncJobResultParams {
diff --git a/cloudstack/AuthenticationService.go b/cloudstack/AuthenticationService.go
index 0cbf55f..f64ad09 100644
--- a/cloudstack/AuthenticationService.go
+++ b/cloudstack/AuthenticationService.go
@@ -64,6 +64,14 @@
 	p.p["domain"] = v
 }
 
+func (p *LoginParams) GetDomain() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domain"].(string)
+	return value, ok
+}
+
 func (p *LoginParams) SetDomainId(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -71,6 +79,14 @@
 	p.p["domainId"] = v
 }
 
+func (p *LoginParams) GetDomainId() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainId"].(int64)
+	return value, ok
+}
+
 func (p *LoginParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -78,6 +94,14 @@
 	p.p["password"] = v
 }
 
+func (p *LoginParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *LoginParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -85,6 +109,14 @@
 	p.p["username"] = v
 }
 
+func (p *LoginParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new LoginParams instance,
 // as then you are sure you have configured all required params
 func (s *AuthenticationService) NewLoginParams(password string, username string) *LoginParams {
diff --git a/cloudstack/AutoScaleService.go b/cloudstack/AutoScaleService.go
index 9127888..c5b063d 100644
--- a/cloudstack/AutoScaleService.go
+++ b/cloudstack/AutoScaleService.go
@@ -111,6 +111,14 @@
 	p.p["action"] = v
 }
 
+func (p *CreateAutoScalePolicyParams) GetAction() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["action"].(string)
+	return value, ok
+}
+
 func (p *CreateAutoScalePolicyParams) SetConditionids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -118,6 +126,14 @@
 	p.p["conditionids"] = v
 }
 
+func (p *CreateAutoScalePolicyParams) GetConditionids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["conditionids"].([]string)
+	return value, ok
+}
+
 func (p *CreateAutoScalePolicyParams) SetDuration(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -125,6 +141,14 @@
 	p.p["duration"] = v
 }
 
+func (p *CreateAutoScalePolicyParams) GetDuration() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["duration"].(int)
+	return value, ok
+}
+
 func (p *CreateAutoScalePolicyParams) SetQuiettime(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -132,6 +156,14 @@
 	p.p["quiettime"] = v
 }
 
+func (p *CreateAutoScalePolicyParams) GetQuiettime() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["quiettime"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateAutoScalePolicyParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewCreateAutoScalePolicyParams(action string, conditionids []string, duration int) *CreateAutoScalePolicyParams {
@@ -242,6 +274,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateAutoScaleVmGroupParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateAutoScaleVmGroupParams) SetInterval(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -249,6 +289,14 @@
 	p.p["interval"] = v
 }
 
+func (p *CreateAutoScaleVmGroupParams) GetInterval() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["interval"].(int)
+	return value, ok
+}
+
 func (p *CreateAutoScaleVmGroupParams) SetLbruleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -256,6 +304,14 @@
 	p.p["lbruleid"] = v
 }
 
+func (p *CreateAutoScaleVmGroupParams) GetLbruleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbruleid"].(string)
+	return value, ok
+}
+
 func (p *CreateAutoScaleVmGroupParams) SetMaxmembers(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -263,6 +319,14 @@
 	p.p["maxmembers"] = v
 }
 
+func (p *CreateAutoScaleVmGroupParams) GetMaxmembers() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["maxmembers"].(int)
+	return value, ok
+}
+
 func (p *CreateAutoScaleVmGroupParams) SetMinmembers(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -270,6 +334,14 @@
 	p.p["minmembers"] = v
 }
 
+func (p *CreateAutoScaleVmGroupParams) GetMinmembers() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["minmembers"].(int)
+	return value, ok
+}
+
 func (p *CreateAutoScaleVmGroupParams) SetScaledownpolicyids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -277,6 +349,14 @@
 	p.p["scaledownpolicyids"] = v
 }
 
+func (p *CreateAutoScaleVmGroupParams) GetScaledownpolicyids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["scaledownpolicyids"].([]string)
+	return value, ok
+}
+
 func (p *CreateAutoScaleVmGroupParams) SetScaleuppolicyids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -284,6 +364,14 @@
 	p.p["scaleuppolicyids"] = v
 }
 
+func (p *CreateAutoScaleVmGroupParams) GetScaleuppolicyids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["scaleuppolicyids"].([]string)
+	return value, ok
+}
+
 func (p *CreateAutoScaleVmGroupParams) SetVmprofileid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -291,6 +379,14 @@
 	p.p["vmprofileid"] = v
 }
 
+func (p *CreateAutoScaleVmGroupParams) GetVmprofileid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vmprofileid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateAutoScaleVmGroupParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewCreateAutoScaleVmGroupParams(lbruleid string, maxmembers int, minmembers int, scaledownpolicyids []string, scaleuppolicyids []string, vmprofileid string) *CreateAutoScaleVmGroupParams {
@@ -409,6 +505,14 @@
 	p.p["autoscaleuserid"] = v
 }
 
+func (p *CreateAutoScaleVmProfileParams) GetAutoscaleuserid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["autoscaleuserid"].(string)
+	return value, ok
+}
+
 func (p *CreateAutoScaleVmProfileParams) SetCounterparam(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -416,6 +520,14 @@
 	p.p["counterparam"] = v
 }
 
+func (p *CreateAutoScaleVmProfileParams) GetCounterparam() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["counterparam"].(map[string]string)
+	return value, ok
+}
+
 func (p *CreateAutoScaleVmProfileParams) SetDestroyvmgraceperiod(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -423,6 +535,14 @@
 	p.p["destroyvmgraceperiod"] = v
 }
 
+func (p *CreateAutoScaleVmProfileParams) GetDestroyvmgraceperiod() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["destroyvmgraceperiod"].(int)
+	return value, ok
+}
+
 func (p *CreateAutoScaleVmProfileParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -430,6 +550,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateAutoScaleVmProfileParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateAutoScaleVmProfileParams) SetOtherdeployparams(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -437,6 +565,14 @@
 	p.p["otherdeployparams"] = v
 }
 
+func (p *CreateAutoScaleVmProfileParams) GetOtherdeployparams() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["otherdeployparams"].(string)
+	return value, ok
+}
+
 func (p *CreateAutoScaleVmProfileParams) SetServiceofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -444,6 +580,14 @@
 	p.p["serviceofferingid"] = v
 }
 
+func (p *CreateAutoScaleVmProfileParams) GetServiceofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceofferingid"].(string)
+	return value, ok
+}
+
 func (p *CreateAutoScaleVmProfileParams) SetTemplateid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -451,6 +595,14 @@
 	p.p["templateid"] = v
 }
 
+func (p *CreateAutoScaleVmProfileParams) GetTemplateid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["templateid"].(string)
+	return value, ok
+}
+
 func (p *CreateAutoScaleVmProfileParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -458,6 +610,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreateAutoScaleVmProfileParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateAutoScaleVmProfileParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewCreateAutoScaleVmProfileParams(serviceofferingid string, templateid string, zoneid string) *CreateAutoScaleVmProfileParams {
@@ -557,6 +717,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateConditionParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateConditionParams) SetCounterid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -564,6 +732,14 @@
 	p.p["counterid"] = v
 }
 
+func (p *CreateConditionParams) GetCounterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["counterid"].(string)
+	return value, ok
+}
+
 func (p *CreateConditionParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -571,6 +747,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateConditionParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateConditionParams) SetRelationaloperator(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -578,6 +762,14 @@
 	p.p["relationaloperator"] = v
 }
 
+func (p *CreateConditionParams) GetRelationaloperator() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["relationaloperator"].(string)
+	return value, ok
+}
+
 func (p *CreateConditionParams) SetThreshold(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -585,6 +777,14 @@
 	p.p["threshold"] = v
 }
 
+func (p *CreateConditionParams) GetThreshold() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["threshold"].(int64)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateConditionParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewCreateConditionParams(counterid string, relationaloperator string, threshold int64) *CreateConditionParams {
@@ -674,6 +874,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateCounterParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateCounterParams) SetSource(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -681,6 +889,14 @@
 	p.p["source"] = v
 }
 
+func (p *CreateCounterParams) GetSource() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["source"].(string)
+	return value, ok
+}
+
 func (p *CreateCounterParams) SetValue(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -688,6 +904,14 @@
 	p.p["value"] = v
 }
 
+func (p *CreateCounterParams) GetValue() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["value"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateCounterParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewCreateCounterParams(name string, source string, value string) *CreateCounterParams {
@@ -766,6 +990,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteAutoScalePolicyParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteAutoScalePolicyParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewDeleteAutoScalePolicyParams(id string) *DeleteAutoScalePolicyParams {
@@ -834,6 +1066,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteAutoScaleVmGroupParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteAutoScaleVmGroupParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewDeleteAutoScaleVmGroupParams(id string) *DeleteAutoScaleVmGroupParams {
@@ -902,6 +1142,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteAutoScaleVmProfileParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteAutoScaleVmProfileParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewDeleteAutoScaleVmProfileParams(id string) *DeleteAutoScaleVmProfileParams {
@@ -970,6 +1218,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteConditionParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteConditionParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewDeleteConditionParams(id string) *DeleteConditionParams {
@@ -1038,6 +1294,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteCounterParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteCounterParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewDeleteCounterParams(id string) *DeleteCounterParams {
@@ -1106,6 +1370,14 @@
 	p.p["id"] = v
 }
 
+func (p *DisableAutoScaleVmGroupParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DisableAutoScaleVmGroupParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewDisableAutoScaleVmGroupParams(id string) *DisableAutoScaleVmGroupParams {
@@ -1192,6 +1464,14 @@
 	p.p["id"] = v
 }
 
+func (p *EnableAutoScaleVmGroupParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new EnableAutoScaleVmGroupParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewEnableAutoScaleVmGroupParams(id string) *EnableAutoScaleVmGroupParams {
@@ -1312,6 +1592,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListAutoScalePoliciesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScalePoliciesParams) SetAction(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1319,6 +1607,14 @@
 	p.p["action"] = v
 }
 
+func (p *ListAutoScalePoliciesParams) GetAction() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["action"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScalePoliciesParams) SetConditionid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1326,6 +1622,14 @@
 	p.p["conditionid"] = v
 }
 
+func (p *ListAutoScalePoliciesParams) GetConditionid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["conditionid"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScalePoliciesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1333,6 +1637,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListAutoScalePoliciesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScalePoliciesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1340,6 +1652,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListAutoScalePoliciesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScalePoliciesParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1347,6 +1667,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListAutoScalePoliciesParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListAutoScalePoliciesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1354,6 +1682,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListAutoScalePoliciesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScalePoliciesParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1361,6 +1697,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListAutoScalePoliciesParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListAutoScalePoliciesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1368,6 +1712,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListAutoScalePoliciesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListAutoScalePoliciesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1375,6 +1727,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListAutoScalePoliciesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListAutoScalePoliciesParams) SetVmgroupid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1382,6 +1742,14 @@
 	p.p["vmgroupid"] = v
 }
 
+func (p *ListAutoScalePoliciesParams) GetVmgroupid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vmgroupid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListAutoScalePoliciesParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewListAutoScalePoliciesParams() *ListAutoScalePoliciesParams {
@@ -1524,6 +1892,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListAutoScaleVmGroupsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmGroupsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1531,6 +1907,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListAutoScaleVmGroupsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmGroupsParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1538,6 +1922,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListAutoScaleVmGroupsParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmGroupsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1545,6 +1937,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListAutoScaleVmGroupsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmGroupsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1552,6 +1952,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListAutoScaleVmGroupsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmGroupsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1559,6 +1967,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListAutoScaleVmGroupsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmGroupsParams) SetLbruleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1566,6 +1982,14 @@
 	p.p["lbruleid"] = v
 }
 
+func (p *ListAutoScaleVmGroupsParams) GetLbruleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbruleid"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmGroupsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1573,6 +1997,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListAutoScaleVmGroupsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmGroupsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1580,6 +2012,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListAutoScaleVmGroupsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmGroupsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1587,6 +2027,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListAutoScaleVmGroupsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmGroupsParams) SetPolicyid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1594,6 +2042,14 @@
 	p.p["policyid"] = v
 }
 
+func (p *ListAutoScaleVmGroupsParams) GetPolicyid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["policyid"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmGroupsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1601,6 +2057,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListAutoScaleVmGroupsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmGroupsParams) SetVmprofileid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1608,6 +2072,14 @@
 	p.p["vmprofileid"] = v
 }
 
+func (p *ListAutoScaleVmGroupsParams) GetVmprofileid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vmprofileid"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmGroupsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1615,6 +2087,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListAutoScaleVmGroupsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListAutoScaleVmGroupsParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewListAutoScaleVmGroupsParams() *ListAutoScaleVmGroupsParams {
@@ -1762,6 +2242,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListAutoScaleVmProfilesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmProfilesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1769,6 +2257,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListAutoScaleVmProfilesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmProfilesParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1776,6 +2272,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListAutoScaleVmProfilesParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmProfilesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1783,6 +2287,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListAutoScaleVmProfilesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmProfilesParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1790,6 +2302,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListAutoScaleVmProfilesParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmProfilesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1797,6 +2317,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListAutoScaleVmProfilesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmProfilesParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1804,6 +2332,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListAutoScaleVmProfilesParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmProfilesParams) SetOtherdeployparams(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1811,6 +2347,14 @@
 	p.p["otherdeployparams"] = v
 }
 
+func (p *ListAutoScaleVmProfilesParams) GetOtherdeployparams() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["otherdeployparams"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmProfilesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1818,6 +2362,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListAutoScaleVmProfilesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmProfilesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1825,6 +2377,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListAutoScaleVmProfilesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmProfilesParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1832,6 +2392,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListAutoScaleVmProfilesParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmProfilesParams) SetServiceofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1839,6 +2407,14 @@
 	p.p["serviceofferingid"] = v
 }
 
+func (p *ListAutoScaleVmProfilesParams) GetServiceofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceofferingid"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmProfilesParams) SetTemplateid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1846,6 +2422,14 @@
 	p.p["templateid"] = v
 }
 
+func (p *ListAutoScaleVmProfilesParams) GetTemplateid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["templateid"].(string)
+	return value, ok
+}
+
 func (p *ListAutoScaleVmProfilesParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1853,6 +2437,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListAutoScaleVmProfilesParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListAutoScaleVmProfilesParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewListAutoScaleVmProfilesParams() *ListAutoScaleVmProfilesParams {
@@ -1985,6 +2577,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListConditionsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListConditionsParams) SetCounterid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1992,6 +2592,14 @@
 	p.p["counterid"] = v
 }
 
+func (p *ListConditionsParams) GetCounterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["counterid"].(string)
+	return value, ok
+}
+
 func (p *ListConditionsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1999,6 +2607,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListConditionsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListConditionsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2006,6 +2622,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListConditionsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListConditionsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2013,6 +2637,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListConditionsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListConditionsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2020,6 +2652,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListConditionsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListConditionsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2027,6 +2667,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListConditionsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListConditionsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2034,6 +2682,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListConditionsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListConditionsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2041,6 +2697,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListConditionsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListConditionsParams) SetPolicyid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2048,6 +2712,14 @@
 	p.p["policyid"] = v
 }
 
+func (p *ListConditionsParams) GetPolicyid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["policyid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListConditionsParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewListConditionsParams() *ListConditionsParams {
@@ -2163,6 +2835,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListCountersParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListCountersParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2170,6 +2850,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListCountersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListCountersParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2177,6 +2865,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListCountersParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListCountersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2184,6 +2880,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListCountersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListCountersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2191,6 +2895,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListCountersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListCountersParams) SetSource(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2198,6 +2910,14 @@
 	p.p["source"] = v
 }
 
+func (p *ListCountersParams) GetSource() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["source"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListCountersParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewListCountersParams() *ListCountersParams {
@@ -2353,6 +3073,14 @@
 	p.p["conditionids"] = v
 }
 
+func (p *UpdateAutoScalePolicyParams) GetConditionids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["conditionids"].([]string)
+	return value, ok
+}
+
 func (p *UpdateAutoScalePolicyParams) SetDuration(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2360,6 +3088,14 @@
 	p.p["duration"] = v
 }
 
+func (p *UpdateAutoScalePolicyParams) GetDuration() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["duration"].(int)
+	return value, ok
+}
+
 func (p *UpdateAutoScalePolicyParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2367,6 +3103,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateAutoScalePolicyParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateAutoScalePolicyParams) SetQuiettime(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2374,6 +3118,14 @@
 	p.p["quiettime"] = v
 }
 
+func (p *UpdateAutoScalePolicyParams) GetQuiettime() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["quiettime"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateAutoScalePolicyParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewUpdateAutoScalePolicyParams(id string) *UpdateAutoScalePolicyParams {
@@ -2482,6 +3234,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateAutoScaleVmGroupParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateAutoScaleVmGroupParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2489,6 +3249,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateAutoScaleVmGroupParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateAutoScaleVmGroupParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2496,6 +3264,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateAutoScaleVmGroupParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateAutoScaleVmGroupParams) SetInterval(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2503,6 +3279,14 @@
 	p.p["interval"] = v
 }
 
+func (p *UpdateAutoScaleVmGroupParams) GetInterval() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["interval"].(int)
+	return value, ok
+}
+
 func (p *UpdateAutoScaleVmGroupParams) SetMaxmembers(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2510,6 +3294,14 @@
 	p.p["maxmembers"] = v
 }
 
+func (p *UpdateAutoScaleVmGroupParams) GetMaxmembers() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["maxmembers"].(int)
+	return value, ok
+}
+
 func (p *UpdateAutoScaleVmGroupParams) SetMinmembers(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2517,6 +3309,14 @@
 	p.p["minmembers"] = v
 }
 
+func (p *UpdateAutoScaleVmGroupParams) GetMinmembers() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["minmembers"].(int)
+	return value, ok
+}
+
 func (p *UpdateAutoScaleVmGroupParams) SetScaledownpolicyids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2524,6 +3324,14 @@
 	p.p["scaledownpolicyids"] = v
 }
 
+func (p *UpdateAutoScaleVmGroupParams) GetScaledownpolicyids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["scaledownpolicyids"].([]string)
+	return value, ok
+}
+
 func (p *UpdateAutoScaleVmGroupParams) SetScaleuppolicyids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2531,6 +3339,14 @@
 	p.p["scaleuppolicyids"] = v
 }
 
+func (p *UpdateAutoScaleVmGroupParams) GetScaleuppolicyids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["scaleuppolicyids"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateAutoScaleVmGroupParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewUpdateAutoScaleVmGroupParams(id string) *UpdateAutoScaleVmGroupParams {
@@ -2641,6 +3457,14 @@
 	p.p["autoscaleuserid"] = v
 }
 
+func (p *UpdateAutoScaleVmProfileParams) GetAutoscaleuserid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["autoscaleuserid"].(string)
+	return value, ok
+}
+
 func (p *UpdateAutoScaleVmProfileParams) SetCounterparam(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2648,6 +3472,14 @@
 	p.p["counterparam"] = v
 }
 
+func (p *UpdateAutoScaleVmProfileParams) GetCounterparam() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["counterparam"].(map[string]string)
+	return value, ok
+}
+
 func (p *UpdateAutoScaleVmProfileParams) SetCustomid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2655,6 +3487,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateAutoScaleVmProfileParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateAutoScaleVmProfileParams) SetDestroyvmgraceperiod(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2662,6 +3502,14 @@
 	p.p["destroyvmgraceperiod"] = v
 }
 
+func (p *UpdateAutoScaleVmProfileParams) GetDestroyvmgraceperiod() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["destroyvmgraceperiod"].(int)
+	return value, ok
+}
+
 func (p *UpdateAutoScaleVmProfileParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2669,6 +3517,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateAutoScaleVmProfileParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateAutoScaleVmProfileParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2676,6 +3532,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateAutoScaleVmProfileParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateAutoScaleVmProfileParams) SetTemplateid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2683,6 +3547,14 @@
 	p.p["templateid"] = v
 }
 
+func (p *UpdateAutoScaleVmProfileParams) GetTemplateid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["templateid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateAutoScaleVmProfileParams instance,
 // as then you are sure you have configured all required params
 func (s *AutoScaleService) NewUpdateAutoScaleVmProfileParams(id string) *UpdateAutoScaleVmProfileParams {
diff --git a/cloudstack/BaremetalService.go b/cloudstack/BaremetalService.go
index 3144630..e2166fd 100644
--- a/cloudstack/BaremetalService.go
+++ b/cloudstack/BaremetalService.go
@@ -80,6 +80,14 @@
 	p.p["dhcpservertype"] = v
 }
 
+func (p *AddBaremetalDhcpParams) GetDhcpservertype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["dhcpservertype"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalDhcpParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -87,6 +95,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddBaremetalDhcpParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalDhcpParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -94,6 +110,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *AddBaremetalDhcpParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalDhcpParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -101,6 +125,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddBaremetalDhcpParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalDhcpParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -108,6 +140,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddBaremetalDhcpParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddBaremetalDhcpParams instance,
 // as then you are sure you have configured all required params
 func (s *BaremetalService) NewAddBaremetalDhcpParams(dhcpservertype string, password string, physicalnetworkid string, url string, username string) *AddBaremetalDhcpParams {
@@ -206,6 +246,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddBaremetalPxeKickStartServerParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxeKickStartServerParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -213,6 +261,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *AddBaremetalPxeKickStartServerParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxeKickStartServerParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -220,6 +276,14 @@
 	p.p["podid"] = v
 }
 
+func (p *AddBaremetalPxeKickStartServerParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxeKickStartServerParams) SetPxeservertype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -227,6 +291,14 @@
 	p.p["pxeservertype"] = v
 }
 
+func (p *AddBaremetalPxeKickStartServerParams) GetPxeservertype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pxeservertype"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxeKickStartServerParams) SetTftpdir(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -234,6 +306,14 @@
 	p.p["tftpdir"] = v
 }
 
+func (p *AddBaremetalPxeKickStartServerParams) GetTftpdir() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tftpdir"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxeKickStartServerParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -241,6 +321,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddBaremetalPxeKickStartServerParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxeKickStartServerParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -248,6 +336,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddBaremetalPxeKickStartServerParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddBaremetalPxeKickStartServerParams instance,
 // as then you are sure you have configured all required params
 func (s *BaremetalService) NewAddBaremetalPxeKickStartServerParams(password string, physicalnetworkid string, pxeservertype string, tftpdir string, url string, username string) *AddBaremetalPxeKickStartServerParams {
@@ -359,6 +455,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddBaremetalPxePingServerParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxePingServerParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -366,6 +470,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *AddBaremetalPxePingServerParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxePingServerParams) SetPingcifspassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -373,6 +485,14 @@
 	p.p["pingcifspassword"] = v
 }
 
+func (p *AddBaremetalPxePingServerParams) GetPingcifspassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pingcifspassword"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxePingServerParams) SetPingcifsusername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -380,6 +500,14 @@
 	p.p["pingcifsusername"] = v
 }
 
+func (p *AddBaremetalPxePingServerParams) GetPingcifsusername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pingcifsusername"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxePingServerParams) SetPingdir(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -387,6 +515,14 @@
 	p.p["pingdir"] = v
 }
 
+func (p *AddBaremetalPxePingServerParams) GetPingdir() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pingdir"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxePingServerParams) SetPingstorageserverip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -394,6 +530,14 @@
 	p.p["pingstorageserverip"] = v
 }
 
+func (p *AddBaremetalPxePingServerParams) GetPingstorageserverip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pingstorageserverip"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxePingServerParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -401,6 +545,14 @@
 	p.p["podid"] = v
 }
 
+func (p *AddBaremetalPxePingServerParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxePingServerParams) SetPxeservertype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -408,6 +560,14 @@
 	p.p["pxeservertype"] = v
 }
 
+func (p *AddBaremetalPxePingServerParams) GetPxeservertype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pxeservertype"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxePingServerParams) SetTftpdir(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -415,6 +575,14 @@
 	p.p["tftpdir"] = v
 }
 
+func (p *AddBaremetalPxePingServerParams) GetTftpdir() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tftpdir"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxePingServerParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -422,6 +590,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddBaremetalPxePingServerParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalPxePingServerParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -429,6 +605,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddBaremetalPxePingServerParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddBaremetalPxePingServerParams instance,
 // as then you are sure you have configured all required params
 func (s *BaremetalService) NewAddBaremetalPxePingServerParams(password string, physicalnetworkid string, pingdir string, pingstorageserverip string, pxeservertype string, tftpdir string, url string, username string) *AddBaremetalPxePingServerParams {
@@ -514,6 +698,14 @@
 	p.p["baremetalrcturl"] = v
 }
 
+func (p *AddBaremetalRctParams) GetBaremetalrcturl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["baremetalrcturl"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddBaremetalRctParams instance,
 // as then you are sure you have configured all required params
 func (s *BaremetalService) NewAddBaremetalRctParams(baremetalrcturl string) *AddBaremetalRctParams {
@@ -587,6 +779,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteBaremetalRctParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteBaremetalRctParams instance,
 // as then you are sure you have configured all required params
 func (s *BaremetalService) NewDeleteBaremetalRctParams(id string) *DeleteBaremetalRctParams {
@@ -673,6 +873,14 @@
 	p.p["dhcpservertype"] = v
 }
 
+func (p *ListBaremetalDhcpParams) GetDhcpservertype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["dhcpservertype"].(string)
+	return value, ok
+}
+
 func (p *ListBaremetalDhcpParams) SetId(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -680,6 +888,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListBaremetalDhcpParams) GetId() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(int64)
+	return value, ok
+}
+
 func (p *ListBaremetalDhcpParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -687,6 +903,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListBaremetalDhcpParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListBaremetalDhcpParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -694,6 +918,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListBaremetalDhcpParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListBaremetalDhcpParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -701,6 +933,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListBaremetalDhcpParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListBaremetalDhcpParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -708,6 +948,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *ListBaremetalDhcpParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListBaremetalDhcpParams instance,
 // as then you are sure you have configured all required params
 func (s *BaremetalService) NewListBaremetalDhcpParams(physicalnetworkid string) *ListBaremetalDhcpParams {
@@ -784,6 +1032,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListBaremetalPxeServersParams) GetId() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(int64)
+	return value, ok
+}
+
 func (p *ListBaremetalPxeServersParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -791,6 +1047,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListBaremetalPxeServersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListBaremetalPxeServersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -798,6 +1062,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListBaremetalPxeServersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListBaremetalPxeServersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -805,6 +1077,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListBaremetalPxeServersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListBaremetalPxeServersParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -812,6 +1092,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *ListBaremetalPxeServersParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListBaremetalPxeServersParams instance,
 // as then you are sure you have configured all required params
 func (s *BaremetalService) NewListBaremetalPxeServersParams(physicalnetworkid string) *ListBaremetalPxeServersParams {
@@ -880,6 +1168,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListBaremetalRctParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListBaremetalRctParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -887,6 +1183,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListBaremetalRctParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListBaremetalRctParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -894,6 +1198,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListBaremetalRctParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListBaremetalRctParams instance,
 // as then you are sure you have configured all required params
 func (s *BaremetalService) NewListBaremetalRctParams() *ListBaremetalRctParams {
@@ -951,6 +1263,14 @@
 	p.p["mac"] = v
 }
 
+func (p *NotifyBaremetalProvisionDoneParams) GetMac() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["mac"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new NotifyBaremetalProvisionDoneParams instance,
 // as then you are sure you have configured all required params
 func (s *BaremetalService) NewNotifyBaremetalProvisionDoneParams(mac string) *NotifyBaremetalProvisionDoneParams {
diff --git a/cloudstack/BigSwitchBCFService.go b/cloudstack/BigSwitchBCFService.go
index 76ab3c8..5fbef5f 100644
--- a/cloudstack/BigSwitchBCFService.go
+++ b/cloudstack/BigSwitchBCFService.go
@@ -69,6 +69,14 @@
 	p.p["hostname"] = v
 }
 
+func (p *AddBigSwitchBcfDeviceParams) GetHostname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostname"].(string)
+	return value, ok
+}
+
 func (p *AddBigSwitchBcfDeviceParams) SetNat(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -76,6 +84,14 @@
 	p.p["nat"] = v
 }
 
+func (p *AddBigSwitchBcfDeviceParams) GetNat() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nat"].(bool)
+	return value, ok
+}
+
 func (p *AddBigSwitchBcfDeviceParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -83,6 +99,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddBigSwitchBcfDeviceParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddBigSwitchBcfDeviceParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -90,6 +114,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *AddBigSwitchBcfDeviceParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *AddBigSwitchBcfDeviceParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -97,6 +129,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddBigSwitchBcfDeviceParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddBigSwitchBcfDeviceParams instance,
 // as then you are sure you have configured all required params
 func (s *BigSwitchBCFService) NewAddBigSwitchBcfDeviceParams(hostname string, nat bool, password string, physicalnetworkid string, username string) *AddBigSwitchBcfDeviceParams {
@@ -180,6 +220,14 @@
 	p.p["bcfdeviceid"] = v
 }
 
+func (p *DeleteBigSwitchBcfDeviceParams) GetBcfdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bcfdeviceid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteBigSwitchBcfDeviceParams instance,
 // as then you are sure you have configured all required params
 func (s *BigSwitchBCFService) NewDeleteBigSwitchBcfDeviceParams(bcfdeviceid string) *DeleteBigSwitchBcfDeviceParams {
@@ -262,6 +310,14 @@
 	p.p["bcfdeviceid"] = v
 }
 
+func (p *ListBigSwitchBcfDevicesParams) GetBcfdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bcfdeviceid"].(string)
+	return value, ok
+}
+
 func (p *ListBigSwitchBcfDevicesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -269,6 +325,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListBigSwitchBcfDevicesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListBigSwitchBcfDevicesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -276,6 +340,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListBigSwitchBcfDevicesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListBigSwitchBcfDevicesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -283,6 +355,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListBigSwitchBcfDevicesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListBigSwitchBcfDevicesParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -290,6 +370,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *ListBigSwitchBcfDevicesParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListBigSwitchBcfDevicesParams instance,
 // as then you are sure you have configured all required params
 func (s *BigSwitchBCFService) NewListBigSwitchBcfDevicesParams() *ListBigSwitchBcfDevicesParams {
diff --git a/cloudstack/BrocadeVCSService.go b/cloudstack/BrocadeVCSService.go
index dbc1a83..cc42fff 100644
--- a/cloudstack/BrocadeVCSService.go
+++ b/cloudstack/BrocadeVCSService.go
@@ -69,6 +69,14 @@
 	p.p["hostname"] = v
 }
 
+func (p *AddBrocadeVcsDeviceParams) GetHostname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostname"].(string)
+	return value, ok
+}
+
 func (p *AddBrocadeVcsDeviceParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -76,6 +84,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddBrocadeVcsDeviceParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddBrocadeVcsDeviceParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -83,6 +99,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *AddBrocadeVcsDeviceParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *AddBrocadeVcsDeviceParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -90,6 +114,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddBrocadeVcsDeviceParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddBrocadeVcsDeviceParams instance,
 // as then you are sure you have configured all required params
 func (s *BrocadeVCSService) NewAddBrocadeVcsDeviceParams(hostname string, password string, physicalnetworkid string, username string) *AddBrocadeVcsDeviceParams {
@@ -169,6 +201,14 @@
 	p.p["vcsdeviceid"] = v
 }
 
+func (p *DeleteBrocadeVcsDeviceParams) GetVcsdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vcsdeviceid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteBrocadeVcsDeviceParams instance,
 // as then you are sure you have configured all required params
 func (s *BrocadeVCSService) NewDeleteBrocadeVcsDeviceParams(vcsdeviceid string) *DeleteBrocadeVcsDeviceParams {
@@ -248,6 +288,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListBrocadeVcsDeviceNetworksParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListBrocadeVcsDeviceNetworksParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -255,6 +303,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListBrocadeVcsDeviceNetworksParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListBrocadeVcsDeviceNetworksParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -262,6 +318,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListBrocadeVcsDeviceNetworksParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListBrocadeVcsDeviceNetworksParams) SetVcsdeviceid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -269,6 +333,14 @@
 	p.p["vcsdeviceid"] = v
 }
 
+func (p *ListBrocadeVcsDeviceNetworksParams) GetVcsdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vcsdeviceid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListBrocadeVcsDeviceNetworksParams instance,
 // as then you are sure you have configured all required params
 func (s *BrocadeVCSService) NewListBrocadeVcsDeviceNetworksParams(vcsdeviceid string) *ListBrocadeVcsDeviceNetworksParams {
@@ -451,6 +523,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListBrocadeVcsDevicesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListBrocadeVcsDevicesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -458,6 +538,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListBrocadeVcsDevicesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListBrocadeVcsDevicesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -465,6 +553,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListBrocadeVcsDevicesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListBrocadeVcsDevicesParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -472,6 +568,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *ListBrocadeVcsDevicesParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *ListBrocadeVcsDevicesParams) SetVcsdeviceid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -479,6 +583,14 @@
 	p.p["vcsdeviceid"] = v
 }
 
+func (p *ListBrocadeVcsDevicesParams) GetVcsdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vcsdeviceid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListBrocadeVcsDevicesParams instance,
 // as then you are sure you have configured all required params
 func (s *BrocadeVCSService) NewListBrocadeVcsDevicesParams() *ListBrocadeVcsDevicesParams {
diff --git a/cloudstack/CertificateService.go b/cloudstack/CertificateService.go
index fa68f9d..c9fb9ae 100644
--- a/cloudstack/CertificateService.go
+++ b/cloudstack/CertificateService.go
@@ -65,6 +65,14 @@
 	p.p["certificate"] = v
 }
 
+func (p *UploadCustomCertificateParams) GetCertificate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["certificate"].(string)
+	return value, ok
+}
+
 func (p *UploadCustomCertificateParams) SetDomainsuffix(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -72,6 +80,14 @@
 	p.p["domainsuffix"] = v
 }
 
+func (p *UploadCustomCertificateParams) GetDomainsuffix() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainsuffix"].(string)
+	return value, ok
+}
+
 func (p *UploadCustomCertificateParams) SetId(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -79,6 +95,14 @@
 	p.p["id"] = v
 }
 
+func (p *UploadCustomCertificateParams) GetId() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(int)
+	return value, ok
+}
+
 func (p *UploadCustomCertificateParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -86,6 +110,14 @@
 	p.p["name"] = v
 }
 
+func (p *UploadCustomCertificateParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UploadCustomCertificateParams) SetPrivatekey(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -93,6 +125,14 @@
 	p.p["privatekey"] = v
 }
 
+func (p *UploadCustomCertificateParams) GetPrivatekey() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["privatekey"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UploadCustomCertificateParams instance,
 // as then you are sure you have configured all required params
 func (s *CertificateService) NewUploadCustomCertificateParams(certificate string, domainsuffix string) *UploadCustomCertificateParams {
diff --git a/cloudstack/CloudIdentifierService.go b/cloudstack/CloudIdentifierService.go
index 01a7181..24cea86 100644
--- a/cloudstack/CloudIdentifierService.go
+++ b/cloudstack/CloudIdentifierService.go
@@ -51,6 +51,14 @@
 	p.p["userid"] = v
 }
 
+func (p *GetCloudIdentifierParams) GetUserid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new GetCloudIdentifierParams instance,
 // as then you are sure you have configured all required params
 func (s *CloudIdentifierService) NewGetCloudIdentifierParams(userid string) *GetCloudIdentifierParams {
diff --git a/cloudstack/ClusterService.go b/cloudstack/ClusterService.go
index c5b229a..7399c54 100644
--- a/cloudstack/ClusterService.go
+++ b/cloudstack/ClusterService.go
@@ -136,6 +136,14 @@
 	p.p["allocationstate"] = v
 }
 
+func (p *AddClusterParams) GetAllocationstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["allocationstate"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetClustername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -143,6 +151,14 @@
 	p.p["clustername"] = v
 }
 
+func (p *AddClusterParams) GetClustername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clustername"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetClustertype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -150,6 +166,14 @@
 	p.p["clustertype"] = v
 }
 
+func (p *AddClusterParams) GetClustertype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clustertype"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetGuestvswitchname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -157,6 +181,14 @@
 	p.p["guestvswitchname"] = v
 }
 
+func (p *AddClusterParams) GetGuestvswitchname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["guestvswitchname"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetGuestvswitchtype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -164,6 +196,14 @@
 	p.p["guestvswitchtype"] = v
 }
 
+func (p *AddClusterParams) GetGuestvswitchtype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["guestvswitchtype"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -171,6 +211,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *AddClusterParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetOvm3cluster(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -178,6 +226,14 @@
 	p.p["ovm3cluster"] = v
 }
 
+func (p *AddClusterParams) GetOvm3cluster() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ovm3cluster"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetOvm3pool(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -185,6 +241,14 @@
 	p.p["ovm3pool"] = v
 }
 
+func (p *AddClusterParams) GetOvm3pool() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ovm3pool"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetOvm3vip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -192,6 +256,14 @@
 	p.p["ovm3vip"] = v
 }
 
+func (p *AddClusterParams) GetOvm3vip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ovm3vip"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -199,6 +271,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddClusterParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -206,6 +286,14 @@
 	p.p["podid"] = v
 }
 
+func (p *AddClusterParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetPublicvswitchname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -213,6 +301,14 @@
 	p.p["publicvswitchname"] = v
 }
 
+func (p *AddClusterParams) GetPublicvswitchname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["publicvswitchname"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetPublicvswitchtype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -220,6 +316,14 @@
 	p.p["publicvswitchtype"] = v
 }
 
+func (p *AddClusterParams) GetPublicvswitchtype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["publicvswitchtype"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -227,6 +331,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddClusterParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -234,6 +346,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddClusterParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetVsmipaddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -241,6 +361,14 @@
 	p.p["vsmipaddress"] = v
 }
 
+func (p *AddClusterParams) GetVsmipaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vsmipaddress"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetVsmpassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -248,6 +376,14 @@
 	p.p["vsmpassword"] = v
 }
 
+func (p *AddClusterParams) GetVsmpassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vsmpassword"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetVsmusername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -255,6 +391,14 @@
 	p.p["vsmusername"] = v
 }
 
+func (p *AddClusterParams) GetVsmusername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vsmusername"].(string)
+	return value, ok
+}
+
 func (p *AddClusterParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -262,6 +406,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *AddClusterParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddClusterParams instance,
 // as then you are sure you have configured all required params
 func (s *ClusterService) NewAddClusterParams(clustername string, clustertype string, hypervisor string, podid string, zoneid string) *AddClusterParams {
@@ -353,6 +505,14 @@
 	p.p["account"] = v
 }
 
+func (p *DedicateClusterParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *DedicateClusterParams) SetClusterid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -360,6 +520,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *DedicateClusterParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *DedicateClusterParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -367,6 +535,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *DedicateClusterParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DedicateClusterParams instance,
 // as then you are sure you have configured all required params
 func (s *ClusterService) NewDedicateClusterParams(clusterid string, domainid string) *DedicateClusterParams {
@@ -445,6 +621,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteClusterParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteClusterParams instance,
 // as then you are sure you have configured all required params
 func (s *ClusterService) NewDeleteClusterParams(id string) *DeleteClusterParams {
@@ -525,6 +709,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *DisableOutOfBandManagementForClusterParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DisableOutOfBandManagementForClusterParams instance,
 // as then you are sure you have configured all required params
 func (s *ClusterService) NewDisableOutOfBandManagementForClusterParams(clusterid string) *DisableOutOfBandManagementForClusterParams {
@@ -607,6 +799,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *EnableOutOfBandManagementForClusterParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new EnableOutOfBandManagementForClusterParams instance,
 // as then you are sure you have configured all required params
 func (s *ClusterService) NewEnableOutOfBandManagementForClusterParams(clusterid string) *EnableOutOfBandManagementForClusterParams {
@@ -689,6 +889,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *EnableHAForClusterParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new EnableHAForClusterParams instance,
 // as then you are sure you have configured all required params
 func (s *ClusterService) NewEnableHAForClusterParams(clusterid string) *EnableHAForClusterParams {
@@ -757,6 +965,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *DisableHAForClusterParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DisableHAForClusterParams instance,
 // as then you are sure you have configured all required params
 func (s *ClusterService) NewDisableHAForClusterParams(clusterid string) *DisableHAForClusterParams {
@@ -861,6 +1077,14 @@
 	p.p["allocationstate"] = v
 }
 
+func (p *ListClustersParams) GetAllocationstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["allocationstate"].(string)
+	return value, ok
+}
+
 func (p *ListClustersParams) SetClustertype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -868,6 +1092,14 @@
 	p.p["clustertype"] = v
 }
 
+func (p *ListClustersParams) GetClustertype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clustertype"].(string)
+	return value, ok
+}
+
 func (p *ListClustersParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -875,6 +1107,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *ListClustersParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *ListClustersParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -882,6 +1122,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListClustersParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListClustersParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -889,6 +1137,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListClustersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListClustersParams) SetManagedstate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -896,6 +1152,14 @@
 	p.p["managedstate"] = v
 }
 
+func (p *ListClustersParams) GetManagedstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["managedstate"].(string)
+	return value, ok
+}
+
 func (p *ListClustersParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -903,6 +1167,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListClustersParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListClustersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -910,6 +1182,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListClustersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListClustersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -917,6 +1197,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListClustersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListClustersParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -924,6 +1212,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListClustersParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *ListClustersParams) SetShowcapacities(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -931,6 +1227,14 @@
 	p.p["showcapacities"] = v
 }
 
+func (p *ListClustersParams) GetShowcapacities() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["showcapacities"].(bool)
+	return value, ok
+}
+
 func (p *ListClustersParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -938,6 +1242,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListClustersParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListClustersParams instance,
 // as then you are sure you have configured all required params
 func (s *ClusterService) NewListClustersParams() *ListClustersParams {
@@ -1142,6 +1454,14 @@
 	p.p["allocationstate"] = v
 }
 
+func (p *ListClustersMetricsParams) GetAllocationstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["allocationstate"].(string)
+	return value, ok
+}
+
 func (p *ListClustersMetricsParams) SetClustertype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1149,6 +1469,14 @@
 	p.p["clustertype"] = v
 }
 
+func (p *ListClustersMetricsParams) GetClustertype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clustertype"].(string)
+	return value, ok
+}
+
 func (p *ListClustersMetricsParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1156,6 +1484,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *ListClustersMetricsParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *ListClustersMetricsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1163,6 +1499,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListClustersMetricsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListClustersMetricsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1170,6 +1514,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListClustersMetricsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListClustersMetricsParams) SetManagedstate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1177,6 +1529,14 @@
 	p.p["managedstate"] = v
 }
 
+func (p *ListClustersMetricsParams) GetManagedstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["managedstate"].(string)
+	return value, ok
+}
+
 func (p *ListClustersMetricsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1184,6 +1544,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListClustersMetricsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListClustersMetricsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1191,6 +1559,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListClustersMetricsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListClustersMetricsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1198,6 +1574,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListClustersMetricsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListClustersMetricsParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1205,6 +1589,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListClustersMetricsParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *ListClustersMetricsParams) SetShowcapacities(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1212,6 +1604,14 @@
 	p.p["showcapacities"] = v
 }
 
+func (p *ListClustersMetricsParams) GetShowcapacities() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["showcapacities"].(bool)
+	return value, ok
+}
+
 func (p *ListClustersMetricsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1219,6 +1619,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListClustersMetricsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListClustersMetricsParams instance,
 // as then you are sure you have configured all required params
 func (s *ClusterService) NewListClustersMetricsParams() *ListClustersMetricsParams {
@@ -1425,6 +1833,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListDedicatedClustersParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedClustersParams) SetAffinitygroupid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1432,6 +1848,14 @@
 	p.p["affinitygroupid"] = v
 }
 
+func (p *ListDedicatedClustersParams) GetAffinitygroupid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["affinitygroupid"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedClustersParams) SetClusterid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1439,6 +1863,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *ListDedicatedClustersParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedClustersParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1446,6 +1878,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListDedicatedClustersParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedClustersParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1453,6 +1893,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListDedicatedClustersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedClustersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1460,6 +1908,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListDedicatedClustersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListDedicatedClustersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1467,6 +1923,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListDedicatedClustersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListDedicatedClustersParams instance,
 // as then you are sure you have configured all required params
 func (s *ClusterService) NewListDedicatedClustersParams() *ListDedicatedClustersParams {
@@ -1528,6 +1992,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *ReleaseDedicatedClusterParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ReleaseDedicatedClusterParams instance,
 // as then you are sure you have configured all required params
 func (s *ClusterService) NewReleaseDedicatedClusterParams(clusterid string) *ReleaseDedicatedClusterParams {
@@ -1611,6 +2083,14 @@
 	p.p["allocationstate"] = v
 }
 
+func (p *UpdateClusterParams) GetAllocationstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["allocationstate"].(string)
+	return value, ok
+}
+
 func (p *UpdateClusterParams) SetClustername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1618,6 +2098,14 @@
 	p.p["clustername"] = v
 }
 
+func (p *UpdateClusterParams) GetClustername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clustername"].(string)
+	return value, ok
+}
+
 func (p *UpdateClusterParams) SetClustertype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1625,6 +2113,14 @@
 	p.p["clustertype"] = v
 }
 
+func (p *UpdateClusterParams) GetClustertype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clustertype"].(string)
+	return value, ok
+}
+
 func (p *UpdateClusterParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1632,6 +2128,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *UpdateClusterParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *UpdateClusterParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1639,6 +2143,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateClusterParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateClusterParams) SetManagedstate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1646,6 +2158,14 @@
 	p.p["managedstate"] = v
 }
 
+func (p *UpdateClusterParams) GetManagedstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["managedstate"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateClusterParams instance,
 // as then you are sure you have configured all required params
 func (s *ClusterService) NewUpdateClusterParams(id string) *UpdateClusterParams {
diff --git a/cloudstack/ConfigurationService.go b/cloudstack/ConfigurationService.go
index 4987063..8ceb01d 100644
--- a/cloudstack/ConfigurationService.go
+++ b/cloudstack/ConfigurationService.go
@@ -153,6 +153,14 @@
 	p.p["accountid"] = v
 }
 
+func (p *ListConfigurationsParams) GetAccountid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accountid"].(string)
+	return value, ok
+}
+
 func (p *ListConfigurationsParams) SetCategory(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -160,6 +168,14 @@
 	p.p["category"] = v
 }
 
+func (p *ListConfigurationsParams) GetCategory() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["category"].(string)
+	return value, ok
+}
+
 func (p *ListConfigurationsParams) SetClusterid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -167,6 +183,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *ListConfigurationsParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *ListConfigurationsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -174,6 +198,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListConfigurationsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListConfigurationsParams) SetImagestoreuuid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -181,6 +213,14 @@
 	p.p["imagestoreuuid"] = v
 }
 
+func (p *ListConfigurationsParams) GetImagestoreuuid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["imagestoreuuid"].(string)
+	return value, ok
+}
+
 func (p *ListConfigurationsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -188,6 +228,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListConfigurationsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListConfigurationsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -195,6 +243,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListConfigurationsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListConfigurationsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -202,6 +258,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListConfigurationsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListConfigurationsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -209,6 +273,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListConfigurationsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListConfigurationsParams) SetStorageid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -216,6 +288,14 @@
 	p.p["storageid"] = v
 }
 
+func (p *ListConfigurationsParams) GetStorageid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storageid"].(string)
+	return value, ok
+}
+
 func (p *ListConfigurationsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -223,6 +303,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListConfigurationsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListConfigurationsParams instance,
 // as then you are sure you have configured all required params
 func (s *ConfigurationService) NewListConfigurationsParams() *ListConfigurationsParams {
@@ -293,6 +381,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListDeploymentPlannersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListDeploymentPlannersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -300,6 +396,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListDeploymentPlannersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListDeploymentPlannersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -307,6 +411,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListDeploymentPlannersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListDeploymentPlannersParams instance,
 // as then you are sure you have configured all required params
 func (s *ConfigurationService) NewListDeploymentPlannersParams() *ListDeploymentPlannersParams {
@@ -384,6 +496,14 @@
 	p.p["accountid"] = v
 }
 
+func (p *UpdateConfigurationParams) GetAccountid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accountid"].(string)
+	return value, ok
+}
+
 func (p *UpdateConfigurationParams) SetClusterid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -391,6 +511,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *UpdateConfigurationParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *UpdateConfigurationParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -398,6 +526,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *UpdateConfigurationParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *UpdateConfigurationParams) SetImagestoreuuid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -405,6 +541,14 @@
 	p.p["imagestoreuuid"] = v
 }
 
+func (p *UpdateConfigurationParams) GetImagestoreuuid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["imagestoreuuid"].(string)
+	return value, ok
+}
+
 func (p *UpdateConfigurationParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -412,6 +556,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateConfigurationParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateConfigurationParams) SetStorageid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -419,6 +571,14 @@
 	p.p["storageid"] = v
 }
 
+func (p *UpdateConfigurationParams) GetStorageid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storageid"].(string)
+	return value, ok
+}
+
 func (p *UpdateConfigurationParams) SetValue(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -426,6 +586,14 @@
 	p.p["value"] = v
 }
 
+func (p *UpdateConfigurationParams) GetValue() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["value"].(string)
+	return value, ok
+}
+
 func (p *UpdateConfigurationParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -433,6 +601,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *UpdateConfigurationParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateConfigurationParams instance,
 // as then you are sure you have configured all required params
 func (s *ConfigurationService) NewUpdateConfigurationParams(name string) *UpdateConfigurationParams {
diff --git a/cloudstack/CustomService.go b/cloudstack/CustomService.go
index 3ef6f0b..b21c24c 100644
--- a/cloudstack/CustomService.go
+++ b/cloudstack/CustomService.go
@@ -68,6 +68,13 @@
 	}
 	p.p[param] = v
 }
+func (p *CustomServiceParams) GetParam(param string) (interface{}, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p[param].(interface{})
+	return value, ok
+}
 
 func (s *CustomService) CustomRequest(api string, p *CustomServiceParams, result interface{}) error {
 	resp, err := s.cs.newRequest(api, p.toURLValues())
diff --git a/cloudstack/DiskOfferingService.go b/cloudstack/DiskOfferingService.go
index d299354..91e3095 100644
--- a/cloudstack/DiskOfferingService.go
+++ b/cloudstack/DiskOfferingService.go
@@ -165,6 +165,14 @@
 	p.p["bytesreadrate"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetBytesreadrate() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bytesreadrate"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetBytesreadratemax(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -172,6 +180,14 @@
 	p.p["bytesreadratemax"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetBytesreadratemax() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bytesreadratemax"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetBytesreadratemaxlength(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -179,6 +195,14 @@
 	p.p["bytesreadratemaxlength"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetBytesreadratemaxlength() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bytesreadratemaxlength"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetByteswriterate(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -186,6 +210,14 @@
 	p.p["byteswriterate"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetByteswriterate() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["byteswriterate"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetByteswriteratemax(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -193,6 +225,14 @@
 	p.p["byteswriteratemax"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetByteswriteratemax() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["byteswriteratemax"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetByteswriteratemaxlength(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -200,6 +240,14 @@
 	p.p["byteswriteratemaxlength"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetByteswriteratemaxlength() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["byteswriteratemaxlength"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetCachemode(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -207,6 +255,14 @@
 	p.p["cachemode"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetCachemode() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cachemode"].(string)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetCustomized(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -214,6 +270,14 @@
 	p.p["customized"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetCustomized() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customized"].(bool)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetCustomizediops(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -221,6 +285,14 @@
 	p.p["customizediops"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetCustomizediops() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customizediops"].(bool)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetDisksize(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -228,6 +300,14 @@
 	p.p["disksize"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetDisksize() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["disksize"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetDisplayoffering(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -235,6 +315,14 @@
 	p.p["displayoffering"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetDisplayoffering() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displayoffering"].(bool)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -242,6 +330,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetDomainid(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -249,6 +345,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetDomainid() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].([]string)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetHypervisorsnapshotreserve(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -256,6 +360,14 @@
 	p.p["hypervisorsnapshotreserve"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetHypervisorsnapshotreserve() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisorsnapshotreserve"].(int)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetIopsreadrate(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -263,6 +375,14 @@
 	p.p["iopsreadrate"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetIopsreadrate() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopsreadrate"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetIopsreadratemax(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -270,6 +390,14 @@
 	p.p["iopsreadratemax"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetIopsreadratemax() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopsreadratemax"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetIopsreadratemaxlength(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -277,6 +405,14 @@
 	p.p["iopsreadratemaxlength"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetIopsreadratemaxlength() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopsreadratemaxlength"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetIopswriterate(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -284,6 +420,14 @@
 	p.p["iopswriterate"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetIopswriterate() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopswriterate"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetIopswriteratemax(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -291,6 +435,14 @@
 	p.p["iopswriteratemax"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetIopswriteratemax() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopswriteratemax"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetIopswriteratemaxlength(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -298,6 +450,14 @@
 	p.p["iopswriteratemaxlength"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetIopswriteratemaxlength() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopswriteratemaxlength"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetMaxiops(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -305,6 +465,14 @@
 	p.p["maxiops"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetMaxiops() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["maxiops"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetMiniops(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -312,6 +480,14 @@
 	p.p["miniops"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetMiniops() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["miniops"].(int64)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -319,6 +495,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetProvisioningtype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -326,6 +510,14 @@
 	p.p["provisioningtype"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetProvisioningtype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["provisioningtype"].(string)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetStoragepolicy(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -333,6 +525,14 @@
 	p.p["storagepolicy"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetStoragepolicy() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storagepolicy"].(string)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetStoragetype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -340,6 +540,14 @@
 	p.p["storagetype"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetStoragetype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storagetype"].(string)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetTags(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -347,6 +555,14 @@
 	p.p["tags"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetTags() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(string)
+	return value, ok
+}
+
 func (p *CreateDiskOfferingParams) SetZoneid(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -354,6 +570,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreateDiskOfferingParams) GetZoneid() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateDiskOfferingParams instance,
 // as then you are sure you have configured all required params
 func (s *DiskOfferingService) NewCreateDiskOfferingParams(displaytext string, name string) *CreateDiskOfferingParams {
@@ -438,6 +662,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteDiskOfferingParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteDiskOfferingParams instance,
 // as then you are sure you have configured all required params
 func (s *DiskOfferingService) NewDeleteDiskOfferingParams(id string) *DeleteDiskOfferingParams {
@@ -546,6 +778,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListDiskOfferingsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListDiskOfferingsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -553,6 +793,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListDiskOfferingsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListDiskOfferingsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -560,6 +808,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListDiskOfferingsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListDiskOfferingsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -567,6 +823,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListDiskOfferingsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListDiskOfferingsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -574,6 +838,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListDiskOfferingsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListDiskOfferingsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -581,6 +853,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListDiskOfferingsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListDiskOfferingsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -588,6 +868,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListDiskOfferingsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListDiskOfferingsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -595,6 +883,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListDiskOfferingsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListDiskOfferingsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -602,6 +898,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListDiskOfferingsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListDiskOfferingsParams instance,
 // as then you are sure you have configured all required params
 func (s *DiskOfferingService) NewListDiskOfferingsParams() *ListDiskOfferingsParams {
@@ -846,6 +1150,14 @@
 	p.p["bytesreadrate"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetBytesreadrate() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bytesreadrate"].(int64)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetBytesreadratemax(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -853,6 +1165,14 @@
 	p.p["bytesreadratemax"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetBytesreadratemax() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bytesreadratemax"].(int64)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetBytesreadratemaxlength(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -860,6 +1180,14 @@
 	p.p["bytesreadratemaxlength"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetBytesreadratemaxlength() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bytesreadratemaxlength"].(int64)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetByteswriterate(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -867,6 +1195,14 @@
 	p.p["byteswriterate"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetByteswriterate() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["byteswriterate"].(int64)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetByteswriteratemax(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -874,6 +1210,14 @@
 	p.p["byteswriteratemax"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetByteswriteratemax() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["byteswriteratemax"].(int64)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetByteswriteratemaxlength(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -881,6 +1225,14 @@
 	p.p["byteswriteratemaxlength"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetByteswriteratemaxlength() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["byteswriteratemaxlength"].(int64)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetCachemode(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -888,6 +1240,14 @@
 	p.p["cachemode"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetCachemode() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cachemode"].(string)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetDisplayoffering(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -895,6 +1255,14 @@
 	p.p["displayoffering"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetDisplayoffering() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displayoffering"].(bool)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -902,6 +1270,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -909,6 +1285,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -916,6 +1300,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetIopsreadrate(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -923,6 +1315,14 @@
 	p.p["iopsreadrate"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetIopsreadrate() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopsreadrate"].(int64)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetIopsreadratemax(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -930,6 +1330,14 @@
 	p.p["iopsreadratemax"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetIopsreadratemax() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopsreadratemax"].(int64)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetIopsreadratemaxlength(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -937,6 +1345,14 @@
 	p.p["iopsreadratemaxlength"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetIopsreadratemaxlength() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopsreadratemaxlength"].(int64)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetIopswriterate(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -944,6 +1360,14 @@
 	p.p["iopswriterate"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetIopswriterate() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopswriterate"].(int64)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetIopswriteratemax(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -951,6 +1375,14 @@
 	p.p["iopswriteratemax"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetIopswriteratemax() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopswriteratemax"].(int64)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetIopswriteratemaxlength(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -958,6 +1390,14 @@
 	p.p["iopswriteratemaxlength"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetIopswriteratemaxlength() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopswriteratemaxlength"].(int64)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -965,6 +1405,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetSortkey(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -972,6 +1420,14 @@
 	p.p["sortkey"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetSortkey() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sortkey"].(int)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetTags(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -979,6 +1435,14 @@
 	p.p["tags"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetTags() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(string)
+	return value, ok
+}
+
 func (p *UpdateDiskOfferingParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -986,6 +1450,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *UpdateDiskOfferingParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateDiskOfferingParams instance,
 // as then you are sure you have configured all required params
 func (s *DiskOfferingService) NewUpdateDiskOfferingParams(id string) *UpdateDiskOfferingParams {
diff --git a/cloudstack/DomainService.go b/cloudstack/DomainService.go
index 376d5f3..e6668b7 100644
--- a/cloudstack/DomainService.go
+++ b/cloudstack/DomainService.go
@@ -77,6 +77,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateDomainParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateDomainParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -84,6 +92,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateDomainParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateDomainParams) SetNetworkdomain(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -91,6 +107,14 @@
 	p.p["networkdomain"] = v
 }
 
+func (p *CreateDomainParams) GetNetworkdomain() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkdomain"].(string)
+	return value, ok
+}
+
 func (p *CreateDomainParams) SetParentdomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -98,6 +122,14 @@
 	p.p["parentdomainid"] = v
 }
 
+func (p *CreateDomainParams) GetParentdomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["parentdomainid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateDomainParams instance,
 // as then you are sure you have configured all required params
 func (s *DomainService) NewCreateDomainParams(name string) *CreateDomainParams {
@@ -202,6 +234,14 @@
 	p.p["cleanup"] = v
 }
 
+func (p *DeleteDomainParams) GetCleanup() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cleanup"].(bool)
+	return value, ok
+}
+
 func (p *DeleteDomainParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -209,6 +249,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteDomainParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteDomainParams instance,
 // as then you are sure you have configured all required params
 func (s *DomainService) NewDeleteDomainParams(id string) *DeleteDomainParams {
@@ -299,6 +347,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListDomainChildrenParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListDomainChildrenParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -306,6 +362,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListDomainChildrenParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListDomainChildrenParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -313,6 +377,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListDomainChildrenParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListDomainChildrenParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -320,6 +392,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListDomainChildrenParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListDomainChildrenParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -327,6 +407,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListDomainChildrenParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListDomainChildrenParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -334,6 +422,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListDomainChildrenParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListDomainChildrenParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -341,6 +437,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListDomainChildrenParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListDomainChildrenParams instance,
 // as then you are sure you have configured all required params
 func (s *DomainService) NewListDomainChildrenParams() *ListDomainChildrenParams {
@@ -550,6 +654,14 @@
 	p.p["details"] = v
 }
 
+func (p *ListDomainsParams) GetDetails() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].([]string)
+	return value, ok
+}
+
 func (p *ListDomainsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -557,6 +669,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListDomainsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListDomainsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -564,6 +684,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListDomainsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListDomainsParams) SetLevel(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -571,6 +699,14 @@
 	p.p["level"] = v
 }
 
+func (p *ListDomainsParams) GetLevel() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["level"].(int)
+	return value, ok
+}
+
 func (p *ListDomainsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -578,6 +714,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListDomainsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListDomainsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -585,6 +729,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListDomainsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListDomainsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -592,6 +744,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListDomainsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListDomainsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -599,6 +759,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListDomainsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListDomainsParams instance,
 // as then you are sure you have configured all required params
 func (s *DomainService) NewListDomainsParams() *ListDomainsParams {
@@ -788,6 +956,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateDomainParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateDomainParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -795,6 +971,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateDomainParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateDomainParams) SetNetworkdomain(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -802,6 +986,14 @@
 	p.p["networkdomain"] = v
 }
 
+func (p *UpdateDomainParams) GetNetworkdomain() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkdomain"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateDomainParams instance,
 // as then you are sure you have configured all required params
 func (s *DomainService) NewUpdateDomainParams(id string) *UpdateDomainParams {
diff --git a/cloudstack/EventService.go b/cloudstack/EventService.go
index df12c6a..e2dbd99 100644
--- a/cloudstack/EventService.go
+++ b/cloudstack/EventService.go
@@ -71,6 +71,14 @@
 	p.p["enddate"] = v
 }
 
+func (p *ArchiveEventsParams) GetEnddate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enddate"].(string)
+	return value, ok
+}
+
 func (p *ArchiveEventsParams) SetIds(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -78,6 +86,14 @@
 	p.p["ids"] = v
 }
 
+func (p *ArchiveEventsParams) GetIds() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ids"].([]string)
+	return value, ok
+}
+
 func (p *ArchiveEventsParams) SetStartdate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -85,6 +101,14 @@
 	p.p["startdate"] = v
 }
 
+func (p *ArchiveEventsParams) GetStartdate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startdate"].(string)
+	return value, ok
+}
+
 func (p *ArchiveEventsParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -92,6 +116,14 @@
 	p.p["type"] = v
 }
 
+func (p *ArchiveEventsParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ArchiveEventsParams instance,
 // as then you are sure you have configured all required params
 func (s *EventService) NewArchiveEventsParams() *ArchiveEventsParams {
@@ -181,6 +213,14 @@
 	p.p["enddate"] = v
 }
 
+func (p *DeleteEventsParams) GetEnddate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enddate"].(string)
+	return value, ok
+}
+
 func (p *DeleteEventsParams) SetIds(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -188,6 +228,14 @@
 	p.p["ids"] = v
 }
 
+func (p *DeleteEventsParams) GetIds() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ids"].([]string)
+	return value, ok
+}
+
 func (p *DeleteEventsParams) SetStartdate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -195,6 +243,14 @@
 	p.p["startdate"] = v
 }
 
+func (p *DeleteEventsParams) GetStartdate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startdate"].(string)
+	return value, ok
+}
+
 func (p *DeleteEventsParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -202,6 +258,14 @@
 	p.p["type"] = v
 }
 
+func (p *DeleteEventsParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteEventsParams instance,
 // as then you are sure you have configured all required params
 func (s *EventService) NewDeleteEventsParams() *DeleteEventsParams {
@@ -378,6 +442,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListEventsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -385,6 +457,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListEventsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetDuration(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -392,6 +472,14 @@
 	p.p["duration"] = v
 }
 
+func (p *ListEventsParams) GetDuration() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["duration"].(int)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetEnddate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -399,6 +487,14 @@
 	p.p["enddate"] = v
 }
 
+func (p *ListEventsParams) GetEnddate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enddate"].(string)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetEntrytime(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -406,6 +502,14 @@
 	p.p["entrytime"] = v
 }
 
+func (p *ListEventsParams) GetEntrytime() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["entrytime"].(int)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -413,6 +517,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListEventsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -420,6 +532,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListEventsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -427,6 +547,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListEventsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetLevel(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -434,6 +562,14 @@
 	p.p["level"] = v
 }
 
+func (p *ListEventsParams) GetLevel() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["level"].(string)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -441,6 +577,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListEventsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -448,6 +592,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListEventsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -455,6 +607,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListEventsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -462,6 +622,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListEventsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetStartdate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -469,6 +637,14 @@
 	p.p["startdate"] = v
 }
 
+func (p *ListEventsParams) GetStartdate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startdate"].(string)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetStartid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -476,6 +652,14 @@
 	p.p["startid"] = v
 }
 
+func (p *ListEventsParams) GetStartid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startid"].(string)
+	return value, ok
+}
+
 func (p *ListEventsParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -483,6 +667,14 @@
 	p.p["type"] = v
 }
 
+func (p *ListEventsParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListEventsParams instance,
 // as then you are sure you have configured all required params
 func (s *EventService) NewListEventsParams() *ListEventsParams {
diff --git a/cloudstack/FirewallService.go b/cloudstack/FirewallService.go
index a65f60d..165b4a9 100644
--- a/cloudstack/FirewallService.go
+++ b/cloudstack/FirewallService.go
@@ -149,6 +149,14 @@
 	p.p["networkdevicetype"] = v
 }
 
+func (p *AddPaloAltoFirewallParams) GetNetworkdevicetype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkdevicetype"].(string)
+	return value, ok
+}
+
 func (p *AddPaloAltoFirewallParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -156,6 +164,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddPaloAltoFirewallParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddPaloAltoFirewallParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -163,6 +179,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *AddPaloAltoFirewallParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *AddPaloAltoFirewallParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -170,6 +194,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddPaloAltoFirewallParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddPaloAltoFirewallParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -177,6 +209,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddPaloAltoFirewallParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddPaloAltoFirewallParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewAddPaloAltoFirewallParams(networkdevicetype string, password string, physicalnetworkid string, url string, username string) *AddPaloAltoFirewallParams {
@@ -277,6 +317,14 @@
 	p.p["fwdevicecapacity"] = v
 }
 
+func (p *ConfigurePaloAltoFirewallParams) GetFwdevicecapacity() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fwdevicecapacity"].(int64)
+	return value, ok
+}
+
 func (p *ConfigurePaloAltoFirewallParams) SetFwdeviceid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -284,6 +332,14 @@
 	p.p["fwdeviceid"] = v
 }
 
+func (p *ConfigurePaloAltoFirewallParams) GetFwdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fwdeviceid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ConfigurePaloAltoFirewallParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewConfigurePaloAltoFirewallParams(fwdeviceid string) *ConfigurePaloAltoFirewallParams {
@@ -410,6 +466,14 @@
 	p.p["cidrlist"] = v
 }
 
+func (p *CreateEgressFirewallRuleParams) GetCidrlist() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cidrlist"].([]string)
+	return value, ok
+}
+
 func (p *CreateEgressFirewallRuleParams) SetDestcidrlist(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -417,6 +481,14 @@
 	p.p["destcidrlist"] = v
 }
 
+func (p *CreateEgressFirewallRuleParams) GetDestcidrlist() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["destcidrlist"].([]string)
+	return value, ok
+}
+
 func (p *CreateEgressFirewallRuleParams) SetEndport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -424,6 +496,14 @@
 	p.p["endport"] = v
 }
 
+func (p *CreateEgressFirewallRuleParams) GetEndport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endport"].(int)
+	return value, ok
+}
+
 func (p *CreateEgressFirewallRuleParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -431,6 +511,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateEgressFirewallRuleParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateEgressFirewallRuleParams) SetIcmpcode(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -438,6 +526,14 @@
 	p.p["icmpcode"] = v
 }
 
+func (p *CreateEgressFirewallRuleParams) GetIcmpcode() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["icmpcode"].(int)
+	return value, ok
+}
+
 func (p *CreateEgressFirewallRuleParams) SetIcmptype(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -445,6 +541,14 @@
 	p.p["icmptype"] = v
 }
 
+func (p *CreateEgressFirewallRuleParams) GetIcmptype() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["icmptype"].(int)
+	return value, ok
+}
+
 func (p *CreateEgressFirewallRuleParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -452,6 +556,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *CreateEgressFirewallRuleParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *CreateEgressFirewallRuleParams) SetProtocol(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -459,6 +571,14 @@
 	p.p["protocol"] = v
 }
 
+func (p *CreateEgressFirewallRuleParams) GetProtocol() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["protocol"].(string)
+	return value, ok
+}
+
 func (p *CreateEgressFirewallRuleParams) SetStartport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -466,6 +586,14 @@
 	p.p["startport"] = v
 }
 
+func (p *CreateEgressFirewallRuleParams) GetStartport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startport"].(int)
+	return value, ok
+}
+
 func (p *CreateEgressFirewallRuleParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -473,6 +601,14 @@
 	p.p["type"] = v
 }
 
+func (p *CreateEgressFirewallRuleParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateEgressFirewallRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewCreateEgressFirewallRuleParams(networkid string, protocol string) *CreateEgressFirewallRuleParams {
@@ -594,6 +730,14 @@
 	p.p["cidrlist"] = v
 }
 
+func (p *CreateFirewallRuleParams) GetCidrlist() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cidrlist"].([]string)
+	return value, ok
+}
+
 func (p *CreateFirewallRuleParams) SetEndport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -601,6 +745,14 @@
 	p.p["endport"] = v
 }
 
+func (p *CreateFirewallRuleParams) GetEndport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endport"].(int)
+	return value, ok
+}
+
 func (p *CreateFirewallRuleParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -608,6 +760,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateFirewallRuleParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateFirewallRuleParams) SetIcmpcode(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -615,6 +775,14 @@
 	p.p["icmpcode"] = v
 }
 
+func (p *CreateFirewallRuleParams) GetIcmpcode() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["icmpcode"].(int)
+	return value, ok
+}
+
 func (p *CreateFirewallRuleParams) SetIcmptype(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -622,6 +790,14 @@
 	p.p["icmptype"] = v
 }
 
+func (p *CreateFirewallRuleParams) GetIcmptype() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["icmptype"].(int)
+	return value, ok
+}
+
 func (p *CreateFirewallRuleParams) SetIpaddressid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -629,6 +805,14 @@
 	p.p["ipaddressid"] = v
 }
 
+func (p *CreateFirewallRuleParams) GetIpaddressid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddressid"].(string)
+	return value, ok
+}
+
 func (p *CreateFirewallRuleParams) SetProtocol(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -636,6 +820,14 @@
 	p.p["protocol"] = v
 }
 
+func (p *CreateFirewallRuleParams) GetProtocol() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["protocol"].(string)
+	return value, ok
+}
+
 func (p *CreateFirewallRuleParams) SetStartport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -643,6 +835,14 @@
 	p.p["startport"] = v
 }
 
+func (p *CreateFirewallRuleParams) GetStartport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startport"].(int)
+	return value, ok
+}
+
 func (p *CreateFirewallRuleParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -650,6 +850,14 @@
 	p.p["type"] = v
 }
 
+func (p *CreateFirewallRuleParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateFirewallRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewCreateFirewallRuleParams(ipaddressid string, protocol string) *CreateFirewallRuleParams {
@@ -781,6 +989,14 @@
 	p.p["cidrlist"] = v
 }
 
+func (p *CreatePortForwardingRuleParams) GetCidrlist() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cidrlist"].([]string)
+	return value, ok
+}
+
 func (p *CreatePortForwardingRuleParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -788,6 +1004,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreatePortForwardingRuleParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreatePortForwardingRuleParams) SetIpaddressid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -795,6 +1019,14 @@
 	p.p["ipaddressid"] = v
 }
 
+func (p *CreatePortForwardingRuleParams) GetIpaddressid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddressid"].(string)
+	return value, ok
+}
+
 func (p *CreatePortForwardingRuleParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -802,6 +1034,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *CreatePortForwardingRuleParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *CreatePortForwardingRuleParams) SetOpenfirewall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -809,6 +1049,14 @@
 	p.p["openfirewall"] = v
 }
 
+func (p *CreatePortForwardingRuleParams) GetOpenfirewall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["openfirewall"].(bool)
+	return value, ok
+}
+
 func (p *CreatePortForwardingRuleParams) SetPrivateendport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -816,6 +1064,14 @@
 	p.p["privateendport"] = v
 }
 
+func (p *CreatePortForwardingRuleParams) GetPrivateendport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["privateendport"].(int)
+	return value, ok
+}
+
 func (p *CreatePortForwardingRuleParams) SetPrivateport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -823,6 +1079,14 @@
 	p.p["privateport"] = v
 }
 
+func (p *CreatePortForwardingRuleParams) GetPrivateport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["privateport"].(int)
+	return value, ok
+}
+
 func (p *CreatePortForwardingRuleParams) SetProtocol(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -830,6 +1094,14 @@
 	p.p["protocol"] = v
 }
 
+func (p *CreatePortForwardingRuleParams) GetProtocol() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["protocol"].(string)
+	return value, ok
+}
+
 func (p *CreatePortForwardingRuleParams) SetPublicendport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -837,6 +1109,14 @@
 	p.p["publicendport"] = v
 }
 
+func (p *CreatePortForwardingRuleParams) GetPublicendport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["publicendport"].(int)
+	return value, ok
+}
+
 func (p *CreatePortForwardingRuleParams) SetPublicport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -844,6 +1124,14 @@
 	p.p["publicport"] = v
 }
 
+func (p *CreatePortForwardingRuleParams) GetPublicport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["publicport"].(int)
+	return value, ok
+}
+
 func (p *CreatePortForwardingRuleParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -851,6 +1139,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *CreatePortForwardingRuleParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 func (p *CreatePortForwardingRuleParams) SetVmguestip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -858,6 +1154,14 @@
 	p.p["vmguestip"] = v
 }
 
+func (p *CreatePortForwardingRuleParams) GetVmguestip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vmguestip"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreatePortForwardingRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewCreatePortForwardingRuleParams(ipaddressid string, privateport int, protocol string, publicport int, virtualmachineid string) *CreatePortForwardingRuleParams {
@@ -955,6 +1259,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteEgressFirewallRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteEgressFirewallRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewDeleteEgressFirewallRuleParams(id string) *DeleteEgressFirewallRuleParams {
@@ -1028,6 +1340,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteFirewallRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteFirewallRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewDeleteFirewallRuleParams(id string) *DeleteFirewallRuleParams {
@@ -1101,6 +1421,14 @@
 	p.p["fwdeviceid"] = v
 }
 
+func (p *DeletePaloAltoFirewallParams) GetFwdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fwdeviceid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeletePaloAltoFirewallParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewDeletePaloAltoFirewallParams(fwdeviceid string) *DeletePaloAltoFirewallParams {
@@ -1174,6 +1502,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeletePortForwardingRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeletePortForwardingRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewDeletePortForwardingRuleParams(id string) *DeletePortForwardingRuleParams {
@@ -1292,6 +1628,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListEgressFirewallRulesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListEgressFirewallRulesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1299,6 +1643,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListEgressFirewallRulesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListEgressFirewallRulesParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1306,6 +1658,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListEgressFirewallRulesParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListEgressFirewallRulesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1313,6 +1673,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListEgressFirewallRulesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListEgressFirewallRulesParams) SetIpaddressid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1320,6 +1688,14 @@
 	p.p["ipaddressid"] = v
 }
 
+func (p *ListEgressFirewallRulesParams) GetIpaddressid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddressid"].(string)
+	return value, ok
+}
+
 func (p *ListEgressFirewallRulesParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1327,6 +1703,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListEgressFirewallRulesParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListEgressFirewallRulesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1334,6 +1718,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListEgressFirewallRulesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListEgressFirewallRulesParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1341,6 +1733,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListEgressFirewallRulesParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListEgressFirewallRulesParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1348,6 +1748,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListEgressFirewallRulesParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListEgressFirewallRulesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1355,6 +1763,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListEgressFirewallRulesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListEgressFirewallRulesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1362,6 +1778,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListEgressFirewallRulesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListEgressFirewallRulesParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1369,6 +1793,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListEgressFirewallRulesParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListEgressFirewallRulesParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1376,6 +1808,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListEgressFirewallRulesParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListEgressFirewallRulesParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewListEgressFirewallRulesParams() *ListEgressFirewallRulesParams {
@@ -1528,6 +1968,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListFirewallRulesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListFirewallRulesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1535,6 +1983,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListFirewallRulesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListFirewallRulesParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1542,6 +1998,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListFirewallRulesParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListFirewallRulesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1549,6 +2013,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListFirewallRulesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListFirewallRulesParams) SetIpaddressid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1556,6 +2028,14 @@
 	p.p["ipaddressid"] = v
 }
 
+func (p *ListFirewallRulesParams) GetIpaddressid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddressid"].(string)
+	return value, ok
+}
+
 func (p *ListFirewallRulesParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1563,6 +2043,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListFirewallRulesParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListFirewallRulesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1570,6 +2058,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListFirewallRulesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListFirewallRulesParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1577,6 +2073,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListFirewallRulesParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListFirewallRulesParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1584,6 +2088,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListFirewallRulesParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListFirewallRulesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1591,6 +2103,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListFirewallRulesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListFirewallRulesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1598,6 +2118,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListFirewallRulesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListFirewallRulesParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1605,6 +2133,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListFirewallRulesParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListFirewallRulesParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1612,6 +2148,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListFirewallRulesParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListFirewallRulesParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewListFirewallRulesParams() *ListFirewallRulesParams {
@@ -1733,6 +2277,14 @@
 	p.p["fwdeviceid"] = v
 }
 
+func (p *ListPaloAltoFirewallsParams) GetFwdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fwdeviceid"].(string)
+	return value, ok
+}
+
 func (p *ListPaloAltoFirewallsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1740,6 +2292,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListPaloAltoFirewallsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListPaloAltoFirewallsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1747,6 +2307,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListPaloAltoFirewallsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListPaloAltoFirewallsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1754,6 +2322,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListPaloAltoFirewallsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListPaloAltoFirewallsParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1761,6 +2337,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *ListPaloAltoFirewallsParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListPaloAltoFirewallsParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewListPaloAltoFirewallsParams() *ListPaloAltoFirewallsParams {
@@ -1882,6 +2466,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListPortForwardingRulesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListPortForwardingRulesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1889,6 +2481,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListPortForwardingRulesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListPortForwardingRulesParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1896,6 +2496,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListPortForwardingRulesParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListPortForwardingRulesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1903,6 +2511,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListPortForwardingRulesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListPortForwardingRulesParams) SetIpaddressid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1910,6 +2526,14 @@
 	p.p["ipaddressid"] = v
 }
 
+func (p *ListPortForwardingRulesParams) GetIpaddressid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddressid"].(string)
+	return value, ok
+}
+
 func (p *ListPortForwardingRulesParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1917,6 +2541,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListPortForwardingRulesParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListPortForwardingRulesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1924,6 +2556,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListPortForwardingRulesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListPortForwardingRulesParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1931,6 +2571,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListPortForwardingRulesParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListPortForwardingRulesParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1938,6 +2586,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListPortForwardingRulesParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListPortForwardingRulesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1945,6 +2601,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListPortForwardingRulesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListPortForwardingRulesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1952,6 +2616,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListPortForwardingRulesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListPortForwardingRulesParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1959,6 +2631,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListPortForwardingRulesParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListPortForwardingRulesParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1966,6 +2646,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListPortForwardingRulesParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListPortForwardingRulesParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewListPortForwardingRulesParams() *ListPortForwardingRulesParams {
@@ -2083,6 +2771,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateEgressFirewallRuleParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateEgressFirewallRuleParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2090,6 +2786,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateEgressFirewallRuleParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateEgressFirewallRuleParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2097,6 +2801,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateEgressFirewallRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateEgressFirewallRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewUpdateEgressFirewallRuleParams(id string) *UpdateEgressFirewallRuleParams {
@@ -2194,6 +2906,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateFirewallRuleParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateFirewallRuleParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2201,6 +2921,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateFirewallRuleParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateFirewallRuleParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2208,6 +2936,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateFirewallRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateFirewallRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewUpdateFirewallRuleParams(id string) *UpdateFirewallRuleParams {
@@ -2319,6 +3055,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdatePortForwardingRuleParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdatePortForwardingRuleParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2326,6 +3070,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdatePortForwardingRuleParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdatePortForwardingRuleParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2333,6 +3085,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdatePortForwardingRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdatePortForwardingRuleParams) SetPrivateendport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2340,6 +3100,14 @@
 	p.p["privateendport"] = v
 }
 
+func (p *UpdatePortForwardingRuleParams) GetPrivateendport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["privateendport"].(int)
+	return value, ok
+}
+
 func (p *UpdatePortForwardingRuleParams) SetPrivateport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2347,6 +3115,14 @@
 	p.p["privateport"] = v
 }
 
+func (p *UpdatePortForwardingRuleParams) GetPrivateport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["privateport"].(int)
+	return value, ok
+}
+
 func (p *UpdatePortForwardingRuleParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2354,6 +3130,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *UpdatePortForwardingRuleParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 func (p *UpdatePortForwardingRuleParams) SetVmguestip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2361,6 +3145,14 @@
 	p.p["vmguestip"] = v
 }
 
+func (p *UpdatePortForwardingRuleParams) GetVmguestip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vmguestip"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdatePortForwardingRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *FirewallService) NewUpdatePortForwardingRuleParams(id string) *UpdatePortForwardingRuleParams {
diff --git a/cloudstack/GuestOSService.go b/cloudstack/GuestOSService.go
index 7a1edc7..a0246a4 100644
--- a/cloudstack/GuestOSService.go
+++ b/cloudstack/GuestOSService.go
@@ -88,6 +88,14 @@
 	p.p["details"] = v
 }
 
+func (p *AddGuestOsParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *AddGuestOsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -95,6 +103,14 @@
 	p.p["name"] = v
 }
 
+func (p *AddGuestOsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *AddGuestOsParams) SetOscategoryid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -102,6 +118,14 @@
 	p.p["oscategoryid"] = v
 }
 
+func (p *AddGuestOsParams) GetOscategoryid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["oscategoryid"].(string)
+	return value, ok
+}
+
 func (p *AddGuestOsParams) SetOsdisplayname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -109,6 +133,14 @@
 	p.p["osdisplayname"] = v
 }
 
+func (p *AddGuestOsParams) GetOsdisplayname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["osdisplayname"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddGuestOsParams instance,
 // as then you are sure you have configured all required params
 func (s *GuestOSService) NewAddGuestOsParams(details map[string]string, oscategoryid string, osdisplayname string) *AddGuestOsParams {
@@ -198,6 +230,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *AddGuestOsMappingParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *AddGuestOsMappingParams) SetHypervisorversion(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -205,6 +245,14 @@
 	p.p["hypervisorversion"] = v
 }
 
+func (p *AddGuestOsMappingParams) GetHypervisorversion() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisorversion"].(string)
+	return value, ok
+}
+
 func (p *AddGuestOsMappingParams) SetOsdisplayname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -212,6 +260,14 @@
 	p.p["osdisplayname"] = v
 }
 
+func (p *AddGuestOsMappingParams) GetOsdisplayname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["osdisplayname"].(string)
+	return value, ok
+}
+
 func (p *AddGuestOsMappingParams) SetOsnameforhypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -219,6 +275,14 @@
 	p.p["osnameforhypervisor"] = v
 }
 
+func (p *AddGuestOsMappingParams) GetOsnameforhypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["osnameforhypervisor"].(string)
+	return value, ok
+}
+
 func (p *AddGuestOsMappingParams) SetOstypeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -226,6 +290,14 @@
 	p.p["ostypeid"] = v
 }
 
+func (p *AddGuestOsMappingParams) GetOstypeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ostypeid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddGuestOsMappingParams instance,
 // as then you are sure you have configured all required params
 func (s *GuestOSService) NewAddGuestOsMappingParams(hypervisor string, hypervisorversion string, osnameforhypervisor string) *AddGuestOsMappingParams {
@@ -353,6 +425,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *ListGuestOsMappingParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *ListGuestOsMappingParams) SetHypervisorversion(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -360,6 +440,14 @@
 	p.p["hypervisorversion"] = v
 }
 
+func (p *ListGuestOsMappingParams) GetHypervisorversion() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisorversion"].(string)
+	return value, ok
+}
+
 func (p *ListGuestOsMappingParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -367,6 +455,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListGuestOsMappingParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListGuestOsMappingParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -374,6 +470,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListGuestOsMappingParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListGuestOsMappingParams) SetOstypeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -381,6 +485,14 @@
 	p.p["ostypeid"] = v
 }
 
+func (p *ListGuestOsMappingParams) GetOstypeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ostypeid"].(string)
+	return value, ok
+}
+
 func (p *ListGuestOsMappingParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -388,6 +500,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListGuestOsMappingParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListGuestOsMappingParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -395,6 +515,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListGuestOsMappingParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListGuestOsMappingParams instance,
 // as then you are sure you have configured all required params
 func (s *GuestOSService) NewListGuestOsMappingParams() *ListGuestOsMappingParams {
@@ -531,6 +659,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListOsCategoriesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListOsCategoriesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -538,6 +674,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListOsCategoriesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListOsCategoriesParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -545,6 +689,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListOsCategoriesParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListOsCategoriesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -552,6 +704,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListOsCategoriesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListOsCategoriesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -559,6 +719,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListOsCategoriesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListOsCategoriesParams instance,
 // as then you are sure you have configured all required params
 func (s *GuestOSService) NewListOsCategoriesParams() *ListOsCategoriesParams {
@@ -716,6 +884,14 @@
 	p.p["description"] = v
 }
 
+func (p *ListOsTypesParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *ListOsTypesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -723,6 +899,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListOsTypesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListOsTypesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -730,6 +914,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListOsTypesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListOsTypesParams) SetOscategoryid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -737,6 +929,14 @@
 	p.p["oscategoryid"] = v
 }
 
+func (p *ListOsTypesParams) GetOscategoryid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["oscategoryid"].(string)
+	return value, ok
+}
+
 func (p *ListOsTypesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -744,6 +944,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListOsTypesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListOsTypesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -751,6 +959,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListOsTypesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListOsTypesParams instance,
 // as then you are sure you have configured all required params
 func (s *GuestOSService) NewListOsTypesParams() *ListOsTypesParams {
@@ -843,6 +1059,14 @@
 	p.p["id"] = v
 }
 
+func (p *RemoveGuestOsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RemoveGuestOsParams instance,
 // as then you are sure you have configured all required params
 func (s *GuestOSService) NewRemoveGuestOsParams(id string) *RemoveGuestOsParams {
@@ -911,6 +1135,14 @@
 	p.p["id"] = v
 }
 
+func (p *RemoveGuestOsMappingParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RemoveGuestOsMappingParams instance,
 // as then you are sure you have configured all required params
 func (s *GuestOSService) NewRemoveGuestOsMappingParams(id string) *RemoveGuestOsMappingParams {
@@ -989,6 +1221,14 @@
 	p.p["details"] = v
 }
 
+func (p *UpdateGuestOsParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *UpdateGuestOsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -996,6 +1236,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateGuestOsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateGuestOsParams) SetOsdisplayname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1003,6 +1251,14 @@
 	p.p["osdisplayname"] = v
 }
 
+func (p *UpdateGuestOsParams) GetOsdisplayname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["osdisplayname"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateGuestOsParams instance,
 // as then you are sure you have configured all required params
 func (s *GuestOSService) NewUpdateGuestOsParams(details map[string]string, id string, osdisplayname string) *UpdateGuestOsParams {
@@ -1083,6 +1339,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateGuestOsMappingParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateGuestOsMappingParams) SetOsnameforhypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1090,6 +1354,14 @@
 	p.p["osnameforhypervisor"] = v
 }
 
+func (p *UpdateGuestOsMappingParams) GetOsnameforhypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["osnameforhypervisor"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateGuestOsMappingParams instance,
 // as then you are sure you have configured all required params
 func (s *GuestOSService) NewUpdateGuestOsMappingParams(id string, osnameforhypervisor string) *UpdateGuestOsMappingParams {
diff --git a/cloudstack/HostService.go b/cloudstack/HostService.go
index b66d032..8c51c61 100644
--- a/cloudstack/HostService.go
+++ b/cloudstack/HostService.go
@@ -134,6 +134,14 @@
 	p.p["allocationstate"] = v
 }
 
+func (p *AddBaremetalHostParams) GetAllocationstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["allocationstate"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalHostParams) SetClusterid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -141,6 +149,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *AddBaremetalHostParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalHostParams) SetClustername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -148,6 +164,14 @@
 	p.p["clustername"] = v
 }
 
+func (p *AddBaremetalHostParams) GetClustername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clustername"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalHostParams) SetHosttags(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -155,6 +179,14 @@
 	p.p["hosttags"] = v
 }
 
+func (p *AddBaremetalHostParams) GetHosttags() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hosttags"].([]string)
+	return value, ok
+}
+
 func (p *AddBaremetalHostParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -162,6 +194,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *AddBaremetalHostParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalHostParams) SetIpaddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -169,6 +209,14 @@
 	p.p["ipaddress"] = v
 }
 
+func (p *AddBaremetalHostParams) GetIpaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddress"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalHostParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -176,6 +224,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddBaremetalHostParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalHostParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -183,6 +239,14 @@
 	p.p["podid"] = v
 }
 
+func (p *AddBaremetalHostParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalHostParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -190,6 +254,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddBaremetalHostParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalHostParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -197,6 +269,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddBaremetalHostParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 func (p *AddBaremetalHostParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -204,6 +284,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *AddBaremetalHostParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddBaremetalHostParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewAddBaremetalHostParams(hypervisor string, password string, podid string, url string, username string, zoneid string) *AddBaremetalHostParams {
@@ -343,6 +431,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddGloboDnsHostParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddGloboDnsHostParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -350,6 +446,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *AddGloboDnsHostParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *AddGloboDnsHostParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -357,6 +461,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddGloboDnsHostParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddGloboDnsHostParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -364,6 +476,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddGloboDnsHostParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddGloboDnsHostParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewAddGloboDnsHostParams(password string, physicalnetworkid string, url string, username string) *AddGloboDnsHostParams {
@@ -463,6 +583,14 @@
 	p.p["allocationstate"] = v
 }
 
+func (p *AddHostParams) GetAllocationstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["allocationstate"].(string)
+	return value, ok
+}
+
 func (p *AddHostParams) SetClusterid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -470,6 +598,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *AddHostParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *AddHostParams) SetClustername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -477,6 +613,14 @@
 	p.p["clustername"] = v
 }
 
+func (p *AddHostParams) GetClustername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clustername"].(string)
+	return value, ok
+}
+
 func (p *AddHostParams) SetHosttags(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -484,6 +628,14 @@
 	p.p["hosttags"] = v
 }
 
+func (p *AddHostParams) GetHosttags() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hosttags"].([]string)
+	return value, ok
+}
+
 func (p *AddHostParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -491,6 +643,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *AddHostParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *AddHostParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -498,6 +658,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddHostParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddHostParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -505,6 +673,14 @@
 	p.p["podid"] = v
 }
 
+func (p *AddHostParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *AddHostParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -512,6 +688,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddHostParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddHostParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -519,6 +703,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddHostParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 func (p *AddHostParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -526,6 +718,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *AddHostParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddHostParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewAddHostParams(hypervisor string, password string, podid string, url string, username string, zoneid string) *AddHostParams {
@@ -659,6 +859,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddSecondaryStorageParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddSecondaryStorageParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -666,6 +874,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *AddSecondaryStorageParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddSecondaryStorageParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewAddSecondaryStorageParams(url string) *AddSecondaryStorageParams {
@@ -728,6 +944,14 @@
 	p.p["id"] = v
 }
 
+func (p *CancelHostMaintenanceParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CancelHostMaintenanceParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewCancelHostMaintenanceParams(id string) *CancelHostMaintenanceParams {
@@ -876,6 +1100,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *ConfigureHAForHostParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *ConfigureHAForHostParams) SetProvider(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -883,6 +1115,14 @@
 	p.p["provider"] = v
 }
 
+func (p *ConfigureHAForHostParams) GetProvider() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["provider"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ConfigureHAForHostParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewConfigureHAForHostParams(hostid string, provider string) *ConfigureHAForHostParams {
@@ -960,6 +1200,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *EnableHAForHostParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new EnableHAForHostParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewEnableHAForHostParams(hostid string) *EnableHAForHostParams {
@@ -1042,6 +1290,14 @@
 	p.p["account"] = v
 }
 
+func (p *DedicateHostParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *DedicateHostParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1049,6 +1305,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *DedicateHostParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *DedicateHostParams) SetHostid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1056,6 +1320,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *DedicateHostParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DedicateHostParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewDedicateHostParams(domainid string, hostid string) *DedicateHostParams {
@@ -1142,6 +1414,14 @@
 	p.p["forced"] = v
 }
 
+func (p *DeleteHostParams) GetForced() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forced"].(bool)
+	return value, ok
+}
+
 func (p *DeleteHostParams) SetForcedestroylocalstorage(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1149,6 +1429,14 @@
 	p.p["forcedestroylocalstorage"] = v
 }
 
+func (p *DeleteHostParams) GetForcedestroylocalstorage() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forcedestroylocalstorage"].(bool)
+	return value, ok
+}
+
 func (p *DeleteHostParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1156,6 +1444,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteHostParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteHostParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewDeleteHostParams(id string) *DeleteHostParams {
@@ -1236,6 +1532,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *DisableOutOfBandManagementForHostParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DisableOutOfBandManagementForHostParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewDisableOutOfBandManagementForHostParams(hostid string) *DisableOutOfBandManagementForHostParams {
@@ -1318,6 +1622,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *EnableOutOfBandManagementForHostParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new EnableOutOfBandManagementForHostParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewEnableOutOfBandManagementForHostParams(hostid string) *EnableOutOfBandManagementForHostParams {
@@ -1411,6 +1723,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *FindHostsForMigrationParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *FindHostsForMigrationParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1418,6 +1738,14 @@
 	p.p["page"] = v
 }
 
+func (p *FindHostsForMigrationParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *FindHostsForMigrationParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1425,6 +1753,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *FindHostsForMigrationParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *FindHostsForMigrationParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1432,6 +1768,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *FindHostsForMigrationParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new FindHostsForMigrationParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewFindHostsForMigrationParams(virtualmachineid string) *FindHostsForMigrationParams {
@@ -1553,6 +1897,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListDedicatedHostsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedHostsParams) SetAffinitygroupid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1560,6 +1912,14 @@
 	p.p["affinitygroupid"] = v
 }
 
+func (p *ListDedicatedHostsParams) GetAffinitygroupid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["affinitygroupid"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedHostsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1567,6 +1927,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListDedicatedHostsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedHostsParams) SetHostid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1574,6 +1942,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *ListDedicatedHostsParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedHostsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1581,6 +1957,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListDedicatedHostsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedHostsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1588,6 +1972,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListDedicatedHostsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListDedicatedHostsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1595,6 +1987,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListDedicatedHostsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListDedicatedHostsParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewListDedicatedHostsParams() *ListDedicatedHostsParams {
@@ -1664,6 +2064,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListHostTagsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListHostTagsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1671,6 +2079,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListHostTagsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListHostTagsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1678,6 +2094,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListHostTagsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListHostTagsParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewListHostTagsParams() *ListHostTagsParams {
@@ -1825,6 +2249,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *ListHostsParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetDetails(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1832,6 +2264,14 @@
 	p.p["details"] = v
 }
 
+func (p *ListHostsParams) GetDetails() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].([]string)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetHahost(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1839,6 +2279,14 @@
 	p.p["hahost"] = v
 }
 
+func (p *ListHostsParams) GetHahost() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hahost"].(bool)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1846,6 +2294,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *ListHostsParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1853,6 +2309,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListHostsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1860,6 +2324,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListHostsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1867,6 +2339,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListHostsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetOutofbandmanagementenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1874,6 +2354,14 @@
 	p.p["outofbandmanagementenabled"] = v
 }
 
+func (p *ListHostsParams) GetOutofbandmanagementenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["outofbandmanagementenabled"].(bool)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetOutofbandmanagementpowerstate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1881,6 +2369,14 @@
 	p.p["outofbandmanagementpowerstate"] = v
 }
 
+func (p *ListHostsParams) GetOutofbandmanagementpowerstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["outofbandmanagementpowerstate"].(string)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1888,6 +2384,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListHostsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1895,6 +2399,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListHostsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1902,6 +2414,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListHostsParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetResourcestate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1909,6 +2429,14 @@
 	p.p["resourcestate"] = v
 }
 
+func (p *ListHostsParams) GetResourcestate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourcestate"].(string)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1916,6 +2444,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListHostsParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1923,6 +2459,14 @@
 	p.p["type"] = v
 }
 
+func (p *ListHostsParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1930,6 +2474,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *ListHostsParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 func (p *ListHostsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1937,6 +2489,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListHostsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListHostsParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewListHostsParams() *ListHostsParams {
@@ -2202,6 +2762,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *ListHostsMetricsParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetDetails(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2209,6 +2777,14 @@
 	p.p["details"] = v
 }
 
+func (p *ListHostsMetricsParams) GetDetails() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].([]string)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetHahost(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2216,6 +2792,14 @@
 	p.p["hahost"] = v
 }
 
+func (p *ListHostsMetricsParams) GetHahost() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hahost"].(bool)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2223,6 +2807,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *ListHostsMetricsParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2230,6 +2822,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListHostsMetricsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2237,6 +2837,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListHostsMetricsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2244,6 +2852,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListHostsMetricsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetOutofbandmanagementenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2251,6 +2867,14 @@
 	p.p["outofbandmanagementenabled"] = v
 }
 
+func (p *ListHostsMetricsParams) GetOutofbandmanagementenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["outofbandmanagementenabled"].(bool)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetOutofbandmanagementpowerstate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2258,6 +2882,14 @@
 	p.p["outofbandmanagementpowerstate"] = v
 }
 
+func (p *ListHostsMetricsParams) GetOutofbandmanagementpowerstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["outofbandmanagementpowerstate"].(string)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2265,6 +2897,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListHostsMetricsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2272,6 +2912,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListHostsMetricsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2279,6 +2927,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListHostsMetricsParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetResourcestate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2286,6 +2942,14 @@
 	p.p["resourcestate"] = v
 }
 
+func (p *ListHostsMetricsParams) GetResourcestate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourcestate"].(string)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2293,6 +2957,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListHostsMetricsParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2300,6 +2972,14 @@
 	p.p["type"] = v
 }
 
+func (p *ListHostsMetricsParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2307,6 +2987,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *ListHostsMetricsParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 func (p *ListHostsMetricsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2314,6 +3002,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListHostsMetricsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListHostsMetricsParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewListHostsMetricsParams() *ListHostsMetricsParams {
@@ -2544,6 +3240,14 @@
 	p.p["id"] = v
 }
 
+func (p *PrepareHostForMaintenanceParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new PrepareHostForMaintenanceParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewPrepareHostForMaintenanceParams(id string) *PrepareHostForMaintenanceParams {
@@ -2689,6 +3393,14 @@
 	p.p["id"] = v
 }
 
+func (p *ReconnectHostParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ReconnectHostParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewReconnectHostParams(id string) *ReconnectHostParams {
@@ -2834,6 +3546,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *ReleaseDedicatedHostParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ReleaseDedicatedHostParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewReleaseDedicatedHostParams(hostid string) *ReleaseDedicatedHostParams {
@@ -2902,6 +3622,14 @@
 	p.p["id"] = v
 }
 
+func (p *ReleaseHostReservationParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ReleaseHostReservationParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewReleaseHostReservationParams(id string) *ReleaseHostReservationParams {
@@ -2989,6 +3717,14 @@
 	p.p["allocationstate"] = v
 }
 
+func (p *UpdateHostParams) GetAllocationstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["allocationstate"].(string)
+	return value, ok
+}
+
 func (p *UpdateHostParams) SetAnnotation(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2996,6 +3732,14 @@
 	p.p["annotation"] = v
 }
 
+func (p *UpdateHostParams) GetAnnotation() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["annotation"].(string)
+	return value, ok
+}
+
 func (p *UpdateHostParams) SetHosttags(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3003,6 +3747,14 @@
 	p.p["hosttags"] = v
 }
 
+func (p *UpdateHostParams) GetHosttags() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hosttags"].([]string)
+	return value, ok
+}
+
 func (p *UpdateHostParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3010,6 +3762,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateHostParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateHostParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3017,6 +3777,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateHostParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateHostParams) SetOscategoryid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3024,6 +3792,14 @@
 	p.p["oscategoryid"] = v
 }
 
+func (p *UpdateHostParams) GetOscategoryid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["oscategoryid"].(string)
+	return value, ok
+}
+
 func (p *UpdateHostParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3031,6 +3807,14 @@
 	p.p["url"] = v
 }
 
+func (p *UpdateHostParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateHostParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewUpdateHostParams(id string) *UpdateHostParams {
@@ -3169,6 +3953,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *UpdateHostPasswordParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *UpdateHostPasswordParams) SetHostid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3176,6 +3968,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *UpdateHostPasswordParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *UpdateHostPasswordParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3183,6 +3983,14 @@
 	p.p["password"] = v
 }
 
+func (p *UpdateHostPasswordParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *UpdateHostPasswordParams) SetUpdate_passwd_on_host(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3190,6 +3998,14 @@
 	p.p["update_passwd_on_host"] = v
 }
 
+func (p *UpdateHostPasswordParams) GetUpdate_passwd_on_host() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["update_passwd_on_host"].(bool)
+	return value, ok
+}
+
 func (p *UpdateHostPasswordParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3197,6 +4013,14 @@
 	p.p["username"] = v
 }
 
+func (p *UpdateHostPasswordParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateHostPasswordParams instance,
 // as then you are sure you have configured all required params
 func (s *HostService) NewUpdateHostPasswordParams(password string, username string) *UpdateHostPasswordParams {
diff --git a/cloudstack/HypervisorService.go b/cloudstack/HypervisorService.go
index ee0ce0c..e1df253 100644
--- a/cloudstack/HypervisorService.go
+++ b/cloudstack/HypervisorService.go
@@ -73,6 +73,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *ListHypervisorCapabilitiesParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *ListHypervisorCapabilitiesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -80,6 +88,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListHypervisorCapabilitiesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListHypervisorCapabilitiesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -87,6 +103,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListHypervisorCapabilitiesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListHypervisorCapabilitiesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -94,6 +118,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListHypervisorCapabilitiesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListHypervisorCapabilitiesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -101,6 +133,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListHypervisorCapabilitiesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListHypervisorCapabilitiesParams instance,
 // as then you are sure you have configured all required params
 func (s *HypervisorService) NewListHypervisorCapabilitiesParams() *ListHypervisorCapabilitiesParams {
@@ -197,6 +237,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListHypervisorsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListHypervisorsParams instance,
 // as then you are sure you have configured all required params
 func (s *HypervisorService) NewListHypervisorsParams() *ListHypervisorsParams {
@@ -261,6 +309,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateHypervisorCapabilitiesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateHypervisorCapabilitiesParams) SetMaxguestslimit(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -268,6 +324,14 @@
 	p.p["maxguestslimit"] = v
 }
 
+func (p *UpdateHypervisorCapabilitiesParams) GetMaxguestslimit() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["maxguestslimit"].(int64)
+	return value, ok
+}
+
 func (p *UpdateHypervisorCapabilitiesParams) SetSecuritygroupenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -275,6 +339,14 @@
 	p.p["securitygroupenabled"] = v
 }
 
+func (p *UpdateHypervisorCapabilitiesParams) GetSecuritygroupenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["securitygroupenabled"].(bool)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateHypervisorCapabilitiesParams instance,
 // as then you are sure you have configured all required params
 func (s *HypervisorService) NewUpdateHypervisorCapabilitiesParams() *UpdateHypervisorCapabilitiesParams {
diff --git a/cloudstack/ISOService.go b/cloudstack/ISOService.go
index aab71ec..e913d24 100644
--- a/cloudstack/ISOService.go
+++ b/cloudstack/ISOService.go
@@ -83,6 +83,14 @@
 	p.p["forced"] = v
 }
 
+func (p *AttachIsoParams) GetForced() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forced"].(bool)
+	return value, ok
+}
+
 func (p *AttachIsoParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -90,6 +98,14 @@
 	p.p["id"] = v
 }
 
+func (p *AttachIsoParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *AttachIsoParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -97,6 +113,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *AttachIsoParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AttachIsoParams instance,
 // as then you are sure you have configured all required params
 func (s *ISOService) NewAttachIsoParams(id string, virtualmachineid string) *AttachIsoParams {
@@ -317,6 +341,14 @@
 	p.p["destzoneid"] = v
 }
 
+func (p *CopyIsoParams) GetDestzoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["destzoneid"].(string)
+	return value, ok
+}
+
 func (p *CopyIsoParams) SetDestzoneids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -324,6 +356,14 @@
 	p.p["destzoneids"] = v
 }
 
+func (p *CopyIsoParams) GetDestzoneids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["destzoneids"].([]string)
+	return value, ok
+}
+
 func (p *CopyIsoParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -331,6 +371,14 @@
 	p.p["id"] = v
 }
 
+func (p *CopyIsoParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *CopyIsoParams) SetSourcezoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -338,6 +386,14 @@
 	p.p["sourcezoneid"] = v
 }
 
+func (p *CopyIsoParams) GetSourcezoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sourcezoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CopyIsoParams instance,
 // as then you are sure you have configured all required params
 func (s *ISOService) NewCopyIsoParams(id string) *CopyIsoParams {
@@ -485,6 +541,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteIsoParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *DeleteIsoParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -492,6 +556,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *DeleteIsoParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteIsoParams instance,
 // as then you are sure you have configured all required params
 func (s *ISOService) NewDeleteIsoParams(id string) *DeleteIsoParams {
@@ -564,6 +636,14 @@
 	p.p["forced"] = v
 }
 
+func (p *DetachIsoParams) GetForced() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forced"].(bool)
+	return value, ok
+}
+
 func (p *DetachIsoParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -571,6 +651,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *DetachIsoParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DetachIsoParams instance,
 // as then you are sure you have configured all required params
 func (s *ISOService) NewDetachIsoParams(virtualmachineid string) *DetachIsoParams {
@@ -789,6 +877,14 @@
 	p.p["id"] = v
 }
 
+func (p *ExtractIsoParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ExtractIsoParams) SetMode(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -796,6 +892,14 @@
 	p.p["mode"] = v
 }
 
+func (p *ExtractIsoParams) GetMode() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["mode"].(string)
+	return value, ok
+}
+
 func (p *ExtractIsoParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -803,6 +907,14 @@
 	p.p["url"] = v
 }
 
+func (p *ExtractIsoParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *ExtractIsoParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -810,6 +922,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ExtractIsoParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ExtractIsoParams instance,
 // as then you are sure you have configured all required params
 func (s *ISOService) NewExtractIsoParams(id string, mode string) *ExtractIsoParams {
@@ -896,6 +1016,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListIsoPermissionsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListIsoPermissionsParams instance,
 // as then you are sure you have configured all required params
 func (s *ISOService) NewListIsoPermissionsParams(id string) *ListIsoPermissionsParams {
@@ -1057,6 +1185,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListIsosParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetBootable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1064,6 +1200,14 @@
 	p.p["bootable"] = v
 }
 
+func (p *ListIsosParams) GetBootable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bootable"].(bool)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1071,6 +1215,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListIsosParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1078,6 +1230,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *ListIsosParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1085,6 +1245,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListIsosParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetIsofilter(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1092,6 +1260,14 @@
 	p.p["isofilter"] = v
 }
 
+func (p *ListIsosParams) GetIsofilter() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isofilter"].(string)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetIspublic(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1099,6 +1275,14 @@
 	p.p["ispublic"] = v
 }
 
+func (p *ListIsosParams) GetIspublic() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ispublic"].(bool)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetIsready(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1106,6 +1290,14 @@
 	p.p["isready"] = v
 }
 
+func (p *ListIsosParams) GetIsready() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isready"].(bool)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1113,6 +1305,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListIsosParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1120,6 +1320,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListIsosParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1127,6 +1335,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListIsosParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1134,6 +1350,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListIsosParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1141,6 +1365,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListIsosParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1148,6 +1380,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListIsosParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1155,6 +1395,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListIsosParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetShowremoved(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1162,6 +1410,14 @@
 	p.p["showremoved"] = v
 }
 
+func (p *ListIsosParams) GetShowremoved() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["showremoved"].(bool)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetShowunique(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1169,6 +1425,14 @@
 	p.p["showunique"] = v
 }
 
+func (p *ListIsosParams) GetShowunique() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["showunique"].(bool)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1176,6 +1440,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListIsosParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListIsosParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1183,6 +1455,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListIsosParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListIsosParams instance,
 // as then you are sure you have configured all required params
 func (s *ISOService) NewListIsosParams() *ListIsosParams {
@@ -1451,6 +1731,14 @@
 	p.p["account"] = v
 }
 
+func (p *RegisterIsoParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetBootable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1458,6 +1746,14 @@
 	p.p["bootable"] = v
 }
 
+func (p *RegisterIsoParams) GetBootable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bootable"].(bool)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetChecksum(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1465,6 +1761,14 @@
 	p.p["checksum"] = v
 }
 
+func (p *RegisterIsoParams) GetChecksum() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["checksum"].(string)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetDirectdownload(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1472,6 +1776,14 @@
 	p.p["directdownload"] = v
 }
 
+func (p *RegisterIsoParams) GetDirectdownload() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["directdownload"].(bool)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1479,6 +1791,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *RegisterIsoParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1486,6 +1806,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *RegisterIsoParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetImagestoreuuid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1493,6 +1821,14 @@
 	p.p["imagestoreuuid"] = v
 }
 
+func (p *RegisterIsoParams) GetImagestoreuuid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["imagestoreuuid"].(string)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetIsdynamicallyscalable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1500,6 +1836,14 @@
 	p.p["isdynamicallyscalable"] = v
 }
 
+func (p *RegisterIsoParams) GetIsdynamicallyscalable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isdynamicallyscalable"].(bool)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetIsextractable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1507,6 +1851,14 @@
 	p.p["isextractable"] = v
 }
 
+func (p *RegisterIsoParams) GetIsextractable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isextractable"].(bool)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetIsfeatured(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1514,6 +1866,14 @@
 	p.p["isfeatured"] = v
 }
 
+func (p *RegisterIsoParams) GetIsfeatured() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isfeatured"].(bool)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetIspublic(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1521,6 +1881,14 @@
 	p.p["ispublic"] = v
 }
 
+func (p *RegisterIsoParams) GetIspublic() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ispublic"].(bool)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1528,6 +1896,14 @@
 	p.p["name"] = v
 }
 
+func (p *RegisterIsoParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetOstypeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1535,6 +1911,14 @@
 	p.p["ostypeid"] = v
 }
 
+func (p *RegisterIsoParams) GetOstypeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ostypeid"].(string)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetPasswordenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1542,6 +1926,14 @@
 	p.p["passwordenabled"] = v
 }
 
+func (p *RegisterIsoParams) GetPasswordenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["passwordenabled"].(bool)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1549,6 +1941,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *RegisterIsoParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1556,6 +1956,14 @@
 	p.p["url"] = v
 }
 
+func (p *RegisterIsoParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *RegisterIsoParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1563,6 +1971,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *RegisterIsoParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RegisterIsoParams instance,
 // as then you are sure you have configured all required params
 func (s *ISOService) NewRegisterIsoParams(displaytext string, name string, url string, zoneid string) *RegisterIsoParams {
@@ -1740,6 +2156,14 @@
 	p.p["bootable"] = v
 }
 
+func (p *UpdateIsoParams) GetBootable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bootable"].(bool)
+	return value, ok
+}
+
 func (p *UpdateIsoParams) SetCleanupdetails(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1747,6 +2171,14 @@
 	p.p["cleanupdetails"] = v
 }
 
+func (p *UpdateIsoParams) GetCleanupdetails() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cleanupdetails"].(bool)
+	return value, ok
+}
+
 func (p *UpdateIsoParams) SetDetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1754,6 +2186,14 @@
 	p.p["details"] = v
 }
 
+func (p *UpdateIsoParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *UpdateIsoParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1761,6 +2201,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *UpdateIsoParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *UpdateIsoParams) SetFormat(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1768,6 +2216,14 @@
 	p.p["format"] = v
 }
 
+func (p *UpdateIsoParams) GetFormat() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["format"].(string)
+	return value, ok
+}
+
 func (p *UpdateIsoParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1775,6 +2231,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateIsoParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateIsoParams) SetIsdynamicallyscalable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1782,6 +2246,14 @@
 	p.p["isdynamicallyscalable"] = v
 }
 
+func (p *UpdateIsoParams) GetIsdynamicallyscalable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isdynamicallyscalable"].(bool)
+	return value, ok
+}
+
 func (p *UpdateIsoParams) SetIsrouting(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1789,6 +2261,14 @@
 	p.p["isrouting"] = v
 }
 
+func (p *UpdateIsoParams) GetIsrouting() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrouting"].(bool)
+	return value, ok
+}
+
 func (p *UpdateIsoParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1796,6 +2276,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateIsoParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateIsoParams) SetOstypeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1803,6 +2291,14 @@
 	p.p["ostypeid"] = v
 }
 
+func (p *UpdateIsoParams) GetOstypeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ostypeid"].(string)
+	return value, ok
+}
+
 func (p *UpdateIsoParams) SetPasswordenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1810,6 +2306,14 @@
 	p.p["passwordenabled"] = v
 }
 
+func (p *UpdateIsoParams) GetPasswordenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["passwordenabled"].(bool)
+	return value, ok
+}
+
 func (p *UpdateIsoParams) SetRequireshvm(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1817,6 +2321,14 @@
 	p.p["requireshvm"] = v
 }
 
+func (p *UpdateIsoParams) GetRequireshvm() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["requireshvm"].(bool)
+	return value, ok
+}
+
 func (p *UpdateIsoParams) SetSortkey(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1824,6 +2336,14 @@
 	p.p["sortkey"] = v
 }
 
+func (p *UpdateIsoParams) GetSortkey() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sortkey"].(int)
+	return value, ok
+}
+
 func (p *UpdateIsoParams) SetSshkeyenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1831,6 +2351,14 @@
 	p.p["sshkeyenabled"] = v
 }
 
+func (p *UpdateIsoParams) GetSshkeyenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sshkeyenabled"].(bool)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateIsoParams instance,
 // as then you are sure you have configured all required params
 func (s *ISOService) NewUpdateIsoParams(id string) *UpdateIsoParams {
@@ -1978,6 +2506,14 @@
 	p.p["accounts"] = v
 }
 
+func (p *UpdateIsoPermissionsParams) GetAccounts() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accounts"].([]string)
+	return value, ok
+}
+
 func (p *UpdateIsoPermissionsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1985,6 +2521,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateIsoPermissionsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateIsoPermissionsParams) SetIsextractable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1992,6 +2536,14 @@
 	p.p["isextractable"] = v
 }
 
+func (p *UpdateIsoPermissionsParams) GetIsextractable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isextractable"].(bool)
+	return value, ok
+}
+
 func (p *UpdateIsoPermissionsParams) SetIsfeatured(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1999,6 +2551,14 @@
 	p.p["isfeatured"] = v
 }
 
+func (p *UpdateIsoPermissionsParams) GetIsfeatured() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isfeatured"].(bool)
+	return value, ok
+}
+
 func (p *UpdateIsoPermissionsParams) SetIspublic(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2006,6 +2566,14 @@
 	p.p["ispublic"] = v
 }
 
+func (p *UpdateIsoPermissionsParams) GetIspublic() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ispublic"].(bool)
+	return value, ok
+}
+
 func (p *UpdateIsoPermissionsParams) SetOp(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2013,6 +2581,14 @@
 	p.p["op"] = v
 }
 
+func (p *UpdateIsoPermissionsParams) GetOp() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["op"].(string)
+	return value, ok
+}
+
 func (p *UpdateIsoPermissionsParams) SetProjectids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2020,6 +2596,14 @@
 	p.p["projectids"] = v
 }
 
+func (p *UpdateIsoPermissionsParams) GetProjectids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectids"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateIsoPermissionsParams instance,
 // as then you are sure you have configured all required params
 func (s *ISOService) NewUpdateIsoPermissionsParams(id string) *UpdateIsoPermissionsParams {
diff --git a/cloudstack/ImageStoreService.go b/cloudstack/ImageStoreService.go
index 3819d85..65d4dc2 100644
--- a/cloudstack/ImageStoreService.go
+++ b/cloudstack/ImageStoreService.go
@@ -90,6 +90,14 @@
 	p.p["details"] = v
 }
 
+func (p *AddImageStoreParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *AddImageStoreParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -97,6 +105,14 @@
 	p.p["name"] = v
 }
 
+func (p *AddImageStoreParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *AddImageStoreParams) SetProvider(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -104,6 +120,14 @@
 	p.p["provider"] = v
 }
 
+func (p *AddImageStoreParams) GetProvider() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["provider"].(string)
+	return value, ok
+}
+
 func (p *AddImageStoreParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -111,6 +135,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddImageStoreParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddImageStoreParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -118,6 +150,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *AddImageStoreParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddImageStoreParams instance,
 // as then you are sure you have configured all required params
 func (s *ImageStoreService) NewAddImageStoreParams(provider string) *AddImageStoreParams {
@@ -220,6 +260,14 @@
 	p.p["accesskey"] = v
 }
 
+func (p *AddImageStoreS3Params) GetAccesskey() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accesskey"].(string)
+	return value, ok
+}
+
 func (p *AddImageStoreS3Params) SetBucket(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -227,6 +275,14 @@
 	p.p["bucket"] = v
 }
 
+func (p *AddImageStoreS3Params) GetBucket() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bucket"].(string)
+	return value, ok
+}
+
 func (p *AddImageStoreS3Params) SetConnectiontimeout(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -234,6 +290,14 @@
 	p.p["connectiontimeout"] = v
 }
 
+func (p *AddImageStoreS3Params) GetConnectiontimeout() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["connectiontimeout"].(int)
+	return value, ok
+}
+
 func (p *AddImageStoreS3Params) SetConnectionttl(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -241,6 +305,14 @@
 	p.p["connectionttl"] = v
 }
 
+func (p *AddImageStoreS3Params) GetConnectionttl() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["connectionttl"].(int)
+	return value, ok
+}
+
 func (p *AddImageStoreS3Params) SetEndpoint(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -248,6 +320,14 @@
 	p.p["endpoint"] = v
 }
 
+func (p *AddImageStoreS3Params) GetEndpoint() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endpoint"].(string)
+	return value, ok
+}
+
 func (p *AddImageStoreS3Params) SetMaxerrorretry(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -255,6 +335,14 @@
 	p.p["maxerrorretry"] = v
 }
 
+func (p *AddImageStoreS3Params) GetMaxerrorretry() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["maxerrorretry"].(int)
+	return value, ok
+}
+
 func (p *AddImageStoreS3Params) SetS3signer(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -262,6 +350,14 @@
 	p.p["s3signer"] = v
 }
 
+func (p *AddImageStoreS3Params) GetS3signer() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["s3signer"].(string)
+	return value, ok
+}
+
 func (p *AddImageStoreS3Params) SetSecretkey(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -269,6 +365,14 @@
 	p.p["secretkey"] = v
 }
 
+func (p *AddImageStoreS3Params) GetSecretkey() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["secretkey"].(string)
+	return value, ok
+}
+
 func (p *AddImageStoreS3Params) SetSockettimeout(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -276,6 +380,14 @@
 	p.p["sockettimeout"] = v
 }
 
+func (p *AddImageStoreS3Params) GetSockettimeout() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sockettimeout"].(int)
+	return value, ok
+}
+
 func (p *AddImageStoreS3Params) SetUsehttps(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -283,6 +395,14 @@
 	p.p["usehttps"] = v
 }
 
+func (p *AddImageStoreS3Params) GetUsehttps() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["usehttps"].(bool)
+	return value, ok
+}
+
 func (p *AddImageStoreS3Params) SetUsetcpkeepalive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -290,6 +410,14 @@
 	p.p["usetcpkeepalive"] = v
 }
 
+func (p *AddImageStoreS3Params) GetUsetcpkeepalive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["usetcpkeepalive"].(bool)
+	return value, ok
+}
+
 // You should always use this function to get a new AddImageStoreS3Params instance,
 // as then you are sure you have configured all required params
 func (s *ImageStoreService) NewAddImageStoreS3Params(accesskey string, bucket string, endpoint string, secretkey string) *AddImageStoreS3Params {
@@ -371,6 +499,14 @@
 	p.p["details"] = v
 }
 
+func (p *CreateSecondaryStagingStoreParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *CreateSecondaryStagingStoreParams) SetProvider(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -378,6 +514,14 @@
 	p.p["provider"] = v
 }
 
+func (p *CreateSecondaryStagingStoreParams) GetProvider() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["provider"].(string)
+	return value, ok
+}
+
 func (p *CreateSecondaryStagingStoreParams) SetScope(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -385,6 +529,14 @@
 	p.p["scope"] = v
 }
 
+func (p *CreateSecondaryStagingStoreParams) GetScope() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["scope"].(string)
+	return value, ok
+}
+
 func (p *CreateSecondaryStagingStoreParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -392,6 +544,14 @@
 	p.p["url"] = v
 }
 
+func (p *CreateSecondaryStagingStoreParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *CreateSecondaryStagingStoreParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -399,6 +559,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreateSecondaryStagingStoreParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateSecondaryStagingStoreParams instance,
 // as then you are sure you have configured all required params
 func (s *ImageStoreService) NewCreateSecondaryStagingStoreParams(url string) *CreateSecondaryStagingStoreParams {
@@ -461,6 +629,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteImageStoreParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteImageStoreParams instance,
 // as then you are sure you have configured all required params
 func (s *ImageStoreService) NewDeleteImageStoreParams(id string) *DeleteImageStoreParams {
@@ -541,6 +717,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteSecondaryStagingStoreParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteSecondaryStagingStoreParams instance,
 // as then you are sure you have configured all required params
 func (s *ImageStoreService) NewDeleteSecondaryStagingStoreParams(id string) *DeleteSecondaryStagingStoreParams {
@@ -648,6 +832,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListImageStoresParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListImageStoresParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -655,6 +847,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListImageStoresParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListImageStoresParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -662,6 +862,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListImageStoresParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListImageStoresParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -669,6 +877,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListImageStoresParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListImageStoresParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -676,6 +892,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListImageStoresParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListImageStoresParams) SetProtocol(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -683,6 +907,14 @@
 	p.p["protocol"] = v
 }
 
+func (p *ListImageStoresParams) GetProtocol() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["protocol"].(string)
+	return value, ok
+}
+
 func (p *ListImageStoresParams) SetProvider(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -690,6 +922,14 @@
 	p.p["provider"] = v
 }
 
+func (p *ListImageStoresParams) GetProvider() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["provider"].(string)
+	return value, ok
+}
+
 func (p *ListImageStoresParams) SetReadonly(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -697,6 +937,14 @@
 	p.p["readonly"] = v
 }
 
+func (p *ListImageStoresParams) GetReadonly() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["readonly"].(bool)
+	return value, ok
+}
+
 func (p *ListImageStoresParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -704,6 +952,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListImageStoresParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListImageStoresParams instance,
 // as then you are sure you have configured all required params
 func (s *ImageStoreService) NewListImageStoresParams() *ListImageStoresParams {
@@ -876,6 +1132,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListSecondaryStagingStoresParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListSecondaryStagingStoresParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -883,6 +1147,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListSecondaryStagingStoresParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListSecondaryStagingStoresParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -890,6 +1162,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListSecondaryStagingStoresParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListSecondaryStagingStoresParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -897,6 +1177,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListSecondaryStagingStoresParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListSecondaryStagingStoresParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -904,6 +1192,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListSecondaryStagingStoresParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListSecondaryStagingStoresParams) SetProtocol(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -911,6 +1207,14 @@
 	p.p["protocol"] = v
 }
 
+func (p *ListSecondaryStagingStoresParams) GetProtocol() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["protocol"].(string)
+	return value, ok
+}
+
 func (p *ListSecondaryStagingStoresParams) SetProvider(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -918,6 +1222,14 @@
 	p.p["provider"] = v
 }
 
+func (p *ListSecondaryStagingStoresParams) GetProvider() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["provider"].(string)
+	return value, ok
+}
+
 func (p *ListSecondaryStagingStoresParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -925,6 +1237,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListSecondaryStagingStoresParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListSecondaryStagingStoresParams instance,
 // as then you are sure you have configured all required params
 func (s *ImageStoreService) NewListSecondaryStagingStoresParams() *ListSecondaryStagingStoresParams {
@@ -1087,6 +1407,14 @@
 	p.p["details"] = v
 }
 
+func (p *UpdateCloudToUseObjectStoreParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *UpdateCloudToUseObjectStoreParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1094,6 +1422,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateCloudToUseObjectStoreParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateCloudToUseObjectStoreParams) SetProvider(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1101,6 +1437,14 @@
 	p.p["provider"] = v
 }
 
+func (p *UpdateCloudToUseObjectStoreParams) GetProvider() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["provider"].(string)
+	return value, ok
+}
+
 func (p *UpdateCloudToUseObjectStoreParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1108,6 +1452,14 @@
 	p.p["url"] = v
 }
 
+func (p *UpdateCloudToUseObjectStoreParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateCloudToUseObjectStoreParams instance,
 // as then you are sure you have configured all required params
 func (s *ImageStoreService) NewUpdateCloudToUseObjectStoreParams(provider string) *UpdateCloudToUseObjectStoreParams {
diff --git a/cloudstack/InternalLBService.go b/cloudstack/InternalLBService.go
index 67f062d..6ee3b69 100644
--- a/cloudstack/InternalLBService.go
+++ b/cloudstack/InternalLBService.go
@@ -72,6 +72,14 @@
 	p.p["enabled"] = v
 }
 
+func (p *ConfigureInternalLoadBalancerElementParams) GetEnabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enabled"].(bool)
+	return value, ok
+}
+
 func (p *ConfigureInternalLoadBalancerElementParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -79,6 +87,14 @@
 	p.p["id"] = v
 }
 
+func (p *ConfigureInternalLoadBalancerElementParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ConfigureInternalLoadBalancerElementParams instance,
 // as then you are sure you have configured all required params
 func (s *InternalLBService) NewConfigureInternalLoadBalancerElementParams(enabled bool, id string) *ConfigureInternalLoadBalancerElementParams {
@@ -154,6 +170,14 @@
 	p.p["nspid"] = v
 }
 
+func (p *CreateInternalLoadBalancerElementParams) GetNspid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nspid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateInternalLoadBalancerElementParams instance,
 // as then you are sure you have configured all required params
 func (s *InternalLBService) NewCreateInternalLoadBalancerElementParams(nspid string) *CreateInternalLoadBalancerElementParams {
@@ -246,6 +270,14 @@
 	p.p["enabled"] = v
 }
 
+func (p *ListInternalLoadBalancerElementsParams) GetEnabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enabled"].(bool)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerElementsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -253,6 +285,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListInternalLoadBalancerElementsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerElementsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -260,6 +300,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListInternalLoadBalancerElementsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerElementsParams) SetNspid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -267,6 +315,14 @@
 	p.p["nspid"] = v
 }
 
+func (p *ListInternalLoadBalancerElementsParams) GetNspid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nspid"].(string)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerElementsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -274,6 +330,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListInternalLoadBalancerElementsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerElementsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -281,6 +345,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListInternalLoadBalancerElementsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListInternalLoadBalancerElementsParams instance,
 // as then you are sure you have configured all required params
 func (s *InternalLBService) NewListInternalLoadBalancerElementsParams() *ListInternalLoadBalancerElementsParams {
@@ -429,6 +501,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -436,6 +516,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetFetchhealthcheckresults(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -443,6 +531,14 @@
 	p.p["fetchhealthcheckresults"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetFetchhealthcheckresults() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fetchhealthcheckresults"].(bool)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetForvpc(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -450,6 +546,14 @@
 	p.p["forvpc"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetForvpc() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forvpc"].(bool)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetHostid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -457,6 +561,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -464,6 +576,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -471,6 +591,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -478,6 +606,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -485,6 +621,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -492,6 +636,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -499,6 +651,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -506,6 +666,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -513,6 +681,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -520,6 +696,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -527,6 +711,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -534,6 +726,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -541,6 +741,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 func (p *ListInternalLoadBalancerVMsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -548,6 +756,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListInternalLoadBalancerVMsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListInternalLoadBalancerVMsParams instance,
 // as then you are sure you have configured all required params
 func (s *InternalLBService) NewListInternalLoadBalancerVMsParams() *ListInternalLoadBalancerVMsParams {
@@ -744,6 +960,14 @@
 	p.p["id"] = v
 }
 
+func (p *StartInternalLoadBalancerVMParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new StartInternalLoadBalancerVMParams instance,
 // as then you are sure you have configured all required params
 func (s *InternalLBService) NewStartInternalLoadBalancerVMParams(id string) *StartInternalLoadBalancerVMParams {
@@ -877,6 +1101,14 @@
 	p.p["forced"] = v
 }
 
+func (p *StopInternalLoadBalancerVMParams) GetForced() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forced"].(bool)
+	return value, ok
+}
+
 func (p *StopInternalLoadBalancerVMParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -884,6 +1116,14 @@
 	p.p["id"] = v
 }
 
+func (p *StopInternalLoadBalancerVMParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new StopInternalLoadBalancerVMParams instance,
 // as then you are sure you have configured all required params
 func (s *InternalLBService) NewStopInternalLoadBalancerVMParams(id string) *StopInternalLoadBalancerVMParams {
diff --git a/cloudstack/LDAPService.go b/cloudstack/LDAPService.go
index a44ac8c..e38a46f 100644
--- a/cloudstack/LDAPService.go
+++ b/cloudstack/LDAPService.go
@@ -78,6 +78,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *AddLdapConfigurationParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *AddLdapConfigurationParams) SetHostname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -85,6 +93,14 @@
 	p.p["hostname"] = v
 }
 
+func (p *AddLdapConfigurationParams) GetHostname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostname"].(string)
+	return value, ok
+}
+
 func (p *AddLdapConfigurationParams) SetPort(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -92,6 +108,14 @@
 	p.p["port"] = v
 }
 
+func (p *AddLdapConfigurationParams) GetPort() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["port"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new AddLdapConfigurationParams instance,
 // as then you are sure you have configured all required params
 func (s *LDAPService) NewAddLdapConfigurationParams(hostname string, port int) *AddLdapConfigurationParams {
@@ -154,6 +178,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *DeleteLdapConfigurationParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *DeleteLdapConfigurationParams) SetHostname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -161,6 +193,14 @@
 	p.p["hostname"] = v
 }
 
+func (p *DeleteLdapConfigurationParams) GetHostname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostname"].(string)
+	return value, ok
+}
+
 func (p *DeleteLdapConfigurationParams) SetPort(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -168,6 +208,14 @@
 	p.p["port"] = v
 }
 
+func (p *DeleteLdapConfigurationParams) GetPort() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["port"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteLdapConfigurationParams instance,
 // as then you are sure you have configured all required params
 func (s *LDAPService) NewDeleteLdapConfigurationParams(hostname string) *DeleteLdapConfigurationParams {
@@ -256,6 +304,14 @@
 	p.p["account"] = v
 }
 
+func (p *ImportLdapUsersParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ImportLdapUsersParams) SetAccountdetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -263,6 +319,14 @@
 	p.p["accountdetails"] = v
 }
 
+func (p *ImportLdapUsersParams) GetAccountdetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accountdetails"].(map[string]string)
+	return value, ok
+}
+
 func (p *ImportLdapUsersParams) SetAccounttype(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -270,6 +334,14 @@
 	p.p["accounttype"] = v
 }
 
+func (p *ImportLdapUsersParams) GetAccounttype() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accounttype"].(int)
+	return value, ok
+}
+
 func (p *ImportLdapUsersParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -277,6 +349,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ImportLdapUsersParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ImportLdapUsersParams) SetGroup(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -284,6 +364,14 @@
 	p.p["group"] = v
 }
 
+func (p *ImportLdapUsersParams) GetGroup() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["group"].(string)
+	return value, ok
+}
+
 func (p *ImportLdapUsersParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -291,6 +379,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ImportLdapUsersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ImportLdapUsersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -298,6 +394,14 @@
 	p.p["page"] = v
 }
 
+func (p *ImportLdapUsersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ImportLdapUsersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -305,6 +409,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ImportLdapUsersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ImportLdapUsersParams) SetRoleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -312,6 +424,14 @@
 	p.p["roleid"] = v
 }
 
+func (p *ImportLdapUsersParams) GetRoleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["roleid"].(string)
+	return value, ok
+}
+
 func (p *ImportLdapUsersParams) SetTimezone(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -319,6 +439,14 @@
 	p.p["timezone"] = v
 }
 
+func (p *ImportLdapUsersParams) GetTimezone() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["timezone"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ImportLdapUsersParams instance,
 // as then you are sure you have configured all required params
 func (s *LDAPService) NewImportLdapUsersParams() *ImportLdapUsersParams {
@@ -406,6 +534,14 @@
 	p.p["binddn"] = v
 }
 
+func (p *LdapConfigParams) GetBinddn() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["binddn"].(string)
+	return value, ok
+}
+
 func (p *LdapConfigParams) SetBindpass(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -413,6 +549,14 @@
 	p.p["bindpass"] = v
 }
 
+func (p *LdapConfigParams) GetBindpass() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bindpass"].(string)
+	return value, ok
+}
+
 func (p *LdapConfigParams) SetHostname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -420,6 +564,14 @@
 	p.p["hostname"] = v
 }
 
+func (p *LdapConfigParams) GetHostname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostname"].(string)
+	return value, ok
+}
+
 func (p *LdapConfigParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -427,6 +579,14 @@
 	p.p["listall"] = v
 }
 
+func (p *LdapConfigParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *LdapConfigParams) SetPort(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -434,6 +594,14 @@
 	p.p["port"] = v
 }
 
+func (p *LdapConfigParams) GetPort() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["port"].(int)
+	return value, ok
+}
+
 func (p *LdapConfigParams) SetQueryfilter(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -441,6 +609,14 @@
 	p.p["queryfilter"] = v
 }
 
+func (p *LdapConfigParams) GetQueryfilter() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["queryfilter"].(string)
+	return value, ok
+}
+
 func (p *LdapConfigParams) SetSearchbase(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -448,6 +624,14 @@
 	p.p["searchbase"] = v
 }
 
+func (p *LdapConfigParams) GetSearchbase() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["searchbase"].(string)
+	return value, ok
+}
+
 func (p *LdapConfigParams) SetSsl(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -455,6 +639,14 @@
 	p.p["ssl"] = v
 }
 
+func (p *LdapConfigParams) GetSsl() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ssl"].(bool)
+	return value, ok
+}
+
 func (p *LdapConfigParams) SetTruststore(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -462,6 +654,14 @@
 	p.p["truststore"] = v
 }
 
+func (p *LdapConfigParams) GetTruststore() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["truststore"].(string)
+	return value, ok
+}
+
 func (p *LdapConfigParams) SetTruststorepass(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -469,6 +669,14 @@
 	p.p["truststorepass"] = v
 }
 
+func (p *LdapConfigParams) GetTruststorepass() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["truststorepass"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new LdapConfigParams instance,
 // as then you are sure you have configured all required params
 func (s *LDAPService) NewLdapConfigParams() *LdapConfigParams {
@@ -558,6 +766,14 @@
 	p.p["account"] = v
 }
 
+func (p *LdapCreateAccountParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *LdapCreateAccountParams) SetAccountdetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -565,6 +781,14 @@
 	p.p["accountdetails"] = v
 }
 
+func (p *LdapCreateAccountParams) GetAccountdetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accountdetails"].(map[string]string)
+	return value, ok
+}
+
 func (p *LdapCreateAccountParams) SetAccountid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -572,6 +796,14 @@
 	p.p["accountid"] = v
 }
 
+func (p *LdapCreateAccountParams) GetAccountid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accountid"].(string)
+	return value, ok
+}
+
 func (p *LdapCreateAccountParams) SetAccounttype(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -579,6 +811,14 @@
 	p.p["accounttype"] = v
 }
 
+func (p *LdapCreateAccountParams) GetAccounttype() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accounttype"].(int)
+	return value, ok
+}
+
 func (p *LdapCreateAccountParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -586,6 +826,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *LdapCreateAccountParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *LdapCreateAccountParams) SetNetworkdomain(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -593,6 +841,14 @@
 	p.p["networkdomain"] = v
 }
 
+func (p *LdapCreateAccountParams) GetNetworkdomain() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkdomain"].(string)
+	return value, ok
+}
+
 func (p *LdapCreateAccountParams) SetRoleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -600,6 +856,14 @@
 	p.p["roleid"] = v
 }
 
+func (p *LdapCreateAccountParams) GetRoleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["roleid"].(string)
+	return value, ok
+}
+
 func (p *LdapCreateAccountParams) SetTimezone(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -607,6 +871,14 @@
 	p.p["timezone"] = v
 }
 
+func (p *LdapCreateAccountParams) GetTimezone() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["timezone"].(string)
+	return value, ok
+}
+
 func (p *LdapCreateAccountParams) SetUserid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -614,6 +886,14 @@
 	p.p["userid"] = v
 }
 
+func (p *LdapCreateAccountParams) GetUserid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userid"].(string)
+	return value, ok
+}
+
 func (p *LdapCreateAccountParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -621,6 +901,14 @@
 	p.p["username"] = v
 }
 
+func (p *LdapCreateAccountParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new LdapCreateAccountParams instance,
 // as then you are sure you have configured all required params
 func (s *LDAPService) NewLdapCreateAccountParams(username string) *LdapCreateAccountParams {
@@ -816,6 +1104,14 @@
 	p.p["accounttype"] = v
 }
 
+func (p *LinkDomainToLdapParams) GetAccounttype() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accounttype"].(int)
+	return value, ok
+}
+
 func (p *LinkDomainToLdapParams) SetAdmin(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -823,6 +1119,14 @@
 	p.p["admin"] = v
 }
 
+func (p *LinkDomainToLdapParams) GetAdmin() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["admin"].(string)
+	return value, ok
+}
+
 func (p *LinkDomainToLdapParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -830,6 +1134,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *LinkDomainToLdapParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *LinkDomainToLdapParams) SetLdapdomain(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -837,6 +1149,14 @@
 	p.p["ldapdomain"] = v
 }
 
+func (p *LinkDomainToLdapParams) GetLdapdomain() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ldapdomain"].(string)
+	return value, ok
+}
+
 func (p *LinkDomainToLdapParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -844,6 +1164,14 @@
 	p.p["name"] = v
 }
 
+func (p *LinkDomainToLdapParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *LinkDomainToLdapParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -851,6 +1179,14 @@
 	p.p["type"] = v
 }
 
+func (p *LinkDomainToLdapParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new LinkDomainToLdapParams instance,
 // as then you are sure you have configured all required params
 func (s *LDAPService) NewLinkDomainToLdapParams(accounttype int, domainid string, lDAPType string) *LinkDomainToLdapParams {
@@ -932,6 +1268,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListLdapConfigurationsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListLdapConfigurationsParams) SetHostname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -939,6 +1283,14 @@
 	p.p["hostname"] = v
 }
 
+func (p *ListLdapConfigurationsParams) GetHostname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostname"].(string)
+	return value, ok
+}
+
 func (p *ListLdapConfigurationsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -946,6 +1298,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListLdapConfigurationsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListLdapConfigurationsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -953,6 +1313,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListLdapConfigurationsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListLdapConfigurationsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -960,6 +1328,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListLdapConfigurationsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListLdapConfigurationsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -967,6 +1343,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListLdapConfigurationsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListLdapConfigurationsParams) SetPort(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -974,6 +1358,14 @@
 	p.p["port"] = v
 }
 
+func (p *ListLdapConfigurationsParams) GetPort() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["port"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListLdapConfigurationsParams instance,
 // as then you are sure you have configured all required params
 func (s *LDAPService) NewListLdapConfigurationsParams() *ListLdapConfigurationsParams {
@@ -1049,6 +1441,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListLdapUsersParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListLdapUsersParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1056,6 +1456,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListLdapUsersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListLdapUsersParams) SetListtype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1063,6 +1471,14 @@
 	p.p["listtype"] = v
 }
 
+func (p *ListLdapUsersParams) GetListtype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listtype"].(string)
+	return value, ok
+}
+
 func (p *ListLdapUsersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1070,6 +1486,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListLdapUsersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListLdapUsersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1077,6 +1501,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListLdapUsersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListLdapUsersParams) SetUserfilter(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1084,6 +1516,14 @@
 	p.p["userfilter"] = v
 }
 
+func (p *ListLdapUsersParams) GetUserfilter() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userfilter"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListLdapUsersParams instance,
 // as then you are sure you have configured all required params
 func (s *LDAPService) NewListLdapUsersParams() *ListLdapUsersParams {
@@ -1157,6 +1597,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *SearchLdapParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *SearchLdapParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1164,6 +1612,14 @@
 	p.p["page"] = v
 }
 
+func (p *SearchLdapParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *SearchLdapParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1171,6 +1627,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *SearchLdapParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *SearchLdapParams) SetQuery(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1178,6 +1642,14 @@
 	p.p["query"] = v
 }
 
+func (p *SearchLdapParams) GetQuery() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["query"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new SearchLdapParams instance,
 // as then you are sure you have configured all required params
 func (s *LDAPService) NewSearchLdapParams(query string) *SearchLdapParams {
diff --git a/cloudstack/LimitService.go b/cloudstack/LimitService.go
index 5291bc4..dd838cd 100644
--- a/cloudstack/LimitService.go
+++ b/cloudstack/LimitService.go
@@ -141,6 +141,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListResourceLimitsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListResourceLimitsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -148,6 +156,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListResourceLimitsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListResourceLimitsParams) SetId(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -155,6 +171,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListResourceLimitsParams) GetId() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(int64)
+	return value, ok
+}
+
 func (p *ListResourceLimitsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -162,6 +186,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListResourceLimitsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListResourceLimitsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -169,6 +201,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListResourceLimitsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListResourceLimitsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -176,6 +216,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListResourceLimitsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListResourceLimitsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -183,6 +231,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListResourceLimitsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListResourceLimitsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -190,6 +246,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListResourceLimitsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListResourceLimitsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -197,6 +261,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListResourceLimitsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListResourceLimitsParams) SetResourcetype(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -204,6 +276,14 @@
 	p.p["resourcetype"] = v
 }
 
+func (p *ListResourceLimitsParams) GetResourcetype() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourcetype"].(int)
+	return value, ok
+}
+
 func (p *ListResourceLimitsParams) SetResourcetypename(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -211,6 +291,14 @@
 	p.p["resourcetypename"] = v
 }
 
+func (p *ListResourceLimitsParams) GetResourcetypename() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourcetypename"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListResourceLimitsParams instance,
 // as then you are sure you have configured all required params
 func (s *LimitService) NewListResourceLimitsParams() *ListResourceLimitsParams {
@@ -274,6 +362,14 @@
 	p.p["account"] = v
 }
 
+func (p *ResetApiLimitParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ResetApiLimitParams instance,
 // as then you are sure you have configured all required params
 func (s *LimitService) NewResetApiLimitParams() *ResetApiLimitParams {
@@ -339,6 +435,14 @@
 	p.p["account"] = v
 }
 
+func (p *UpdateResourceCountParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *UpdateResourceCountParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -346,6 +450,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *UpdateResourceCountParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *UpdateResourceCountParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -353,6 +465,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *UpdateResourceCountParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *UpdateResourceCountParams) SetResourcetype(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -360,6 +480,14 @@
 	p.p["resourcetype"] = v
 }
 
+func (p *UpdateResourceCountParams) GetResourcetype() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourcetype"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateResourceCountParams instance,
 // as then you are sure you have configured all required params
 func (s *LimitService) NewUpdateResourceCountParams(domainid string) *UpdateResourceCountParams {
@@ -433,6 +561,14 @@
 	p.p["account"] = v
 }
 
+func (p *UpdateResourceLimitParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *UpdateResourceLimitParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -440,6 +576,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *UpdateResourceLimitParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *UpdateResourceLimitParams) SetMax(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -447,6 +591,14 @@
 	p.p["max"] = v
 }
 
+func (p *UpdateResourceLimitParams) GetMax() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["max"].(int64)
+	return value, ok
+}
+
 func (p *UpdateResourceLimitParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -454,6 +606,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *UpdateResourceLimitParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *UpdateResourceLimitParams) SetResourcetype(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -461,6 +621,14 @@
 	p.p["resourcetype"] = v
 }
 
+func (p *UpdateResourceLimitParams) GetResourcetype() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourcetype"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateResourceLimitParams instance,
 // as then you are sure you have configured all required params
 func (s *LimitService) NewUpdateResourceLimitParams(resourcetype int) *UpdateResourceLimitParams {
diff --git a/cloudstack/LoadBalancerService.go b/cloudstack/LoadBalancerService.go
index 8b2981b..2f0f9d8 100644
--- a/cloudstack/LoadBalancerService.go
+++ b/cloudstack/LoadBalancerService.go
@@ -158,6 +158,14 @@
 	p.p["gslbprovider"] = v
 }
 
+func (p *AddNetscalerLoadBalancerParams) GetGslbprovider() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gslbprovider"].(bool)
+	return value, ok
+}
+
 func (p *AddNetscalerLoadBalancerParams) SetGslbproviderprivateip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -165,6 +173,14 @@
 	p.p["gslbproviderprivateip"] = v
 }
 
+func (p *AddNetscalerLoadBalancerParams) GetGslbproviderprivateip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gslbproviderprivateip"].(string)
+	return value, ok
+}
+
 func (p *AddNetscalerLoadBalancerParams) SetGslbproviderpublicip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -172,6 +188,14 @@
 	p.p["gslbproviderpublicip"] = v
 }
 
+func (p *AddNetscalerLoadBalancerParams) GetGslbproviderpublicip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gslbproviderpublicip"].(string)
+	return value, ok
+}
+
 func (p *AddNetscalerLoadBalancerParams) SetIsexclusivegslbprovider(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -179,6 +203,14 @@
 	p.p["isexclusivegslbprovider"] = v
 }
 
+func (p *AddNetscalerLoadBalancerParams) GetIsexclusivegslbprovider() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isexclusivegslbprovider"].(bool)
+	return value, ok
+}
+
 func (p *AddNetscalerLoadBalancerParams) SetNetworkdevicetype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -186,6 +218,14 @@
 	p.p["networkdevicetype"] = v
 }
 
+func (p *AddNetscalerLoadBalancerParams) GetNetworkdevicetype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkdevicetype"].(string)
+	return value, ok
+}
+
 func (p *AddNetscalerLoadBalancerParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -193,6 +233,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddNetscalerLoadBalancerParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddNetscalerLoadBalancerParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -200,6 +248,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *AddNetscalerLoadBalancerParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *AddNetscalerLoadBalancerParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -207,6 +263,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddNetscalerLoadBalancerParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddNetscalerLoadBalancerParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -214,6 +278,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddNetscalerLoadBalancerParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddNetscalerLoadBalancerParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewAddNetscalerLoadBalancerParams(networkdevicetype string, password string, physicalnetworkid string, url string, username string) *AddNetscalerLoadBalancerParams {
@@ -307,6 +379,14 @@
 	p.p["certid"] = v
 }
 
+func (p *AssignCertToLoadBalancerParams) GetCertid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["certid"].(string)
+	return value, ok
+}
+
 func (p *AssignCertToLoadBalancerParams) SetLbruleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -314,6 +394,14 @@
 	p.p["lbruleid"] = v
 }
 
+func (p *AssignCertToLoadBalancerParams) GetLbruleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbruleid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AssignCertToLoadBalancerParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewAssignCertToLoadBalancerParams(certid string, lbruleid string) *AssignCertToLoadBalancerParams {
@@ -394,6 +482,14 @@
 	p.p["gslblbruleweightsmap"] = v
 }
 
+func (p *AssignToGlobalLoadBalancerRuleParams) GetGslblbruleweightsmap() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gslblbruleweightsmap"].(map[string]string)
+	return value, ok
+}
+
 func (p *AssignToGlobalLoadBalancerRuleParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -401,6 +497,14 @@
 	p.p["id"] = v
 }
 
+func (p *AssignToGlobalLoadBalancerRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *AssignToGlobalLoadBalancerRuleParams) SetLoadbalancerrulelist(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -408,6 +512,14 @@
 	p.p["loadbalancerrulelist"] = v
 }
 
+func (p *AssignToGlobalLoadBalancerRuleParams) GetLoadbalancerrulelist() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["loadbalancerrulelist"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new AssignToGlobalLoadBalancerRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewAssignToGlobalLoadBalancerRuleParams(id string, loadbalancerrulelist []string) *AssignToGlobalLoadBalancerRuleParams {
@@ -488,6 +600,14 @@
 	p.p["id"] = v
 }
 
+func (p *AssignToLoadBalancerRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *AssignToLoadBalancerRuleParams) SetVirtualmachineids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -495,6 +615,14 @@
 	p.p["virtualmachineids"] = v
 }
 
+func (p *AssignToLoadBalancerRuleParams) GetVirtualmachineids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineids"].([]string)
+	return value, ok
+}
+
 func (p *AssignToLoadBalancerRuleParams) SetVmidipmap(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -502,6 +630,14 @@
 	p.p["vmidipmap"] = v
 }
 
+func (p *AssignToLoadBalancerRuleParams) GetVmidipmap() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vmidipmap"].(map[string]string)
+	return value, ok
+}
+
 // You should always use this function to get a new AssignToLoadBalancerRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewAssignToLoadBalancerRuleParams(id string) *AssignToLoadBalancerRuleParams {
@@ -586,6 +722,14 @@
 	p.p["inline"] = v
 }
 
+func (p *ConfigureNetscalerLoadBalancerParams) GetInline() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["inline"].(bool)
+	return value, ok
+}
+
 func (p *ConfigureNetscalerLoadBalancerParams) SetLbdevicecapacity(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -593,6 +737,14 @@
 	p.p["lbdevicecapacity"] = v
 }
 
+func (p *ConfigureNetscalerLoadBalancerParams) GetLbdevicecapacity() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbdevicecapacity"].(int64)
+	return value, ok
+}
+
 func (p *ConfigureNetscalerLoadBalancerParams) SetLbdevicededicated(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -600,6 +752,14 @@
 	p.p["lbdevicededicated"] = v
 }
 
+func (p *ConfigureNetscalerLoadBalancerParams) GetLbdevicededicated() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbdevicededicated"].(bool)
+	return value, ok
+}
+
 func (p *ConfigureNetscalerLoadBalancerParams) SetLbdeviceid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -607,6 +767,14 @@
 	p.p["lbdeviceid"] = v
 }
 
+func (p *ConfigureNetscalerLoadBalancerParams) GetLbdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbdeviceid"].(string)
+	return value, ok
+}
+
 func (p *ConfigureNetscalerLoadBalancerParams) SetPodids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -614,6 +782,14 @@
 	p.p["podids"] = v
 }
 
+func (p *ConfigureNetscalerLoadBalancerParams) GetPodids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podids"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new ConfigureNetscalerLoadBalancerParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewConfigureNetscalerLoadBalancerParams(lbdeviceid string) *ConfigureNetscalerLoadBalancerParams {
@@ -725,6 +901,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateGlobalLoadBalancerRuleParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateGlobalLoadBalancerRuleParams) SetDescription(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -732,6 +916,14 @@
 	p.p["description"] = v
 }
 
+func (p *CreateGlobalLoadBalancerRuleParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *CreateGlobalLoadBalancerRuleParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -739,6 +931,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateGlobalLoadBalancerRuleParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateGlobalLoadBalancerRuleParams) SetGslbdomainname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -746,6 +946,14 @@
 	p.p["gslbdomainname"] = v
 }
 
+func (p *CreateGlobalLoadBalancerRuleParams) GetGslbdomainname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gslbdomainname"].(string)
+	return value, ok
+}
+
 func (p *CreateGlobalLoadBalancerRuleParams) SetGslblbmethod(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -753,6 +961,14 @@
 	p.p["gslblbmethod"] = v
 }
 
+func (p *CreateGlobalLoadBalancerRuleParams) GetGslblbmethod() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gslblbmethod"].(string)
+	return value, ok
+}
+
 func (p *CreateGlobalLoadBalancerRuleParams) SetGslbservicetype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -760,6 +976,14 @@
 	p.p["gslbservicetype"] = v
 }
 
+func (p *CreateGlobalLoadBalancerRuleParams) GetGslbservicetype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gslbservicetype"].(string)
+	return value, ok
+}
+
 func (p *CreateGlobalLoadBalancerRuleParams) SetGslbstickysessionmethodname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -767,6 +991,14 @@
 	p.p["gslbstickysessionmethodname"] = v
 }
 
+func (p *CreateGlobalLoadBalancerRuleParams) GetGslbstickysessionmethodname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gslbstickysessionmethodname"].(string)
+	return value, ok
+}
+
 func (p *CreateGlobalLoadBalancerRuleParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -774,6 +1006,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateGlobalLoadBalancerRuleParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateGlobalLoadBalancerRuleParams) SetRegionid(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -781,6 +1021,14 @@
 	p.p["regionid"] = v
 }
 
+func (p *CreateGlobalLoadBalancerRuleParams) GetRegionid() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["regionid"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateGlobalLoadBalancerRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewCreateGlobalLoadBalancerRuleParams(gslbdomainname string, gslbservicetype string, name string, regionid int) *CreateGlobalLoadBalancerRuleParams {
@@ -919,6 +1167,14 @@
 	p.p["description"] = v
 }
 
+func (p *CreateLBHealthCheckPolicyParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *CreateLBHealthCheckPolicyParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -926,6 +1182,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateLBHealthCheckPolicyParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateLBHealthCheckPolicyParams) SetHealthythreshold(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -933,6 +1197,14 @@
 	p.p["healthythreshold"] = v
 }
 
+func (p *CreateLBHealthCheckPolicyParams) GetHealthythreshold() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["healthythreshold"].(int)
+	return value, ok
+}
+
 func (p *CreateLBHealthCheckPolicyParams) SetIntervaltime(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -940,6 +1212,14 @@
 	p.p["intervaltime"] = v
 }
 
+func (p *CreateLBHealthCheckPolicyParams) GetIntervaltime() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["intervaltime"].(int)
+	return value, ok
+}
+
 func (p *CreateLBHealthCheckPolicyParams) SetLbruleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -947,6 +1227,14 @@
 	p.p["lbruleid"] = v
 }
 
+func (p *CreateLBHealthCheckPolicyParams) GetLbruleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbruleid"].(string)
+	return value, ok
+}
+
 func (p *CreateLBHealthCheckPolicyParams) SetPingpath(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -954,6 +1242,14 @@
 	p.p["pingpath"] = v
 }
 
+func (p *CreateLBHealthCheckPolicyParams) GetPingpath() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pingpath"].(string)
+	return value, ok
+}
+
 func (p *CreateLBHealthCheckPolicyParams) SetResponsetimeout(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -961,6 +1257,14 @@
 	p.p["responsetimeout"] = v
 }
 
+func (p *CreateLBHealthCheckPolicyParams) GetResponsetimeout() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["responsetimeout"].(int)
+	return value, ok
+}
+
 func (p *CreateLBHealthCheckPolicyParams) SetUnhealthythreshold(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -968,6 +1272,14 @@
 	p.p["unhealthythreshold"] = v
 }
 
+func (p *CreateLBHealthCheckPolicyParams) GetUnhealthythreshold() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["unhealthythreshold"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateLBHealthCheckPolicyParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewCreateLBHealthCheckPolicyParams(lbruleid string) *CreateLBHealthCheckPolicyParams {
@@ -1077,6 +1389,14 @@
 	p.p["description"] = v
 }
 
+func (p *CreateLBStickinessPolicyParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *CreateLBStickinessPolicyParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1084,6 +1404,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateLBStickinessPolicyParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateLBStickinessPolicyParams) SetLbruleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1091,6 +1419,14 @@
 	p.p["lbruleid"] = v
 }
 
+func (p *CreateLBStickinessPolicyParams) GetLbruleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbruleid"].(string)
+	return value, ok
+}
+
 func (p *CreateLBStickinessPolicyParams) SetMethodname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1098,6 +1434,14 @@
 	p.p["methodname"] = v
 }
 
+func (p *CreateLBStickinessPolicyParams) GetMethodname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["methodname"].(string)
+	return value, ok
+}
+
 func (p *CreateLBStickinessPolicyParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1105,6 +1449,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateLBStickinessPolicyParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateLBStickinessPolicyParams) SetParam(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1112,6 +1464,14 @@
 	p.p["param"] = v
 }
 
+func (p *CreateLBStickinessPolicyParams) GetParam() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["param"].(map[string]string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateLBStickinessPolicyParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewCreateLBStickinessPolicyParams(lbruleid string, methodname string, name string) *CreateLBStickinessPolicyParams {
@@ -1234,6 +1594,14 @@
 	p.p["algorithm"] = v
 }
 
+func (p *CreateLoadBalancerParams) GetAlgorithm() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["algorithm"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerParams) SetDescription(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1241,6 +1609,14 @@
 	p.p["description"] = v
 }
 
+func (p *CreateLoadBalancerParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1248,6 +1624,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateLoadBalancerParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerParams) SetInstanceport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1255,6 +1639,14 @@
 	p.p["instanceport"] = v
 }
 
+func (p *CreateLoadBalancerParams) GetInstanceport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["instanceport"].(int)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1262,6 +1654,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateLoadBalancerParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1269,6 +1669,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *CreateLoadBalancerParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerParams) SetScheme(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1276,6 +1684,14 @@
 	p.p["scheme"] = v
 }
 
+func (p *CreateLoadBalancerParams) GetScheme() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["scheme"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerParams) SetSourceipaddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1283,6 +1699,14 @@
 	p.p["sourceipaddress"] = v
 }
 
+func (p *CreateLoadBalancerParams) GetSourceipaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sourceipaddress"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerParams) SetSourceipaddressnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1290,6 +1714,14 @@
 	p.p["sourceipaddressnetworkid"] = v
 }
 
+func (p *CreateLoadBalancerParams) GetSourceipaddressnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sourceipaddressnetworkid"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerParams) SetSourceport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1297,6 +1729,14 @@
 	p.p["sourceport"] = v
 }
 
+func (p *CreateLoadBalancerParams) GetSourceport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sourceport"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateLoadBalancerParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewCreateLoadBalancerParams(algorithm string, instanceport int, name string, networkid string, scheme string, sourceipaddressnetworkid string, sourceport int) *CreateLoadBalancerParams {
@@ -1447,6 +1887,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateLoadBalancerRuleParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerRuleParams) SetAlgorithm(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1454,6 +1902,14 @@
 	p.p["algorithm"] = v
 }
 
+func (p *CreateLoadBalancerRuleParams) GetAlgorithm() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["algorithm"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerRuleParams) SetCidrlist(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1461,6 +1917,14 @@
 	p.p["cidrlist"] = v
 }
 
+func (p *CreateLoadBalancerRuleParams) GetCidrlist() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cidrlist"].([]string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerRuleParams) SetDescription(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1468,6 +1932,14 @@
 	p.p["description"] = v
 }
 
+func (p *CreateLoadBalancerRuleParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerRuleParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1475,6 +1947,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateLoadBalancerRuleParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerRuleParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1482,6 +1962,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateLoadBalancerRuleParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerRuleParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1489,6 +1977,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateLoadBalancerRuleParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerRuleParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1496,6 +1992,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *CreateLoadBalancerRuleParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerRuleParams) SetOpenfirewall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1503,6 +2007,14 @@
 	p.p["openfirewall"] = v
 }
 
+func (p *CreateLoadBalancerRuleParams) GetOpenfirewall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["openfirewall"].(bool)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerRuleParams) SetPrivateport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1510,6 +2022,14 @@
 	p.p["privateport"] = v
 }
 
+func (p *CreateLoadBalancerRuleParams) GetPrivateport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["privateport"].(int)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerRuleParams) SetProtocol(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1517,6 +2037,14 @@
 	p.p["protocol"] = v
 }
 
+func (p *CreateLoadBalancerRuleParams) GetProtocol() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["protocol"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerRuleParams) SetPublicipid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1524,6 +2052,14 @@
 	p.p["publicipid"] = v
 }
 
+func (p *CreateLoadBalancerRuleParams) GetPublicipid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["publicipid"].(string)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerRuleParams) SetPublicport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1531,6 +2067,14 @@
 	p.p["publicport"] = v
 }
 
+func (p *CreateLoadBalancerRuleParams) GetPublicport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["publicport"].(int)
+	return value, ok
+}
+
 func (p *CreateLoadBalancerRuleParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1538,6 +2082,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreateLoadBalancerRuleParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateLoadBalancerRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewCreateLoadBalancerRuleParams(algorithm string, name string, privateport int, publicport int) *CreateLoadBalancerRuleParams {
@@ -1633,6 +2185,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteGlobalLoadBalancerRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteGlobalLoadBalancerRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewDeleteGlobalLoadBalancerRuleParams(id string) *DeleteGlobalLoadBalancerRuleParams {
@@ -1701,6 +2261,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteLBHealthCheckPolicyParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteLBHealthCheckPolicyParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewDeleteLBHealthCheckPolicyParams(id string) *DeleteLBHealthCheckPolicyParams {
@@ -1769,6 +2337,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteLBStickinessPolicyParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteLBStickinessPolicyParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewDeleteLBStickinessPolicyParams(id string) *DeleteLBStickinessPolicyParams {
@@ -1837,6 +2413,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteLoadBalancerParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteLoadBalancerParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewDeleteLoadBalancerParams(id string) *DeleteLoadBalancerParams {
@@ -1905,6 +2489,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteLoadBalancerRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteLoadBalancerRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewDeleteLoadBalancerRuleParams(id string) *DeleteLoadBalancerRuleParams {
@@ -1973,6 +2565,14 @@
 	p.p["lbdeviceid"] = v
 }
 
+func (p *DeleteNetscalerLoadBalancerParams) GetLbdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbdeviceid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteNetscalerLoadBalancerParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewDeleteNetscalerLoadBalancerParams(lbdeviceid string) *DeleteNetscalerLoadBalancerParams {
@@ -2041,6 +2641,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteSslCertParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteSslCertParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewDeleteSslCertParams(id string) *DeleteSslCertParams {
@@ -2160,6 +2768,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListGlobalLoadBalancerRulesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListGlobalLoadBalancerRulesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2167,6 +2783,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListGlobalLoadBalancerRulesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListGlobalLoadBalancerRulesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2174,6 +2798,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListGlobalLoadBalancerRulesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListGlobalLoadBalancerRulesParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2181,6 +2813,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListGlobalLoadBalancerRulesParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListGlobalLoadBalancerRulesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2188,6 +2828,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListGlobalLoadBalancerRulesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListGlobalLoadBalancerRulesParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2195,6 +2843,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListGlobalLoadBalancerRulesParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListGlobalLoadBalancerRulesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2202,6 +2858,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListGlobalLoadBalancerRulesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListGlobalLoadBalancerRulesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2209,6 +2873,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListGlobalLoadBalancerRulesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListGlobalLoadBalancerRulesParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2216,6 +2888,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListGlobalLoadBalancerRulesParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListGlobalLoadBalancerRulesParams) SetRegionid(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2223,6 +2903,14 @@
 	p.p["regionid"] = v
 }
 
+func (p *ListGlobalLoadBalancerRulesParams) GetRegionid() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["regionid"].(int)
+	return value, ok
+}
+
 func (p *ListGlobalLoadBalancerRulesParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2230,6 +2918,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListGlobalLoadBalancerRulesParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListGlobalLoadBalancerRulesParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewListGlobalLoadBalancerRulesParams() *ListGlobalLoadBalancerRulesParams {
@@ -2424,6 +3120,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListLBHealthCheckPoliciesParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListLBHealthCheckPoliciesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2431,6 +3135,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListLBHealthCheckPoliciesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListLBHealthCheckPoliciesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2438,6 +3150,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListLBHealthCheckPoliciesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListLBHealthCheckPoliciesParams) SetLbruleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2445,6 +3165,14 @@
 	p.p["lbruleid"] = v
 }
 
+func (p *ListLBHealthCheckPoliciesParams) GetLbruleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbruleid"].(string)
+	return value, ok
+}
+
 func (p *ListLBHealthCheckPoliciesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2452,6 +3180,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListLBHealthCheckPoliciesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListLBHealthCheckPoliciesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2459,6 +3195,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListLBHealthCheckPoliciesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListLBHealthCheckPoliciesParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewListLBHealthCheckPoliciesParams() *ListLBHealthCheckPoliciesParams {
@@ -2583,6 +3327,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListLBStickinessPoliciesParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListLBStickinessPoliciesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2590,6 +3342,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListLBStickinessPoliciesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListLBStickinessPoliciesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2597,6 +3357,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListLBStickinessPoliciesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListLBStickinessPoliciesParams) SetLbruleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2604,6 +3372,14 @@
 	p.p["lbruleid"] = v
 }
 
+func (p *ListLBStickinessPoliciesParams) GetLbruleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbruleid"].(string)
+	return value, ok
+}
+
 func (p *ListLBStickinessPoliciesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2611,6 +3387,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListLBStickinessPoliciesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListLBStickinessPoliciesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2618,6 +3402,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListLBStickinessPoliciesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListLBStickinessPoliciesParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewListLBStickinessPoliciesParams() *ListLBStickinessPoliciesParams {
@@ -2744,6 +3536,14 @@
 	p.p["applied"] = v
 }
 
+func (p *ListLoadBalancerRuleInstancesParams) GetApplied() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["applied"].(bool)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRuleInstancesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2751,6 +3551,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListLoadBalancerRuleInstancesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRuleInstancesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2758,6 +3566,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListLoadBalancerRuleInstancesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRuleInstancesParams) SetLbvmips(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2765,6 +3581,14 @@
 	p.p["lbvmips"] = v
 }
 
+func (p *ListLoadBalancerRuleInstancesParams) GetLbvmips() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbvmips"].(bool)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRuleInstancesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2772,6 +3596,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListLoadBalancerRuleInstancesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRuleInstancesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2779,6 +3611,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListLoadBalancerRuleInstancesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListLoadBalancerRuleInstancesParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewListLoadBalancerRuleInstancesParams(id string) *ListLoadBalancerRuleInstancesParams {
@@ -2925,6 +3765,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2932,6 +3780,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2939,6 +3795,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2946,6 +3810,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2953,6 +3825,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2960,6 +3840,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2967,6 +3855,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2974,6 +3870,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2981,6 +3885,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2988,6 +3900,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2995,6 +3915,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3002,6 +3930,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetPublicipid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3009,6 +3945,14 @@
 	p.p["publicipid"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetPublicipid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["publicipid"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3016,6 +3960,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3023,6 +3975,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancerRulesParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3030,6 +3990,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListLoadBalancerRulesParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListLoadBalancerRulesParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewListLoadBalancerRulesParams() *ListLoadBalancerRulesParams {
@@ -3243,6 +4211,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListLoadBalancersParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3250,6 +4226,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListLoadBalancersParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3257,6 +4241,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListLoadBalancersParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3264,6 +4256,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListLoadBalancersParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3271,6 +4271,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListLoadBalancersParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3278,6 +4286,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListLoadBalancersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3285,6 +4301,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListLoadBalancersParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3292,6 +4316,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListLoadBalancersParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3299,6 +4331,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListLoadBalancersParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3306,6 +4346,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListLoadBalancersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3313,6 +4361,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListLoadBalancersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3320,6 +4376,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListLoadBalancersParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetScheme(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3327,6 +4391,14 @@
 	p.p["scheme"] = v
 }
 
+func (p *ListLoadBalancersParams) GetScheme() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["scheme"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetSourceipaddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3334,6 +4406,14 @@
 	p.p["sourceipaddress"] = v
 }
 
+func (p *ListLoadBalancersParams) GetSourceipaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sourceipaddress"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetSourceipaddressnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3341,6 +4421,14 @@
 	p.p["sourceipaddressnetworkid"] = v
 }
 
+func (p *ListLoadBalancersParams) GetSourceipaddressnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sourceipaddressnetworkid"].(string)
+	return value, ok
+}
+
 func (p *ListLoadBalancersParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3348,6 +4436,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListLoadBalancersParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListLoadBalancersParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewListLoadBalancersParams() *ListLoadBalancersParams {
@@ -3529,6 +4625,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListNetscalerLoadBalancersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListNetscalerLoadBalancersParams) SetLbdeviceid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3536,6 +4640,14 @@
 	p.p["lbdeviceid"] = v
 }
 
+func (p *ListNetscalerLoadBalancersParams) GetLbdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbdeviceid"].(string)
+	return value, ok
+}
+
 func (p *ListNetscalerLoadBalancersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3543,6 +4655,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListNetscalerLoadBalancersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListNetscalerLoadBalancersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3550,6 +4670,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListNetscalerLoadBalancersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListNetscalerLoadBalancersParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3557,6 +4685,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *ListNetscalerLoadBalancersParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListNetscalerLoadBalancersParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewListNetscalerLoadBalancersParams() *ListNetscalerLoadBalancersParams {
@@ -3636,6 +4772,14 @@
 	p.p["accountid"] = v
 }
 
+func (p *ListSslCertsParams) GetAccountid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accountid"].(string)
+	return value, ok
+}
+
 func (p *ListSslCertsParams) SetCertid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3643,6 +4787,14 @@
 	p.p["certid"] = v
 }
 
+func (p *ListSslCertsParams) GetCertid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["certid"].(string)
+	return value, ok
+}
+
 func (p *ListSslCertsParams) SetLbruleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3650,6 +4802,14 @@
 	p.p["lbruleid"] = v
 }
 
+func (p *ListSslCertsParams) GetLbruleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbruleid"].(string)
+	return value, ok
+}
+
 func (p *ListSslCertsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3657,6 +4817,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListSslCertsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListSslCertsParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewListSslCertsParams() *ListSslCertsParams {
@@ -3723,6 +4891,14 @@
 	p.p["lbruleid"] = v
 }
 
+func (p *RemoveCertFromLoadBalancerParams) GetLbruleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbruleid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RemoveCertFromLoadBalancerParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewRemoveCertFromLoadBalancerParams(lbruleid string) *RemoveCertFromLoadBalancerParams {
@@ -3795,6 +4971,14 @@
 	p.p["id"] = v
 }
 
+func (p *RemoveFromGlobalLoadBalancerRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *RemoveFromGlobalLoadBalancerRuleParams) SetLoadbalancerrulelist(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3802,6 +4986,14 @@
 	p.p["loadbalancerrulelist"] = v
 }
 
+func (p *RemoveFromGlobalLoadBalancerRuleParams) GetLoadbalancerrulelist() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["loadbalancerrulelist"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new RemoveFromGlobalLoadBalancerRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewRemoveFromGlobalLoadBalancerRuleParams(id string, loadbalancerrulelist []string) *RemoveFromGlobalLoadBalancerRuleParams {
@@ -3882,6 +5074,14 @@
 	p.p["id"] = v
 }
 
+func (p *RemoveFromLoadBalancerRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *RemoveFromLoadBalancerRuleParams) SetVirtualmachineids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3889,6 +5089,14 @@
 	p.p["virtualmachineids"] = v
 }
 
+func (p *RemoveFromLoadBalancerRuleParams) GetVirtualmachineids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineids"].([]string)
+	return value, ok
+}
+
 func (p *RemoveFromLoadBalancerRuleParams) SetVmidipmap(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3896,6 +5104,14 @@
 	p.p["vmidipmap"] = v
 }
 
+func (p *RemoveFromLoadBalancerRuleParams) GetVmidipmap() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vmidipmap"].(map[string]string)
+	return value, ok
+}
+
 // You should always use this function to get a new RemoveFromLoadBalancerRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewRemoveFromLoadBalancerRuleParams(id string) *RemoveFromLoadBalancerRuleParams {
@@ -3973,6 +5189,14 @@
 	p.p["description"] = v
 }
 
+func (p *UpdateGlobalLoadBalancerRuleParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *UpdateGlobalLoadBalancerRuleParams) SetGslblbmethod(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3980,6 +5204,14 @@
 	p.p["gslblbmethod"] = v
 }
 
+func (p *UpdateGlobalLoadBalancerRuleParams) GetGslblbmethod() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gslblbmethod"].(string)
+	return value, ok
+}
+
 func (p *UpdateGlobalLoadBalancerRuleParams) SetGslbstickysessionmethodname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3987,6 +5219,14 @@
 	p.p["gslbstickysessionmethodname"] = v
 }
 
+func (p *UpdateGlobalLoadBalancerRuleParams) GetGslbstickysessionmethodname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gslbstickysessionmethodname"].(string)
+	return value, ok
+}
+
 func (p *UpdateGlobalLoadBalancerRuleParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3994,6 +5234,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateGlobalLoadBalancerRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateGlobalLoadBalancerRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewUpdateGlobalLoadBalancerRuleParams(id string) *UpdateGlobalLoadBalancerRuleParams {
@@ -4110,6 +5358,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateLBHealthCheckPolicyParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateLBHealthCheckPolicyParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4117,6 +5373,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateLBHealthCheckPolicyParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateLBHealthCheckPolicyParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4124,6 +5388,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateLBHealthCheckPolicyParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateLBHealthCheckPolicyParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewUpdateLBHealthCheckPolicyParams(id string) *UpdateLBHealthCheckPolicyParams {
@@ -4220,6 +5492,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateLBStickinessPolicyParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateLBStickinessPolicyParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4227,6 +5507,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateLBStickinessPolicyParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateLBStickinessPolicyParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4234,6 +5522,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateLBStickinessPolicyParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateLBStickinessPolicyParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewUpdateLBStickinessPolicyParams(id string) *UpdateLBStickinessPolicyParams {
@@ -4331,6 +5627,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateLoadBalancerParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateLoadBalancerParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4338,6 +5642,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateLoadBalancerParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateLoadBalancerParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4345,6 +5657,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateLoadBalancerParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateLoadBalancerParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewUpdateLoadBalancerParams(id string) *UpdateLoadBalancerParams {
@@ -4464,6 +5784,14 @@
 	p.p["algorithm"] = v
 }
 
+func (p *UpdateLoadBalancerRuleParams) GetAlgorithm() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["algorithm"].(string)
+	return value, ok
+}
+
 func (p *UpdateLoadBalancerRuleParams) SetCustomid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4471,6 +5799,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateLoadBalancerRuleParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateLoadBalancerRuleParams) SetDescription(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4478,6 +5814,14 @@
 	p.p["description"] = v
 }
 
+func (p *UpdateLoadBalancerRuleParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *UpdateLoadBalancerRuleParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4485,6 +5829,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateLoadBalancerRuleParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateLoadBalancerRuleParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4492,6 +5844,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateLoadBalancerRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateLoadBalancerRuleParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4499,6 +5859,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateLoadBalancerRuleParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateLoadBalancerRuleParams) SetProtocol(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4506,6 +5874,14 @@
 	p.p["protocol"] = v
 }
 
+func (p *UpdateLoadBalancerRuleParams) GetProtocol() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["protocol"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateLoadBalancerRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewUpdateLoadBalancerRuleParams(id string) *UpdateLoadBalancerRuleParams {
@@ -4623,6 +5999,14 @@
 	p.p["account"] = v
 }
 
+func (p *UploadSslCertParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *UploadSslCertParams) SetCertchain(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4630,6 +6014,14 @@
 	p.p["certchain"] = v
 }
 
+func (p *UploadSslCertParams) GetCertchain() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["certchain"].(string)
+	return value, ok
+}
+
 func (p *UploadSslCertParams) SetCertificate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4637,6 +6029,14 @@
 	p.p["certificate"] = v
 }
 
+func (p *UploadSslCertParams) GetCertificate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["certificate"].(string)
+	return value, ok
+}
+
 func (p *UploadSslCertParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4644,6 +6044,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *UploadSslCertParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *UploadSslCertParams) SetEnabledrevocationcheck(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4651,6 +6059,14 @@
 	p.p["enabledrevocationcheck"] = v
 }
 
+func (p *UploadSslCertParams) GetEnabledrevocationcheck() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enabledrevocationcheck"].(bool)
+	return value, ok
+}
+
 func (p *UploadSslCertParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4658,6 +6074,14 @@
 	p.p["name"] = v
 }
 
+func (p *UploadSslCertParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UploadSslCertParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4665,6 +6089,14 @@
 	p.p["password"] = v
 }
 
+func (p *UploadSslCertParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *UploadSslCertParams) SetPrivatekey(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4672,6 +6104,14 @@
 	p.p["privatekey"] = v
 }
 
+func (p *UploadSslCertParams) GetPrivatekey() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["privatekey"].(string)
+	return value, ok
+}
+
 func (p *UploadSslCertParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4679,6 +6119,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *UploadSslCertParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UploadSslCertParams instance,
 // as then you are sure you have configured all required params
 func (s *LoadBalancerService) NewUploadSslCertParams(certificate string, name string, privatekey string) *UploadSslCertParams {
diff --git a/cloudstack/NATService.go b/cloudstack/NATService.go
index 1393a99..e5a3a49 100644
--- a/cloudstack/NATService.go
+++ b/cloudstack/NATService.go
@@ -82,6 +82,14 @@
 	p.p["cidrlist"] = v
 }
 
+func (p *CreateIpForwardingRuleParams) GetCidrlist() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cidrlist"].([]string)
+	return value, ok
+}
+
 func (p *CreateIpForwardingRuleParams) SetEndport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -89,6 +97,14 @@
 	p.p["endport"] = v
 }
 
+func (p *CreateIpForwardingRuleParams) GetEndport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endport"].(int)
+	return value, ok
+}
+
 func (p *CreateIpForwardingRuleParams) SetIpaddressid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -96,6 +112,14 @@
 	p.p["ipaddressid"] = v
 }
 
+func (p *CreateIpForwardingRuleParams) GetIpaddressid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddressid"].(string)
+	return value, ok
+}
+
 func (p *CreateIpForwardingRuleParams) SetOpenfirewall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -103,6 +127,14 @@
 	p.p["openfirewall"] = v
 }
 
+func (p *CreateIpForwardingRuleParams) GetOpenfirewall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["openfirewall"].(bool)
+	return value, ok
+}
+
 func (p *CreateIpForwardingRuleParams) SetProtocol(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -110,6 +142,14 @@
 	p.p["protocol"] = v
 }
 
+func (p *CreateIpForwardingRuleParams) GetProtocol() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["protocol"].(string)
+	return value, ok
+}
+
 func (p *CreateIpForwardingRuleParams) SetStartport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -117,6 +157,14 @@
 	p.p["startport"] = v
 }
 
+func (p *CreateIpForwardingRuleParams) GetStartport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startport"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateIpForwardingRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *NATService) NewCreateIpForwardingRuleParams(ipaddressid string, protocol string, startport int) *CreateIpForwardingRuleParams {
@@ -207,6 +255,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteIpForwardingRuleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteIpForwardingRuleParams instance,
 // as then you are sure you have configured all required params
 func (s *NATService) NewDeleteIpForwardingRuleParams(id string) *DeleteIpForwardingRuleParams {
@@ -275,6 +331,14 @@
 	p.p["ipaddressid"] = v
 }
 
+func (p *DisableStaticNatParams) GetIpaddressid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddressid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DisableStaticNatParams instance,
 // as then you are sure you have configured all required params
 func (s *NATService) NewDisableStaticNatParams(ipaddressid string) *DisableStaticNatParams {
@@ -352,6 +416,14 @@
 	p.p["ipaddressid"] = v
 }
 
+func (p *EnableStaticNatParams) GetIpaddressid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddressid"].(string)
+	return value, ok
+}
+
 func (p *EnableStaticNatParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -359,6 +431,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *EnableStaticNatParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *EnableStaticNatParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -366,6 +446,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *EnableStaticNatParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 func (p *EnableStaticNatParams) SetVmguestip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -373,6 +461,14 @@
 	p.p["vmguestip"] = v
 }
 
+func (p *EnableStaticNatParams) GetVmguestip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vmguestip"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new EnableStaticNatParams instance,
 // as then you are sure you have configured all required params
 func (s *NATService) NewEnableStaticNatParams(ipaddressid string, virtualmachineid string) *EnableStaticNatParams {
@@ -488,6 +584,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListIpForwardingRulesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListIpForwardingRulesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -495,6 +599,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListIpForwardingRulesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListIpForwardingRulesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -502,6 +614,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListIpForwardingRulesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListIpForwardingRulesParams) SetIpaddressid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -509,6 +629,14 @@
 	p.p["ipaddressid"] = v
 }
 
+func (p *ListIpForwardingRulesParams) GetIpaddressid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddressid"].(string)
+	return value, ok
+}
+
 func (p *ListIpForwardingRulesParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -516,6 +644,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListIpForwardingRulesParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListIpForwardingRulesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -523,6 +659,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListIpForwardingRulesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListIpForwardingRulesParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -530,6 +674,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListIpForwardingRulesParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListIpForwardingRulesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -537,6 +689,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListIpForwardingRulesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListIpForwardingRulesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -544,6 +704,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListIpForwardingRulesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListIpForwardingRulesParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -551,6 +719,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListIpForwardingRulesParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListIpForwardingRulesParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -558,6 +734,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *ListIpForwardingRulesParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListIpForwardingRulesParams instance,
 // as then you are sure you have configured all required params
 func (s *NATService) NewListIpForwardingRulesParams() *ListIpForwardingRulesParams {
diff --git a/cloudstack/NetworkACLService.go b/cloudstack/NetworkACLService.go
index c40f6c2..41fe2dd 100644
--- a/cloudstack/NetworkACLService.go
+++ b/cloudstack/NetworkACLService.go
@@ -117,6 +117,14 @@
 	p.p["aclid"] = v
 }
 
+func (p *CreateNetworkACLParams) GetAclid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["aclid"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkACLParams) SetAction(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -124,6 +132,14 @@
 	p.p["action"] = v
 }
 
+func (p *CreateNetworkACLParams) GetAction() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["action"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkACLParams) SetCidrlist(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -131,6 +147,14 @@
 	p.p["cidrlist"] = v
 }
 
+func (p *CreateNetworkACLParams) GetCidrlist() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cidrlist"].([]string)
+	return value, ok
+}
+
 func (p *CreateNetworkACLParams) SetEndport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -138,6 +162,14 @@
 	p.p["endport"] = v
 }
 
+func (p *CreateNetworkACLParams) GetEndport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endport"].(int)
+	return value, ok
+}
+
 func (p *CreateNetworkACLParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -145,6 +177,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateNetworkACLParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateNetworkACLParams) SetIcmpcode(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -152,6 +192,14 @@
 	p.p["icmpcode"] = v
 }
 
+func (p *CreateNetworkACLParams) GetIcmpcode() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["icmpcode"].(int)
+	return value, ok
+}
+
 func (p *CreateNetworkACLParams) SetIcmptype(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -159,6 +207,14 @@
 	p.p["icmptype"] = v
 }
 
+func (p *CreateNetworkACLParams) GetIcmptype() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["icmptype"].(int)
+	return value, ok
+}
+
 func (p *CreateNetworkACLParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -166,6 +222,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *CreateNetworkACLParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkACLParams) SetNumber(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -173,6 +237,14 @@
 	p.p["number"] = v
 }
 
+func (p *CreateNetworkACLParams) GetNumber() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["number"].(int)
+	return value, ok
+}
+
 func (p *CreateNetworkACLParams) SetProtocol(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -180,6 +252,14 @@
 	p.p["protocol"] = v
 }
 
+func (p *CreateNetworkACLParams) GetProtocol() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["protocol"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkACLParams) SetReason(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -187,6 +267,14 @@
 	p.p["reason"] = v
 }
 
+func (p *CreateNetworkACLParams) GetReason() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["reason"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkACLParams) SetStartport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -194,6 +282,14 @@
 	p.p["startport"] = v
 }
 
+func (p *CreateNetworkACLParams) GetStartport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startport"].(int)
+	return value, ok
+}
+
 func (p *CreateNetworkACLParams) SetTraffictype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -201,6 +297,14 @@
 	p.p["traffictype"] = v
 }
 
+func (p *CreateNetworkACLParams) GetTraffictype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["traffictype"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateNetworkACLParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkACLService) NewCreateNetworkACLParams(protocol string) *CreateNetworkACLParams {
@@ -298,6 +402,14 @@
 	p.p["description"] = v
 }
 
+func (p *CreateNetworkACLListParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkACLListParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -305,6 +417,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateNetworkACLListParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateNetworkACLListParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -312,6 +432,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateNetworkACLListParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkACLListParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -319,6 +447,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *CreateNetworkACLListParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateNetworkACLListParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkACLService) NewCreateNetworkACLListParams(name string, vpcid string) *CreateNetworkACLListParams {
@@ -396,6 +532,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteNetworkACLParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteNetworkACLParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkACLService) NewDeleteNetworkACLParams(id string) *DeleteNetworkACLParams {
@@ -464,6 +608,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteNetworkACLListParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteNetworkACLListParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkACLService) NewDeleteNetworkACLListParams(id string) *DeleteNetworkACLListParams {
@@ -573,6 +725,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListNetworkACLListsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLListsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -580,6 +740,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListNetworkACLListsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLListsParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -587,6 +755,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListNetworkACLListsParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworkACLListsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -594,6 +770,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListNetworkACLListsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLListsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -601,6 +785,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListNetworkACLListsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworkACLListsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -608,6 +800,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListNetworkACLListsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLListsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -615,6 +815,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListNetworkACLListsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworkACLListsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -622,6 +830,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListNetworkACLListsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLListsParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -629,6 +845,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListNetworkACLListsParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLListsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -636,6 +860,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListNetworkACLListsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListNetworkACLListsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -643,6 +875,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListNetworkACLListsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListNetworkACLListsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -650,6 +890,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListNetworkACLListsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLListsParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -657,6 +905,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *ListNetworkACLListsParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListNetworkACLListsParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkACLService) NewListNetworkACLListsParams() *ListNetworkACLListsParams {
@@ -854,6 +1110,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListNetworkACLsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetAclid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -861,6 +1125,14 @@
 	p.p["aclid"] = v
 }
 
+func (p *ListNetworkACLsParams) GetAclid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["aclid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetAction(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -868,6 +1140,14 @@
 	p.p["action"] = v
 }
 
+func (p *ListNetworkACLsParams) GetAction() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["action"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -875,6 +1155,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListNetworkACLsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -882,6 +1170,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListNetworkACLsParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -889,6 +1185,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListNetworkACLsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -896,6 +1200,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListNetworkACLsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -903,6 +1215,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListNetworkACLsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -910,6 +1230,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListNetworkACLsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -917,6 +1245,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListNetworkACLsParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -924,6 +1260,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListNetworkACLsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -931,6 +1275,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListNetworkACLsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -938,6 +1290,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListNetworkACLsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetProtocol(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -945,6 +1305,14 @@
 	p.p["protocol"] = v
 }
 
+func (p *ListNetworkACLsParams) GetProtocol() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["protocol"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -952,6 +1320,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListNetworkACLsParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListNetworkACLsParams) SetTraffictype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -959,6 +1335,14 @@
 	p.p["traffictype"] = v
 }
 
+func (p *ListNetworkACLsParams) GetTraffictype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["traffictype"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListNetworkACLsParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkACLService) NewListNetworkACLsParams() *ListNetworkACLsParams {
@@ -1069,6 +1453,14 @@
 	p.p["aclid"] = v
 }
 
+func (p *ReplaceNetworkACLListParams) GetAclid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["aclid"].(string)
+	return value, ok
+}
+
 func (p *ReplaceNetworkACLListParams) SetGatewayid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1076,6 +1468,14 @@
 	p.p["gatewayid"] = v
 }
 
+func (p *ReplaceNetworkACLListParams) GetGatewayid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gatewayid"].(string)
+	return value, ok
+}
+
 func (p *ReplaceNetworkACLListParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1083,6 +1483,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ReplaceNetworkACLListParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ReplaceNetworkACLListParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkACLService) NewReplaceNetworkACLListParams(aclid string) *ReplaceNetworkACLListParams {
@@ -1198,6 +1606,14 @@
 	p.p["action"] = v
 }
 
+func (p *UpdateNetworkACLItemParams) GetAction() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["action"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLItemParams) SetCidrlist(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1205,6 +1621,14 @@
 	p.p["cidrlist"] = v
 }
 
+func (p *UpdateNetworkACLItemParams) GetCidrlist() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cidrlist"].([]string)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLItemParams) SetCustomid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1212,6 +1636,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateNetworkACLItemParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLItemParams) SetEndport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1219,6 +1651,14 @@
 	p.p["endport"] = v
 }
 
+func (p *UpdateNetworkACLItemParams) GetEndport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endport"].(int)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLItemParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1226,6 +1666,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateNetworkACLItemParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLItemParams) SetIcmpcode(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1233,6 +1681,14 @@
 	p.p["icmpcode"] = v
 }
 
+func (p *UpdateNetworkACLItemParams) GetIcmpcode() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["icmpcode"].(int)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLItemParams) SetIcmptype(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1240,6 +1696,14 @@
 	p.p["icmptype"] = v
 }
 
+func (p *UpdateNetworkACLItemParams) GetIcmptype() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["icmptype"].(int)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLItemParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1247,6 +1711,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateNetworkACLItemParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLItemParams) SetNumber(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1254,6 +1726,14 @@
 	p.p["number"] = v
 }
 
+func (p *UpdateNetworkACLItemParams) GetNumber() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["number"].(int)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLItemParams) SetPartialupgrade(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1261,6 +1741,14 @@
 	p.p["partialupgrade"] = v
 }
 
+func (p *UpdateNetworkACLItemParams) GetPartialupgrade() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["partialupgrade"].(bool)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLItemParams) SetProtocol(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1268,6 +1756,14 @@
 	p.p["protocol"] = v
 }
 
+func (p *UpdateNetworkACLItemParams) GetProtocol() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["protocol"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLItemParams) SetReason(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1275,6 +1771,14 @@
 	p.p["reason"] = v
 }
 
+func (p *UpdateNetworkACLItemParams) GetReason() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["reason"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLItemParams) SetStartport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1282,6 +1786,14 @@
 	p.p["startport"] = v
 }
 
+func (p *UpdateNetworkACLItemParams) GetStartport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startport"].(int)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLItemParams) SetTraffictype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1289,6 +1801,14 @@
 	p.p["traffictype"] = v
 }
 
+func (p *UpdateNetworkACLItemParams) GetTraffictype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["traffictype"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateNetworkACLItemParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkACLService) NewUpdateNetworkACLItemParams(id string) *UpdateNetworkACLItemParams {
@@ -1389,6 +1909,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateNetworkACLListParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLListParams) SetDescription(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1396,6 +1924,14 @@
 	p.p["description"] = v
 }
 
+func (p *UpdateNetworkACLListParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLListParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1403,6 +1939,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateNetworkACLListParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLListParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1410,6 +1954,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateNetworkACLListParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkACLListParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1417,6 +1969,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateNetworkACLListParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateNetworkACLListParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkACLService) NewUpdateNetworkACLListParams(id string) *UpdateNetworkACLListParams {
diff --git a/cloudstack/NetworkDeviceService.go b/cloudstack/NetworkDeviceService.go
index 995b743..fd8b374 100644
--- a/cloudstack/NetworkDeviceService.go
+++ b/cloudstack/NetworkDeviceService.go
@@ -64,6 +64,14 @@
 	p.p["networkdeviceparameterlist"] = v
 }
 
+func (p *AddNetworkDeviceParams) GetNetworkdeviceparameterlist() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkdeviceparameterlist"].(map[string]string)
+	return value, ok
+}
+
 func (p *AddNetworkDeviceParams) SetNetworkdevicetype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -71,6 +79,14 @@
 	p.p["networkdevicetype"] = v
 }
 
+func (p *AddNetworkDeviceParams) GetNetworkdevicetype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkdevicetype"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddNetworkDeviceParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkDeviceService) NewAddNetworkDeviceParams() *AddNetworkDeviceParams {
@@ -122,6 +138,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteNetworkDeviceParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteNetworkDeviceParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkDeviceService) NewDeleteNetworkDeviceParams(id string) *DeleteNetworkDeviceParams {
@@ -220,6 +244,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListNetworkDeviceParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkDeviceParams) SetNetworkdeviceparameterlist(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -227,6 +259,14 @@
 	p.p["networkdeviceparameterlist"] = v
 }
 
+func (p *ListNetworkDeviceParams) GetNetworkdeviceparameterlist() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkdeviceparameterlist"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListNetworkDeviceParams) SetNetworkdevicetype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -234,6 +274,14 @@
 	p.p["networkdevicetype"] = v
 }
 
+func (p *ListNetworkDeviceParams) GetNetworkdevicetype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkdevicetype"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkDeviceParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -241,6 +289,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListNetworkDeviceParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListNetworkDeviceParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -248,6 +304,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListNetworkDeviceParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListNetworkDeviceParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkDeviceService) NewListNetworkDeviceParams() *ListNetworkDeviceParams {
diff --git a/cloudstack/NetworkOfferingService.go b/cloudstack/NetworkOfferingService.go
index 6fc75a2..503a78b 100644
--- a/cloudstack/NetworkOfferingService.go
+++ b/cloudstack/NetworkOfferingService.go
@@ -149,6 +149,14 @@
 	p.p["availability"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetAvailability() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["availability"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetConservemode(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -156,6 +164,14 @@
 	p.p["conservemode"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetConservemode() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["conservemode"].(bool)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetDetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -163,6 +179,14 @@
 	p.p["details"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -170,6 +194,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetDomainid(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -177,6 +209,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetDomainid() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].([]string)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetEgressdefaultpolicy(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -184,6 +224,14 @@
 	p.p["egressdefaultpolicy"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetEgressdefaultpolicy() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["egressdefaultpolicy"].(bool)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetForvpc(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -191,6 +239,14 @@
 	p.p["forvpc"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetForvpc() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forvpc"].(bool)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetGuestiptype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -198,6 +254,14 @@
 	p.p["guestiptype"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetGuestiptype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["guestiptype"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetIspersistent(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -205,6 +269,14 @@
 	p.p["ispersistent"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetIspersistent() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ispersistent"].(bool)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetKeepaliveenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -212,6 +284,14 @@
 	p.p["keepaliveenabled"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetKeepaliveenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keepaliveenabled"].(bool)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetMaxconnections(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -219,6 +299,14 @@
 	p.p["maxconnections"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetMaxconnections() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["maxconnections"].(int)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -226,6 +314,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetNetworkrate(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -233,6 +329,14 @@
 	p.p["networkrate"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetNetworkrate() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkrate"].(int)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetServicecapabilitylist(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -240,6 +344,14 @@
 	p.p["servicecapabilitylist"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetServicecapabilitylist() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["servicecapabilitylist"].(map[string]string)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetServiceofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -247,6 +359,14 @@
 	p.p["serviceofferingid"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetServiceofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceofferingid"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetServiceproviderlist(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -254,6 +374,14 @@
 	p.p["serviceproviderlist"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetServiceproviderlist() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceproviderlist"].(map[string]string)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetSpecifyipranges(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -261,6 +389,14 @@
 	p.p["specifyipranges"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetSpecifyipranges() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["specifyipranges"].(bool)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetSpecifyvlan(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -268,6 +404,14 @@
 	p.p["specifyvlan"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetSpecifyvlan() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["specifyvlan"].(bool)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetSupportedservices(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -275,6 +419,14 @@
 	p.p["supportedservices"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetSupportedservices() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["supportedservices"].([]string)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetTags(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -282,6 +434,14 @@
 	p.p["tags"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetTags() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetTraffictype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -289,6 +449,14 @@
 	p.p["traffictype"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetTraffictype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["traffictype"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkOfferingParams) SetZoneid(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -296,6 +464,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreateNetworkOfferingParams) GetZoneid() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateNetworkOfferingParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkOfferingService) NewCreateNetworkOfferingParams(displaytext string, guestiptype string, name string, supportedservices []string, traffictype string) *CreateNetworkOfferingParams {
@@ -404,6 +580,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteNetworkOfferingParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteNetworkOfferingParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkOfferingService) NewDeleteNetworkOfferingParams(id string) *DeleteNetworkOfferingParams {
@@ -553,6 +737,14 @@
 	p.p["availability"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetAvailability() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["availability"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -560,6 +752,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -567,6 +767,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetForvpc(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -574,6 +782,14 @@
 	p.p["forvpc"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetForvpc() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forvpc"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetGuestiptype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -581,6 +797,14 @@
 	p.p["guestiptype"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetGuestiptype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["guestiptype"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -588,6 +812,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetIsdefault(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -595,6 +827,14 @@
 	p.p["isdefault"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetIsdefault() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isdefault"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetIstagged(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -602,6 +842,14 @@
 	p.p["istagged"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetIstagged() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["istagged"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -609,6 +857,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -616,6 +872,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -623,6 +887,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -630,6 +902,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -637,6 +917,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetSourcenatsupported(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -644,6 +932,14 @@
 	p.p["sourcenatsupported"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetSourcenatsupported() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sourcenatsupported"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetSpecifyipranges(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -651,6 +947,14 @@
 	p.p["specifyipranges"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetSpecifyipranges() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["specifyipranges"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetSpecifyvlan(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -658,6 +962,14 @@
 	p.p["specifyvlan"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetSpecifyvlan() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["specifyvlan"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -665,6 +977,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetSupportedservices(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -672,6 +992,14 @@
 	p.p["supportedservices"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetSupportedservices() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["supportedservices"].([]string)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetTags(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -679,6 +1007,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetTags() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetTraffictype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -686,6 +1022,14 @@
 	p.p["traffictype"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetTraffictype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["traffictype"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkOfferingsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -693,6 +1037,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListNetworkOfferingsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListNetworkOfferingsParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkOfferingService) NewListNetworkOfferingsParams() *ListNetworkOfferingsParams {
@@ -913,6 +1265,14 @@
 	p.p["availability"] = v
 }
 
+func (p *UpdateNetworkOfferingParams) GetAvailability() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["availability"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkOfferingParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -920,6 +1280,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *UpdateNetworkOfferingParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkOfferingParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -927,6 +1295,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *UpdateNetworkOfferingParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkOfferingParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -934,6 +1310,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateNetworkOfferingParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkOfferingParams) SetKeepaliveenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -941,6 +1325,14 @@
 	p.p["keepaliveenabled"] = v
 }
 
+func (p *UpdateNetworkOfferingParams) GetKeepaliveenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keepaliveenabled"].(bool)
+	return value, ok
+}
+
 func (p *UpdateNetworkOfferingParams) SetMaxconnections(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -948,6 +1340,14 @@
 	p.p["maxconnections"] = v
 }
 
+func (p *UpdateNetworkOfferingParams) GetMaxconnections() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["maxconnections"].(int)
+	return value, ok
+}
+
 func (p *UpdateNetworkOfferingParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -955,6 +1355,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateNetworkOfferingParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkOfferingParams) SetSortkey(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -962,6 +1370,14 @@
 	p.p["sortkey"] = v
 }
 
+func (p *UpdateNetworkOfferingParams) GetSortkey() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sortkey"].(int)
+	return value, ok
+}
+
 func (p *UpdateNetworkOfferingParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -969,6 +1385,14 @@
 	p.p["state"] = v
 }
 
+func (p *UpdateNetworkOfferingParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkOfferingParams) SetTags(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -976,6 +1400,14 @@
 	p.p["tags"] = v
 }
 
+func (p *UpdateNetworkOfferingParams) GetTags() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkOfferingParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -983,6 +1415,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *UpdateNetworkOfferingParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateNetworkOfferingParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkOfferingService) NewUpdateNetworkOfferingParams() *UpdateNetworkOfferingParams {
diff --git a/cloudstack/NetworkService.go b/cloudstack/NetworkService.go
index 817d726..dac9718 100644
--- a/cloudstack/NetworkService.go
+++ b/cloudstack/NetworkService.go
@@ -130,6 +130,14 @@
 	p.p["destinationphysicalnetworkid"] = v
 }
 
+func (p *AddNetworkServiceProviderParams) GetDestinationphysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["destinationphysicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *AddNetworkServiceProviderParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -137,6 +145,14 @@
 	p.p["name"] = v
 }
 
+func (p *AddNetworkServiceProviderParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *AddNetworkServiceProviderParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -144,6 +160,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *AddNetworkServiceProviderParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *AddNetworkServiceProviderParams) SetServicelist(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -151,6 +175,14 @@
 	p.p["servicelist"] = v
 }
 
+func (p *AddNetworkServiceProviderParams) GetServicelist() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["servicelist"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddNetworkServiceProviderParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewAddNetworkServiceProviderParams(name string, physicalnetworkid string) *AddNetworkServiceProviderParams {
@@ -239,6 +271,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddOpenDaylightControllerParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddOpenDaylightControllerParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -246,6 +286,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *AddOpenDaylightControllerParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *AddOpenDaylightControllerParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -253,6 +301,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddOpenDaylightControllerParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddOpenDaylightControllerParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -260,6 +316,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddOpenDaylightControllerParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddOpenDaylightControllerParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewAddOpenDaylightControllerParams(password string, physicalnetworkid string, url string, username string) *AddOpenDaylightControllerParams {
@@ -424,6 +488,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateNetworkParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetAclid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -431,6 +503,14 @@
 	p.p["aclid"] = v
 }
 
+func (p *CreateNetworkParams) GetAclid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["aclid"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetAcltype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -438,6 +518,14 @@
 	p.p["acltype"] = v
 }
 
+func (p *CreateNetworkParams) GetAcltype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["acltype"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetBypassvlanoverlapcheck(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -445,6 +533,14 @@
 	p.p["bypassvlanoverlapcheck"] = v
 }
 
+func (p *CreateNetworkParams) GetBypassvlanoverlapcheck() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bypassvlanoverlapcheck"].(bool)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetDisplaynetwork(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -452,6 +548,14 @@
 	p.p["displaynetwork"] = v
 }
 
+func (p *CreateNetworkParams) GetDisplaynetwork() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaynetwork"].(bool)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -459,6 +563,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *CreateNetworkParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -466,6 +578,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateNetworkParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetEndip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -473,6 +593,14 @@
 	p.p["endip"] = v
 }
 
+func (p *CreateNetworkParams) GetEndip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endip"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetEndipv6(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -480,6 +608,14 @@
 	p.p["endipv6"] = v
 }
 
+func (p *CreateNetworkParams) GetEndipv6() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endipv6"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetExternalid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -487,6 +623,14 @@
 	p.p["externalid"] = v
 }
 
+func (p *CreateNetworkParams) GetExternalid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["externalid"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetGateway(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -494,6 +638,14 @@
 	p.p["gateway"] = v
 }
 
+func (p *CreateNetworkParams) GetGateway() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gateway"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetHideipaddressusage(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -501,6 +653,14 @@
 	p.p["hideipaddressusage"] = v
 }
 
+func (p *CreateNetworkParams) GetHideipaddressusage() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hideipaddressusage"].(bool)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetIp6cidr(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -508,6 +668,14 @@
 	p.p["ip6cidr"] = v
 }
 
+func (p *CreateNetworkParams) GetIp6cidr() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ip6cidr"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetIp6gateway(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -515,6 +683,14 @@
 	p.p["ip6gateway"] = v
 }
 
+func (p *CreateNetworkParams) GetIp6gateway() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ip6gateway"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetIsolatedpvlan(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -522,6 +698,14 @@
 	p.p["isolatedpvlan"] = v
 }
 
+func (p *CreateNetworkParams) GetIsolatedpvlan() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isolatedpvlan"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetIsolatedpvlantype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -529,6 +713,14 @@
 	p.p["isolatedpvlantype"] = v
 }
 
+func (p *CreateNetworkParams) GetIsolatedpvlantype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isolatedpvlantype"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -536,6 +728,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateNetworkParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetNetmask(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -543,6 +743,14 @@
 	p.p["netmask"] = v
 }
 
+func (p *CreateNetworkParams) GetNetmask() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["netmask"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetNetworkdomain(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -550,6 +758,14 @@
 	p.p["networkdomain"] = v
 }
 
+func (p *CreateNetworkParams) GetNetworkdomain() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkdomain"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetNetworkofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -557,6 +773,14 @@
 	p.p["networkofferingid"] = v
 }
 
+func (p *CreateNetworkParams) GetNetworkofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkofferingid"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -564,6 +788,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *CreateNetworkParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -571,6 +803,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *CreateNetworkParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetStartip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -578,6 +818,14 @@
 	p.p["startip"] = v
 }
 
+func (p *CreateNetworkParams) GetStartip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startip"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetStartipv6(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -585,6 +833,14 @@
 	p.p["startipv6"] = v
 }
 
+func (p *CreateNetworkParams) GetStartipv6() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startipv6"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetSubdomainaccess(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -592,6 +848,14 @@
 	p.p["subdomainaccess"] = v
 }
 
+func (p *CreateNetworkParams) GetSubdomainaccess() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["subdomainaccess"].(bool)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetVlan(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -599,6 +863,14 @@
 	p.p["vlan"] = v
 }
 
+func (p *CreateNetworkParams) GetVlan() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vlan"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -606,6 +878,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *CreateNetworkParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 func (p *CreateNetworkParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -613,6 +893,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreateNetworkParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateNetworkParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewCreateNetworkParams(displaytext string, name string, networkofferingid string, zoneid string) *CreateNetworkParams {
@@ -769,6 +1057,14 @@
 	p.p["broadcastdomainrange"] = v
 }
 
+func (p *CreatePhysicalNetworkParams) GetBroadcastdomainrange() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["broadcastdomainrange"].(string)
+	return value, ok
+}
+
 func (p *CreatePhysicalNetworkParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -776,6 +1072,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreatePhysicalNetworkParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreatePhysicalNetworkParams) SetIsolationmethods(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -783,6 +1087,14 @@
 	p.p["isolationmethods"] = v
 }
 
+func (p *CreatePhysicalNetworkParams) GetIsolationmethods() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isolationmethods"].([]string)
+	return value, ok
+}
+
 func (p *CreatePhysicalNetworkParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -790,6 +1102,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreatePhysicalNetworkParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreatePhysicalNetworkParams) SetNetworkspeed(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -797,6 +1117,14 @@
 	p.p["networkspeed"] = v
 }
 
+func (p *CreatePhysicalNetworkParams) GetNetworkspeed() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkspeed"].(string)
+	return value, ok
+}
+
 func (p *CreatePhysicalNetworkParams) SetTags(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -804,6 +1132,14 @@
 	p.p["tags"] = v
 }
 
+func (p *CreatePhysicalNetworkParams) GetTags() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].([]string)
+	return value, ok
+}
+
 func (p *CreatePhysicalNetworkParams) SetVlan(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -811,6 +1147,14 @@
 	p.p["vlan"] = v
 }
 
+func (p *CreatePhysicalNetworkParams) GetVlan() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vlan"].(string)
+	return value, ok
+}
+
 func (p *CreatePhysicalNetworkParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -818,6 +1162,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreatePhysicalNetworkParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreatePhysicalNetworkParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewCreatePhysicalNetworkParams(name string, zoneid string) *CreatePhysicalNetworkParams {
@@ -925,6 +1277,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateServiceInstanceParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceInstanceParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -932,6 +1292,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateServiceInstanceParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceInstanceParams) SetLeftnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -939,6 +1307,14 @@
 	p.p["leftnetworkid"] = v
 }
 
+func (p *CreateServiceInstanceParams) GetLeftnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["leftnetworkid"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceInstanceParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -946,6 +1322,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateServiceInstanceParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceInstanceParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -953,6 +1337,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *CreateServiceInstanceParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceInstanceParams) SetRightnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -960,6 +1352,14 @@
 	p.p["rightnetworkid"] = v
 }
 
+func (p *CreateServiceInstanceParams) GetRightnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["rightnetworkid"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceInstanceParams) SetServiceofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -967,6 +1367,14 @@
 	p.p["serviceofferingid"] = v
 }
 
+func (p *CreateServiceInstanceParams) GetServiceofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceofferingid"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceInstanceParams) SetTemplateid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -974,6 +1382,14 @@
 	p.p["templateid"] = v
 }
 
+func (p *CreateServiceInstanceParams) GetTemplateid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["templateid"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceInstanceParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -981,6 +1397,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreateServiceInstanceParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateServiceInstanceParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewCreateServiceInstanceParams(leftnetworkid string, name string, rightnetworkid string, serviceofferingid string, templateid string, zoneid string) *CreateServiceInstanceParams {
@@ -1081,6 +1505,14 @@
 	p.p["endip"] = v
 }
 
+func (p *CreateStorageNetworkIpRangeParams) GetEndip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endip"].(string)
+	return value, ok
+}
+
 func (p *CreateStorageNetworkIpRangeParams) SetGateway(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1088,6 +1520,14 @@
 	p.p["gateway"] = v
 }
 
+func (p *CreateStorageNetworkIpRangeParams) GetGateway() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gateway"].(string)
+	return value, ok
+}
+
 func (p *CreateStorageNetworkIpRangeParams) SetNetmask(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1095,6 +1535,14 @@
 	p.p["netmask"] = v
 }
 
+func (p *CreateStorageNetworkIpRangeParams) GetNetmask() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["netmask"].(string)
+	return value, ok
+}
+
 func (p *CreateStorageNetworkIpRangeParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1102,6 +1550,14 @@
 	p.p["podid"] = v
 }
 
+func (p *CreateStorageNetworkIpRangeParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *CreateStorageNetworkIpRangeParams) SetStartip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1109,6 +1565,14 @@
 	p.p["startip"] = v
 }
 
+func (p *CreateStorageNetworkIpRangeParams) GetStartip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startip"].(string)
+	return value, ok
+}
+
 func (p *CreateStorageNetworkIpRangeParams) SetVlan(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1116,6 +1580,14 @@
 	p.p["vlan"] = v
 }
 
+func (p *CreateStorageNetworkIpRangeParams) GetVlan() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vlan"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateStorageNetworkIpRangeParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewCreateStorageNetworkIpRangeParams(gateway string, netmask string, podid string, startip string) *CreateStorageNetworkIpRangeParams {
@@ -1208,6 +1680,14 @@
 	p.p["account"] = v
 }
 
+func (p *DedicatePublicIpRangeParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *DedicatePublicIpRangeParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1215,6 +1695,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *DedicatePublicIpRangeParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *DedicatePublicIpRangeParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1222,6 +1710,14 @@
 	p.p["id"] = v
 }
 
+func (p *DedicatePublicIpRangeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *DedicatePublicIpRangeParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1229,6 +1725,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *DedicatePublicIpRangeParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DedicatePublicIpRangeParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewDedicatePublicIpRangeParams(domainid string, id string) *DedicatePublicIpRangeParams {
@@ -1308,6 +1812,14 @@
 	p.p["forced"] = v
 }
 
+func (p *DeleteNetworkParams) GetForced() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forced"].(bool)
+	return value, ok
+}
+
 func (p *DeleteNetworkParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1315,6 +1827,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteNetworkParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteNetworkParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewDeleteNetworkParams(id string) *DeleteNetworkParams {
@@ -1383,6 +1903,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteNetworkServiceProviderParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteNetworkServiceProviderParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewDeleteNetworkServiceProviderParams(id string) *DeleteNetworkServiceProviderParams {
@@ -1451,6 +1979,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteOpenDaylightControllerParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteOpenDaylightControllerParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewDeleteOpenDaylightControllerParams(id string) *DeleteOpenDaylightControllerParams {
@@ -1527,6 +2063,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeletePhysicalNetworkParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeletePhysicalNetworkParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewDeletePhysicalNetworkParams(id string) *DeletePhysicalNetworkParams {
@@ -1595,6 +2139,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteStorageNetworkIpRangeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteStorageNetworkIpRangeParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewDeleteStorageNetworkIpRangeParams(id string) *DeleteStorageNetworkIpRangeParams {
@@ -1674,6 +2226,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListNetscalerLoadBalancerNetworksParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListNetscalerLoadBalancerNetworksParams) SetLbdeviceid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1681,6 +2241,14 @@
 	p.p["lbdeviceid"] = v
 }
 
+func (p *ListNetscalerLoadBalancerNetworksParams) GetLbdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbdeviceid"].(string)
+	return value, ok
+}
+
 func (p *ListNetscalerLoadBalancerNetworksParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1688,6 +2256,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListNetscalerLoadBalancerNetworksParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListNetscalerLoadBalancerNetworksParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1695,6 +2271,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListNetscalerLoadBalancerNetworksParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListNetscalerLoadBalancerNetworksParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewListNetscalerLoadBalancerNetworksParams(lbdeviceid string) *ListNetscalerLoadBalancerNetworksParams {
@@ -1871,6 +2455,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListNetworkIsolationMethodsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkIsolationMethodsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1878,6 +2470,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListNetworkIsolationMethodsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListNetworkIsolationMethodsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1885,6 +2485,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListNetworkIsolationMethodsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListNetworkIsolationMethodsParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewListNetworkIsolationMethodsParams() *ListNetworkIsolationMethodsParams {
@@ -1958,6 +2566,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListNetworkServiceProvidersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkServiceProvidersParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1965,6 +2581,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListNetworkServiceProvidersParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkServiceProvidersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1972,6 +2596,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListNetworkServiceProvidersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListNetworkServiceProvidersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1979,6 +2611,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListNetworkServiceProvidersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListNetworkServiceProvidersParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1986,6 +2626,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *ListNetworkServiceProvidersParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworkServiceProvidersParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1993,6 +2641,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListNetworkServiceProvidersParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListNetworkServiceProvidersParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewListNetworkServiceProvidersParams() *ListNetworkServiceProvidersParams {
@@ -2175,6 +2831,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListNetworksParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetAcltype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2182,6 +2846,14 @@
 	p.p["acltype"] = v
 }
 
+func (p *ListNetworksParams) GetAcltype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["acltype"].(string)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetCanusefordeploy(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2189,6 +2861,14 @@
 	p.p["canusefordeploy"] = v
 }
 
+func (p *ListNetworksParams) GetCanusefordeploy() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["canusefordeploy"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetDisplaynetwork(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2196,6 +2876,14 @@
 	p.p["displaynetwork"] = v
 }
 
+func (p *ListNetworksParams) GetDisplaynetwork() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaynetwork"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2203,6 +2891,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListNetworksParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetForvpc(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2210,6 +2906,14 @@
 	p.p["forvpc"] = v
 }
 
+func (p *ListNetworksParams) GetForvpc() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forvpc"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2217,6 +2921,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListNetworksParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2224,6 +2936,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListNetworksParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetIssystem(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2231,6 +2951,14 @@
 	p.p["issystem"] = v
 }
 
+func (p *ListNetworksParams) GetIssystem() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["issystem"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2238,6 +2966,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListNetworksParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2245,6 +2981,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListNetworksParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetNetworkofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2252,6 +2996,14 @@
 	p.p["networkofferingid"] = v
 }
 
+func (p *ListNetworksParams) GetNetworkofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkofferingid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2259,6 +3011,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListNetworksParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2266,6 +3026,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListNetworksParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2273,6 +3041,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *ListNetworksParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2280,6 +3056,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListNetworksParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetRestartrequired(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2287,6 +3071,14 @@
 	p.p["restartrequired"] = v
 }
 
+func (p *ListNetworksParams) GetRestartrequired() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["restartrequired"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetSpecifyipranges(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2294,6 +3086,14 @@
 	p.p["specifyipranges"] = v
 }
 
+func (p *ListNetworksParams) GetSpecifyipranges() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["specifyipranges"].(bool)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetSupportedservices(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2301,6 +3101,14 @@
 	p.p["supportedservices"] = v
 }
 
+func (p *ListNetworksParams) GetSupportedservices() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["supportedservices"].([]string)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2308,6 +3116,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListNetworksParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetTraffictype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2315,6 +3131,14 @@
 	p.p["traffictype"] = v
 }
 
+func (p *ListNetworksParams) GetTraffictype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["traffictype"].(string)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2322,6 +3146,14 @@
 	p.p["type"] = v
 }
 
+func (p *ListNetworksParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2329,6 +3161,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *ListNetworksParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 func (p *ListNetworksParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2336,6 +3176,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListNetworksParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListNetworksParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewListNetworksParams() *ListNetworksParams {
@@ -2560,6 +3408,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListNiciraNvpDeviceNetworksParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListNiciraNvpDeviceNetworksParams) SetNvpdeviceid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2567,6 +3423,14 @@
 	p.p["nvpdeviceid"] = v
 }
 
+func (p *ListNiciraNvpDeviceNetworksParams) GetNvpdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nvpdeviceid"].(string)
+	return value, ok
+}
+
 func (p *ListNiciraNvpDeviceNetworksParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2574,6 +3438,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListNiciraNvpDeviceNetworksParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListNiciraNvpDeviceNetworksParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2581,6 +3453,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListNiciraNvpDeviceNetworksParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListNiciraNvpDeviceNetworksParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewListNiciraNvpDeviceNetworksParams(nvpdeviceid string) *ListNiciraNvpDeviceNetworksParams {
@@ -2752,6 +3632,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListOpenDaylightControllersParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListOpenDaylightControllersParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2759,6 +3647,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *ListOpenDaylightControllersParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListOpenDaylightControllersParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewListOpenDaylightControllersParams() *ListOpenDaylightControllersParams {
@@ -2863,6 +3759,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListPaloAltoFirewallNetworksParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListPaloAltoFirewallNetworksParams) SetLbdeviceid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2870,6 +3774,14 @@
 	p.p["lbdeviceid"] = v
 }
 
+func (p *ListPaloAltoFirewallNetworksParams) GetLbdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lbdeviceid"].(string)
+	return value, ok
+}
+
 func (p *ListPaloAltoFirewallNetworksParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2877,6 +3789,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListPaloAltoFirewallNetworksParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListPaloAltoFirewallNetworksParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2884,6 +3804,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListPaloAltoFirewallNetworksParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListPaloAltoFirewallNetworksParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewListPaloAltoFirewallNetworksParams(lbdeviceid string) *ListPaloAltoFirewallNetworksParams {
@@ -3069,6 +3997,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListPhysicalNetworksParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListPhysicalNetworksParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3076,6 +4012,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListPhysicalNetworksParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListPhysicalNetworksParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3083,6 +4027,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListPhysicalNetworksParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListPhysicalNetworksParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3090,6 +4042,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListPhysicalNetworksParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListPhysicalNetworksParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3097,6 +4057,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListPhysicalNetworksParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListPhysicalNetworksParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3104,6 +4072,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListPhysicalNetworksParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListPhysicalNetworksParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewListPhysicalNetworksParams() *ListPhysicalNetworksParams {
@@ -3270,6 +4246,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListStorageNetworkIpRangeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListStorageNetworkIpRangeParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3277,6 +4261,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListStorageNetworkIpRangeParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListStorageNetworkIpRangeParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3284,6 +4276,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListStorageNetworkIpRangeParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListStorageNetworkIpRangeParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3291,6 +4291,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListStorageNetworkIpRangeParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListStorageNetworkIpRangeParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3298,6 +4306,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListStorageNetworkIpRangeParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *ListStorageNetworkIpRangeParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3305,6 +4321,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListStorageNetworkIpRangeParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListStorageNetworkIpRangeParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewListStorageNetworkIpRangeParams() *ListStorageNetworkIpRangeParams {
@@ -3416,6 +4440,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListSupportedNetworkServicesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListSupportedNetworkServicesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3423,6 +4455,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListSupportedNetworkServicesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListSupportedNetworkServicesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3430,6 +4470,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListSupportedNetworkServicesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListSupportedNetworkServicesParams) SetProvider(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3437,6 +4485,14 @@
 	p.p["provider"] = v
 }
 
+func (p *ListSupportedNetworkServicesParams) GetProvider() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["provider"].(string)
+	return value, ok
+}
+
 func (p *ListSupportedNetworkServicesParams) SetService(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3444,6 +4500,14 @@
 	p.p["service"] = v
 }
 
+func (p *ListSupportedNetworkServicesParams) GetService() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["service"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListSupportedNetworkServicesParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewListSupportedNetworkServicesParams() *ListSupportedNetworkServicesParams {
@@ -3518,6 +4582,14 @@
 	p.p["id"] = v
 }
 
+func (p *ReleasePublicIpRangeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ReleasePublicIpRangeParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewReleasePublicIpRangeParams(id string) *ReleasePublicIpRangeParams {
@@ -3606,6 +4678,14 @@
 	p.p["cleanup"] = v
 }
 
+func (p *RestartNetworkParams) GetCleanup() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cleanup"].(bool)
+	return value, ok
+}
+
 func (p *RestartNetworkParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3613,6 +4693,14 @@
 	p.p["id"] = v
 }
 
+func (p *RestartNetworkParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *RestartNetworkParams) SetMakeredundant(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3620,6 +4708,14 @@
 	p.p["makeredundant"] = v
 }
 
+func (p *RestartNetworkParams) GetMakeredundant() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["makeredundant"].(bool)
+	return value, ok
+}
+
 // You should always use this function to get a new RestartNetworkParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewRestartNetworkParams(id string) *RestartNetworkParams {
@@ -3761,6 +4857,14 @@
 	p.p["changecidr"] = v
 }
 
+func (p *UpdateNetworkParams) GetChangecidr() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["changecidr"].(bool)
+	return value, ok
+}
+
 func (p *UpdateNetworkParams) SetCustomid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3768,6 +4872,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateNetworkParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkParams) SetDisplaynetwork(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3775,6 +4887,14 @@
 	p.p["displaynetwork"] = v
 }
 
+func (p *UpdateNetworkParams) GetDisplaynetwork() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaynetwork"].(bool)
+	return value, ok
+}
+
 func (p *UpdateNetworkParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3782,6 +4902,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *UpdateNetworkParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkParams) SetForced(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3789,6 +4917,14 @@
 	p.p["forced"] = v
 }
 
+func (p *UpdateNetworkParams) GetForced() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forced"].(bool)
+	return value, ok
+}
+
 func (p *UpdateNetworkParams) SetGuestvmcidr(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3796,6 +4932,14 @@
 	p.p["guestvmcidr"] = v
 }
 
+func (p *UpdateNetworkParams) GetGuestvmcidr() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["guestvmcidr"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkParams) SetHideipaddressusage(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3803,6 +4947,14 @@
 	p.p["hideipaddressusage"] = v
 }
 
+func (p *UpdateNetworkParams) GetHideipaddressusage() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hideipaddressusage"].(bool)
+	return value, ok
+}
+
 func (p *UpdateNetworkParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3810,6 +4962,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateNetworkParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3817,6 +4977,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateNetworkParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkParams) SetNetworkdomain(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3824,6 +4992,14 @@
 	p.p["networkdomain"] = v
 }
 
+func (p *UpdateNetworkParams) GetNetworkdomain() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkdomain"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkParams) SetNetworkofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3831,6 +5007,14 @@
 	p.p["networkofferingid"] = v
 }
 
+func (p *UpdateNetworkParams) GetNetworkofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkofferingid"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkParams) SetUpdateinsequence(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3838,6 +5022,14 @@
 	p.p["updateinsequence"] = v
 }
 
+func (p *UpdateNetworkParams) GetUpdateinsequence() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["updateinsequence"].(bool)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateNetworkParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewUpdateNetworkParams(id string) *UpdateNetworkParams {
@@ -3991,6 +5183,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateNetworkServiceProviderParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateNetworkServiceProviderParams) SetServicelist(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3998,6 +5198,14 @@
 	p.p["servicelist"] = v
 }
 
+func (p *UpdateNetworkServiceProviderParams) GetServicelist() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["servicelist"].([]string)
+	return value, ok
+}
+
 func (p *UpdateNetworkServiceProviderParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4005,6 +5213,14 @@
 	p.p["state"] = v
 }
 
+func (p *UpdateNetworkServiceProviderParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateNetworkServiceProviderParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewUpdateNetworkServiceProviderParams(id string) *UpdateNetworkServiceProviderParams {
@@ -4096,6 +5312,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdatePhysicalNetworkParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdatePhysicalNetworkParams) SetNetworkspeed(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4103,6 +5327,14 @@
 	p.p["networkspeed"] = v
 }
 
+func (p *UpdatePhysicalNetworkParams) GetNetworkspeed() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkspeed"].(string)
+	return value, ok
+}
+
 func (p *UpdatePhysicalNetworkParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4110,6 +5342,14 @@
 	p.p["state"] = v
 }
 
+func (p *UpdatePhysicalNetworkParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *UpdatePhysicalNetworkParams) SetTags(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4117,6 +5357,14 @@
 	p.p["tags"] = v
 }
 
+func (p *UpdatePhysicalNetworkParams) GetTags() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].([]string)
+	return value, ok
+}
+
 func (p *UpdatePhysicalNetworkParams) SetVlan(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4124,6 +5372,14 @@
 	p.p["vlan"] = v
 }
 
+func (p *UpdatePhysicalNetworkParams) GetVlan() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vlan"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdatePhysicalNetworkParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewUpdatePhysicalNetworkParams(id string) *UpdatePhysicalNetworkParams {
@@ -4219,6 +5475,14 @@
 	p.p["endip"] = v
 }
 
+func (p *UpdateStorageNetworkIpRangeParams) GetEndip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endip"].(string)
+	return value, ok
+}
+
 func (p *UpdateStorageNetworkIpRangeParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4226,6 +5490,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateStorageNetworkIpRangeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateStorageNetworkIpRangeParams) SetNetmask(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4233,6 +5505,14 @@
 	p.p["netmask"] = v
 }
 
+func (p *UpdateStorageNetworkIpRangeParams) GetNetmask() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["netmask"].(string)
+	return value, ok
+}
+
 func (p *UpdateStorageNetworkIpRangeParams) SetStartip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4240,6 +5520,14 @@
 	p.p["startip"] = v
 }
 
+func (p *UpdateStorageNetworkIpRangeParams) GetStartip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startip"].(string)
+	return value, ok
+}
+
 func (p *UpdateStorageNetworkIpRangeParams) SetVlan(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4247,6 +5535,14 @@
 	p.p["vlan"] = v
 }
 
+func (p *UpdateStorageNetworkIpRangeParams) GetVlan() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vlan"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateStorageNetworkIpRangeParams instance,
 // as then you are sure you have configured all required params
 func (s *NetworkService) NewUpdateStorageNetworkIpRangeParams(id string) *UpdateStorageNetworkIpRangeParams {
diff --git a/cloudstack/NicService.go b/cloudstack/NicService.go
index 3af3459..470dfa5 100644
--- a/cloudstack/NicService.go
+++ b/cloudstack/NicService.go
@@ -61,6 +61,14 @@
 	p.p["ipaddress"] = v
 }
 
+func (p *AddIpToNicParams) GetIpaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddress"].(string)
+	return value, ok
+}
+
 func (p *AddIpToNicParams) SetNicid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -68,6 +76,14 @@
 	p.p["nicid"] = v
 }
 
+func (p *AddIpToNicParams) GetNicid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nicid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddIpToNicParams instance,
 // as then you are sure you have configured all required params
 func (s *NicService) NewAddIpToNicParams(nicid string) *AddIpToNicParams {
@@ -169,6 +185,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListNicsParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListNicsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -176,6 +200,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListNicsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListNicsParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -183,6 +215,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListNicsParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListNicsParams) SetNicid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -190,6 +230,14 @@
 	p.p["nicid"] = v
 }
 
+func (p *ListNicsParams) GetNicid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nicid"].(string)
+	return value, ok
+}
+
 func (p *ListNicsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -197,6 +245,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListNicsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListNicsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -204,6 +260,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListNicsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListNicsParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -211,6 +275,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *ListNicsParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListNicsParams instance,
 // as then you are sure you have configured all required params
 func (s *NicService) NewListNicsParams(virtualmachineid string) *ListNicsParams {
@@ -296,6 +368,14 @@
 	p.p["id"] = v
 }
 
+func (p *RemoveIpFromNicParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RemoveIpFromNicParams instance,
 // as then you are sure you have configured all required params
 func (s *NicService) NewRemoveIpFromNicParams(id string) *RemoveIpFromNicParams {
@@ -367,6 +447,14 @@
 	p.p["ipaddress"] = v
 }
 
+func (p *UpdateVmNicIpParams) GetIpaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddress"].(string)
+	return value, ok
+}
+
 func (p *UpdateVmNicIpParams) SetNicid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -374,6 +462,14 @@
 	p.p["nicid"] = v
 }
 
+func (p *UpdateVmNicIpParams) GetNicid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nicid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateVmNicIpParams instance,
 // as then you are sure you have configured all required params
 func (s *NicService) NewUpdateVmNicIpParams(nicid string) *UpdateVmNicIpParams {
diff --git a/cloudstack/NiciraNVPService.go b/cloudstack/NiciraNVPService.go
index f5e6c42..5b96750 100644
--- a/cloudstack/NiciraNVPService.go
+++ b/cloudstack/NiciraNVPService.go
@@ -74,6 +74,14 @@
 	p.p["hostname"] = v
 }
 
+func (p *AddNiciraNvpDeviceParams) GetHostname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostname"].(string)
+	return value, ok
+}
+
 func (p *AddNiciraNvpDeviceParams) SetL2gatewayserviceuuid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -81,6 +89,14 @@
 	p.p["l2gatewayserviceuuid"] = v
 }
 
+func (p *AddNiciraNvpDeviceParams) GetL2gatewayserviceuuid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["l2gatewayserviceuuid"].(string)
+	return value, ok
+}
+
 func (p *AddNiciraNvpDeviceParams) SetL3gatewayserviceuuid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -88,6 +104,14 @@
 	p.p["l3gatewayserviceuuid"] = v
 }
 
+func (p *AddNiciraNvpDeviceParams) GetL3gatewayserviceuuid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["l3gatewayserviceuuid"].(string)
+	return value, ok
+}
+
 func (p *AddNiciraNvpDeviceParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -95,6 +119,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddNiciraNvpDeviceParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddNiciraNvpDeviceParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -102,6 +134,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *AddNiciraNvpDeviceParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *AddNiciraNvpDeviceParams) SetTransportzoneuuid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -109,6 +149,14 @@
 	p.p["transportzoneuuid"] = v
 }
 
+func (p *AddNiciraNvpDeviceParams) GetTransportzoneuuid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["transportzoneuuid"].(string)
+	return value, ok
+}
+
 func (p *AddNiciraNvpDeviceParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -116,6 +164,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddNiciraNvpDeviceParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddNiciraNvpDeviceParams instance,
 // as then you are sure you have configured all required params
 func (s *NiciraNVPService) NewAddNiciraNvpDeviceParams(hostname string, password string, physicalnetworkid string, transportzoneuuid string, username string) *AddNiciraNvpDeviceParams {
@@ -199,6 +255,14 @@
 	p.p["nvpdeviceid"] = v
 }
 
+func (p *DeleteNiciraNvpDeviceParams) GetNvpdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nvpdeviceid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteNiciraNvpDeviceParams instance,
 // as then you are sure you have configured all required params
 func (s *NiciraNVPService) NewDeleteNiciraNvpDeviceParams(nvpdeviceid string) *DeleteNiciraNvpDeviceParams {
@@ -281,6 +345,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListNiciraNvpDevicesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListNiciraNvpDevicesParams) SetNvpdeviceid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -288,6 +360,14 @@
 	p.p["nvpdeviceid"] = v
 }
 
+func (p *ListNiciraNvpDevicesParams) GetNvpdeviceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nvpdeviceid"].(string)
+	return value, ok
+}
+
 func (p *ListNiciraNvpDevicesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -295,6 +375,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListNiciraNvpDevicesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListNiciraNvpDevicesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -302,6 +390,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListNiciraNvpDevicesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListNiciraNvpDevicesParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -309,6 +405,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *ListNiciraNvpDevicesParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListNiciraNvpDevicesParams instance,
 // as then you are sure you have configured all required params
 func (s *NiciraNVPService) NewListNiciraNvpDevicesParams() *ListNiciraNvpDevicesParams {
diff --git a/cloudstack/OutofbandManagementService.go b/cloudstack/OutofbandManagementService.go
index 7764235..61c5593 100644
--- a/cloudstack/OutofbandManagementService.go
+++ b/cloudstack/OutofbandManagementService.go
@@ -59,6 +59,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *ChangeOutOfBandManagementPasswordParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *ChangeOutOfBandManagementPasswordParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -66,6 +74,14 @@
 	p.p["password"] = v
 }
 
+func (p *ChangeOutOfBandManagementPasswordParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ChangeOutOfBandManagementPasswordParams instance,
 // as then you are sure you have configured all required params
 func (s *OutofbandManagementService) NewChangeOutOfBandManagementPasswordParams(hostid string) *ChangeOutOfBandManagementPasswordParams {
@@ -163,6 +179,14 @@
 	p.p["address"] = v
 }
 
+func (p *ConfigureOutOfBandManagementParams) GetAddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["address"].(string)
+	return value, ok
+}
+
 func (p *ConfigureOutOfBandManagementParams) SetDriver(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -170,6 +194,14 @@
 	p.p["driver"] = v
 }
 
+func (p *ConfigureOutOfBandManagementParams) GetDriver() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["driver"].(string)
+	return value, ok
+}
+
 func (p *ConfigureOutOfBandManagementParams) SetHostid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -177,6 +209,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *ConfigureOutOfBandManagementParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *ConfigureOutOfBandManagementParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -184,6 +224,14 @@
 	p.p["password"] = v
 }
 
+func (p *ConfigureOutOfBandManagementParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *ConfigureOutOfBandManagementParams) SetPort(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -191,6 +239,14 @@
 	p.p["port"] = v
 }
 
+func (p *ConfigureOutOfBandManagementParams) GetPort() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["port"].(string)
+	return value, ok
+}
+
 func (p *ConfigureOutOfBandManagementParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -198,6 +254,14 @@
 	p.p["username"] = v
 }
 
+func (p *ConfigureOutOfBandManagementParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ConfigureOutOfBandManagementParams instance,
 // as then you are sure you have configured all required params
 func (s *OutofbandManagementService) NewConfigureOutOfBandManagementParams(address string, driver string, hostid string, password string, port string, username string) *ConfigureOutOfBandManagementParams {
@@ -272,6 +336,14 @@
 	p.p["action"] = v
 }
 
+func (p *IssueOutOfBandManagementPowerActionParams) GetAction() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["action"].(string)
+	return value, ok
+}
+
 func (p *IssueOutOfBandManagementPowerActionParams) SetHostid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -279,6 +351,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *IssueOutOfBandManagementPowerActionParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *IssueOutOfBandManagementPowerActionParams) SetTimeout(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -286,6 +366,14 @@
 	p.p["timeout"] = v
 }
 
+func (p *IssueOutOfBandManagementPowerActionParams) GetTimeout() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["timeout"].(int64)
+	return value, ok
+}
+
 // You should always use this function to get a new IssueOutOfBandManagementPowerActionParams instance,
 // as then you are sure you have configured all required params
 func (s *OutofbandManagementService) NewIssueOutOfBandManagementPowerActionParams(action string, hostid string) *IssueOutOfBandManagementPowerActionParams {
diff --git a/cloudstack/OvsElementService.go b/cloudstack/OvsElementService.go
index d3f32d4..b473356 100644
--- a/cloudstack/OvsElementService.go
+++ b/cloudstack/OvsElementService.go
@@ -61,6 +61,14 @@
 	p.p["enabled"] = v
 }
 
+func (p *ConfigureOvsElementParams) GetEnabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enabled"].(bool)
+	return value, ok
+}
+
 func (p *ConfigureOvsElementParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -68,6 +76,14 @@
 	p.p["id"] = v
 }
 
+func (p *ConfigureOvsElementParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ConfigureOvsElementParams instance,
 // as then you are sure you have configured all required params
 func (s *OvsElementService) NewConfigureOvsElementParams(enabled bool, id string) *ConfigureOvsElementParams {
@@ -166,6 +182,14 @@
 	p.p["enabled"] = v
 }
 
+func (p *ListOvsElementsParams) GetEnabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enabled"].(bool)
+	return value, ok
+}
+
 func (p *ListOvsElementsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -173,6 +197,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListOvsElementsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListOvsElementsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -180,6 +212,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListOvsElementsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListOvsElementsParams) SetNspid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -187,6 +227,14 @@
 	p.p["nspid"] = v
 }
 
+func (p *ListOvsElementsParams) GetNspid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nspid"].(string)
+	return value, ok
+}
+
 func (p *ListOvsElementsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -194,6 +242,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListOvsElementsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListOvsElementsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -201,6 +257,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListOvsElementsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListOvsElementsParams instance,
 // as then you are sure you have configured all required params
 func (s *OvsElementService) NewListOvsElementsParams() *ListOvsElementsParams {
diff --git a/cloudstack/PodService.go b/cloudstack/PodService.go
index 4c7a5ee..a0a4dab 100644
--- a/cloudstack/PodService.go
+++ b/cloudstack/PodService.go
@@ -87,6 +87,14 @@
 	p.p["allocationstate"] = v
 }
 
+func (p *CreatePodParams) GetAllocationstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["allocationstate"].(string)
+	return value, ok
+}
+
 func (p *CreatePodParams) SetEndip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -94,6 +102,14 @@
 	p.p["endip"] = v
 }
 
+func (p *CreatePodParams) GetEndip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endip"].(string)
+	return value, ok
+}
+
 func (p *CreatePodParams) SetGateway(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -101,6 +117,14 @@
 	p.p["gateway"] = v
 }
 
+func (p *CreatePodParams) GetGateway() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gateway"].(string)
+	return value, ok
+}
+
 func (p *CreatePodParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -108,6 +132,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreatePodParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreatePodParams) SetNetmask(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -115,6 +147,14 @@
 	p.p["netmask"] = v
 }
 
+func (p *CreatePodParams) GetNetmask() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["netmask"].(string)
+	return value, ok
+}
+
 func (p *CreatePodParams) SetStartip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -122,6 +162,14 @@
 	p.p["startip"] = v
 }
 
+func (p *CreatePodParams) GetStartip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startip"].(string)
+	return value, ok
+}
+
 func (p *CreatePodParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -129,6 +177,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreatePodParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreatePodParams instance,
 // as then you are sure you have configured all required params
 func (s *PodService) NewCreatePodParams(gateway string, name string, netmask string, startip string, zoneid string) *CreatePodParams {
@@ -217,6 +273,14 @@
 	p.p["account"] = v
 }
 
+func (p *DedicatePodParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *DedicatePodParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -224,6 +288,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *DedicatePodParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *DedicatePodParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -231,6 +303,14 @@
 	p.p["podid"] = v
 }
 
+func (p *DedicatePodParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DedicatePodParams instance,
 // as then you are sure you have configured all required params
 func (s *PodService) NewDedicatePodParams(domainid string, podid string) *DedicatePodParams {
@@ -309,6 +389,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeletePodParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeletePodParams instance,
 // as then you are sure you have configured all required params
 func (s *PodService) NewDeletePodParams(id string) *DeletePodParams {
@@ -409,6 +497,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListDedicatedPodsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedPodsParams) SetAffinitygroupid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -416,6 +512,14 @@
 	p.p["affinitygroupid"] = v
 }
 
+func (p *ListDedicatedPodsParams) GetAffinitygroupid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["affinitygroupid"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedPodsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -423,6 +527,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListDedicatedPodsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedPodsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -430,6 +542,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListDedicatedPodsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedPodsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -437,6 +557,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListDedicatedPodsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListDedicatedPodsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -444,6 +572,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListDedicatedPodsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListDedicatedPodsParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -451,6 +587,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListDedicatedPodsParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListDedicatedPodsParams instance,
 // as then you are sure you have configured all required params
 func (s *PodService) NewListDedicatedPodsParams() *ListDedicatedPodsParams {
@@ -536,6 +680,14 @@
 	p.p["allocationstate"] = v
 }
 
+func (p *ListPodsParams) GetAllocationstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["allocationstate"].(string)
+	return value, ok
+}
+
 func (p *ListPodsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -543,6 +695,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListPodsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListPodsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -550,6 +710,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListPodsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListPodsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -557,6 +725,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListPodsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListPodsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -564,6 +740,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListPodsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListPodsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -571,6 +755,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListPodsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListPodsParams) SetShowcapacities(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -578,6 +770,14 @@
 	p.p["showcapacities"] = v
 }
 
+func (p *ListPodsParams) GetShowcapacities() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["showcapacities"].(bool)
+	return value, ok
+}
+
 func (p *ListPodsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -585,6 +785,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListPodsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListPodsParams instance,
 // as then you are sure you have configured all required params
 func (s *PodService) NewListPodsParams() *ListPodsParams {
@@ -750,6 +958,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ReleaseDedicatedPodParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ReleaseDedicatedPodParams instance,
 // as then you are sure you have configured all required params
 func (s *PodService) NewReleaseDedicatedPodParams(podid string) *ReleaseDedicatedPodParams {
@@ -836,6 +1052,14 @@
 	p.p["allocationstate"] = v
 }
 
+func (p *UpdatePodParams) GetAllocationstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["allocationstate"].(string)
+	return value, ok
+}
+
 func (p *UpdatePodParams) SetEndip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -843,6 +1067,14 @@
 	p.p["endip"] = v
 }
 
+func (p *UpdatePodParams) GetEndip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endip"].(string)
+	return value, ok
+}
+
 func (p *UpdatePodParams) SetGateway(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -850,6 +1082,14 @@
 	p.p["gateway"] = v
 }
 
+func (p *UpdatePodParams) GetGateway() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gateway"].(string)
+	return value, ok
+}
+
 func (p *UpdatePodParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -857,6 +1097,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdatePodParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdatePodParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -864,6 +1112,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdatePodParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdatePodParams) SetNetmask(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -871,6 +1127,14 @@
 	p.p["netmask"] = v
 }
 
+func (p *UpdatePodParams) GetNetmask() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["netmask"].(string)
+	return value, ok
+}
+
 func (p *UpdatePodParams) SetStartip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -878,6 +1142,14 @@
 	p.p["startip"] = v
 }
 
+func (p *UpdatePodParams) GetStartip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startip"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdatePodParams instance,
 // as then you are sure you have configured all required params
 func (s *PodService) NewUpdatePodParams(id string) *UpdatePodParams {
diff --git a/cloudstack/PoolService.go b/cloudstack/PoolService.go
index d84b2fe..f6191f3 100644
--- a/cloudstack/PoolService.go
+++ b/cloudstack/PoolService.go
@@ -107,6 +107,14 @@
 	p.p["capacitybytes"] = v
 }
 
+func (p *CreateStoragePoolParams) GetCapacitybytes() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["capacitybytes"].(int64)
+	return value, ok
+}
+
 func (p *CreateStoragePoolParams) SetCapacityiops(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -114,6 +122,14 @@
 	p.p["capacityiops"] = v
 }
 
+func (p *CreateStoragePoolParams) GetCapacityiops() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["capacityiops"].(int64)
+	return value, ok
+}
+
 func (p *CreateStoragePoolParams) SetClusterid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -121,6 +137,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *CreateStoragePoolParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *CreateStoragePoolParams) SetDetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -128,6 +152,14 @@
 	p.p["details"] = v
 }
 
+func (p *CreateStoragePoolParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *CreateStoragePoolParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -135,6 +167,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *CreateStoragePoolParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *CreateStoragePoolParams) SetManaged(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -142,6 +182,14 @@
 	p.p["managed"] = v
 }
 
+func (p *CreateStoragePoolParams) GetManaged() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["managed"].(bool)
+	return value, ok
+}
+
 func (p *CreateStoragePoolParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -149,6 +197,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateStoragePoolParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateStoragePoolParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -156,6 +212,14 @@
 	p.p["podid"] = v
 }
 
+func (p *CreateStoragePoolParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *CreateStoragePoolParams) SetProvider(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -163,6 +227,14 @@
 	p.p["provider"] = v
 }
 
+func (p *CreateStoragePoolParams) GetProvider() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["provider"].(string)
+	return value, ok
+}
+
 func (p *CreateStoragePoolParams) SetScope(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -170,6 +242,14 @@
 	p.p["scope"] = v
 }
 
+func (p *CreateStoragePoolParams) GetScope() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["scope"].(string)
+	return value, ok
+}
+
 func (p *CreateStoragePoolParams) SetTags(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -177,6 +257,14 @@
 	p.p["tags"] = v
 }
 
+func (p *CreateStoragePoolParams) GetTags() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(string)
+	return value, ok
+}
+
 func (p *CreateStoragePoolParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -184,6 +272,14 @@
 	p.p["url"] = v
 }
 
+func (p *CreateStoragePoolParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *CreateStoragePoolParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -191,6 +287,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreateStoragePoolParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateStoragePoolParams instance,
 // as then you are sure you have configured all required params
 func (s *PoolService) NewCreateStoragePoolParams(name string, url string, zoneid string) *CreateStoragePoolParams {
@@ -277,6 +381,14 @@
 	p.p["forced"] = v
 }
 
+func (p *DeleteStoragePoolParams) GetForced() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forced"].(bool)
+	return value, ok
+}
+
 func (p *DeleteStoragePoolParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -284,6 +396,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteStoragePoolParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteStoragePoolParams instance,
 // as then you are sure you have configured all required params
 func (s *PoolService) NewDeleteStoragePoolParams(id string) *DeleteStoragePoolParams {
@@ -375,6 +495,14 @@
 	p.p["id"] = v
 }
 
+func (p *FindStoragePoolsForMigrationParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *FindStoragePoolsForMigrationParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -382,6 +510,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *FindStoragePoolsForMigrationParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *FindStoragePoolsForMigrationParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -389,6 +525,14 @@
 	p.p["page"] = v
 }
 
+func (p *FindStoragePoolsForMigrationParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *FindStoragePoolsForMigrationParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -396,6 +540,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *FindStoragePoolsForMigrationParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new FindStoragePoolsForMigrationParams instance,
 // as then you are sure you have configured all required params
 func (s *PoolService) NewFindStoragePoolsForMigrationParams(id string) *FindStoragePoolsForMigrationParams {
@@ -504,6 +656,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *ListStoragePoolsParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *ListStoragePoolsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -511,6 +671,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListStoragePoolsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListStoragePoolsParams) SetIpaddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -518,6 +686,14 @@
 	p.p["ipaddress"] = v
 }
 
+func (p *ListStoragePoolsParams) GetIpaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddress"].(string)
+	return value, ok
+}
+
 func (p *ListStoragePoolsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -525,6 +701,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListStoragePoolsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListStoragePoolsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -532,6 +716,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListStoragePoolsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListStoragePoolsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -539,6 +731,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListStoragePoolsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListStoragePoolsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -546,6 +746,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListStoragePoolsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListStoragePoolsParams) SetPath(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -553,6 +761,14 @@
 	p.p["path"] = v
 }
 
+func (p *ListStoragePoolsParams) GetPath() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["path"].(string)
+	return value, ok
+}
+
 func (p *ListStoragePoolsParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -560,6 +776,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListStoragePoolsParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *ListStoragePoolsParams) SetScope(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -567,6 +791,14 @@
 	p.p["scope"] = v
 }
 
+func (p *ListStoragePoolsParams) GetScope() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["scope"].(string)
+	return value, ok
+}
+
 func (p *ListStoragePoolsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -574,6 +806,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListStoragePoolsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListStoragePoolsParams instance,
 // as then you are sure you have configured all required params
 func (s *PoolService) NewListStoragePoolsParams() *ListStoragePoolsParams {
@@ -756,6 +996,14 @@
 	p.p["capacitybytes"] = v
 }
 
+func (p *UpdateStoragePoolParams) GetCapacitybytes() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["capacitybytes"].(int64)
+	return value, ok
+}
+
 func (p *UpdateStoragePoolParams) SetCapacityiops(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -763,6 +1011,14 @@
 	p.p["capacityiops"] = v
 }
 
+func (p *UpdateStoragePoolParams) GetCapacityiops() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["capacityiops"].(int64)
+	return value, ok
+}
+
 func (p *UpdateStoragePoolParams) SetEnabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -770,6 +1026,14 @@
 	p.p["enabled"] = v
 }
 
+func (p *UpdateStoragePoolParams) GetEnabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enabled"].(bool)
+	return value, ok
+}
+
 func (p *UpdateStoragePoolParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -777,6 +1041,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateStoragePoolParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateStoragePoolParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -784,6 +1056,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateStoragePoolParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateStoragePoolParams) SetTags(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -791,6 +1071,14 @@
 	p.p["tags"] = v
 }
 
+func (p *UpdateStoragePoolParams) GetTags() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateStoragePoolParams instance,
 // as then you are sure you have configured all required params
 func (s *PoolService) NewUpdateStoragePoolParams(id string) *UpdateStoragePoolParams {
diff --git a/cloudstack/PortableIPService.go b/cloudstack/PortableIPService.go
index 8869de9..3d58253 100644
--- a/cloudstack/PortableIPService.go
+++ b/cloudstack/PortableIPService.go
@@ -75,6 +75,14 @@
 	p.p["endip"] = v
 }
 
+func (p *CreatePortableIpRangeParams) GetEndip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endip"].(string)
+	return value, ok
+}
+
 func (p *CreatePortableIpRangeParams) SetGateway(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -82,6 +90,14 @@
 	p.p["gateway"] = v
 }
 
+func (p *CreatePortableIpRangeParams) GetGateway() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gateway"].(string)
+	return value, ok
+}
+
 func (p *CreatePortableIpRangeParams) SetNetmask(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -89,6 +105,14 @@
 	p.p["netmask"] = v
 }
 
+func (p *CreatePortableIpRangeParams) GetNetmask() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["netmask"].(string)
+	return value, ok
+}
+
 func (p *CreatePortableIpRangeParams) SetRegionid(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -96,6 +120,14 @@
 	p.p["regionid"] = v
 }
 
+func (p *CreatePortableIpRangeParams) GetRegionid() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["regionid"].(int)
+	return value, ok
+}
+
 func (p *CreatePortableIpRangeParams) SetStartip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -103,6 +135,14 @@
 	p.p["startip"] = v
 }
 
+func (p *CreatePortableIpRangeParams) GetStartip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startip"].(string)
+	return value, ok
+}
+
 func (p *CreatePortableIpRangeParams) SetVlan(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -110,6 +150,14 @@
 	p.p["vlan"] = v
 }
 
+func (p *CreatePortableIpRangeParams) GetVlan() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vlan"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreatePortableIpRangeParams instance,
 // as then you are sure you have configured all required params
 func (s *PortableIPService) NewCreatePortableIpRangeParams(endip string, gateway string, netmask string, regionid int, startip string) *CreatePortableIpRangeParams {
@@ -206,6 +254,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeletePortableIpRangeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeletePortableIpRangeParams instance,
 // as then you are sure you have configured all required params
 func (s *PortableIPService) NewDeletePortableIpRangeParams(id string) *DeletePortableIpRangeParams {
@@ -289,6 +345,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListPortableIpRangesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListPortableIpRangesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -296,6 +360,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListPortableIpRangesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListPortableIpRangesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -303,6 +375,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListPortableIpRangesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListPortableIpRangesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -310,6 +390,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListPortableIpRangesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListPortableIpRangesParams) SetRegionid(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -317,6 +405,14 @@
 	p.p["regionid"] = v
 }
 
+func (p *ListPortableIpRangesParams) GetRegionid() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["regionid"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListPortableIpRangesParams instance,
 // as then you are sure you have configured all required params
 func (s *PortableIPService) NewListPortableIpRangesParams() *ListPortableIpRangesParams {
diff --git a/cloudstack/ProjectService.go b/cloudstack/ProjectService.go
index 3cf18a5..ac0e38c 100644
--- a/cloudstack/ProjectService.go
+++ b/cloudstack/ProjectService.go
@@ -74,6 +74,14 @@
 	p.p["id"] = v
 }
 
+func (p *ActivateProjectParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ActivateProjectParams instance,
 // as then you are sure you have configured all required params
 func (s *ProjectService) NewActivateProjectParams(id string) *ActivateProjectParams {
@@ -204,6 +212,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateProjectParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateProjectParams) SetAccountid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -211,6 +227,14 @@
 	p.p["accountid"] = v
 }
 
+func (p *CreateProjectParams) GetAccountid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accountid"].(string)
+	return value, ok
+}
+
 func (p *CreateProjectParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -218,6 +242,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *CreateProjectParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *CreateProjectParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -225,6 +257,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateProjectParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateProjectParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -232,6 +272,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateProjectParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateProjectParams) SetUserid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -239,6 +287,14 @@
 	p.p["userid"] = v
 }
 
+func (p *CreateProjectParams) GetUserid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateProjectParams instance,
 // as then you are sure you have configured all required params
 func (s *ProjectService) NewCreateProjectParams(displaytext string, name string) *CreateProjectParams {
@@ -355,6 +411,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteProjectParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteProjectParams instance,
 // as then you are sure you have configured all required params
 func (s *ProjectService) NewDeleteProjectParams(id string) *DeleteProjectParams {
@@ -423,6 +487,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteProjectInvitationParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteProjectInvitationParams instance,
 // as then you are sure you have configured all required params
 func (s *ProjectService) NewDeleteProjectInvitationParams(id string) *DeleteProjectInvitationParams {
@@ -529,6 +601,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListProjectInvitationsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListProjectInvitationsParams) SetActiveonly(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -536,6 +616,14 @@
 	p.p["activeonly"] = v
 }
 
+func (p *ListProjectInvitationsParams) GetActiveonly() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["activeonly"].(bool)
+	return value, ok
+}
+
 func (p *ListProjectInvitationsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -543,6 +631,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListProjectInvitationsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListProjectInvitationsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -550,6 +646,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListProjectInvitationsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListProjectInvitationsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -557,6 +661,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListProjectInvitationsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListProjectInvitationsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -564,6 +676,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListProjectInvitationsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListProjectInvitationsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -571,6 +691,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListProjectInvitationsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListProjectInvitationsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -578,6 +706,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListProjectInvitationsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListProjectInvitationsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -585,6 +721,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListProjectInvitationsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListProjectInvitationsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -592,6 +736,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListProjectInvitationsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListProjectInvitationsParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -599,6 +751,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListProjectInvitationsParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListProjectInvitationsParams) SetUserid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -606,6 +766,14 @@
 	p.p["userid"] = v
 }
 
+func (p *ListProjectInvitationsParams) GetUserid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListProjectInvitationsParams instance,
 // as then you are sure you have configured all required params
 func (s *ProjectService) NewListProjectInvitationsParams() *ListProjectInvitationsParams {
@@ -751,6 +919,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListProjectsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListProjectsParams) SetDetails(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -758,6 +934,14 @@
 	p.p["details"] = v
 }
 
+func (p *ListProjectsParams) GetDetails() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].([]string)
+	return value, ok
+}
+
 func (p *ListProjectsParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -765,6 +949,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *ListProjectsParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *ListProjectsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -772,6 +964,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListProjectsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListProjectsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -779,6 +979,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListProjectsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListProjectsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -786,6 +994,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListProjectsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListProjectsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -793,6 +1009,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListProjectsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListProjectsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -800,6 +1024,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListProjectsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListProjectsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -807,6 +1039,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListProjectsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListProjectsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -814,6 +1054,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListProjectsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListProjectsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -821,6 +1069,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListProjectsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListProjectsParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -828,6 +1084,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListProjectsParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListProjectsParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -835,6 +1099,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListProjectsParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListProjectsParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -842,6 +1114,14 @@
 	p.p["username"] = v
 }
 
+func (p *ListProjectsParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListProjectsParams instance,
 // as then you are sure you have configured all required params
 func (s *ProjectService) NewListProjectsParams() *ListProjectsParams {
@@ -1024,6 +1304,14 @@
 	p.p["id"] = v
 }
 
+func (p *SuspendProjectParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new SuspendProjectParams instance,
 // as then you are sure you have configured all required params
 func (s *ProjectService) NewSuspendProjectParams(id string) *SuspendProjectParams {
@@ -1155,6 +1443,14 @@
 	p.p["account"] = v
 }
 
+func (p *UpdateProjectParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *UpdateProjectParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1162,6 +1458,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *UpdateProjectParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *UpdateProjectParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1169,6 +1473,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateProjectParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateProjectParams) SetRoletype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1176,6 +1488,14 @@
 	p.p["roletype"] = v
 }
 
+func (p *UpdateProjectParams) GetRoletype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["roletype"].(string)
+	return value, ok
+}
+
 func (p *UpdateProjectParams) SetSwapowner(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1183,6 +1503,14 @@
 	p.p["swapowner"] = v
 }
 
+func (p *UpdateProjectParams) GetSwapowner() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["swapowner"].(bool)
+	return value, ok
+}
+
 func (p *UpdateProjectParams) SetUserid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1190,6 +1518,14 @@
 	p.p["userid"] = v
 }
 
+func (p *UpdateProjectParams) GetUserid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateProjectParams instance,
 // as then you are sure you have configured all required params
 func (s *ProjectService) NewUpdateProjectParams(id string) *UpdateProjectParams {
@@ -1318,6 +1654,14 @@
 	p.p["accept"] = v
 }
 
+func (p *UpdateProjectInvitationParams) GetAccept() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accept"].(bool)
+	return value, ok
+}
+
 func (p *UpdateProjectInvitationParams) SetAccount(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1325,6 +1669,14 @@
 	p.p["account"] = v
 }
 
+func (p *UpdateProjectInvitationParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *UpdateProjectInvitationParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1332,6 +1684,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *UpdateProjectInvitationParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *UpdateProjectInvitationParams) SetToken(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1339,6 +1699,14 @@
 	p.p["token"] = v
 }
 
+func (p *UpdateProjectInvitationParams) GetToken() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["token"].(string)
+	return value, ok
+}
+
 func (p *UpdateProjectInvitationParams) SetUserid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1346,6 +1714,14 @@
 	p.p["userid"] = v
 }
 
+func (p *UpdateProjectInvitationParams) GetUserid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateProjectInvitationParams instance,
 // as then you are sure you have configured all required params
 func (s *ProjectService) NewUpdateProjectInvitationParams(projectid string) *UpdateProjectInvitationParams {
diff --git a/cloudstack/RegionService.go b/cloudstack/RegionService.go
index f20effa..b05ecd8 100644
--- a/cloudstack/RegionService.go
+++ b/cloudstack/RegionService.go
@@ -65,6 +65,14 @@
 	p.p["endpoint"] = v
 }
 
+func (p *AddRegionParams) GetEndpoint() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endpoint"].(string)
+	return value, ok
+}
+
 func (p *AddRegionParams) SetId(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -72,6 +80,14 @@
 	p.p["id"] = v
 }
 
+func (p *AddRegionParams) GetId() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(int)
+	return value, ok
+}
+
 func (p *AddRegionParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -79,6 +95,14 @@
 	p.p["name"] = v
 }
 
+func (p *AddRegionParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddRegionParams instance,
 // as then you are sure you have configured all required params
 func (s *RegionService) NewAddRegionParams(endpoint string, id int, name string) *AddRegionParams {
@@ -152,6 +176,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListRegionsParams) GetId() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(int)
+	return value, ok
+}
+
 func (p *ListRegionsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -159,6 +191,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListRegionsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListRegionsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -166,6 +206,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListRegionsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListRegionsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -173,6 +221,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListRegionsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListRegionsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -180,6 +236,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListRegionsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListRegionsParams instance,
 // as then you are sure you have configured all required params
 func (s *RegionService) NewListRegionsParams() *ListRegionsParams {
@@ -241,6 +305,14 @@
 	p.p["id"] = v
 }
 
+func (p *RemoveRegionParams) GetId() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new RemoveRegionParams instance,
 // as then you are sure you have configured all required params
 func (s *RegionService) NewRemoveRegionParams(id int) *RemoveRegionParams {
@@ -328,6 +400,14 @@
 	p.p["endpoint"] = v
 }
 
+func (p *UpdateRegionParams) GetEndpoint() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endpoint"].(string)
+	return value, ok
+}
+
 func (p *UpdateRegionParams) SetId(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -335,6 +415,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateRegionParams) GetId() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(int)
+	return value, ok
+}
+
 func (p *UpdateRegionParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -342,6 +430,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateRegionParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateRegionParams instance,
 // as then you are sure you have configured all required params
 func (s *RegionService) NewUpdateRegionParams(id int) *UpdateRegionParams {
diff --git a/cloudstack/ResourcemetadataService.go b/cloudstack/ResourcemetadataService.go
index 52c914d..462e880 100644
--- a/cloudstack/ResourcemetadataService.go
+++ b/cloudstack/ResourcemetadataService.go
@@ -73,6 +73,14 @@
 	p.p["details"] = v
 }
 
+func (p *AddResourceDetailParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *AddResourceDetailParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -80,6 +88,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *AddResourceDetailParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *AddResourceDetailParams) SetResourceid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -87,6 +103,14 @@
 	p.p["resourceid"] = v
 }
 
+func (p *AddResourceDetailParams) GetResourceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourceid"].(string)
+	return value, ok
+}
+
 func (p *AddResourceDetailParams) SetResourcetype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -94,6 +118,14 @@
 	p.p["resourcetype"] = v
 }
 
+func (p *AddResourceDetailParams) GetResourcetype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourcetype"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddResourceDetailParams instance,
 // as then you are sure you have configured all required params
 func (s *ResourcemetadataService) NewAddResourceDetailParams(details map[string]string, resourceid string, resourcetype string) *AddResourceDetailParams {
@@ -164,6 +196,14 @@
 	p.p["snapshotid"] = v
 }
 
+func (p *GetVolumeSnapshotDetailsParams) GetSnapshotid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["snapshotid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new GetVolumeSnapshotDetailsParams instance,
 // as then you are sure you have configured all required params
 func (s *ResourcemetadataService) NewGetVolumeSnapshotDetailsParams(snapshotid string) *GetVolumeSnapshotDetailsParams {
@@ -257,6 +297,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListResourceDetailsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListResourceDetailsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -264,6 +312,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListResourceDetailsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListResourceDetailsParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -271,6 +327,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListResourceDetailsParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListResourceDetailsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -278,6 +342,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListResourceDetailsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListResourceDetailsParams) SetKey(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -285,6 +357,14 @@
 	p.p["key"] = v
 }
 
+func (p *ListResourceDetailsParams) GetKey() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["key"].(string)
+	return value, ok
+}
+
 func (p *ListResourceDetailsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -292,6 +372,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListResourceDetailsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListResourceDetailsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -299,6 +387,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListResourceDetailsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListResourceDetailsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -306,6 +402,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListResourceDetailsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListResourceDetailsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -313,6 +417,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListResourceDetailsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListResourceDetailsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -320,6 +432,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListResourceDetailsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListResourceDetailsParams) SetResourceid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -327,6 +447,14 @@
 	p.p["resourceid"] = v
 }
 
+func (p *ListResourceDetailsParams) GetResourceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourceid"].(string)
+	return value, ok
+}
+
 func (p *ListResourceDetailsParams) SetResourcetype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -334,6 +462,14 @@
 	p.p["resourcetype"] = v
 }
 
+func (p *ListResourceDetailsParams) GetResourcetype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourcetype"].(string)
+	return value, ok
+}
+
 func (p *ListResourceDetailsParams) SetValue(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -341,6 +477,14 @@
 	p.p["value"] = v
 }
 
+func (p *ListResourceDetailsParams) GetValue() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["value"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListResourceDetailsParams instance,
 // as then you are sure you have configured all required params
 func (s *ResourcemetadataService) NewListResourceDetailsParams(resourcetype string) *ListResourceDetailsParams {
@@ -413,6 +557,14 @@
 	p.p["key"] = v
 }
 
+func (p *RemoveResourceDetailParams) GetKey() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["key"].(string)
+	return value, ok
+}
+
 func (p *RemoveResourceDetailParams) SetResourceid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -420,6 +572,14 @@
 	p.p["resourceid"] = v
 }
 
+func (p *RemoveResourceDetailParams) GetResourceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourceid"].(string)
+	return value, ok
+}
+
 func (p *RemoveResourceDetailParams) SetResourcetype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -427,6 +587,14 @@
 	p.p["resourcetype"] = v
 }
 
+func (p *RemoveResourceDetailParams) GetResourcetype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourcetype"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RemoveResourceDetailParams instance,
 // as then you are sure you have configured all required params
 func (s *ResourcemetadataService) NewRemoveResourceDetailParams(resourceid string, resourcetype string) *RemoveResourceDetailParams {
diff --git a/cloudstack/ResourcetagsService.go b/cloudstack/ResourcetagsService.go
index 09a442a..9f68f09 100644
--- a/cloudstack/ResourcetagsService.go
+++ b/cloudstack/ResourcetagsService.go
@@ -75,6 +75,14 @@
 	p.p["customer"] = v
 }
 
+func (p *CreateTagsParams) GetCustomer() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customer"].(string)
+	return value, ok
+}
+
 func (p *CreateTagsParams) SetResourceids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -82,6 +90,14 @@
 	p.p["resourceids"] = v
 }
 
+func (p *CreateTagsParams) GetResourceids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourceids"].([]string)
+	return value, ok
+}
+
 func (p *CreateTagsParams) SetResourcetype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -89,6 +105,14 @@
 	p.p["resourcetype"] = v
 }
 
+func (p *CreateTagsParams) GetResourcetype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourcetype"].(string)
+	return value, ok
+}
+
 func (p *CreateTagsParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -96,6 +120,14 @@
 	p.p["tags"] = v
 }
 
+func (p *CreateTagsParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateTagsParams instance,
 // as then you are sure you have configured all required params
 func (s *ResourcetagsService) NewCreateTagsParams(resourceids []string, resourcetype string, tags map[string]string) *CreateTagsParams {
@@ -177,6 +209,14 @@
 	p.p["resourceids"] = v
 }
 
+func (p *DeleteTagsParams) GetResourceids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourceids"].([]string)
+	return value, ok
+}
+
 func (p *DeleteTagsParams) SetResourcetype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -184,6 +224,14 @@
 	p.p["resourcetype"] = v
 }
 
+func (p *DeleteTagsParams) GetResourcetype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourcetype"].(string)
+	return value, ok
+}
+
 func (p *DeleteTagsParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -191,6 +239,14 @@
 	p.p["tags"] = v
 }
 
+func (p *DeleteTagsParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteTagsParams instance,
 // as then you are sure you have configured all required params
 func (s *ResourcetagsService) NewDeleteTagsParams(resourceids []string, resourcetype string) *DeleteTagsParams {
@@ -268,6 +324,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListStorageTagsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListStorageTagsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -275,6 +339,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListStorageTagsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListStorageTagsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -282,6 +354,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListStorageTagsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListStorageTagsParams instance,
 // as then you are sure you have configured all required params
 func (s *ResourcetagsService) NewListStorageTagsParams() *ListStorageTagsParams {
@@ -416,6 +496,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListTagsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListTagsParams) SetCustomer(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -423,6 +511,14 @@
 	p.p["customer"] = v
 }
 
+func (p *ListTagsParams) GetCustomer() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customer"].(string)
+	return value, ok
+}
+
 func (p *ListTagsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -430,6 +526,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListTagsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListTagsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -437,6 +541,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListTagsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListTagsParams) SetKey(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -444,6 +556,14 @@
 	p.p["key"] = v
 }
 
+func (p *ListTagsParams) GetKey() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["key"].(string)
+	return value, ok
+}
+
 func (p *ListTagsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -451,6 +571,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListTagsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListTagsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -458,6 +586,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListTagsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListTagsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -465,6 +601,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListTagsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListTagsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -472,6 +616,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListTagsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListTagsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -479,6 +631,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListTagsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListTagsParams) SetResourceid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -486,6 +646,14 @@
 	p.p["resourceid"] = v
 }
 
+func (p *ListTagsParams) GetResourceid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourceid"].(string)
+	return value, ok
+}
+
 func (p *ListTagsParams) SetResourcetype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -493,6 +661,14 @@
 	p.p["resourcetype"] = v
 }
 
+func (p *ListTagsParams) GetResourcetype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["resourcetype"].(string)
+	return value, ok
+}
+
 func (p *ListTagsParams) SetValue(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -500,6 +676,14 @@
 	p.p["value"] = v
 }
 
+func (p *ListTagsParams) GetValue() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["value"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListTagsParams instance,
 // as then you are sure you have configured all required params
 func (s *ResourcetagsService) NewListTagsParams() *ListTagsParams {
diff --git a/cloudstack/RoleService.go b/cloudstack/RoleService.go
index 1a30312..bb07f3e 100644
--- a/cloudstack/RoleService.go
+++ b/cloudstack/RoleService.go
@@ -80,6 +80,14 @@
 	p.p["description"] = v
 }
 
+func (p *CreateRoleParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *CreateRoleParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -87,6 +95,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateRoleParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateRoleParams) SetRoleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -94,6 +110,14 @@
 	p.p["roleid"] = v
 }
 
+func (p *CreateRoleParams) GetRoleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["roleid"].(string)
+	return value, ok
+}
+
 func (p *CreateRoleParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -101,6 +125,14 @@
 	p.p["type"] = v
 }
 
+func (p *CreateRoleParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateRoleParams instance,
 // as then you are sure you have configured all required params
 func (s *RoleService) NewCreateRoleParams(name string) *CreateRoleParams {
@@ -166,6 +198,14 @@
 	p.p["description"] = v
 }
 
+func (p *CreateRolePermissionParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *CreateRolePermissionParams) SetPermission(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -173,6 +213,14 @@
 	p.p["permission"] = v
 }
 
+func (p *CreateRolePermissionParams) GetPermission() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["permission"].(string)
+	return value, ok
+}
+
 func (p *CreateRolePermissionParams) SetRoleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -180,6 +228,14 @@
 	p.p["roleid"] = v
 }
 
+func (p *CreateRolePermissionParams) GetRoleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["roleid"].(string)
+	return value, ok
+}
+
 func (p *CreateRolePermissionParams) SetRule(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -187,6 +243,14 @@
 	p.p["rule"] = v
 }
 
+func (p *CreateRolePermissionParams) GetRule() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["rule"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateRolePermissionParams instance,
 // as then you are sure you have configured all required params
 func (s *RoleService) NewCreateRolePermissionParams(permission string, roleid string, rule string) *CreateRolePermissionParams {
@@ -246,6 +310,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteRoleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteRoleParams instance,
 // as then you are sure you have configured all required params
 func (s *RoleService) NewDeleteRoleParams(id string) *DeleteRoleParams {
@@ -326,6 +398,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteRolePermissionParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteRolePermissionParams instance,
 // as then you are sure you have configured all required params
 func (s *RoleService) NewDeleteRolePermissionParams(id string) *DeleteRolePermissionParams {
@@ -406,6 +486,14 @@
 	p.p["roleid"] = v
 }
 
+func (p *ListRolePermissionsParams) GetRoleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["roleid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListRolePermissionsParams instance,
 // as then you are sure you have configured all required params
 func (s *RoleService) NewListRolePermissionsParams() *ListRolePermissionsParams {
@@ -484,6 +572,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListRolesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListRolesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -491,6 +587,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListRolesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListRolesParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -498,6 +602,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListRolesParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListRolesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -505,6 +617,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListRolesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListRolesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -512,6 +632,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListRolesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListRolesParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -519,6 +647,14 @@
 	p.p["type"] = v
 }
 
+func (p *ListRolesParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListRolesParams instance,
 // as then you are sure you have configured all required params
 func (s *RoleService) NewListRolesParams() *ListRolesParams {
@@ -674,6 +810,14 @@
 	p.p["description"] = v
 }
 
+func (p *UpdateRoleParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *UpdateRoleParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -681,6 +825,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateRoleParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateRoleParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -688,6 +840,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateRoleParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateRoleParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -695,6 +855,14 @@
 	p.p["type"] = v
 }
 
+func (p *UpdateRoleParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateRoleParams instance,
 // as then you are sure you have configured all required params
 func (s *RoleService) NewUpdateRoleParams(id string) *UpdateRoleParams {
@@ -761,6 +929,14 @@
 	p.p["permission"] = v
 }
 
+func (p *UpdateRolePermissionParams) GetPermission() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["permission"].(string)
+	return value, ok
+}
+
 func (p *UpdateRolePermissionParams) SetRoleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -768,6 +944,14 @@
 	p.p["roleid"] = v
 }
 
+func (p *UpdateRolePermissionParams) GetRoleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["roleid"].(string)
+	return value, ok
+}
+
 func (p *UpdateRolePermissionParams) SetRuleid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -775,6 +959,14 @@
 	p.p["ruleid"] = v
 }
 
+func (p *UpdateRolePermissionParams) GetRuleid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ruleid"].(string)
+	return value, ok
+}
+
 func (p *UpdateRolePermissionParams) SetRuleorder(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -782,6 +974,14 @@
 	p.p["ruleorder"] = v
 }
 
+func (p *UpdateRolePermissionParams) GetRuleorder() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ruleorder"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateRolePermissionParams instance,
 // as then you are sure you have configured all required params
 func (s *RoleService) NewUpdateRolePermissionParams(roleid string) *UpdateRolePermissionParams {
diff --git a/cloudstack/RouterService.go b/cloudstack/RouterService.go
index a0ebba5..d5926b3 100644
--- a/cloudstack/RouterService.go
+++ b/cloudstack/RouterService.go
@@ -77,6 +77,14 @@
 	p.p["id"] = v
 }
 
+func (p *ChangeServiceForRouterParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ChangeServiceForRouterParams) SetServiceofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -84,6 +92,14 @@
 	p.p["serviceofferingid"] = v
 }
 
+func (p *ChangeServiceForRouterParams) GetServiceofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceofferingid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ChangeServiceForRouterParams instance,
 // as then you are sure you have configured all required params
 func (s *RouterService) NewChangeServiceForRouterParams(id string, serviceofferingid string) *ChangeServiceForRouterParams {
@@ -198,6 +214,14 @@
 	p.p["enabled"] = v
 }
 
+func (p *ConfigureVirtualRouterElementParams) GetEnabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enabled"].(bool)
+	return value, ok
+}
+
 func (p *ConfigureVirtualRouterElementParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -205,6 +229,14 @@
 	p.p["id"] = v
 }
 
+func (p *ConfigureVirtualRouterElementParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ConfigureVirtualRouterElementParams instance,
 // as then you are sure you have configured all required params
 func (s *RouterService) NewConfigureVirtualRouterElementParams(enabled bool, id string) *ConfigureVirtualRouterElementParams {
@@ -288,6 +320,14 @@
 	p.p["nspid"] = v
 }
 
+func (p *CreateVirtualRouterElementParams) GetNspid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nspid"].(string)
+	return value, ok
+}
+
 func (p *CreateVirtualRouterElementParams) SetProvidertype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -295,6 +335,14 @@
 	p.p["providertype"] = v
 }
 
+func (p *CreateVirtualRouterElementParams) GetProvidertype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["providertype"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateVirtualRouterElementParams instance,
 // as then you are sure you have configured all required params
 func (s *RouterService) NewCreateVirtualRouterElementParams(nspid string) *CreateVirtualRouterElementParams {
@@ -374,6 +422,14 @@
 	p.p["id"] = v
 }
 
+func (p *DestroyRouterParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DestroyRouterParams instance,
 // as then you are sure you have configured all required params
 func (s *RouterService) NewDestroyRouterParams(id string) *DestroyRouterParams {
@@ -566,6 +622,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListRoutersParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetClusterid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -573,6 +637,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *ListRoutersParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -580,6 +652,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListRoutersParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetFetchhealthcheckresults(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -587,6 +667,14 @@
 	p.p["fetchhealthcheckresults"] = v
 }
 
+func (p *ListRoutersParams) GetFetchhealthcheckresults() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fetchhealthcheckresults"].(bool)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetForvpc(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -594,6 +682,14 @@
 	p.p["forvpc"] = v
 }
 
+func (p *ListRoutersParams) GetForvpc() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forvpc"].(bool)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetHostid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -601,6 +697,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *ListRoutersParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -608,6 +712,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListRoutersParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -615,6 +727,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListRoutersParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -622,6 +742,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListRoutersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -629,6 +757,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListRoutersParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -636,6 +772,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListRoutersParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -643,6 +787,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListRoutersParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -650,6 +802,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListRoutersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -657,6 +817,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListRoutersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -664,6 +832,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListRoutersParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -671,6 +847,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListRoutersParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -678,6 +862,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListRoutersParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetVersion(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -685,6 +877,14 @@
 	p.p["version"] = v
 }
 
+func (p *ListRoutersParams) GetVersion() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["version"].(string)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -692,6 +892,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *ListRoutersParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 func (p *ListRoutersParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -699,6 +907,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListRoutersParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListRoutersParams instance,
 // as then you are sure you have configured all required params
 func (s *RouterService) NewListRoutersParams() *ListRoutersParams {
@@ -913,6 +1129,14 @@
 	p.p["enabled"] = v
 }
 
+func (p *ListVirtualRouterElementsParams) GetEnabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enabled"].(bool)
+	return value, ok
+}
+
 func (p *ListVirtualRouterElementsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -920,6 +1144,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListVirtualRouterElementsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualRouterElementsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -927,6 +1159,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListVirtualRouterElementsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualRouterElementsParams) SetNspid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -934,6 +1174,14 @@
 	p.p["nspid"] = v
 }
 
+func (p *ListVirtualRouterElementsParams) GetNspid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nspid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualRouterElementsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -941,6 +1189,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListVirtualRouterElementsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListVirtualRouterElementsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -948,6 +1204,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListVirtualRouterElementsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListVirtualRouterElementsParams instance,
 // as then you are sure you have configured all required params
 func (s *RouterService) NewListVirtualRouterElementsParams() *ListVirtualRouterElementsParams {
@@ -1044,6 +1308,14 @@
 	p.p["id"] = v
 }
 
+func (p *RebootRouterParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RebootRouterParams instance,
 // as then you are sure you have configured all required params
 func (s *RouterService) NewRebootRouterParams(id string) *RebootRouterParams {
@@ -1173,6 +1445,14 @@
 	p.p["id"] = v
 }
 
+func (p *StartRouterParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new StartRouterParams instance,
 // as then you are sure you have configured all required params
 func (s *RouterService) NewStartRouterParams(id string) *StartRouterParams {
@@ -1306,6 +1586,14 @@
 	p.p["forced"] = v
 }
 
+func (p *StopRouterParams) GetForced() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forced"].(bool)
+	return value, ok
+}
+
 func (p *StopRouterParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1313,6 +1601,14 @@
 	p.p["id"] = v
 }
 
+func (p *StopRouterParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new StopRouterParams instance,
 // as then you are sure you have configured all required params
 func (s *RouterService) NewStopRouterParams(id string) *StopRouterParams {
diff --git a/cloudstack/SSHService.go b/cloudstack/SSHService.go
index 711d20f..4b2f651 100644
--- a/cloudstack/SSHService.go
+++ b/cloudstack/SSHService.go
@@ -69,6 +69,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateSSHKeyPairParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateSSHKeyPairParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -76,6 +84,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateSSHKeyPairParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateSSHKeyPairParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -83,6 +99,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateSSHKeyPairParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateSSHKeyPairParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -90,6 +114,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *CreateSSHKeyPairParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateSSHKeyPairParams instance,
 // as then you are sure you have configured all required params
 func (s *SSHService) NewCreateSSHKeyPairParams(name string) *CreateSSHKeyPairParams {
@@ -160,6 +192,14 @@
 	p.p["account"] = v
 }
 
+func (p *DeleteSSHKeyPairParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *DeleteSSHKeyPairParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -167,6 +207,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *DeleteSSHKeyPairParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *DeleteSSHKeyPairParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -174,6 +222,14 @@
 	p.p["name"] = v
 }
 
+func (p *DeleteSSHKeyPairParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *DeleteSSHKeyPairParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -181,6 +237,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *DeleteSSHKeyPairParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteSSHKeyPairParams instance,
 // as then you are sure you have configured all required params
 func (s *SSHService) NewDeleteSSHKeyPairParams(name string) *DeleteSSHKeyPairParams {
@@ -292,6 +356,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListSSHKeyPairsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListSSHKeyPairsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -299,6 +371,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListSSHKeyPairsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListSSHKeyPairsParams) SetFingerprint(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -306,6 +386,14 @@
 	p.p["fingerprint"] = v
 }
 
+func (p *ListSSHKeyPairsParams) GetFingerprint() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fingerprint"].(string)
+	return value, ok
+}
+
 func (p *ListSSHKeyPairsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -313,6 +401,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListSSHKeyPairsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListSSHKeyPairsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -320,6 +416,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListSSHKeyPairsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListSSHKeyPairsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -327,6 +431,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListSSHKeyPairsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListSSHKeyPairsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -334,6 +446,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListSSHKeyPairsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListSSHKeyPairsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -341,6 +461,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListSSHKeyPairsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListSSHKeyPairsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -348,6 +476,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListSSHKeyPairsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListSSHKeyPairsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -355,6 +491,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListSSHKeyPairsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListSSHKeyPairsParams instance,
 // as then you are sure you have configured all required params
 func (s *SSHService) NewListSSHKeyPairsParams() *ListSSHKeyPairsParams {
@@ -427,6 +571,14 @@
 	p.p["account"] = v
 }
 
+func (p *RegisterSSHKeyPairParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *RegisterSSHKeyPairParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -434,6 +586,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *RegisterSSHKeyPairParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *RegisterSSHKeyPairParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -441,6 +601,14 @@
 	p.p["name"] = v
 }
 
+func (p *RegisterSSHKeyPairParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *RegisterSSHKeyPairParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -448,6 +616,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *RegisterSSHKeyPairParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *RegisterSSHKeyPairParams) SetPublickey(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -455,6 +631,14 @@
 	p.p["publickey"] = v
 }
 
+func (p *RegisterSSHKeyPairParams) GetPublickey() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["publickey"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RegisterSSHKeyPairParams instance,
 // as then you are sure you have configured all required params
 func (s *SSHService) NewRegisterSSHKeyPairParams(name string, publickey string) *RegisterSSHKeyPairParams {
@@ -528,6 +712,14 @@
 	p.p["account"] = v
 }
 
+func (p *ResetSSHKeyForVirtualMachineParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ResetSSHKeyForVirtualMachineParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -535,6 +727,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ResetSSHKeyForVirtualMachineParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ResetSSHKeyForVirtualMachineParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -542,6 +742,14 @@
 	p.p["id"] = v
 }
 
+func (p *ResetSSHKeyForVirtualMachineParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ResetSSHKeyForVirtualMachineParams) SetKeypair(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -549,6 +757,14 @@
 	p.p["keypair"] = v
 }
 
+func (p *ResetSSHKeyForVirtualMachineParams) GetKeypair() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keypair"].(string)
+	return value, ok
+}
+
 func (p *ResetSSHKeyForVirtualMachineParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -556,6 +772,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ResetSSHKeyForVirtualMachineParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ResetSSHKeyForVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *SSHService) NewResetSSHKeyForVirtualMachineParams(id string, keypair string) *ResetSSHKeyForVirtualMachineParams {
diff --git a/cloudstack/SecurityGroupService.go b/cloudstack/SecurityGroupService.go
index 435ed52..2d41c3c 100644
--- a/cloudstack/SecurityGroupService.go
+++ b/cloudstack/SecurityGroupService.go
@@ -143,6 +143,14 @@
 	p.p["account"] = v
 }
 
+func (p *AuthorizeSecurityGroupEgressParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupEgressParams) SetCidrlist(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -150,6 +158,14 @@
 	p.p["cidrlist"] = v
 }
 
+func (p *AuthorizeSecurityGroupEgressParams) GetCidrlist() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cidrlist"].([]string)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupEgressParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -157,6 +173,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *AuthorizeSecurityGroupEgressParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupEgressParams) SetEndport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -164,6 +188,14 @@
 	p.p["endport"] = v
 }
 
+func (p *AuthorizeSecurityGroupEgressParams) GetEndport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endport"].(int)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupEgressParams) SetIcmpcode(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -171,6 +203,14 @@
 	p.p["icmpcode"] = v
 }
 
+func (p *AuthorizeSecurityGroupEgressParams) GetIcmpcode() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["icmpcode"].(int)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupEgressParams) SetIcmptype(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -178,6 +218,14 @@
 	p.p["icmptype"] = v
 }
 
+func (p *AuthorizeSecurityGroupEgressParams) GetIcmptype() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["icmptype"].(int)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupEgressParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -185,6 +233,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *AuthorizeSecurityGroupEgressParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupEgressParams) SetProtocol(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -192,6 +248,14 @@
 	p.p["protocol"] = v
 }
 
+func (p *AuthorizeSecurityGroupEgressParams) GetProtocol() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["protocol"].(string)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupEgressParams) SetSecuritygroupid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -199,6 +263,14 @@
 	p.p["securitygroupid"] = v
 }
 
+func (p *AuthorizeSecurityGroupEgressParams) GetSecuritygroupid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["securitygroupid"].(string)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupEgressParams) SetSecuritygroupname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -206,6 +278,14 @@
 	p.p["securitygroupname"] = v
 }
 
+func (p *AuthorizeSecurityGroupEgressParams) GetSecuritygroupname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["securitygroupname"].(string)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupEgressParams) SetStartport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -213,6 +293,14 @@
 	p.p["startport"] = v
 }
 
+func (p *AuthorizeSecurityGroupEgressParams) GetStartport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startport"].(int)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupEgressParams) SetUsersecuritygrouplist(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -220,6 +308,14 @@
 	p.p["usersecuritygrouplist"] = v
 }
 
+func (p *AuthorizeSecurityGroupEgressParams) GetUsersecuritygrouplist() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["usersecuritygrouplist"].(map[string]string)
+	return value, ok
+}
+
 // You should always use this function to get a new AuthorizeSecurityGroupEgressParams instance,
 // as then you are sure you have configured all required params
 func (s *SecurityGroupService) NewAuthorizeSecurityGroupEgressParams() *AuthorizeSecurityGroupEgressParams {
@@ -347,6 +443,14 @@
 	p.p["account"] = v
 }
 
+func (p *AuthorizeSecurityGroupIngressParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupIngressParams) SetCidrlist(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -354,6 +458,14 @@
 	p.p["cidrlist"] = v
 }
 
+func (p *AuthorizeSecurityGroupIngressParams) GetCidrlist() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cidrlist"].([]string)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupIngressParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -361,6 +473,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *AuthorizeSecurityGroupIngressParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupIngressParams) SetEndport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -368,6 +488,14 @@
 	p.p["endport"] = v
 }
 
+func (p *AuthorizeSecurityGroupIngressParams) GetEndport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endport"].(int)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupIngressParams) SetIcmpcode(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -375,6 +503,14 @@
 	p.p["icmpcode"] = v
 }
 
+func (p *AuthorizeSecurityGroupIngressParams) GetIcmpcode() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["icmpcode"].(int)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupIngressParams) SetIcmptype(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -382,6 +518,14 @@
 	p.p["icmptype"] = v
 }
 
+func (p *AuthorizeSecurityGroupIngressParams) GetIcmptype() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["icmptype"].(int)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupIngressParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -389,6 +533,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *AuthorizeSecurityGroupIngressParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupIngressParams) SetProtocol(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -396,6 +548,14 @@
 	p.p["protocol"] = v
 }
 
+func (p *AuthorizeSecurityGroupIngressParams) GetProtocol() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["protocol"].(string)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupIngressParams) SetSecuritygroupid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -403,6 +563,14 @@
 	p.p["securitygroupid"] = v
 }
 
+func (p *AuthorizeSecurityGroupIngressParams) GetSecuritygroupid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["securitygroupid"].(string)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupIngressParams) SetSecuritygroupname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -410,6 +578,14 @@
 	p.p["securitygroupname"] = v
 }
 
+func (p *AuthorizeSecurityGroupIngressParams) GetSecuritygroupname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["securitygroupname"].(string)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupIngressParams) SetStartport(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -417,6 +593,14 @@
 	p.p["startport"] = v
 }
 
+func (p *AuthorizeSecurityGroupIngressParams) GetStartport() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startport"].(int)
+	return value, ok
+}
+
 func (p *AuthorizeSecurityGroupIngressParams) SetUsersecuritygrouplist(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -424,6 +608,14 @@
 	p.p["usersecuritygrouplist"] = v
 }
 
+func (p *AuthorizeSecurityGroupIngressParams) GetUsersecuritygrouplist() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["usersecuritygrouplist"].(map[string]string)
+	return value, ok
+}
+
 // You should always use this function to get a new AuthorizeSecurityGroupIngressParams instance,
 // as then you are sure you have configured all required params
 func (s *SecurityGroupService) NewAuthorizeSecurityGroupIngressParams() *AuthorizeSecurityGroupIngressParams {
@@ -521,6 +713,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateSecurityGroupParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateSecurityGroupParams) SetDescription(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -528,6 +728,14 @@
 	p.p["description"] = v
 }
 
+func (p *CreateSecurityGroupParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *CreateSecurityGroupParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -535,6 +743,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateSecurityGroupParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateSecurityGroupParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -542,6 +758,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateSecurityGroupParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateSecurityGroupParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -549,6 +773,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *CreateSecurityGroupParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateSecurityGroupParams instance,
 // as then you are sure you have configured all required params
 func (s *SecurityGroupService) NewCreateSecurityGroupParams(name string) *CreateSecurityGroupParams {
@@ -642,6 +874,14 @@
 	p.p["account"] = v
 }
 
+func (p *DeleteSecurityGroupParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *DeleteSecurityGroupParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -649,6 +889,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *DeleteSecurityGroupParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *DeleteSecurityGroupParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -656,6 +904,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteSecurityGroupParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *DeleteSecurityGroupParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -663,6 +919,14 @@
 	p.p["name"] = v
 }
 
+func (p *DeleteSecurityGroupParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *DeleteSecurityGroupParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -670,6 +934,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *DeleteSecurityGroupParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteSecurityGroupParams instance,
 // as then you are sure you have configured all required params
 func (s *SecurityGroupService) NewDeleteSecurityGroupParams() *DeleteSecurityGroupParams {
@@ -790,6 +1062,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListSecurityGroupsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListSecurityGroupsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -797,6 +1077,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListSecurityGroupsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListSecurityGroupsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -804,6 +1092,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListSecurityGroupsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListSecurityGroupsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -811,6 +1107,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListSecurityGroupsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListSecurityGroupsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -818,6 +1122,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListSecurityGroupsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListSecurityGroupsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -825,6 +1137,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListSecurityGroupsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListSecurityGroupsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -832,6 +1152,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListSecurityGroupsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListSecurityGroupsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -839,6 +1167,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListSecurityGroupsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListSecurityGroupsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -846,6 +1182,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListSecurityGroupsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListSecurityGroupsParams) SetSecuritygroupname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -853,6 +1197,14 @@
 	p.p["securitygroupname"] = v
 }
 
+func (p *ListSecurityGroupsParams) GetSecuritygroupname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["securitygroupname"].(string)
+	return value, ok
+}
+
 func (p *ListSecurityGroupsParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -860,6 +1212,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListSecurityGroupsParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListSecurityGroupsParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -867,6 +1227,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *ListSecurityGroupsParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListSecurityGroupsParams instance,
 // as then you are sure you have configured all required params
 func (s *SecurityGroupService) NewListSecurityGroupsParams() *ListSecurityGroupsParams {
@@ -1031,6 +1399,14 @@
 	p.p["id"] = v
 }
 
+func (p *RevokeSecurityGroupEgressParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RevokeSecurityGroupEgressParams instance,
 // as then you are sure you have configured all required params
 func (s *SecurityGroupService) NewRevokeSecurityGroupEgressParams(id string) *RevokeSecurityGroupEgressParams {
@@ -1099,6 +1475,14 @@
 	p.p["id"] = v
 }
 
+func (p *RevokeSecurityGroupIngressParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RevokeSecurityGroupIngressParams instance,
 // as then you are sure you have configured all required params
 func (s *SecurityGroupService) NewRevokeSecurityGroupIngressParams(id string) *RevokeSecurityGroupIngressParams {
diff --git a/cloudstack/ServiceOfferingService.go b/cloudstack/ServiceOfferingService.go
index 417524d..c3ee0b6 100644
--- a/cloudstack/ServiceOfferingService.go
+++ b/cloudstack/ServiceOfferingService.go
@@ -225,6 +225,14 @@
 	p.p["bytesreadrate"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetBytesreadrate() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bytesreadrate"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetBytesreadratemax(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -232,6 +240,14 @@
 	p.p["bytesreadratemax"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetBytesreadratemax() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bytesreadratemax"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetBytesreadratemaxlength(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -239,6 +255,14 @@
 	p.p["bytesreadratemaxlength"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetBytesreadratemaxlength() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bytesreadratemaxlength"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetByteswriterate(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -246,6 +270,14 @@
 	p.p["byteswriterate"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetByteswriterate() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["byteswriterate"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetByteswriteratemax(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -253,6 +285,14 @@
 	p.p["byteswriteratemax"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetByteswriteratemax() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["byteswriteratemax"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetByteswriteratemaxlength(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -260,6 +300,14 @@
 	p.p["byteswriteratemaxlength"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetByteswriteratemaxlength() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["byteswriteratemaxlength"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetCachemode(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -267,6 +315,14 @@
 	p.p["cachemode"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetCachemode() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cachemode"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetCpunumber(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -274,6 +330,14 @@
 	p.p["cpunumber"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetCpunumber() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cpunumber"].(int)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetCpuspeed(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -281,6 +345,14 @@
 	p.p["cpuspeed"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetCpuspeed() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cpuspeed"].(int)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetCustomized(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -288,6 +360,14 @@
 	p.p["customized"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetCustomized() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customized"].(bool)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetCustomizediops(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -295,6 +375,14 @@
 	p.p["customizediops"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetCustomizediops() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customizediops"].(bool)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetDeploymentplanner(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -302,6 +390,14 @@
 	p.p["deploymentplanner"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetDeploymentplanner() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["deploymentplanner"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -309,6 +405,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetDomainid(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -316,6 +420,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetDomainid() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].([]string)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetHosttags(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -323,6 +435,14 @@
 	p.p["hosttags"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetHosttags() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hosttags"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetHypervisorsnapshotreserve(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -330,6 +450,14 @@
 	p.p["hypervisorsnapshotreserve"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetHypervisorsnapshotreserve() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisorsnapshotreserve"].(int)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetIopsreadrate(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -337,6 +465,14 @@
 	p.p["iopsreadrate"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetIopsreadrate() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopsreadrate"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetIopsreadratemax(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -344,6 +480,14 @@
 	p.p["iopsreadratemax"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetIopsreadratemax() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopsreadratemax"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetIopsreadratemaxlength(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -351,6 +495,14 @@
 	p.p["iopsreadratemaxlength"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetIopsreadratemaxlength() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopsreadratemaxlength"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetIopswriterate(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -358,6 +510,14 @@
 	p.p["iopswriterate"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetIopswriterate() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopswriterate"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetIopswriteratemax(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -365,6 +525,14 @@
 	p.p["iopswriteratemax"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetIopswriteratemax() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopswriteratemax"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetIopswriteratemaxlength(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -372,6 +540,14 @@
 	p.p["iopswriteratemaxlength"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetIopswriteratemaxlength() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iopswriteratemaxlength"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetIssystem(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -379,6 +555,14 @@
 	p.p["issystem"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetIssystem() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["issystem"].(bool)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetIsvolatile(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -386,6 +570,14 @@
 	p.p["isvolatile"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetIsvolatile() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isvolatile"].(bool)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetLimitcpuuse(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -393,6 +585,14 @@
 	p.p["limitcpuuse"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetLimitcpuuse() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["limitcpuuse"].(bool)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetMaxcpunumber(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -400,6 +600,14 @@
 	p.p["maxcpunumber"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetMaxcpunumber() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["maxcpunumber"].(int)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetMaxiops(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -407,6 +615,14 @@
 	p.p["maxiops"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetMaxiops() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["maxiops"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetMaxmemory(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -414,6 +630,14 @@
 	p.p["maxmemory"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetMaxmemory() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["maxmemory"].(int)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetMemory(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -421,6 +645,14 @@
 	p.p["memory"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetMemory() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["memory"].(int)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetMincpunumber(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -428,6 +660,14 @@
 	p.p["mincpunumber"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetMincpunumber() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["mincpunumber"].(int)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetMiniops(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -435,6 +675,14 @@
 	p.p["miniops"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetMiniops() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["miniops"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetMinmemory(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -442,6 +690,14 @@
 	p.p["minmemory"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetMinmemory() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["minmemory"].(int)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -449,6 +705,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetNetworkrate(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -456,6 +720,14 @@
 	p.p["networkrate"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetNetworkrate() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkrate"].(int)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetOfferha(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -463,6 +735,14 @@
 	p.p["offerha"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetOfferha() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["offerha"].(bool)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetProvisioningtype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -470,6 +750,14 @@
 	p.p["provisioningtype"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetProvisioningtype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["provisioningtype"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetRootdisksize(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -477,6 +765,14 @@
 	p.p["rootdisksize"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetRootdisksize() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["rootdisksize"].(int64)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetServiceofferingdetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -484,6 +780,14 @@
 	p.p["serviceofferingdetails"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetServiceofferingdetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceofferingdetails"].(map[string]string)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetStoragepolicy(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -491,6 +795,14 @@
 	p.p["storagepolicy"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetStoragepolicy() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storagepolicy"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetStoragetype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -498,6 +810,14 @@
 	p.p["storagetype"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetStoragetype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storagetype"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetSystemvmtype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -505,6 +825,14 @@
 	p.p["systemvmtype"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetSystemvmtype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["systemvmtype"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetTags(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -512,6 +840,14 @@
 	p.p["tags"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetTags() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(string)
+	return value, ok
+}
+
 func (p *CreateServiceOfferingParams) SetZoneid(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -519,6 +855,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreateServiceOfferingParams) GetZoneid() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateServiceOfferingParams instance,
 // as then you are sure you have configured all required params
 func (s *ServiceOfferingService) NewCreateServiceOfferingParams(displaytext string, name string) *CreateServiceOfferingParams {
@@ -619,6 +963,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteServiceOfferingParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteServiceOfferingParams instance,
 // as then you are sure you have configured all required params
 func (s *ServiceOfferingService) NewDeleteServiceOfferingParams(id string) *DeleteServiceOfferingParams {
@@ -749,6 +1101,14 @@
 	p.p["cpunumber"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetCpunumber() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cpunumber"].(int)
+	return value, ok
+}
+
 func (p *ListServiceOfferingsParams) SetCpuspeed(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -756,6 +1116,14 @@
 	p.p["cpuspeed"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetCpuspeed() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cpuspeed"].(int)
+	return value, ok
+}
+
 func (p *ListServiceOfferingsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -763,6 +1131,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListServiceOfferingsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -770,6 +1146,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListServiceOfferingsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -777,6 +1161,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListServiceOfferingsParams) SetIssystem(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -784,6 +1176,14 @@
 	p.p["issystem"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetIssystem() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["issystem"].(bool)
+	return value, ok
+}
+
 func (p *ListServiceOfferingsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -791,6 +1191,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListServiceOfferingsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -798,6 +1206,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListServiceOfferingsParams) SetMemory(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -805,6 +1221,14 @@
 	p.p["memory"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetMemory() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["memory"].(int)
+	return value, ok
+}
+
 func (p *ListServiceOfferingsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -812,6 +1236,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListServiceOfferingsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -819,6 +1251,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListServiceOfferingsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -826,6 +1266,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListServiceOfferingsParams) SetSystemvmtype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -833,6 +1281,14 @@
 	p.p["systemvmtype"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetSystemvmtype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["systemvmtype"].(string)
+	return value, ok
+}
+
 func (p *ListServiceOfferingsParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -840,6 +1296,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 func (p *ListServiceOfferingsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -847,6 +1311,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListServiceOfferingsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListServiceOfferingsParams instance,
 // as then you are sure you have configured all required params
 func (s *ServiceOfferingService) NewListServiceOfferingsParams() *ListServiceOfferingsParams {
@@ -1045,6 +1517,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *UpdateServiceOfferingParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *UpdateServiceOfferingParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1052,6 +1532,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *UpdateServiceOfferingParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *UpdateServiceOfferingParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1059,6 +1547,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateServiceOfferingParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateServiceOfferingParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1066,6 +1562,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateServiceOfferingParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateServiceOfferingParams) SetSortkey(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1073,6 +1577,14 @@
 	p.p["sortkey"] = v
 }
 
+func (p *UpdateServiceOfferingParams) GetSortkey() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sortkey"].(int)
+	return value, ok
+}
+
 func (p *UpdateServiceOfferingParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1080,6 +1592,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *UpdateServiceOfferingParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateServiceOfferingParams instance,
 // as then you are sure you have configured all required params
 func (s *ServiceOfferingService) NewUpdateServiceOfferingParams(id string) *UpdateServiceOfferingParams {
diff --git a/cloudstack/SnapshotService.go b/cloudstack/SnapshotService.go
index 610d02d..cb472a2 100644
--- a/cloudstack/SnapshotService.go
+++ b/cloudstack/SnapshotService.go
@@ -111,6 +111,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateSnapshotParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateSnapshotParams) SetAsyncbackup(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -118,6 +126,14 @@
 	p.p["asyncbackup"] = v
 }
 
+func (p *CreateSnapshotParams) GetAsyncbackup() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["asyncbackup"].(bool)
+	return value, ok
+}
+
 func (p *CreateSnapshotParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -125,6 +141,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateSnapshotParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateSnapshotParams) SetLocationtype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -132,6 +156,14 @@
 	p.p["locationtype"] = v
 }
 
+func (p *CreateSnapshotParams) GetLocationtype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["locationtype"].(string)
+	return value, ok
+}
+
 func (p *CreateSnapshotParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -139,6 +171,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateSnapshotParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateSnapshotParams) SetPolicyid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -146,6 +186,14 @@
 	p.p["policyid"] = v
 }
 
+func (p *CreateSnapshotParams) GetPolicyid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["policyid"].(string)
+	return value, ok
+}
+
 func (p *CreateSnapshotParams) SetQuiescevm(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -153,6 +201,14 @@
 	p.p["quiescevm"] = v
 }
 
+func (p *CreateSnapshotParams) GetQuiescevm() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["quiescevm"].(bool)
+	return value, ok
+}
+
 func (p *CreateSnapshotParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -160,6 +216,14 @@
 	p.p["tags"] = v
 }
 
+func (p *CreateSnapshotParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *CreateSnapshotParams) SetVolumeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -167,6 +231,14 @@
 	p.p["volumeid"] = v
 }
 
+func (p *CreateSnapshotParams) GetVolumeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["volumeid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateSnapshotParams instance,
 // as then you are sure you have configured all required params
 func (s *SnapshotService) NewCreateSnapshotParams(volumeid string) *CreateSnapshotParams {
@@ -311,6 +383,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateSnapshotPolicyParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateSnapshotPolicyParams) SetIntervaltype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -318,6 +398,14 @@
 	p.p["intervaltype"] = v
 }
 
+func (p *CreateSnapshotPolicyParams) GetIntervaltype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["intervaltype"].(string)
+	return value, ok
+}
+
 func (p *CreateSnapshotPolicyParams) SetMaxsnaps(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -325,6 +413,14 @@
 	p.p["maxsnaps"] = v
 }
 
+func (p *CreateSnapshotPolicyParams) GetMaxsnaps() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["maxsnaps"].(int)
+	return value, ok
+}
+
 func (p *CreateSnapshotPolicyParams) SetSchedule(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -332,6 +428,14 @@
 	p.p["schedule"] = v
 }
 
+func (p *CreateSnapshotPolicyParams) GetSchedule() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["schedule"].(string)
+	return value, ok
+}
+
 func (p *CreateSnapshotPolicyParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -339,6 +443,14 @@
 	p.p["tags"] = v
 }
 
+func (p *CreateSnapshotPolicyParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *CreateSnapshotPolicyParams) SetTimezone(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -346,6 +458,14 @@
 	p.p["timezone"] = v
 }
 
+func (p *CreateSnapshotPolicyParams) GetTimezone() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["timezone"].(string)
+	return value, ok
+}
+
 func (p *CreateSnapshotPolicyParams) SetVolumeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -353,6 +473,14 @@
 	p.p["volumeid"] = v
 }
 
+func (p *CreateSnapshotPolicyParams) GetVolumeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["volumeid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateSnapshotPolicyParams instance,
 // as then you are sure you have configured all required params
 func (s *SnapshotService) NewCreateSnapshotPolicyParams(intervaltype string, maxsnaps int, schedule string, timezone string, volumeid string) *CreateSnapshotPolicyParams {
@@ -430,6 +558,14 @@
 	p.p["description"] = v
 }
 
+func (p *CreateVMSnapshotParams) GetDescription() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["description"].(string)
+	return value, ok
+}
+
 func (p *CreateVMSnapshotParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -437,6 +573,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateVMSnapshotParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateVMSnapshotParams) SetQuiescevm(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -444,6 +588,14 @@
 	p.p["quiescevm"] = v
 }
 
+func (p *CreateVMSnapshotParams) GetQuiescevm() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["quiescevm"].(bool)
+	return value, ok
+}
+
 func (p *CreateVMSnapshotParams) SetSnapshotmemory(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -451,6 +603,14 @@
 	p.p["snapshotmemory"] = v
 }
 
+func (p *CreateVMSnapshotParams) GetSnapshotmemory() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["snapshotmemory"].(bool)
+	return value, ok
+}
+
 func (p *CreateVMSnapshotParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -458,6 +618,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *CreateVMSnapshotParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateVMSnapshotParams instance,
 // as then you are sure you have configured all required params
 func (s *SnapshotService) NewCreateVMSnapshotParams(virtualmachineid string) *CreateVMSnapshotParams {
@@ -550,6 +718,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteSnapshotParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteSnapshotParams instance,
 // as then you are sure you have configured all required params
 func (s *SnapshotService) NewDeleteSnapshotParams(id string) *DeleteSnapshotParams {
@@ -622,6 +798,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteSnapshotPoliciesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *DeleteSnapshotPoliciesParams) SetIds(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -629,6 +813,14 @@
 	p.p["ids"] = v
 }
 
+func (p *DeleteSnapshotPoliciesParams) GetIds() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ids"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteSnapshotPoliciesParams instance,
 // as then you are sure you have configured all required params
 func (s *SnapshotService) NewDeleteSnapshotPoliciesParams() *DeleteSnapshotPoliciesParams {
@@ -708,6 +900,14 @@
 	p.p["vmsnapshotid"] = v
 }
 
+func (p *DeleteVMSnapshotParams) GetVmsnapshotid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vmsnapshotid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteVMSnapshotParams instance,
 // as then you are sure you have configured all required params
 func (s *SnapshotService) NewDeleteVMSnapshotParams(vmsnapshotid string) *DeleteVMSnapshotParams {
@@ -794,6 +994,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListSnapshotPoliciesParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListSnapshotPoliciesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -801,6 +1009,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListSnapshotPoliciesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListSnapshotPoliciesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -808,6 +1024,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListSnapshotPoliciesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListSnapshotPoliciesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -815,6 +1039,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListSnapshotPoliciesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListSnapshotPoliciesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -822,6 +1054,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListSnapshotPoliciesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListSnapshotPoliciesParams) SetVolumeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -829,6 +1069,14 @@
 	p.p["volumeid"] = v
 }
 
+func (p *ListSnapshotPoliciesParams) GetVolumeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["volumeid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListSnapshotPoliciesParams instance,
 // as then you are sure you have configured all required params
 func (s *SnapshotService) NewListSnapshotPoliciesParams() *ListSnapshotPoliciesParams {
@@ -979,6 +1227,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListSnapshotsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -986,6 +1242,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListSnapshotsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -993,6 +1257,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListSnapshotsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetIds(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1000,6 +1272,14 @@
 	p.p["ids"] = v
 }
 
+func (p *ListSnapshotsParams) GetIds() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ids"].([]string)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetIntervaltype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1007,6 +1287,14 @@
 	p.p["intervaltype"] = v
 }
 
+func (p *ListSnapshotsParams) GetIntervaltype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["intervaltype"].(string)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1014,6 +1302,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListSnapshotsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1021,6 +1317,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListSnapshotsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1028,6 +1332,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListSnapshotsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1035,6 +1347,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListSnapshotsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1042,6 +1362,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListSnapshotsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1049,6 +1377,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListSnapshotsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1056,6 +1392,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListSnapshotsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetSnapshottype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1063,6 +1407,14 @@
 	p.p["snapshottype"] = v
 }
 
+func (p *ListSnapshotsParams) GetSnapshottype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["snapshottype"].(string)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1070,6 +1422,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListSnapshotsParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetVolumeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1077,6 +1437,14 @@
 	p.p["volumeid"] = v
 }
 
+func (p *ListSnapshotsParams) GetVolumeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["volumeid"].(string)
+	return value, ok
+}
+
 func (p *ListSnapshotsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1084,6 +1452,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListSnapshotsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListSnapshotsParams instance,
 // as then you are sure you have configured all required params
 func (s *SnapshotService) NewListSnapshotsParams() *ListSnapshotsParams {
@@ -1319,6 +1695,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListVMSnapshotParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListVMSnapshotParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1326,6 +1710,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListVMSnapshotParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListVMSnapshotParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1333,6 +1725,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListVMSnapshotParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListVMSnapshotParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1340,6 +1740,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListVMSnapshotParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListVMSnapshotParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1347,6 +1755,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListVMSnapshotParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListVMSnapshotParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1354,6 +1770,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListVMSnapshotParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListVMSnapshotParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1361,6 +1785,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListVMSnapshotParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListVMSnapshotParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1368,6 +1800,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListVMSnapshotParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListVMSnapshotParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1375,6 +1815,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListVMSnapshotParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListVMSnapshotParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1382,6 +1830,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListVMSnapshotParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListVMSnapshotParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1389,6 +1845,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListVMSnapshotParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListVMSnapshotParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1396,6 +1860,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *ListVMSnapshotParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 func (p *ListVMSnapshotParams) SetVmsnapshotid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1403,6 +1875,14 @@
 	p.p["vmsnapshotid"] = v
 }
 
+func (p *ListVMSnapshotParams) GetVmsnapshotid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vmsnapshotid"].(string)
+	return value, ok
+}
+
 func (p *ListVMSnapshotParams) SetVmsnapshotids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1410,6 +1890,14 @@
 	p.p["vmsnapshotids"] = v
 }
 
+func (p *ListVMSnapshotParams) GetVmsnapshotids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vmsnapshotids"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListVMSnapshotParams instance,
 // as then you are sure you have configured all required params
 func (s *SnapshotService) NewListVMSnapshotParams() *ListVMSnapshotParams {
@@ -1522,6 +2010,14 @@
 	p.p["id"] = v
 }
 
+func (p *RevertSnapshotParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RevertSnapshotParams instance,
 // as then you are sure you have configured all required params
 func (s *SnapshotService) NewRevertSnapshotParams(id string) *RevertSnapshotParams {
@@ -1642,6 +2138,14 @@
 	p.p["vmsnapshotid"] = v
 }
 
+func (p *RevertToVMSnapshotParams) GetVmsnapshotid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vmsnapshotid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RevertToVMSnapshotParams instance,
 // as then you are sure you have configured all required params
 func (s *SnapshotService) NewRevertToVMSnapshotParams(vmsnapshotid string) *RevertToVMSnapshotParams {
@@ -1858,6 +2362,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateSnapshotPolicyParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateSnapshotPolicyParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1865,6 +2377,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateSnapshotPolicyParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateSnapshotPolicyParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1872,6 +2392,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateSnapshotPolicyParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateSnapshotPolicyParams instance,
 // as then you are sure you have configured all required params
 func (s *SnapshotService) NewUpdateSnapshotPolicyParams() *UpdateSnapshotPolicyParams {
diff --git a/cloudstack/StoragePoolService.go b/cloudstack/StoragePoolService.go
index fb76e66..2451a76 100644
--- a/cloudstack/StoragePoolService.go
+++ b/cloudstack/StoragePoolService.go
@@ -56,6 +56,14 @@
 	p.p["id"] = v
 }
 
+func (p *CancelStorageMaintenanceParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CancelStorageMaintenanceParams instance,
 // as then you are sure you have configured all required params
 func (s *StoragePoolService) NewCancelStorageMaintenanceParams(id string) *CancelStorageMaintenanceParams {
@@ -152,6 +160,14 @@
 	p.p["id"] = v
 }
 
+func (p *EnableStorageMaintenanceParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new EnableStorageMaintenanceParams instance,
 // as then you are sure you have configured all required params
 func (s *StoragePoolService) NewEnableStorageMaintenanceParams(id string) *EnableStorageMaintenanceParams {
@@ -259,6 +275,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListStorageProvidersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListStorageProvidersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -266,6 +290,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListStorageProvidersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListStorageProvidersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -273,6 +305,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListStorageProvidersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListStorageProvidersParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -280,6 +320,14 @@
 	p.p["type"] = v
 }
 
+func (p *ListStorageProvidersParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListStorageProvidersParams instance,
 // as then you are sure you have configured all required params
 func (s *StoragePoolService) NewListStorageProvidersParams(storagePoolType string) *ListStorageProvidersParams {
diff --git a/cloudstack/StratosphereSSPService.go b/cloudstack/StratosphereSSPService.go
index c7c2fc2..ff0575c 100644
--- a/cloudstack/StratosphereSSPService.go
+++ b/cloudstack/StratosphereSSPService.go
@@ -69,6 +69,14 @@
 	p.p["name"] = v
 }
 
+func (p *AddStratosphereSspParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *AddStratosphereSspParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -76,6 +84,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddStratosphereSspParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddStratosphereSspParams) SetTenantuuid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -83,6 +99,14 @@
 	p.p["tenantuuid"] = v
 }
 
+func (p *AddStratosphereSspParams) GetTenantuuid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tenantuuid"].(string)
+	return value, ok
+}
+
 func (p *AddStratosphereSspParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -90,6 +114,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddStratosphereSspParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddStratosphereSspParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -97,6 +129,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddStratosphereSspParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 func (p *AddStratosphereSspParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -104,6 +144,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *AddStratosphereSspParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddStratosphereSspParams instance,
 // as then you are sure you have configured all required params
 func (s *StratosphereSSPService) NewAddStratosphereSspParams(name string, url string, zoneid string) *AddStratosphereSspParams {
@@ -161,6 +209,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *DeleteStratosphereSspParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteStratosphereSspParams instance,
 // as then you are sure you have configured all required params
 func (s *StratosphereSSPService) NewDeleteStratosphereSspParams(hostid string) *DeleteStratosphereSspParams {
diff --git a/cloudstack/SwiftService.go b/cloudstack/SwiftService.go
index ca441bf..db2b3f6 100644
--- a/cloudstack/SwiftService.go
+++ b/cloudstack/SwiftService.go
@@ -65,6 +65,14 @@
 	p.p["account"] = v
 }
 
+func (p *AddSwiftParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *AddSwiftParams) SetKey(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -72,6 +80,14 @@
 	p.p["key"] = v
 }
 
+func (p *AddSwiftParams) GetKey() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["key"].(string)
+	return value, ok
+}
+
 func (p *AddSwiftParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -79,6 +95,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddSwiftParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddSwiftParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -86,6 +110,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddSwiftParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddSwiftParams instance,
 // as then you are sure you have configured all required params
 func (s *SwiftService) NewAddSwiftParams(url string) *AddSwiftParams {
@@ -160,6 +192,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListSwiftsParams) GetId() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(int64)
+	return value, ok
+}
+
 func (p *ListSwiftsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -167,6 +207,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListSwiftsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListSwiftsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -174,6 +222,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListSwiftsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListSwiftsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -181,6 +237,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListSwiftsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new ListSwiftsParams instance,
 // as then you are sure you have configured all required params
 func (s *SwiftService) NewListSwiftsParams() *ListSwiftsParams {
diff --git a/cloudstack/SystemCapacityService.go b/cloudstack/SystemCapacityService.go
index 822cc9e..161b46b 100644
--- a/cloudstack/SystemCapacityService.go
+++ b/cloudstack/SystemCapacityService.go
@@ -80,6 +80,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *ListCapacityParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *ListCapacityParams) SetFetchlatest(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -87,6 +95,14 @@
 	p.p["fetchlatest"] = v
 }
 
+func (p *ListCapacityParams) GetFetchlatest() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fetchlatest"].(bool)
+	return value, ok
+}
+
 func (p *ListCapacityParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -94,6 +110,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListCapacityParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListCapacityParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -101,6 +125,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListCapacityParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListCapacityParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -108,6 +140,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListCapacityParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListCapacityParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -115,6 +155,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListCapacityParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *ListCapacityParams) SetSortby(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -122,6 +170,14 @@
 	p.p["sortby"] = v
 }
 
+func (p *ListCapacityParams) GetSortby() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sortby"].(string)
+	return value, ok
+}
+
 func (p *ListCapacityParams) SetType(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -129,6 +185,14 @@
 	p.p["type"] = v
 }
 
+func (p *ListCapacityParams) GetType() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(int)
+	return value, ok
+}
+
 func (p *ListCapacityParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -136,6 +200,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListCapacityParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListCapacityParams instance,
 // as then you are sure you have configured all required params
 func (s *SystemCapacityService) NewListCapacityParams() *ListCapacityParams {
diff --git a/cloudstack/SystemVMService.go b/cloudstack/SystemVMService.go
index 2240560..acfce82 100644
--- a/cloudstack/SystemVMService.go
+++ b/cloudstack/SystemVMService.go
@@ -80,6 +80,14 @@
 	p.p["details"] = v
 }
 
+func (p *ChangeServiceForSystemVmParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *ChangeServiceForSystemVmParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -87,6 +95,14 @@
 	p.p["id"] = v
 }
 
+func (p *ChangeServiceForSystemVmParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ChangeServiceForSystemVmParams) SetServiceofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -94,6 +110,14 @@
 	p.p["serviceofferingid"] = v
 }
 
+func (p *ChangeServiceForSystemVmParams) GetServiceofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceofferingid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ChangeServiceForSystemVmParams instance,
 // as then you are sure you have configured all required params
 func (s *SystemVMService) NewChangeServiceForSystemVmParams(id string, serviceofferingid string) *ChangeServiceForSystemVmParams {
@@ -179,6 +203,14 @@
 	p.p["id"] = v
 }
 
+func (p *DestroySystemVmParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DestroySystemVmParams instance,
 // as then you are sure you have configured all required params
 func (s *SystemVMService) NewDestroySystemVmParams(id string) *DestroySystemVmParams {
@@ -315,6 +347,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *ListSystemVmsParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *ListSystemVmsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -322,6 +362,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListSystemVmsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListSystemVmsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -329,6 +377,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListSystemVmsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListSystemVmsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -336,6 +392,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListSystemVmsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListSystemVmsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -343,6 +407,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListSystemVmsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListSystemVmsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -350,6 +422,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListSystemVmsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListSystemVmsParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -357,6 +437,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListSystemVmsParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *ListSystemVmsParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -364,6 +452,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListSystemVmsParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListSystemVmsParams) SetStorageid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -371,6 +467,14 @@
 	p.p["storageid"] = v
 }
 
+func (p *ListSystemVmsParams) GetStorageid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storageid"].(string)
+	return value, ok
+}
+
 func (p *ListSystemVmsParams) SetSystemvmtype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -378,6 +482,14 @@
 	p.p["systemvmtype"] = v
 }
 
+func (p *ListSystemVmsParams) GetSystemvmtype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["systemvmtype"].(string)
+	return value, ok
+}
+
 func (p *ListSystemVmsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -385,6 +497,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListSystemVmsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListSystemVmsParams instance,
 // as then you are sure you have configured all required params
 func (s *SystemVMService) NewListSystemVmsParams() *ListSystemVmsParams {
@@ -559,6 +679,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *MigrateSystemVmParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *MigrateSystemVmParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -566,6 +694,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *MigrateSystemVmParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new MigrateSystemVmParams instance,
 // as then you are sure you have configured all required params
 func (s *SystemVMService) NewMigrateSystemVmParams(hostid string, virtualmachineid string) *MigrateSystemVmParams {
@@ -671,6 +807,14 @@
 	p.p["id"] = v
 }
 
+func (p *RebootSystemVmParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RebootSystemVmParams instance,
 // as then you are sure you have configured all required params
 func (s *SystemVMService) NewRebootSystemVmParams(id string) *RebootSystemVmParams {
@@ -784,6 +928,14 @@
 	p.p["details"] = v
 }
 
+func (p *ScaleSystemVmParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *ScaleSystemVmParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -791,6 +943,14 @@
 	p.p["id"] = v
 }
 
+func (p *ScaleSystemVmParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ScaleSystemVmParams) SetServiceofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -798,6 +958,14 @@
 	p.p["serviceofferingid"] = v
 }
 
+func (p *ScaleSystemVmParams) GetServiceofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceofferingid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ScaleSystemVmParams instance,
 // as then you are sure you have configured all required params
 func (s *SystemVMService) NewScaleSystemVmParams(id string, serviceofferingid string) *ScaleSystemVmParams {
@@ -903,6 +1071,14 @@
 	p.p["id"] = v
 }
 
+func (p *StartSystemVmParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new StartSystemVmParams instance,
 // as then you are sure you have configured all required params
 func (s *SystemVMService) NewStartSystemVmParams(id string) *StartSystemVmParams {
@@ -1011,6 +1187,14 @@
 	p.p["forced"] = v
 }
 
+func (p *StopSystemVmParams) GetForced() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forced"].(bool)
+	return value, ok
+}
+
 func (p *StopSystemVmParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1018,6 +1202,14 @@
 	p.p["id"] = v
 }
 
+func (p *StopSystemVmParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new StopSystemVmParams instance,
 // as then you are sure you have configured all required params
 func (s *SystemVMService) NewStopSystemVmParams(id string) *StopSystemVmParams {
diff --git a/cloudstack/TemplateService.go b/cloudstack/TemplateService.go
index 215ab1d..8dd117a 100644
--- a/cloudstack/TemplateService.go
+++ b/cloudstack/TemplateService.go
@@ -90,6 +90,14 @@
 	p.p["destzoneid"] = v
 }
 
+func (p *CopyTemplateParams) GetDestzoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["destzoneid"].(string)
+	return value, ok
+}
+
 func (p *CopyTemplateParams) SetDestzoneids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -97,6 +105,14 @@
 	p.p["destzoneids"] = v
 }
 
+func (p *CopyTemplateParams) GetDestzoneids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["destzoneids"].([]string)
+	return value, ok
+}
+
 func (p *CopyTemplateParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -104,6 +120,14 @@
 	p.p["id"] = v
 }
 
+func (p *CopyTemplateParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *CopyTemplateParams) SetSourcezoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -111,6 +135,14 @@
 	p.p["sourcezoneid"] = v
 }
 
+func (p *CopyTemplateParams) GetSourcezoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sourcezoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CopyTemplateParams instance,
 // as then you are sure you have configured all required params
 func (s *TemplateService) NewCopyTemplateParams(id string) *CopyTemplateParams {
@@ -313,6 +345,14 @@
 	p.p["bits"] = v
 }
 
+func (p *CreateTemplateParams) GetBits() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bits"].(int)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetDetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -320,6 +360,14 @@
 	p.p["details"] = v
 }
 
+func (p *CreateTemplateParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -327,6 +375,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *CreateTemplateParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetIsdynamicallyscalable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -334,6 +390,14 @@
 	p.p["isdynamicallyscalable"] = v
 }
 
+func (p *CreateTemplateParams) GetIsdynamicallyscalable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isdynamicallyscalable"].(bool)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetIsfeatured(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -341,6 +405,14 @@
 	p.p["isfeatured"] = v
 }
 
+func (p *CreateTemplateParams) GetIsfeatured() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isfeatured"].(bool)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetIspublic(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -348,6 +420,14 @@
 	p.p["ispublic"] = v
 }
 
+func (p *CreateTemplateParams) GetIspublic() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ispublic"].(bool)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -355,6 +435,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateTemplateParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetOstypeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -362,6 +450,14 @@
 	p.p["ostypeid"] = v
 }
 
+func (p *CreateTemplateParams) GetOstypeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ostypeid"].(string)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetPasswordenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -369,6 +465,14 @@
 	p.p["passwordenabled"] = v
 }
 
+func (p *CreateTemplateParams) GetPasswordenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["passwordenabled"].(bool)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -376,6 +480,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *CreateTemplateParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetRequireshvm(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -383,6 +495,14 @@
 	p.p["requireshvm"] = v
 }
 
+func (p *CreateTemplateParams) GetRequireshvm() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["requireshvm"].(bool)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetSnapshotid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -390,6 +510,14 @@
 	p.p["snapshotid"] = v
 }
 
+func (p *CreateTemplateParams) GetSnapshotid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["snapshotid"].(string)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetSshkeyenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -397,6 +525,14 @@
 	p.p["sshkeyenabled"] = v
 }
 
+func (p *CreateTemplateParams) GetSshkeyenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sshkeyenabled"].(bool)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetTemplatetag(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -404,6 +540,14 @@
 	p.p["templatetag"] = v
 }
 
+func (p *CreateTemplateParams) GetTemplatetag() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["templatetag"].(string)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -411,6 +555,14 @@
 	p.p["url"] = v
 }
 
+func (p *CreateTemplateParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -418,6 +570,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *CreateTemplateParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 func (p *CreateTemplateParams) SetVolumeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -425,6 +585,14 @@
 	p.p["volumeid"] = v
 }
 
+func (p *CreateTemplateParams) GetVolumeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["volumeid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateTemplateParams instance,
 // as then you are sure you have configured all required params
 func (s *TemplateService) NewCreateTemplateParams(displaytext string, name string, ostypeid string) *CreateTemplateParams {
@@ -578,6 +746,14 @@
 	p.p["forced"] = v
 }
 
+func (p *DeleteTemplateParams) GetForced() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forced"].(bool)
+	return value, ok
+}
+
 func (p *DeleteTemplateParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -585,6 +761,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteTemplateParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *DeleteTemplateParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -592,6 +776,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *DeleteTemplateParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteTemplateParams instance,
 // as then you are sure you have configured all required params
 func (s *TemplateService) NewDeleteTemplateParams(id string) *DeleteTemplateParams {
@@ -669,6 +861,14 @@
 	p.p["id"] = v
 }
 
+func (p *ExtractTemplateParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ExtractTemplateParams) SetMode(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -676,6 +876,14 @@
 	p.p["mode"] = v
 }
 
+func (p *ExtractTemplateParams) GetMode() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["mode"].(string)
+	return value, ok
+}
+
 func (p *ExtractTemplateParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -683,6 +891,14 @@
 	p.p["url"] = v
 }
 
+func (p *ExtractTemplateParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *ExtractTemplateParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -690,6 +906,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ExtractTemplateParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ExtractTemplateParams instance,
 // as then you are sure you have configured all required params
 func (s *TemplateService) NewExtractTemplateParams(id string, mode string) *ExtractTemplateParams {
@@ -852,6 +1076,14 @@
 	p.p["account"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetBits(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -859,6 +1091,14 @@
 	p.p["bits"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetBits() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bits"].(int)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetChecksum(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -866,6 +1106,14 @@
 	p.p["checksum"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetChecksum() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["checksum"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetDeployasis(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -873,6 +1121,14 @@
 	p.p["deployasis"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetDeployasis() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["deployasis"].(bool)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetDetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -880,6 +1136,14 @@
 	p.p["details"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -887,6 +1151,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -894,6 +1166,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetFormat(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -901,6 +1181,14 @@
 	p.p["format"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetFormat() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["format"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -908,6 +1196,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetIsdynamicallyscalable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -915,6 +1211,14 @@
 	p.p["isdynamicallyscalable"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetIsdynamicallyscalable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isdynamicallyscalable"].(bool)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetIsextractable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -922,6 +1226,14 @@
 	p.p["isextractable"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetIsextractable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isextractable"].(bool)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetIsfeatured(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -929,6 +1241,14 @@
 	p.p["isfeatured"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetIsfeatured() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isfeatured"].(bool)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetIspublic(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -936,6 +1256,14 @@
 	p.p["ispublic"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetIspublic() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ispublic"].(bool)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetIsrouting(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -943,6 +1271,14 @@
 	p.p["isrouting"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetIsrouting() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrouting"].(bool)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -950,6 +1286,14 @@
 	p.p["name"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetOstypeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -957,6 +1301,14 @@
 	p.p["ostypeid"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetOstypeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ostypeid"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetPasswordenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -964,6 +1316,14 @@
 	p.p["passwordenabled"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetPasswordenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["passwordenabled"].(bool)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -971,6 +1331,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetRequireshvm(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -978,6 +1346,14 @@
 	p.p["requireshvm"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetRequireshvm() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["requireshvm"].(bool)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetSshkeyenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -985,6 +1361,14 @@
 	p.p["sshkeyenabled"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetSshkeyenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sshkeyenabled"].(bool)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetTemplatetag(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -992,6 +1376,14 @@
 	p.p["templatetag"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetTemplatetag() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["templatetag"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForTemplateParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -999,6 +1391,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *GetUploadParamsForTemplateParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new GetUploadParamsForTemplateParams instance,
 // as then you are sure you have configured all required params
 func (s *TemplateService) NewGetUploadParamsForTemplateParams(displaytext string, format string, hypervisor string, name string, zoneid string) *GetUploadParamsForTemplateParams {
@@ -1059,6 +1459,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListTemplatePermissionsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListTemplatePermissionsParams instance,
 // as then you are sure you have configured all required params
 func (s *TemplateService) NewListTemplatePermissionsParams(id string) *ListTemplatePermissionsParams {
@@ -1219,6 +1627,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListTemplatesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetDetails(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1226,6 +1642,14 @@
 	p.p["details"] = v
 }
 
+func (p *ListTemplatesParams) GetDetails() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].([]string)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1233,6 +1657,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListTemplatesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1240,6 +1672,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *ListTemplatesParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1247,6 +1687,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListTemplatesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetIds(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1254,6 +1702,14 @@
 	p.p["ids"] = v
 }
 
+func (p *ListTemplatesParams) GetIds() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ids"].([]string)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1261,6 +1717,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListTemplatesParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1268,6 +1732,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListTemplatesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1275,6 +1747,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListTemplatesParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1282,6 +1762,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListTemplatesParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1289,6 +1777,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListTemplatesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1296,6 +1792,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListTemplatesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetParenttemplateid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1303,6 +1807,14 @@
 	p.p["parenttemplateid"] = v
 }
 
+func (p *ListTemplatesParams) GetParenttemplateid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["parenttemplateid"].(string)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1310,6 +1822,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListTemplatesParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetShowremoved(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1317,6 +1837,14 @@
 	p.p["showremoved"] = v
 }
 
+func (p *ListTemplatesParams) GetShowremoved() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["showremoved"].(bool)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetShowunique(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1324,6 +1852,14 @@
 	p.p["showunique"] = v
 }
 
+func (p *ListTemplatesParams) GetShowunique() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["showunique"].(bool)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1331,6 +1867,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListTemplatesParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetTemplatefilter(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1338,6 +1882,14 @@
 	p.p["templatefilter"] = v
 }
 
+func (p *ListTemplatesParams) GetTemplatefilter() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["templatefilter"].(string)
+	return value, ok
+}
+
 func (p *ListTemplatesParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1345,6 +1897,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListTemplatesParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListTemplatesParams instance,
 // as then you are sure you have configured all required params
 func (s *TemplateService) NewListTemplatesParams(templatefilter string) *ListTemplatesParams {
@@ -1566,6 +2126,14 @@
 	p.p["storageid"] = v
 }
 
+func (p *PrepareTemplateParams) GetStorageid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storageid"].(string)
+	return value, ok
+}
+
 func (p *PrepareTemplateParams) SetTemplateid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1573,6 +2141,14 @@
 	p.p["templateid"] = v
 }
 
+func (p *PrepareTemplateParams) GetTemplateid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["templateid"].(string)
+	return value, ok
+}
+
 func (p *PrepareTemplateParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1580,6 +2156,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *PrepareTemplateParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new PrepareTemplateParams instance,
 // as then you are sure you have configured all required params
 func (s *TemplateService) NewPrepareTemplateParams(templateid string, zoneid string) *PrepareTemplateParams {
@@ -1792,6 +2376,14 @@
 	p.p["account"] = v
 }
 
+func (p *RegisterTemplateParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetBits(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1799,6 +2391,14 @@
 	p.p["bits"] = v
 }
 
+func (p *RegisterTemplateParams) GetBits() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bits"].(int)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetChecksum(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1806,6 +2406,14 @@
 	p.p["checksum"] = v
 }
 
+func (p *RegisterTemplateParams) GetChecksum() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["checksum"].(string)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetDeployasis(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1813,6 +2421,14 @@
 	p.p["deployasis"] = v
 }
 
+func (p *RegisterTemplateParams) GetDeployasis() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["deployasis"].(bool)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetDetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1820,6 +2436,14 @@
 	p.p["details"] = v
 }
 
+func (p *RegisterTemplateParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetDirectdownload(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1827,6 +2451,14 @@
 	p.p["directdownload"] = v
 }
 
+func (p *RegisterTemplateParams) GetDirectdownload() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["directdownload"].(bool)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1834,6 +2466,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *RegisterTemplateParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1841,6 +2481,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *RegisterTemplateParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetFormat(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1848,6 +2496,14 @@
 	p.p["format"] = v
 }
 
+func (p *RegisterTemplateParams) GetFormat() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["format"].(string)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1855,6 +2511,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *RegisterTemplateParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetIsdynamicallyscalable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1862,6 +2526,14 @@
 	p.p["isdynamicallyscalable"] = v
 }
 
+func (p *RegisterTemplateParams) GetIsdynamicallyscalable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isdynamicallyscalable"].(bool)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetIsextractable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1869,6 +2541,14 @@
 	p.p["isextractable"] = v
 }
 
+func (p *RegisterTemplateParams) GetIsextractable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isextractable"].(bool)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetIsfeatured(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1876,6 +2556,14 @@
 	p.p["isfeatured"] = v
 }
 
+func (p *RegisterTemplateParams) GetIsfeatured() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isfeatured"].(bool)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetIspublic(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1883,6 +2571,14 @@
 	p.p["ispublic"] = v
 }
 
+func (p *RegisterTemplateParams) GetIspublic() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ispublic"].(bool)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetIsrouting(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1890,6 +2586,14 @@
 	p.p["isrouting"] = v
 }
 
+func (p *RegisterTemplateParams) GetIsrouting() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrouting"].(bool)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1897,6 +2601,14 @@
 	p.p["name"] = v
 }
 
+func (p *RegisterTemplateParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetOstypeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1904,6 +2616,14 @@
 	p.p["ostypeid"] = v
 }
 
+func (p *RegisterTemplateParams) GetOstypeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ostypeid"].(string)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetPasswordenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1911,6 +2631,14 @@
 	p.p["passwordenabled"] = v
 }
 
+func (p *RegisterTemplateParams) GetPasswordenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["passwordenabled"].(bool)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1918,6 +2646,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *RegisterTemplateParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetRequireshvm(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1925,6 +2661,14 @@
 	p.p["requireshvm"] = v
 }
 
+func (p *RegisterTemplateParams) GetRequireshvm() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["requireshvm"].(bool)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetSshkeyenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1932,6 +2676,14 @@
 	p.p["sshkeyenabled"] = v
 }
 
+func (p *RegisterTemplateParams) GetSshkeyenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sshkeyenabled"].(bool)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetTemplatetag(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1939,6 +2691,14 @@
 	p.p["templatetag"] = v
 }
 
+func (p *RegisterTemplateParams) GetTemplatetag() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["templatetag"].(string)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1946,6 +2706,14 @@
 	p.p["url"] = v
 }
 
+func (p *RegisterTemplateParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1953,6 +2721,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *RegisterTemplateParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 func (p *RegisterTemplateParams) SetZoneids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1960,6 +2736,14 @@
 	p.p["zoneids"] = v
 }
 
+func (p *RegisterTemplateParams) GetZoneids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneids"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new RegisterTemplateParams instance,
 // as then you are sure you have configured all required params
 func (s *TemplateService) NewRegisterTemplateParams(displaytext string, format string, hypervisor string, name string, url string) *RegisterTemplateParams {
@@ -2146,6 +2930,14 @@
 	p.p["bootable"] = v
 }
 
+func (p *UpdateTemplateParams) GetBootable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bootable"].(bool)
+	return value, ok
+}
+
 func (p *UpdateTemplateParams) SetCleanupdetails(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2153,6 +2945,14 @@
 	p.p["cleanupdetails"] = v
 }
 
+func (p *UpdateTemplateParams) GetCleanupdetails() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cleanupdetails"].(bool)
+	return value, ok
+}
+
 func (p *UpdateTemplateParams) SetDetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2160,6 +2960,14 @@
 	p.p["details"] = v
 }
 
+func (p *UpdateTemplateParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *UpdateTemplateParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2167,6 +2975,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *UpdateTemplateParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *UpdateTemplateParams) SetFormat(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2174,6 +2990,14 @@
 	p.p["format"] = v
 }
 
+func (p *UpdateTemplateParams) GetFormat() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["format"].(string)
+	return value, ok
+}
+
 func (p *UpdateTemplateParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2181,6 +3005,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateTemplateParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateTemplateParams) SetIsdynamicallyscalable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2188,6 +3020,14 @@
 	p.p["isdynamicallyscalable"] = v
 }
 
+func (p *UpdateTemplateParams) GetIsdynamicallyscalable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isdynamicallyscalable"].(bool)
+	return value, ok
+}
+
 func (p *UpdateTemplateParams) SetIsrouting(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2195,6 +3035,14 @@
 	p.p["isrouting"] = v
 }
 
+func (p *UpdateTemplateParams) GetIsrouting() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrouting"].(bool)
+	return value, ok
+}
+
 func (p *UpdateTemplateParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2202,6 +3050,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateTemplateParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateTemplateParams) SetOstypeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2209,6 +3065,14 @@
 	p.p["ostypeid"] = v
 }
 
+func (p *UpdateTemplateParams) GetOstypeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ostypeid"].(string)
+	return value, ok
+}
+
 func (p *UpdateTemplateParams) SetPasswordenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2216,6 +3080,14 @@
 	p.p["passwordenabled"] = v
 }
 
+func (p *UpdateTemplateParams) GetPasswordenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["passwordenabled"].(bool)
+	return value, ok
+}
+
 func (p *UpdateTemplateParams) SetRequireshvm(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2223,6 +3095,14 @@
 	p.p["requireshvm"] = v
 }
 
+func (p *UpdateTemplateParams) GetRequireshvm() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["requireshvm"].(bool)
+	return value, ok
+}
+
 func (p *UpdateTemplateParams) SetSortkey(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2230,6 +3110,14 @@
 	p.p["sortkey"] = v
 }
 
+func (p *UpdateTemplateParams) GetSortkey() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sortkey"].(int)
+	return value, ok
+}
+
 func (p *UpdateTemplateParams) SetSshkeyenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2237,6 +3125,14 @@
 	p.p["sshkeyenabled"] = v
 }
 
+func (p *UpdateTemplateParams) GetSshkeyenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sshkeyenabled"].(bool)
+	return value, ok
+}
+
 func (p *UpdateTemplateParams) SetTemplatetype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2244,6 +3140,14 @@
 	p.p["templatetype"] = v
 }
 
+func (p *UpdateTemplateParams) GetTemplatetype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["templatetype"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateTemplateParams instance,
 // as then you are sure you have configured all required params
 func (s *TemplateService) NewUpdateTemplateParams(id string) *UpdateTemplateParams {
@@ -2391,6 +3295,14 @@
 	p.p["accounts"] = v
 }
 
+func (p *UpdateTemplatePermissionsParams) GetAccounts() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accounts"].([]string)
+	return value, ok
+}
+
 func (p *UpdateTemplatePermissionsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2398,6 +3310,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateTemplatePermissionsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateTemplatePermissionsParams) SetIsextractable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2405,6 +3325,14 @@
 	p.p["isextractable"] = v
 }
 
+func (p *UpdateTemplatePermissionsParams) GetIsextractable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isextractable"].(bool)
+	return value, ok
+}
+
 func (p *UpdateTemplatePermissionsParams) SetIsfeatured(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2412,6 +3340,14 @@
 	p.p["isfeatured"] = v
 }
 
+func (p *UpdateTemplatePermissionsParams) GetIsfeatured() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isfeatured"].(bool)
+	return value, ok
+}
+
 func (p *UpdateTemplatePermissionsParams) SetIspublic(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2419,6 +3355,14 @@
 	p.p["ispublic"] = v
 }
 
+func (p *UpdateTemplatePermissionsParams) GetIspublic() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ispublic"].(bool)
+	return value, ok
+}
+
 func (p *UpdateTemplatePermissionsParams) SetOp(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2426,6 +3370,14 @@
 	p.p["op"] = v
 }
 
+func (p *UpdateTemplatePermissionsParams) GetOp() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["op"].(string)
+	return value, ok
+}
+
 func (p *UpdateTemplatePermissionsParams) SetProjectids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2433,6 +3385,14 @@
 	p.p["projectids"] = v
 }
 
+func (p *UpdateTemplatePermissionsParams) GetProjectids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectids"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateTemplatePermissionsParams instance,
 // as then you are sure you have configured all required params
 func (s *TemplateService) NewUpdateTemplatePermissionsParams(id string) *UpdateTemplatePermissionsParams {
@@ -2528,6 +3488,14 @@
 	p.p["account"] = v
 }
 
+func (p *UpgradeRouterTemplateParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *UpgradeRouterTemplateParams) SetClusterid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2535,6 +3503,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *UpgradeRouterTemplateParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *UpgradeRouterTemplateParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2542,6 +3518,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *UpgradeRouterTemplateParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *UpgradeRouterTemplateParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2549,6 +3533,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpgradeRouterTemplateParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpgradeRouterTemplateParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2556,6 +3548,14 @@
 	p.p["podid"] = v
 }
 
+func (p *UpgradeRouterTemplateParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *UpgradeRouterTemplateParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2563,6 +3563,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *UpgradeRouterTemplateParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpgradeRouterTemplateParams instance,
 // as then you are sure you have configured all required params
 func (s *TemplateService) NewUpgradeRouterTemplateParams() *UpgradeRouterTemplateParams {
diff --git a/cloudstack/UCSService.go b/cloudstack/UCSService.go
index 9774238..d950f35 100644
--- a/cloudstack/UCSService.go
+++ b/cloudstack/UCSService.go
@@ -79,6 +79,14 @@
 	p.p["name"] = v
 }
 
+func (p *AddUcsManagerParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *AddUcsManagerParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -86,6 +94,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddUcsManagerParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddUcsManagerParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -93,6 +109,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddUcsManagerParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddUcsManagerParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -100,6 +124,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddUcsManagerParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 func (p *AddUcsManagerParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -107,6 +139,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *AddUcsManagerParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddUcsManagerParams instance,
 // as then you are sure you have configured all required params
 func (s *UCSService) NewAddUcsManagerParams(password string, url string, username string, zoneid string) *AddUcsManagerParams {
@@ -171,6 +211,14 @@
 	p.p["bladeid"] = v
 }
 
+func (p *AssociateUcsProfileToBladeParams) GetBladeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bladeid"].(string)
+	return value, ok
+}
+
 func (p *AssociateUcsProfileToBladeParams) SetProfiledn(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -178,6 +226,14 @@
 	p.p["profiledn"] = v
 }
 
+func (p *AssociateUcsProfileToBladeParams) GetProfiledn() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["profiledn"].(string)
+	return value, ok
+}
+
 func (p *AssociateUcsProfileToBladeParams) SetUcsmanagerid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -185,6 +241,14 @@
 	p.p["ucsmanagerid"] = v
 }
 
+func (p *AssociateUcsProfileToBladeParams) GetUcsmanagerid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ucsmanagerid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AssociateUcsProfileToBladeParams instance,
 // as then you are sure you have configured all required params
 func (s *UCSService) NewAssociateUcsProfileToBladeParams(bladeid string, profiledn string, ucsmanagerid string) *AssociateUcsProfileToBladeParams {
@@ -263,6 +327,14 @@
 	p.p["ucsmanagerid"] = v
 }
 
+func (p *DeleteUcsManagerParams) GetUcsmanagerid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ucsmanagerid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteUcsManagerParams instance,
 // as then you are sure you have configured all required params
 func (s *UCSService) NewDeleteUcsManagerParams(ucsmanagerid string) *DeleteUcsManagerParams {
@@ -354,6 +426,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListUcsBladesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListUcsBladesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -361,6 +441,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListUcsBladesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListUcsBladesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -368,6 +456,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListUcsBladesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListUcsBladesParams) SetUcsmanagerid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -375,6 +471,14 @@
 	p.p["ucsmanagerid"] = v
 }
 
+func (p *ListUcsBladesParams) GetUcsmanagerid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ucsmanagerid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListUcsBladesParams instance,
 // as then you are sure you have configured all required params
 func (s *UCSService) NewListUcsBladesParams(ucsmanagerid string) *ListUcsBladesParams {
@@ -450,6 +554,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListUcsManagersParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListUcsManagersParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -457,6 +569,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListUcsManagersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListUcsManagersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -464,6 +584,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListUcsManagersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListUcsManagersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -471,6 +599,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListUcsManagersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListUcsManagersParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -478,6 +614,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListUcsManagersParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListUcsManagersParams instance,
 // as then you are sure you have configured all required params
 func (s *UCSService) NewListUcsManagersParams() *ListUcsManagersParams {
@@ -631,6 +775,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListUcsProfilesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListUcsProfilesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -638,6 +790,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListUcsProfilesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListUcsProfilesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -645,6 +805,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListUcsProfilesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListUcsProfilesParams) SetUcsmanagerid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -652,6 +820,14 @@
 	p.p["ucsmanagerid"] = v
 }
 
+func (p *ListUcsProfilesParams) GetUcsmanagerid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ucsmanagerid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListUcsProfilesParams instance,
 // as then you are sure you have configured all required params
 func (s *UCSService) NewListUcsProfilesParams(ucsmanagerid string) *ListUcsProfilesParams {
diff --git a/cloudstack/UsageService.go b/cloudstack/UsageService.go
index 775751f..bfd3b17 100644
--- a/cloudstack/UsageService.go
+++ b/cloudstack/UsageService.go
@@ -85,6 +85,14 @@
 	p.p["excludezones"] = v
 }
 
+func (p *AddTrafficMonitorParams) GetExcludezones() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["excludezones"].(string)
+	return value, ok
+}
+
 func (p *AddTrafficMonitorParams) SetIncludezones(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -92,6 +100,14 @@
 	p.p["includezones"] = v
 }
 
+func (p *AddTrafficMonitorParams) GetIncludezones() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["includezones"].(string)
+	return value, ok
+}
+
 func (p *AddTrafficMonitorParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -99,6 +115,14 @@
 	p.p["url"] = v
 }
 
+func (p *AddTrafficMonitorParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *AddTrafficMonitorParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -106,6 +130,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *AddTrafficMonitorParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddTrafficMonitorParams instance,
 // as then you are sure you have configured all required params
 func (s *UsageService) NewAddTrafficMonitorParams(url string, zoneid string) *AddTrafficMonitorParams {
@@ -187,6 +219,14 @@
 	p.p["hypervnetworklabel"] = v
 }
 
+func (p *AddTrafficTypeParams) GetHypervnetworklabel() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervnetworklabel"].(string)
+	return value, ok
+}
+
 func (p *AddTrafficTypeParams) SetIsolationmethod(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -194,6 +234,14 @@
 	p.p["isolationmethod"] = v
 }
 
+func (p *AddTrafficTypeParams) GetIsolationmethod() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isolationmethod"].(string)
+	return value, ok
+}
+
 func (p *AddTrafficTypeParams) SetKvmnetworklabel(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -201,6 +249,14 @@
 	p.p["kvmnetworklabel"] = v
 }
 
+func (p *AddTrafficTypeParams) GetKvmnetworklabel() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["kvmnetworklabel"].(string)
+	return value, ok
+}
+
 func (p *AddTrafficTypeParams) SetOvm3networklabel(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -208,6 +264,14 @@
 	p.p["ovm3networklabel"] = v
 }
 
+func (p *AddTrafficTypeParams) GetOvm3networklabel() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ovm3networklabel"].(string)
+	return value, ok
+}
+
 func (p *AddTrafficTypeParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -215,6 +279,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *AddTrafficTypeParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *AddTrafficTypeParams) SetTraffictype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -222,6 +294,14 @@
 	p.p["traffictype"] = v
 }
 
+func (p *AddTrafficTypeParams) GetTraffictype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["traffictype"].(string)
+	return value, ok
+}
+
 func (p *AddTrafficTypeParams) SetVlan(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -229,6 +309,14 @@
 	p.p["vlan"] = v
 }
 
+func (p *AddTrafficTypeParams) GetVlan() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vlan"].(string)
+	return value, ok
+}
+
 func (p *AddTrafficTypeParams) SetVmwarenetworklabel(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -236,6 +324,14 @@
 	p.p["vmwarenetworklabel"] = v
 }
 
+func (p *AddTrafficTypeParams) GetVmwarenetworklabel() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vmwarenetworklabel"].(string)
+	return value, ok
+}
+
 func (p *AddTrafficTypeParams) SetXennetworklabel(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -243,6 +339,14 @@
 	p.p["xennetworklabel"] = v
 }
 
+func (p *AddTrafficTypeParams) GetXennetworklabel() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["xennetworklabel"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddTrafficTypeParams instance,
 // as then you are sure you have configured all required params
 func (s *UsageService) NewAddTrafficTypeParams(physicalnetworkid string, traffictype string) *AddTrafficTypeParams {
@@ -323,6 +427,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteTrafficMonitorParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteTrafficMonitorParams instance,
 // as then you are sure you have configured all required params
 func (s *UsageService) NewDeleteTrafficMonitorParams(id string) *DeleteTrafficMonitorParams {
@@ -403,6 +515,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteTrafficTypeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteTrafficTypeParams instance,
 // as then you are sure you have configured all required params
 func (s *UsageService) NewDeleteTrafficTypeParams(id string) *DeleteTrafficTypeParams {
@@ -477,6 +597,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *GenerateUsageRecordsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *GenerateUsageRecordsParams) SetEnddate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -484,6 +612,14 @@
 	p.p["enddate"] = v
 }
 
+func (p *GenerateUsageRecordsParams) GetEnddate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enddate"].(string)
+	return value, ok
+}
+
 func (p *GenerateUsageRecordsParams) SetStartdate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -491,6 +627,14 @@
 	p.p["startdate"] = v
 }
 
+func (p *GenerateUsageRecordsParams) GetStartdate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startdate"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new GenerateUsageRecordsParams instance,
 // as then you are sure you have configured all required params
 func (s *UsageService) NewGenerateUsageRecordsParams(enddate string, startdate string) *GenerateUsageRecordsParams {
@@ -583,6 +727,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListTrafficMonitorsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListTrafficMonitorsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -590,6 +742,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListTrafficMonitorsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListTrafficMonitorsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -597,6 +757,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListTrafficMonitorsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListTrafficMonitorsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -604,6 +772,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListTrafficMonitorsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListTrafficMonitorsParams instance,
 // as then you are sure you have configured all required params
 func (s *UsageService) NewListTrafficMonitorsParams(zoneid string) *ListTrafficMonitorsParams {
@@ -676,6 +852,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListTrafficTypeImplementorsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListTrafficTypeImplementorsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -683,6 +867,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListTrafficTypeImplementorsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListTrafficTypeImplementorsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -690,6 +882,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListTrafficTypeImplementorsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListTrafficTypeImplementorsParams) SetTraffictype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -697,6 +897,14 @@
 	p.p["traffictype"] = v
 }
 
+func (p *ListTrafficTypeImplementorsParams) GetTraffictype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["traffictype"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListTrafficTypeImplementorsParams instance,
 // as then you are sure you have configured all required params
 func (s *UsageService) NewListTrafficTypeImplementorsParams() *ListTrafficTypeImplementorsParams {
@@ -765,6 +973,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListTrafficTypesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListTrafficTypesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -772,6 +988,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListTrafficTypesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListTrafficTypesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -779,6 +1003,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListTrafficTypesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListTrafficTypesParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -786,6 +1018,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *ListTrafficTypesParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListTrafficTypesParams instance,
 // as then you are sure you have configured all required params
 func (s *UsageService) NewListTrafficTypesParams(physicalnetworkid string) *ListTrafficTypesParams {
@@ -931,6 +1171,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListUsageRecordsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListUsageRecordsParams) SetAccountid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -938,6 +1186,14 @@
 	p.p["accountid"] = v
 }
 
+func (p *ListUsageRecordsParams) GetAccountid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accountid"].(string)
+	return value, ok
+}
+
 func (p *ListUsageRecordsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -945,6 +1201,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListUsageRecordsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListUsageRecordsParams) SetEnddate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -952,6 +1216,14 @@
 	p.p["enddate"] = v
 }
 
+func (p *ListUsageRecordsParams) GetEnddate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["enddate"].(string)
+	return value, ok
+}
+
 func (p *ListUsageRecordsParams) SetIncludetags(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -959,6 +1231,14 @@
 	p.p["includetags"] = v
 }
 
+func (p *ListUsageRecordsParams) GetIncludetags() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["includetags"].(bool)
+	return value, ok
+}
+
 func (p *ListUsageRecordsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -966,6 +1246,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListUsageRecordsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListUsageRecordsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -973,6 +1261,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListUsageRecordsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListUsageRecordsParams) SetOldformat(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -980,6 +1276,14 @@
 	p.p["oldformat"] = v
 }
 
+func (p *ListUsageRecordsParams) GetOldformat() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["oldformat"].(bool)
+	return value, ok
+}
+
 func (p *ListUsageRecordsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -987,6 +1291,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListUsageRecordsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListUsageRecordsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -994,6 +1306,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListUsageRecordsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListUsageRecordsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1001,6 +1321,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListUsageRecordsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListUsageRecordsParams) SetStartdate(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1008,6 +1336,14 @@
 	p.p["startdate"] = v
 }
 
+func (p *ListUsageRecordsParams) GetStartdate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startdate"].(string)
+	return value, ok
+}
+
 func (p *ListUsageRecordsParams) SetType(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1015,6 +1351,14 @@
 	p.p["type"] = v
 }
 
+func (p *ListUsageRecordsParams) GetType() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(int64)
+	return value, ok
+}
+
 func (p *ListUsageRecordsParams) SetUsageid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1022,6 +1366,14 @@
 	p.p["usageid"] = v
 }
 
+func (p *ListUsageRecordsParams) GetUsageid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["usageid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListUsageRecordsParams instance,
 // as then you are sure you have configured all required params
 func (s *UsageService) NewListUsageRecordsParams(enddate string, startdate string) *ListUsageRecordsParams {
@@ -1188,6 +1540,14 @@
 	p.p["interval"] = v
 }
 
+func (p *RemoveRawUsageRecordsParams) GetInterval() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["interval"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new RemoveRawUsageRecordsParams instance,
 // as then you are sure you have configured all required params
 func (s *UsageService) NewRemoveRawUsageRecordsParams(interval int) *RemoveRawUsageRecordsParams {
@@ -1283,6 +1643,14 @@
 	p.p["hypervnetworklabel"] = v
 }
 
+func (p *UpdateTrafficTypeParams) GetHypervnetworklabel() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervnetworklabel"].(string)
+	return value, ok
+}
+
 func (p *UpdateTrafficTypeParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1290,6 +1658,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateTrafficTypeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateTrafficTypeParams) SetKvmnetworklabel(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1297,6 +1673,14 @@
 	p.p["kvmnetworklabel"] = v
 }
 
+func (p *UpdateTrafficTypeParams) GetKvmnetworklabel() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["kvmnetworklabel"].(string)
+	return value, ok
+}
+
 func (p *UpdateTrafficTypeParams) SetOvm3networklabel(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1304,6 +1688,14 @@
 	p.p["ovm3networklabel"] = v
 }
 
+func (p *UpdateTrafficTypeParams) GetOvm3networklabel() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ovm3networklabel"].(string)
+	return value, ok
+}
+
 func (p *UpdateTrafficTypeParams) SetVmwarenetworklabel(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1311,6 +1703,14 @@
 	p.p["vmwarenetworklabel"] = v
 }
 
+func (p *UpdateTrafficTypeParams) GetVmwarenetworklabel() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vmwarenetworklabel"].(string)
+	return value, ok
+}
+
 func (p *UpdateTrafficTypeParams) SetXennetworklabel(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1318,6 +1718,14 @@
 	p.p["xennetworklabel"] = v
 }
 
+func (p *UpdateTrafficTypeParams) GetXennetworklabel() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["xennetworklabel"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateTrafficTypeParams instance,
 // as then you are sure you have configured all required params
 func (s *UsageService) NewUpdateTrafficTypeParams(id string) *UpdateTrafficTypeParams {
diff --git a/cloudstack/UserService.go b/cloudstack/UserService.go
index 994f199..07866a7 100644
--- a/cloudstack/UserService.go
+++ b/cloudstack/UserService.go
@@ -97,6 +97,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateUserParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateUserParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -104,6 +112,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateUserParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateUserParams) SetEmail(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -111,6 +127,14 @@
 	p.p["email"] = v
 }
 
+func (p *CreateUserParams) GetEmail() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["email"].(string)
+	return value, ok
+}
+
 func (p *CreateUserParams) SetFirstname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -118,6 +142,14 @@
 	p.p["firstname"] = v
 }
 
+func (p *CreateUserParams) GetFirstname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["firstname"].(string)
+	return value, ok
+}
+
 func (p *CreateUserParams) SetLastname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -125,6 +157,14 @@
 	p.p["lastname"] = v
 }
 
+func (p *CreateUserParams) GetLastname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lastname"].(string)
+	return value, ok
+}
+
 func (p *CreateUserParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -132,6 +172,14 @@
 	p.p["password"] = v
 }
 
+func (p *CreateUserParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *CreateUserParams) SetTimezone(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -139,6 +187,14 @@
 	p.p["timezone"] = v
 }
 
+func (p *CreateUserParams) GetTimezone() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["timezone"].(string)
+	return value, ok
+}
+
 func (p *CreateUserParams) SetUserid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -146,6 +202,14 @@
 	p.p["userid"] = v
 }
 
+func (p *CreateUserParams) GetUserid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userid"].(string)
+	return value, ok
+}
+
 func (p *CreateUserParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -153,6 +217,14 @@
 	p.p["username"] = v
 }
 
+func (p *CreateUserParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateUserParams instance,
 // as then you are sure you have configured all required params
 func (s *UserService) NewCreateUserParams(account string, email string, firstname string, lastname string, password string, username string) *CreateUserParams {
@@ -234,6 +306,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteUserParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteUserParams instance,
 // as then you are sure you have configured all required params
 func (s *UserService) NewDeleteUserParams(id string) *DeleteUserParams {
@@ -314,6 +394,14 @@
 	p.p["id"] = v
 }
 
+func (p *DisableUserParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DisableUserParams instance,
 // as then you are sure you have configured all required params
 func (s *UserService) NewDisableUserParams(id string) *DisableUserParams {
@@ -406,6 +494,14 @@
 	p.p["id"] = v
 }
 
+func (p *EnableUserParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new EnableUserParams instance,
 // as then you are sure you have configured all required params
 func (s *UserService) NewEnableUserParams(id string) *EnableUserParams {
@@ -482,6 +578,14 @@
 	p.p["userapikey"] = v
 }
 
+func (p *GetUserParams) GetUserapikey() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userapikey"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new GetUserParams instance,
 // as then you are sure you have configured all required params
 func (s *UserService) NewGetUserParams(userapikey string) *GetUserParams {
@@ -554,6 +658,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *GetVirtualMachineUserDataParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new GetVirtualMachineUserDataParams instance,
 // as then you are sure you have configured all required params
 func (s *UserService) NewGetVirtualMachineUserDataParams(virtualmachineid string) *GetVirtualMachineUserDataParams {
@@ -646,6 +758,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListUsersParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListUsersParams) SetAccounttype(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -653,6 +773,14 @@
 	p.p["accounttype"] = v
 }
 
+func (p *ListUsersParams) GetAccounttype() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["accounttype"].(int64)
+	return value, ok
+}
+
 func (p *ListUsersParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -660,6 +788,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListUsersParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListUsersParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -667,6 +803,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListUsersParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListUsersParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -674,6 +818,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListUsersParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListUsersParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -681,6 +833,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListUsersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListUsersParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -688,6 +848,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListUsersParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListUsersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -695,6 +863,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListUsersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListUsersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -702,6 +878,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListUsersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListUsersParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -709,6 +893,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListUsersParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListUsersParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -716,6 +908,14 @@
 	p.p["username"] = v
 }
 
+func (p *ListUsersParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListUsersParams instance,
 // as then you are sure you have configured all required params
 func (s *UserService) NewListUsersParams() *ListUsersParams {
@@ -825,6 +1025,14 @@
 	p.p["id"] = v
 }
 
+func (p *LockUserParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new LockUserParams instance,
 // as then you are sure you have configured all required params
 func (s *UserService) NewLockUserParams(id string) *LockUserParams {
@@ -901,6 +1109,14 @@
 	p.p["id"] = v
 }
 
+func (p *RegisterUserKeysParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RegisterUserKeysParams instance,
 // as then you are sure you have configured all required params
 func (s *UserService) NewRegisterUserKeysParams(id string) *RegisterUserKeysParams {
@@ -985,6 +1201,14 @@
 	p.p["currentpassword"] = v
 }
 
+func (p *UpdateUserParams) GetCurrentpassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["currentpassword"].(string)
+	return value, ok
+}
+
 func (p *UpdateUserParams) SetEmail(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -992,6 +1216,14 @@
 	p.p["email"] = v
 }
 
+func (p *UpdateUserParams) GetEmail() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["email"].(string)
+	return value, ok
+}
+
 func (p *UpdateUserParams) SetFirstname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -999,6 +1231,14 @@
 	p.p["firstname"] = v
 }
 
+func (p *UpdateUserParams) GetFirstname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["firstname"].(string)
+	return value, ok
+}
+
 func (p *UpdateUserParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1006,6 +1246,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateUserParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateUserParams) SetLastname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1013,6 +1261,14 @@
 	p.p["lastname"] = v
 }
 
+func (p *UpdateUserParams) GetLastname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["lastname"].(string)
+	return value, ok
+}
+
 func (p *UpdateUserParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1020,6 +1276,14 @@
 	p.p["password"] = v
 }
 
+func (p *UpdateUserParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *UpdateUserParams) SetTimezone(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1027,6 +1291,14 @@
 	p.p["timezone"] = v
 }
 
+func (p *UpdateUserParams) GetTimezone() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["timezone"].(string)
+	return value, ok
+}
+
 func (p *UpdateUserParams) SetUserapikey(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1034,6 +1306,14 @@
 	p.p["userapikey"] = v
 }
 
+func (p *UpdateUserParams) GetUserapikey() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userapikey"].(string)
+	return value, ok
+}
+
 func (p *UpdateUserParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1041,6 +1321,14 @@
 	p.p["username"] = v
 }
 
+func (p *UpdateUserParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 func (p *UpdateUserParams) SetUsersecretkey(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1048,6 +1336,14 @@
 	p.p["usersecretkey"] = v
 }
 
+func (p *UpdateUserParams) GetUsersecretkey() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["usersecretkey"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateUserParams instance,
 // as then you are sure you have configured all required params
 func (s *UserService) NewUpdateUserParams(id string) *UpdateUserParams {
diff --git a/cloudstack/VLANService.go b/cloudstack/VLANService.go
index b983a26..6bba302 100644
--- a/cloudstack/VLANService.go
+++ b/cloudstack/VLANService.go
@@ -119,6 +119,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -126,6 +134,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetEndip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -133,6 +149,14 @@
 	p.p["endip"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetEndip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endip"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetEndipv6(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -140,6 +164,14 @@
 	p.p["endipv6"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetEndipv6() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["endipv6"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetForsystemvms(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -147,6 +179,14 @@
 	p.p["forsystemvms"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetForsystemvms() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forsystemvms"].(bool)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetForvirtualnetwork(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -154,6 +194,14 @@
 	p.p["forvirtualnetwork"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetForvirtualnetwork() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forvirtualnetwork"].(bool)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetGateway(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -161,6 +209,14 @@
 	p.p["gateway"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetGateway() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gateway"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetIp6cidr(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -168,6 +224,14 @@
 	p.p["ip6cidr"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetIp6cidr() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ip6cidr"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetIp6gateway(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -175,6 +239,14 @@
 	p.p["ip6gateway"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetIp6gateway() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ip6gateway"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetNetmask(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -182,6 +254,14 @@
 	p.p["netmask"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetNetmask() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["netmask"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -189,6 +269,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -196,6 +284,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -203,6 +299,14 @@
 	p.p["podid"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -210,6 +314,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetStartip(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -217,6 +329,14 @@
 	p.p["startip"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetStartip() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startip"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetStartipv6(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -224,6 +344,14 @@
 	p.p["startipv6"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetStartipv6() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startipv6"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetVlan(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -231,6 +359,14 @@
 	p.p["vlan"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetVlan() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vlan"].(string)
+	return value, ok
+}
+
 func (p *CreateVlanIpRangeParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -238,6 +374,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreateVlanIpRangeParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateVlanIpRangeParams instance,
 // as then you are sure you have configured all required params
 func (s *VLANService) NewCreateVlanIpRangeParams() *CreateVlanIpRangeParams {
@@ -323,6 +467,14 @@
 	p.p["account"] = v
 }
 
+func (p *DedicateGuestVlanRangeParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *DedicateGuestVlanRangeParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -330,6 +482,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *DedicateGuestVlanRangeParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *DedicateGuestVlanRangeParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -337,6 +497,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *DedicateGuestVlanRangeParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *DedicateGuestVlanRangeParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -344,6 +512,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *DedicateGuestVlanRangeParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *DedicateGuestVlanRangeParams) SetVlanrange(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -351,6 +527,14 @@
 	p.p["vlanrange"] = v
 }
 
+func (p *DedicateGuestVlanRangeParams) GetVlanrange() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vlanrange"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DedicateGuestVlanRangeParams instance,
 // as then you are sure you have configured all required params
 func (s *VLANService) NewDedicateGuestVlanRangeParams(physicalnetworkid string, vlanrange string) *DedicateGuestVlanRangeParams {
@@ -416,6 +600,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteVlanIpRangeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteVlanIpRangeParams instance,
 // as then you are sure you have configured all required params
 func (s *VLANService) NewDeleteVlanIpRangeParams(id string) *DeleteVlanIpRangeParams {
@@ -525,6 +717,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListDedicatedGuestVlanRangesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedGuestVlanRangesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -532,6 +732,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListDedicatedGuestVlanRangesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedGuestVlanRangesParams) SetGuestvlanrange(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -539,6 +747,14 @@
 	p.p["guestvlanrange"] = v
 }
 
+func (p *ListDedicatedGuestVlanRangesParams) GetGuestvlanrange() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["guestvlanrange"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedGuestVlanRangesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -546,6 +762,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListDedicatedGuestVlanRangesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedGuestVlanRangesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -553,6 +777,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListDedicatedGuestVlanRangesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedGuestVlanRangesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -560,6 +792,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListDedicatedGuestVlanRangesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListDedicatedGuestVlanRangesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -567,6 +807,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListDedicatedGuestVlanRangesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListDedicatedGuestVlanRangesParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -574,6 +822,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *ListDedicatedGuestVlanRangesParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedGuestVlanRangesParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -581,6 +837,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListDedicatedGuestVlanRangesParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedGuestVlanRangesParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -588,6 +852,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListDedicatedGuestVlanRangesParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListDedicatedGuestVlanRangesParams instance,
 // as then you are sure you have configured all required params
 func (s *VLANService) NewListDedicatedGuestVlanRangesParams() *ListDedicatedGuestVlanRangesParams {
@@ -724,6 +996,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListVlanIpRangesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListVlanIpRangesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -731,6 +1011,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListVlanIpRangesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListVlanIpRangesParams) SetForvirtualnetwork(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -738,6 +1026,14 @@
 	p.p["forvirtualnetwork"] = v
 }
 
+func (p *ListVlanIpRangesParams) GetForvirtualnetwork() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forvirtualnetwork"].(bool)
+	return value, ok
+}
+
 func (p *ListVlanIpRangesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -745,6 +1041,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListVlanIpRangesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListVlanIpRangesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -752,6 +1056,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListVlanIpRangesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListVlanIpRangesParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -759,6 +1071,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListVlanIpRangesParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListVlanIpRangesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -766,6 +1086,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListVlanIpRangesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListVlanIpRangesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -773,6 +1101,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListVlanIpRangesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListVlanIpRangesParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -780,6 +1116,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *ListVlanIpRangesParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *ListVlanIpRangesParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -787,6 +1131,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListVlanIpRangesParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *ListVlanIpRangesParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -794,6 +1146,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListVlanIpRangesParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListVlanIpRangesParams) SetVlan(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -801,6 +1161,14 @@
 	p.p["vlan"] = v
 }
 
+func (p *ListVlanIpRangesParams) GetVlan() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vlan"].(string)
+	return value, ok
+}
+
 func (p *ListVlanIpRangesParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -808,6 +1176,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListVlanIpRangesParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListVlanIpRangesParams instance,
 // as then you are sure you have configured all required params
 func (s *VLANService) NewListVlanIpRangesParams() *ListVlanIpRangesParams {
@@ -919,6 +1295,14 @@
 	p.p["id"] = v
 }
 
+func (p *ReleaseDedicatedGuestVlanRangeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ReleaseDedicatedGuestVlanRangeParams instance,
 // as then you are sure you have configured all required params
 func (s *VLANService) NewReleaseDedicatedGuestVlanRangeParams(id string) *ReleaseDedicatedGuestVlanRangeParams {
diff --git a/cloudstack/VMGroupService.go b/cloudstack/VMGroupService.go
index cf92b44..1ac999a 100644
--- a/cloudstack/VMGroupService.go
+++ b/cloudstack/VMGroupService.go
@@ -72,6 +72,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateInstanceGroupParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateInstanceGroupParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -79,6 +87,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateInstanceGroupParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateInstanceGroupParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -86,6 +102,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateInstanceGroupParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateInstanceGroupParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -93,6 +117,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *CreateInstanceGroupParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateInstanceGroupParams instance,
 // as then you are sure you have configured all required params
 func (s *VMGroupService) NewCreateInstanceGroupParams(name string) *CreateInstanceGroupParams {
@@ -152,6 +184,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteInstanceGroupParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteInstanceGroupParams instance,
 // as then you are sure you have configured all required params
 func (s *VMGroupService) NewDeleteInstanceGroupParams(id string) *DeleteInstanceGroupParams {
@@ -263,6 +303,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListInstanceGroupsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListInstanceGroupsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -270,6 +318,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListInstanceGroupsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListInstanceGroupsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -277,6 +333,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListInstanceGroupsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListInstanceGroupsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -284,6 +348,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListInstanceGroupsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListInstanceGroupsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -291,6 +363,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListInstanceGroupsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListInstanceGroupsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -298,6 +378,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListInstanceGroupsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListInstanceGroupsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -305,6 +393,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListInstanceGroupsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListInstanceGroupsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -312,6 +408,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListInstanceGroupsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListInstanceGroupsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -319,6 +423,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListInstanceGroupsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListInstanceGroupsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -326,6 +438,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListInstanceGroupsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListInstanceGroupsParams instance,
 // as then you are sure you have configured all required params
 func (s *VMGroupService) NewListInstanceGroupsParams() *ListInstanceGroupsParams {
@@ -475,6 +595,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateInstanceGroupParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateInstanceGroupParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -482,6 +610,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateInstanceGroupParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateInstanceGroupParams instance,
 // as then you are sure you have configured all required params
 func (s *VMGroupService) NewUpdateInstanceGroupParams(id string) *UpdateInstanceGroupParams {
diff --git a/cloudstack/VPCService.go b/cloudstack/VPCService.go
index 8a5799d..b91c928 100644
--- a/cloudstack/VPCService.go
+++ b/cloudstack/VPCService.go
@@ -119,6 +119,14 @@
 	p.p["aclid"] = v
 }
 
+func (p *CreatePrivateGatewayParams) GetAclid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["aclid"].(string)
+	return value, ok
+}
+
 func (p *CreatePrivateGatewayParams) SetBypassvlanoverlapcheck(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -126,6 +134,14 @@
 	p.p["bypassvlanoverlapcheck"] = v
 }
 
+func (p *CreatePrivateGatewayParams) GetBypassvlanoverlapcheck() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bypassvlanoverlapcheck"].(bool)
+	return value, ok
+}
+
 func (p *CreatePrivateGatewayParams) SetGateway(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -133,6 +149,14 @@
 	p.p["gateway"] = v
 }
 
+func (p *CreatePrivateGatewayParams) GetGateway() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gateway"].(string)
+	return value, ok
+}
+
 func (p *CreatePrivateGatewayParams) SetIpaddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -140,6 +164,14 @@
 	p.p["ipaddress"] = v
 }
 
+func (p *CreatePrivateGatewayParams) GetIpaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddress"].(string)
+	return value, ok
+}
+
 func (p *CreatePrivateGatewayParams) SetNetmask(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -147,6 +179,14 @@
 	p.p["netmask"] = v
 }
 
+func (p *CreatePrivateGatewayParams) GetNetmask() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["netmask"].(string)
+	return value, ok
+}
+
 func (p *CreatePrivateGatewayParams) SetNetworkofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -154,6 +194,14 @@
 	p.p["networkofferingid"] = v
 }
 
+func (p *CreatePrivateGatewayParams) GetNetworkofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkofferingid"].(string)
+	return value, ok
+}
+
 func (p *CreatePrivateGatewayParams) SetPhysicalnetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -161,6 +209,14 @@
 	p.p["physicalnetworkid"] = v
 }
 
+func (p *CreatePrivateGatewayParams) GetPhysicalnetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["physicalnetworkid"].(string)
+	return value, ok
+}
+
 func (p *CreatePrivateGatewayParams) SetSourcenatsupported(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -168,6 +224,14 @@
 	p.p["sourcenatsupported"] = v
 }
 
+func (p *CreatePrivateGatewayParams) GetSourcenatsupported() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sourcenatsupported"].(bool)
+	return value, ok
+}
+
 func (p *CreatePrivateGatewayParams) SetVlan(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -175,6 +239,14 @@
 	p.p["vlan"] = v
 }
 
+func (p *CreatePrivateGatewayParams) GetVlan() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vlan"].(string)
+	return value, ok
+}
+
 func (p *CreatePrivateGatewayParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -182,6 +254,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *CreatePrivateGatewayParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreatePrivateGatewayParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewCreatePrivateGatewayParams(gateway string, ipaddress string, netmask string, vlan string, vpcid string) *CreatePrivateGatewayParams {
@@ -279,6 +359,14 @@
 	p.p["cidr"] = v
 }
 
+func (p *CreateStaticRouteParams) GetCidr() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cidr"].(string)
+	return value, ok
+}
+
 func (p *CreateStaticRouteParams) SetGatewayid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -286,6 +374,14 @@
 	p.p["gatewayid"] = v
 }
 
+func (p *CreateStaticRouteParams) GetGatewayid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gatewayid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateStaticRouteParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewCreateStaticRouteParams(cidr string, gatewayid string) *CreateStaticRouteParams {
@@ -401,6 +497,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateVPCParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateVPCParams) SetCidr(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -408,6 +512,14 @@
 	p.p["cidr"] = v
 }
 
+func (p *CreateVPCParams) GetCidr() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cidr"].(string)
+	return value, ok
+}
+
 func (p *CreateVPCParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -415,6 +527,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *CreateVPCParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *CreateVPCParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -422,6 +542,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateVPCParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateVPCParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -429,6 +557,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateVPCParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateVPCParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -436,6 +572,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateVPCParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateVPCParams) SetNetworkdomain(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -443,6 +587,14 @@
 	p.p["networkdomain"] = v
 }
 
+func (p *CreateVPCParams) GetNetworkdomain() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkdomain"].(string)
+	return value, ok
+}
+
 func (p *CreateVPCParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -450,6 +602,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *CreateVPCParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *CreateVPCParams) SetStart(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -457,6 +617,14 @@
 	p.p["start"] = v
 }
 
+func (p *CreateVPCParams) GetStart() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["start"].(bool)
+	return value, ok
+}
+
 func (p *CreateVPCParams) SetVpcofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -464,6 +632,14 @@
 	p.p["vpcofferingid"] = v
 }
 
+func (p *CreateVPCParams) GetVpcofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcofferingid"].(string)
+	return value, ok
+}
+
 func (p *CreateVPCParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -471,6 +647,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreateVPCParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateVPCParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewCreateVPCParams(cidr string, displaytext string, name string, vpcofferingid string, zoneid string) *CreateVPCParams {
@@ -702,6 +886,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *CreateVPCOfferingParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *CreateVPCOfferingParams) SetDomainid(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -709,6 +901,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateVPCOfferingParams) GetDomainid() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].([]string)
+	return value, ok
+}
+
 func (p *CreateVPCOfferingParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -716,6 +916,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateVPCOfferingParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateVPCOfferingParams) SetServicecapabilitylist(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -723,6 +931,14 @@
 	p.p["servicecapabilitylist"] = v
 }
 
+func (p *CreateVPCOfferingParams) GetServicecapabilitylist() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["servicecapabilitylist"].(map[string]string)
+	return value, ok
+}
+
 func (p *CreateVPCOfferingParams) SetServiceofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -730,6 +946,14 @@
 	p.p["serviceofferingid"] = v
 }
 
+func (p *CreateVPCOfferingParams) GetServiceofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceofferingid"].(string)
+	return value, ok
+}
+
 func (p *CreateVPCOfferingParams) SetServiceproviderlist(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -737,6 +961,14 @@
 	p.p["serviceproviderlist"] = v
 }
 
+func (p *CreateVPCOfferingParams) GetServiceproviderlist() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceproviderlist"].(map[string]string)
+	return value, ok
+}
+
 func (p *CreateVPCOfferingParams) SetSupportedservices(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -744,6 +976,14 @@
 	p.p["supportedservices"] = v
 }
 
+func (p *CreateVPCOfferingParams) GetSupportedservices() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["supportedservices"].([]string)
+	return value, ok
+}
+
 func (p *CreateVPCOfferingParams) SetZoneid(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -751,6 +991,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreateVPCOfferingParams) GetZoneid() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateVPCOfferingParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewCreateVPCOfferingParams(displaytext string, name string, supportedservices []string) *CreateVPCOfferingParams {
@@ -859,6 +1107,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeletePrivateGatewayParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeletePrivateGatewayParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewDeletePrivateGatewayParams(id string) *DeletePrivateGatewayParams {
@@ -927,6 +1183,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteStaticRouteParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteStaticRouteParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewDeleteStaticRouteParams(id string) *DeleteStaticRouteParams {
@@ -995,6 +1259,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteVPCParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteVPCParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewDeleteVPCParams(id string) *DeleteVPCParams {
@@ -1063,6 +1335,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteVPCOfferingParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteVPCOfferingParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewDeleteVPCOfferingParams(id string) *DeleteVPCOfferingParams {
@@ -1171,6 +1451,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListPrivateGatewaysParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListPrivateGatewaysParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1178,6 +1466,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListPrivateGatewaysParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListPrivateGatewaysParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1185,6 +1481,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListPrivateGatewaysParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListPrivateGatewaysParams) SetIpaddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1192,6 +1496,14 @@
 	p.p["ipaddress"] = v
 }
 
+func (p *ListPrivateGatewaysParams) GetIpaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddress"].(string)
+	return value, ok
+}
+
 func (p *ListPrivateGatewaysParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1199,6 +1511,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListPrivateGatewaysParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListPrivateGatewaysParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1206,6 +1526,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListPrivateGatewaysParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListPrivateGatewaysParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1213,6 +1541,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListPrivateGatewaysParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListPrivateGatewaysParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1220,6 +1556,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListPrivateGatewaysParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListPrivateGatewaysParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1227,6 +1571,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListPrivateGatewaysParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListPrivateGatewaysParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1234,6 +1586,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListPrivateGatewaysParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListPrivateGatewaysParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1241,6 +1601,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListPrivateGatewaysParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListPrivateGatewaysParams) SetVlan(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1248,6 +1616,14 @@
 	p.p["vlan"] = v
 }
 
+func (p *ListPrivateGatewaysParams) GetVlan() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vlan"].(string)
+	return value, ok
+}
+
 func (p *ListPrivateGatewaysParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1255,6 +1631,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *ListPrivateGatewaysParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListPrivateGatewaysParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewListPrivateGatewaysParams() *ListPrivateGatewaysParams {
@@ -1406,6 +1790,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListStaticRoutesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListStaticRoutesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1413,6 +1805,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListStaticRoutesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListStaticRoutesParams) SetGatewayid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1420,6 +1820,14 @@
 	p.p["gatewayid"] = v
 }
 
+func (p *ListStaticRoutesParams) GetGatewayid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gatewayid"].(string)
+	return value, ok
+}
+
 func (p *ListStaticRoutesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1427,6 +1835,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListStaticRoutesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListStaticRoutesParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1434,6 +1850,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListStaticRoutesParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListStaticRoutesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1441,6 +1865,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListStaticRoutesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListStaticRoutesParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1448,6 +1880,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListStaticRoutesParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListStaticRoutesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1455,6 +1895,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListStaticRoutesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListStaticRoutesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1462,6 +1910,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListStaticRoutesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListStaticRoutesParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1469,6 +1925,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListStaticRoutesParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListStaticRoutesParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1476,6 +1940,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListStaticRoutesParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListStaticRoutesParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1483,6 +1955,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListStaticRoutesParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListStaticRoutesParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1490,6 +1970,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *ListStaticRoutesParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListStaticRoutesParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewListStaticRoutesParams() *ListStaticRoutesParams {
@@ -1620,6 +2108,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *ListVPCOfferingsParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *ListVPCOfferingsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1627,6 +2123,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListVPCOfferingsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListVPCOfferingsParams) SetIsdefault(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1634,6 +2138,14 @@
 	p.p["isdefault"] = v
 }
 
+func (p *ListVPCOfferingsParams) GetIsdefault() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isdefault"].(bool)
+	return value, ok
+}
+
 func (p *ListVPCOfferingsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1641,6 +2153,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListVPCOfferingsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListVPCOfferingsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1648,6 +2168,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListVPCOfferingsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListVPCOfferingsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1655,6 +2183,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListVPCOfferingsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListVPCOfferingsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1662,6 +2198,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListVPCOfferingsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListVPCOfferingsParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1669,6 +2213,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListVPCOfferingsParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListVPCOfferingsParams) SetSupportedservices(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1676,6 +2228,14 @@
 	p.p["supportedservices"] = v
 }
 
+func (p *ListVPCOfferingsParams) GetSupportedservices() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["supportedservices"].([]string)
+	return value, ok
+}
+
 func (p *ListVPCOfferingsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1683,6 +2243,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListVPCOfferingsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListVPCOfferingsParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewListVPCOfferingsParams() *ListVPCOfferingsParams {
@@ -1921,6 +2489,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListVPCsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetCidr(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1928,6 +2504,14 @@
 	p.p["cidr"] = v
 }
 
+func (p *ListVPCsParams) GetCidr() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cidr"].(string)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1935,6 +2519,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *ListVPCsParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1942,6 +2534,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListVPCsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1949,6 +2549,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListVPCsParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1956,6 +2564,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListVPCsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1963,6 +2579,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListVPCsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1970,6 +2594,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListVPCsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1977,6 +2609,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListVPCsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1984,6 +2624,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListVPCsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1991,6 +2639,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListVPCsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1998,6 +2654,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListVPCsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2005,6 +2669,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListVPCsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetRestartrequired(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2012,6 +2684,14 @@
 	p.p["restartrequired"] = v
 }
 
+func (p *ListVPCsParams) GetRestartrequired() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["restartrequired"].(bool)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2019,6 +2699,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListVPCsParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetSupportedservices(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2026,6 +2714,14 @@
 	p.p["supportedservices"] = v
 }
 
+func (p *ListVPCsParams) GetSupportedservices() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["supportedservices"].([]string)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2033,6 +2729,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListVPCsParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetVpcofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2040,6 +2744,14 @@
 	p.p["vpcofferingid"] = v
 }
 
+func (p *ListVPCsParams) GetVpcofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcofferingid"].(string)
+	return value, ok
+}
+
 func (p *ListVPCsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2047,6 +2759,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListVPCsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListVPCsParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewListVPCsParams() *ListVPCsParams {
@@ -2317,6 +3037,14 @@
 	p.p["cleanup"] = v
 }
 
+func (p *RestartVPCParams) GetCleanup() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cleanup"].(bool)
+	return value, ok
+}
+
 func (p *RestartVPCParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2324,6 +3052,14 @@
 	p.p["id"] = v
 }
 
+func (p *RestartVPCParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *RestartVPCParams) SetMakeredundant(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2331,6 +3067,14 @@
 	p.p["makeredundant"] = v
 }
 
+func (p *RestartVPCParams) GetMakeredundant() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["makeredundant"].(bool)
+	return value, ok
+}
+
 // You should always use this function to get a new RestartVPCParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewRestartVPCParams(id string) *RestartVPCParams {
@@ -2539,6 +3283,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateVPCParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateVPCParams) SetDisplaytext(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2546,6 +3298,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *UpdateVPCParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *UpdateVPCParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2553,6 +3313,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateVPCParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateVPCParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2560,6 +3328,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateVPCParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateVPCParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2567,6 +3343,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateVPCParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateVPCParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewUpdateVPCParams(id string) *UpdateVPCParams {
@@ -2781,6 +3565,14 @@
 	p.p["displaytext"] = v
 }
 
+func (p *UpdateVPCOfferingParams) GetDisplaytext() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displaytext"].(string)
+	return value, ok
+}
+
 func (p *UpdateVPCOfferingParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2788,6 +3580,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *UpdateVPCOfferingParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *UpdateVPCOfferingParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2795,6 +3595,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateVPCOfferingParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateVPCOfferingParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2802,6 +3610,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateVPCOfferingParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateVPCOfferingParams) SetSortkey(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2809,6 +3625,14 @@
 	p.p["sortkey"] = v
 }
 
+func (p *UpdateVPCOfferingParams) GetSortkey() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sortkey"].(int)
+	return value, ok
+}
+
 func (p *UpdateVPCOfferingParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2816,6 +3640,14 @@
 	p.p["state"] = v
 }
 
+func (p *UpdateVPCOfferingParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *UpdateVPCOfferingParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2823,6 +3655,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *UpdateVPCOfferingParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateVPCOfferingParams instance,
 // as then you are sure you have configured all required params
 func (s *VPCService) NewUpdateVPCOfferingParams(id string) *UpdateVPCOfferingParams {
diff --git a/cloudstack/VPNService.go b/cloudstack/VPNService.go
index 0bedea9..04de5ce 100644
--- a/cloudstack/VPNService.go
+++ b/cloudstack/VPNService.go
@@ -111,6 +111,14 @@
 	p.p["account"] = v
 }
 
+func (p *AddVpnUserParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *AddVpnUserParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -118,6 +126,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *AddVpnUserParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *AddVpnUserParams) SetPassword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -125,6 +141,14 @@
 	p.p["password"] = v
 }
 
+func (p *AddVpnUserParams) GetPassword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["password"].(string)
+	return value, ok
+}
+
 func (p *AddVpnUserParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -132,6 +156,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *AddVpnUserParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *AddVpnUserParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -139,6 +171,14 @@
 	p.p["username"] = v
 }
 
+func (p *AddVpnUserParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddVpnUserParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewAddVpnUserParams(password string, username string) *AddVpnUserParams {
@@ -236,6 +276,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateRemoteAccessVpnParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateRemoteAccessVpnParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -243,6 +291,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateRemoteAccessVpnParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateRemoteAccessVpnParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -250,6 +306,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateRemoteAccessVpnParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateRemoteAccessVpnParams) SetIprange(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -257,6 +321,14 @@
 	p.p["iprange"] = v
 }
 
+func (p *CreateRemoteAccessVpnParams) GetIprange() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iprange"].(string)
+	return value, ok
+}
+
 func (p *CreateRemoteAccessVpnParams) SetOpenfirewall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -264,6 +336,14 @@
 	p.p["openfirewall"] = v
 }
 
+func (p *CreateRemoteAccessVpnParams) GetOpenfirewall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["openfirewall"].(bool)
+	return value, ok
+}
+
 func (p *CreateRemoteAccessVpnParams) SetPublicipid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -271,6 +351,14 @@
 	p.p["publicipid"] = v
 }
 
+func (p *CreateRemoteAccessVpnParams) GetPublicipid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["publicipid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateRemoteAccessVpnParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewCreateRemoteAccessVpnParams(publicipid string) *CreateRemoteAccessVpnParams {
@@ -365,6 +453,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateVpnConnectionParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateVpnConnectionParams) SetPassive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -372,6 +468,14 @@
 	p.p["passive"] = v
 }
 
+func (p *CreateVpnConnectionParams) GetPassive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["passive"].(bool)
+	return value, ok
+}
+
 func (p *CreateVpnConnectionParams) SetS2scustomergatewayid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -379,6 +483,14 @@
 	p.p["s2scustomergatewayid"] = v
 }
 
+func (p *CreateVpnConnectionParams) GetS2scustomergatewayid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["s2scustomergatewayid"].(string)
+	return value, ok
+}
+
 func (p *CreateVpnConnectionParams) SetS2svpngatewayid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -386,6 +498,14 @@
 	p.p["s2svpngatewayid"] = v
 }
 
+func (p *CreateVpnConnectionParams) GetS2svpngatewayid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["s2svpngatewayid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateVpnConnectionParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewCreateVpnConnectionParams(s2scustomergatewayid string, s2svpngatewayid string) *CreateVpnConnectionParams {
@@ -530,6 +650,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateVpnCustomerGatewayParams) SetCidrlist(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -537,6 +665,14 @@
 	p.p["cidrlist"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetCidrlist() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cidrlist"].(string)
+	return value, ok
+}
+
 func (p *CreateVpnCustomerGatewayParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -544,6 +680,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateVpnCustomerGatewayParams) SetDpd(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -551,6 +695,14 @@
 	p.p["dpd"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetDpd() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["dpd"].(bool)
+	return value, ok
+}
+
 func (p *CreateVpnCustomerGatewayParams) SetEsplifetime(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -558,6 +710,14 @@
 	p.p["esplifetime"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetEsplifetime() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["esplifetime"].(int64)
+	return value, ok
+}
+
 func (p *CreateVpnCustomerGatewayParams) SetEsppolicy(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -565,6 +725,14 @@
 	p.p["esppolicy"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetEsppolicy() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["esppolicy"].(string)
+	return value, ok
+}
+
 func (p *CreateVpnCustomerGatewayParams) SetForceencap(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -572,6 +740,14 @@
 	p.p["forceencap"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetForceencap() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forceencap"].(bool)
+	return value, ok
+}
+
 func (p *CreateVpnCustomerGatewayParams) SetGateway(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -579,6 +755,14 @@
 	p.p["gateway"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetGateway() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gateway"].(string)
+	return value, ok
+}
+
 func (p *CreateVpnCustomerGatewayParams) SetIkelifetime(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -586,6 +770,14 @@
 	p.p["ikelifetime"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetIkelifetime() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ikelifetime"].(int64)
+	return value, ok
+}
+
 func (p *CreateVpnCustomerGatewayParams) SetIkepolicy(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -593,6 +785,14 @@
 	p.p["ikepolicy"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetIkepolicy() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ikepolicy"].(string)
+	return value, ok
+}
+
 func (p *CreateVpnCustomerGatewayParams) SetIkeversion(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -600,6 +800,14 @@
 	p.p["ikeversion"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetIkeversion() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ikeversion"].(string)
+	return value, ok
+}
+
 func (p *CreateVpnCustomerGatewayParams) SetIpsecpsk(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -607,6 +815,14 @@
 	p.p["ipsecpsk"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetIpsecpsk() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipsecpsk"].(string)
+	return value, ok
+}
+
 func (p *CreateVpnCustomerGatewayParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -614,6 +830,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateVpnCustomerGatewayParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -621,6 +845,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *CreateVpnCustomerGatewayParams) SetSplitconnections(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -628,6 +860,14 @@
 	p.p["splitconnections"] = v
 }
 
+func (p *CreateVpnCustomerGatewayParams) GetSplitconnections() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["splitconnections"].(bool)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateVpnCustomerGatewayParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewCreateVpnCustomerGatewayParams(cidrlist string, esppolicy string, gateway string, ikepolicy string, ipsecpsk string) *CreateVpnCustomerGatewayParams {
@@ -727,6 +967,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *CreateVpnGatewayParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *CreateVpnGatewayParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -734,6 +982,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *CreateVpnGatewayParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateVpnGatewayParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewCreateVpnGatewayParams(vpcid string) *CreateVpnGatewayParams {
@@ -816,6 +1072,14 @@
 	p.p["publicipid"] = v
 }
 
+func (p *DeleteRemoteAccessVpnParams) GetPublicipid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["publicipid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteRemoteAccessVpnParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewDeleteRemoteAccessVpnParams(publicipid string) *DeleteRemoteAccessVpnParams {
@@ -884,6 +1148,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteVpnConnectionParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteVpnConnectionParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewDeleteVpnConnectionParams(id string) *DeleteVpnConnectionParams {
@@ -952,6 +1224,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteVpnCustomerGatewayParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteVpnCustomerGatewayParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewDeleteVpnCustomerGatewayParams(id string) *DeleteVpnCustomerGatewayParams {
@@ -1020,6 +1300,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteVpnGatewayParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteVpnGatewayParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewDeleteVpnGatewayParams(id string) *DeleteVpnGatewayParams {
@@ -1126,6 +1414,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListRemoteAccessVpnsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListRemoteAccessVpnsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1133,6 +1429,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListRemoteAccessVpnsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListRemoteAccessVpnsParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1140,6 +1444,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListRemoteAccessVpnsParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListRemoteAccessVpnsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1147,6 +1459,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListRemoteAccessVpnsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListRemoteAccessVpnsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1154,6 +1474,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListRemoteAccessVpnsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListRemoteAccessVpnsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1161,6 +1489,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListRemoteAccessVpnsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListRemoteAccessVpnsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1168,6 +1504,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListRemoteAccessVpnsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListRemoteAccessVpnsParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1175,6 +1519,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListRemoteAccessVpnsParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListRemoteAccessVpnsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1182,6 +1534,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListRemoteAccessVpnsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListRemoteAccessVpnsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1189,6 +1549,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListRemoteAccessVpnsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListRemoteAccessVpnsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1196,6 +1564,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListRemoteAccessVpnsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListRemoteAccessVpnsParams) SetPublicipid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1203,6 +1579,14 @@
 	p.p["publicipid"] = v
 }
 
+func (p *ListRemoteAccessVpnsParams) GetPublicipid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["publicipid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListRemoteAccessVpnsParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewListRemoteAccessVpnsParams() *ListRemoteAccessVpnsParams {
@@ -1338,6 +1722,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListVpnConnectionsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListVpnConnectionsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1345,6 +1737,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListVpnConnectionsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListVpnConnectionsParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1352,6 +1752,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListVpnConnectionsParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListVpnConnectionsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1359,6 +1767,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListVpnConnectionsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListVpnConnectionsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1366,6 +1782,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListVpnConnectionsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListVpnConnectionsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1373,6 +1797,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListVpnConnectionsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListVpnConnectionsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1380,6 +1812,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListVpnConnectionsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListVpnConnectionsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1387,6 +1827,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListVpnConnectionsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListVpnConnectionsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1394,6 +1842,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListVpnConnectionsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListVpnConnectionsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1401,6 +1857,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListVpnConnectionsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListVpnConnectionsParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1408,6 +1872,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *ListVpnConnectionsParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListVpnConnectionsParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewListVpnConnectionsParams() *ListVpnConnectionsParams {
@@ -1549,6 +2021,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListVpnCustomerGatewaysParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListVpnCustomerGatewaysParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1556,6 +2036,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListVpnCustomerGatewaysParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListVpnCustomerGatewaysParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1563,6 +2051,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListVpnCustomerGatewaysParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListVpnCustomerGatewaysParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1570,6 +2066,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListVpnCustomerGatewaysParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListVpnCustomerGatewaysParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1577,6 +2081,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListVpnCustomerGatewaysParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListVpnCustomerGatewaysParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1584,6 +2096,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListVpnCustomerGatewaysParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListVpnCustomerGatewaysParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1591,6 +2111,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListVpnCustomerGatewaysParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListVpnCustomerGatewaysParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1598,6 +2126,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListVpnCustomerGatewaysParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListVpnCustomerGatewaysParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1605,6 +2141,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListVpnCustomerGatewaysParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListVpnCustomerGatewaysParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewListVpnCustomerGatewaysParams() *ListVpnCustomerGatewaysParams {
@@ -1798,6 +2342,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListVpnGatewaysParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListVpnGatewaysParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1805,6 +2357,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListVpnGatewaysParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListVpnGatewaysParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1812,6 +2372,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *ListVpnGatewaysParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *ListVpnGatewaysParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1819,6 +2387,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListVpnGatewaysParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListVpnGatewaysParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1826,6 +2402,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListVpnGatewaysParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListVpnGatewaysParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1833,6 +2417,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListVpnGatewaysParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListVpnGatewaysParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1840,6 +2432,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListVpnGatewaysParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListVpnGatewaysParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1847,6 +2447,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListVpnGatewaysParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListVpnGatewaysParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1854,6 +2462,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListVpnGatewaysParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListVpnGatewaysParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1861,6 +2477,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListVpnGatewaysParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListVpnGatewaysParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1868,6 +2492,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *ListVpnGatewaysParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListVpnGatewaysParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewListVpnGatewaysParams() *ListVpnGatewaysParams {
@@ -1998,6 +2630,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListVpnUsersParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListVpnUsersParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2005,6 +2645,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListVpnUsersParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListVpnUsersParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2012,6 +2660,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListVpnUsersParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListVpnUsersParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2019,6 +2675,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListVpnUsersParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListVpnUsersParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2026,6 +2690,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListVpnUsersParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListVpnUsersParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2033,6 +2705,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListVpnUsersParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListVpnUsersParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2040,6 +2720,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListVpnUsersParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListVpnUsersParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2047,6 +2735,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListVpnUsersParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListVpnUsersParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2054,6 +2750,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListVpnUsersParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListVpnUsersParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2061,6 +2765,14 @@
 	p.p["username"] = v
 }
 
+func (p *ListVpnUsersParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListVpnUsersParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewListVpnUsersParams() *ListVpnUsersParams {
@@ -2166,6 +2878,14 @@
 	p.p["account"] = v
 }
 
+func (p *RemoveVpnUserParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *RemoveVpnUserParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2173,6 +2893,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *RemoveVpnUserParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *RemoveVpnUserParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2180,6 +2908,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *RemoveVpnUserParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *RemoveVpnUserParams) SetUsername(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2187,6 +2923,14 @@
 	p.p["username"] = v
 }
 
+func (p *RemoveVpnUserParams) GetUsername() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["username"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RemoveVpnUserParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewRemoveVpnUserParams(username string) *RemoveVpnUserParams {
@@ -2261,6 +3005,14 @@
 	p.p["account"] = v
 }
 
+func (p *ResetVpnConnectionParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ResetVpnConnectionParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2268,6 +3020,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ResetVpnConnectionParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ResetVpnConnectionParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2275,6 +3035,14 @@
 	p.p["id"] = v
 }
 
+func (p *ResetVpnConnectionParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ResetVpnConnectionParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewResetVpnConnectionParams(id string) *ResetVpnConnectionParams {
@@ -2378,6 +3146,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateRemoteAccessVpnParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateRemoteAccessVpnParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2385,6 +3161,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateRemoteAccessVpnParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateRemoteAccessVpnParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2392,6 +3176,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateRemoteAccessVpnParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateRemoteAccessVpnParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewUpdateRemoteAccessVpnParams(id string) *UpdateRemoteAccessVpnParams {
@@ -2482,6 +3274,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateVpnConnectionParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateVpnConnectionParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2489,6 +3289,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateVpnConnectionParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateVpnConnectionParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2496,6 +3304,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateVpnConnectionParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateVpnConnectionParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewUpdateVpnConnectionParams(id string) *UpdateVpnConnectionParams {
@@ -2639,6 +3455,14 @@
 	p.p["account"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *UpdateVpnCustomerGatewayParams) SetCidrlist(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2646,6 +3470,14 @@
 	p.p["cidrlist"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetCidrlist() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cidrlist"].(string)
+	return value, ok
+}
+
 func (p *UpdateVpnCustomerGatewayParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2653,6 +3485,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *UpdateVpnCustomerGatewayParams) SetDpd(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2660,6 +3500,14 @@
 	p.p["dpd"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetDpd() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["dpd"].(bool)
+	return value, ok
+}
+
 func (p *UpdateVpnCustomerGatewayParams) SetEsplifetime(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2667,6 +3515,14 @@
 	p.p["esplifetime"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetEsplifetime() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["esplifetime"].(int64)
+	return value, ok
+}
+
 func (p *UpdateVpnCustomerGatewayParams) SetEsppolicy(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2674,6 +3530,14 @@
 	p.p["esppolicy"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetEsppolicy() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["esppolicy"].(string)
+	return value, ok
+}
+
 func (p *UpdateVpnCustomerGatewayParams) SetForceencap(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2681,6 +3545,14 @@
 	p.p["forceencap"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetForceencap() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forceencap"].(bool)
+	return value, ok
+}
+
 func (p *UpdateVpnCustomerGatewayParams) SetGateway(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2688,6 +3560,14 @@
 	p.p["gateway"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetGateway() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["gateway"].(string)
+	return value, ok
+}
+
 func (p *UpdateVpnCustomerGatewayParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2695,6 +3575,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateVpnCustomerGatewayParams) SetIkelifetime(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2702,6 +3590,14 @@
 	p.p["ikelifetime"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetIkelifetime() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ikelifetime"].(int64)
+	return value, ok
+}
+
 func (p *UpdateVpnCustomerGatewayParams) SetIkepolicy(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2709,6 +3605,14 @@
 	p.p["ikepolicy"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetIkepolicy() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ikepolicy"].(string)
+	return value, ok
+}
+
 func (p *UpdateVpnCustomerGatewayParams) SetIkeversion(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2716,6 +3620,14 @@
 	p.p["ikeversion"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetIkeversion() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ikeversion"].(string)
+	return value, ok
+}
+
 func (p *UpdateVpnCustomerGatewayParams) SetIpsecpsk(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2723,6 +3635,14 @@
 	p.p["ipsecpsk"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetIpsecpsk() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipsecpsk"].(string)
+	return value, ok
+}
+
 func (p *UpdateVpnCustomerGatewayParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2730,6 +3650,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateVpnCustomerGatewayParams) SetSplitconnections(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2737,6 +3665,14 @@
 	p.p["splitconnections"] = v
 }
 
+func (p *UpdateVpnCustomerGatewayParams) GetSplitconnections() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["splitconnections"].(bool)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateVpnCustomerGatewayParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewUpdateVpnCustomerGatewayParams(cidrlist string, esppolicy string, gateway string, id string, ikepolicy string, ipsecpsk string) *UpdateVpnCustomerGatewayParams {
@@ -2840,6 +3776,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateVpnGatewayParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateVpnGatewayParams) SetFordisplay(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2847,6 +3791,14 @@
 	p.p["fordisplay"] = v
 }
 
+func (p *UpdateVpnGatewayParams) GetFordisplay() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["fordisplay"].(bool)
+	return value, ok
+}
+
 func (p *UpdateVpnGatewayParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2854,6 +3806,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateVpnGatewayParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateVpnGatewayParams instance,
 // as then you are sure you have configured all required params
 func (s *VPNService) NewUpdateVpnGatewayParams(id string) *UpdateVpnGatewayParams {
diff --git a/cloudstack/VirtualMachineService.go b/cloudstack/VirtualMachineService.go
index 6fc0cd4..f271134 100644
--- a/cloudstack/VirtualMachineService.go
+++ b/cloudstack/VirtualMachineService.go
@@ -118,6 +118,14 @@
 	p.p["dhcpoptions"] = v
 }
 
+func (p *AddNicToVirtualMachineParams) GetDhcpoptions() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["dhcpoptions"].(map[string]string)
+	return value, ok
+}
+
 func (p *AddNicToVirtualMachineParams) SetIpaddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -125,6 +133,14 @@
 	p.p["ipaddress"] = v
 }
 
+func (p *AddNicToVirtualMachineParams) GetIpaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddress"].(string)
+	return value, ok
+}
+
 func (p *AddNicToVirtualMachineParams) SetMacaddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -132,6 +148,14 @@
 	p.p["macaddress"] = v
 }
 
+func (p *AddNicToVirtualMachineParams) GetMacaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["macaddress"].(string)
+	return value, ok
+}
+
 func (p *AddNicToVirtualMachineParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -139,6 +163,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *AddNicToVirtualMachineParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *AddNicToVirtualMachineParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -146,6 +178,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *AddNicToVirtualMachineParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AddNicToVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewAddNicToVirtualMachineParams(networkid string, virtualmachineid string) *AddNicToVirtualMachineParams {
@@ -373,6 +413,14 @@
 	p.p["account"] = v
 }
 
+func (p *AssignVirtualMachineParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *AssignVirtualMachineParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -380,6 +428,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *AssignVirtualMachineParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *AssignVirtualMachineParams) SetNetworkids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -387,6 +443,14 @@
 	p.p["networkids"] = v
 }
 
+func (p *AssignVirtualMachineParams) GetNetworkids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkids"].([]string)
+	return value, ok
+}
+
 func (p *AssignVirtualMachineParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -394,6 +458,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *AssignVirtualMachineParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *AssignVirtualMachineParams) SetSecuritygroupids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -401,6 +473,14 @@
 	p.p["securitygroupids"] = v
 }
 
+func (p *AssignVirtualMachineParams) GetSecuritygroupids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["securitygroupids"].([]string)
+	return value, ok
+}
+
 func (p *AssignVirtualMachineParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -408,6 +488,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *AssignVirtualMachineParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AssignVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewAssignVirtualMachineParams(virtualmachineid string) *AssignVirtualMachineParams {
@@ -606,6 +694,14 @@
 	p.p["details"] = v
 }
 
+func (p *ChangeServiceForVirtualMachineParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *ChangeServiceForVirtualMachineParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -613,6 +709,14 @@
 	p.p["id"] = v
 }
 
+func (p *ChangeServiceForVirtualMachineParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ChangeServiceForVirtualMachineParams) SetServiceofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -620,6 +724,14 @@
 	p.p["serviceofferingid"] = v
 }
 
+func (p *ChangeServiceForVirtualMachineParams) GetServiceofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceofferingid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ChangeServiceForVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewChangeServiceForVirtualMachineParams(id string, serviceofferingid string) *ChangeServiceForVirtualMachineParams {
@@ -1027,6 +1139,14 @@
 	p.p["account"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetAffinitygroupids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1034,6 +1154,14 @@
 	p.p["affinitygroupids"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetAffinitygroupids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["affinitygroupids"].([]string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetAffinitygroupnames(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1041,6 +1169,14 @@
 	p.p["affinitygroupnames"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetAffinitygroupnames() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["affinitygroupnames"].([]string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetBootintosetup(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1048,6 +1184,14 @@
 	p.p["bootintosetup"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetBootintosetup() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bootintosetup"].(bool)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetBootmode(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1055,6 +1199,14 @@
 	p.p["bootmode"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetBootmode() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bootmode"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetBoottype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1062,6 +1214,14 @@
 	p.p["boottype"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetBoottype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["boottype"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetClusterid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1069,6 +1229,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetCopyimagetags(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1076,6 +1244,14 @@
 	p.p["copyimagetags"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetCopyimagetags() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["copyimagetags"].(bool)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetCustomid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1083,6 +1259,14 @@
 	p.p["customid"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetDatadiskofferinglist(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1090,6 +1274,14 @@
 	p.p["datadiskofferinglist"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetDatadiskofferinglist() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["datadiskofferinglist"].(map[string]string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetDeploymentplanner(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1097,6 +1289,14 @@
 	p.p["deploymentplanner"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetDeploymentplanner() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["deploymentplanner"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetDetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1104,6 +1304,14 @@
 	p.p["details"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetDhcpoptionsnetworklist(v []map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1111,6 +1319,14 @@
 	p.p["dhcpoptionsnetworklist"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetDhcpoptionsnetworklist() ([]map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["dhcpoptionsnetworklist"].([]map[string]string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) AddDhcpoptionsnetworklist(item map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1132,6 +1348,14 @@
 	p.p["diskofferingid"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetDiskofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["diskofferingid"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetDisplayname(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1139,6 +1363,14 @@
 	p.p["displayname"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetDisplayname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displayname"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetDisplayvm(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1146,6 +1378,14 @@
 	p.p["displayvm"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetDisplayvm() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displayvm"].(bool)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1153,6 +1393,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetExtraconfig(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1160,6 +1408,14 @@
 	p.p["extraconfig"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetExtraconfig() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["extraconfig"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetGroup(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1167,6 +1423,14 @@
 	p.p["group"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetGroup() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["group"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetHostid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1174,6 +1438,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1181,6 +1453,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetIp6address(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1188,6 +1468,14 @@
 	p.p["ip6address"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetIp6address() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ip6address"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetIpaddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1195,6 +1483,14 @@
 	p.p["ipaddress"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetIpaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ipaddress"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetIptonetworklist(v []map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1202,6 +1498,14 @@
 	p.p["iptonetworklist"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetIptonetworklist() ([]map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["iptonetworklist"].([]map[string]string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) AddIptonetworklist(item map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1223,6 +1527,14 @@
 	p.p["keyboard"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetKeyboard() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyboard"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetKeypair(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1230,6 +1542,14 @@
 	p.p["keypair"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetKeypair() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keypair"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetMacaddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1237,6 +1557,14 @@
 	p.p["macaddress"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetMacaddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["macaddress"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1244,6 +1572,14 @@
 	p.p["name"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetNetworkids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1251,6 +1587,14 @@
 	p.p["networkids"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetNetworkids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkids"].([]string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetNicnetworklist(v []map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1258,6 +1602,14 @@
 	p.p["nicnetworklist"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetNicnetworklist() ([]map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nicnetworklist"].([]map[string]string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) AddNicnetworklist(item map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1279,6 +1631,14 @@
 	p.p["podid"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1286,6 +1646,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetProperties(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1293,6 +1661,14 @@
 	p.p["properties"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetProperties() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["properties"].(map[string]string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetRootdisksize(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1300,6 +1676,14 @@
 	p.p["rootdisksize"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetRootdisksize() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["rootdisksize"].(int64)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetSecuritygroupids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1307,6 +1691,14 @@
 	p.p["securitygroupids"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetSecuritygroupids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["securitygroupids"].([]string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetSecuritygroupnames(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1314,6 +1706,14 @@
 	p.p["securitygroupnames"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetSecuritygroupnames() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["securitygroupnames"].([]string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetServiceofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1321,6 +1721,14 @@
 	p.p["serviceofferingid"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetServiceofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceofferingid"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetSize(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1328,6 +1736,14 @@
 	p.p["size"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetSize() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["size"].(int64)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetStartvm(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1335,6 +1751,14 @@
 	p.p["startvm"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetStartvm() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["startvm"].(bool)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetTemplateid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1342,6 +1766,14 @@
 	p.p["templateid"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetTemplateid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["templateid"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetUserdata(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1349,6 +1781,14 @@
 	p.p["userdata"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetUserdata() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userdata"].(string)
+	return value, ok
+}
+
 func (p *DeployVirtualMachineParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1356,6 +1796,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *DeployVirtualMachineParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeployVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewDeployVirtualMachineParams(serviceofferingid string, templateid string, zoneid string) *DeployVirtualMachineParams {
@@ -1575,6 +2023,14 @@
 	p.p["expunge"] = v
 }
 
+func (p *DestroyVirtualMachineParams) GetExpunge() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["expunge"].(bool)
+	return value, ok
+}
+
 func (p *DestroyVirtualMachineParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1582,6 +2038,14 @@
 	p.p["id"] = v
 }
 
+func (p *DestroyVirtualMachineParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *DestroyVirtualMachineParams) SetVolumeids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1589,6 +2053,14 @@
 	p.p["volumeids"] = v
 }
 
+func (p *DestroyVirtualMachineParams) GetVolumeids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["volumeids"].([]string)
+	return value, ok
+}
+
 // You should always use this function to get a new DestroyVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewDestroyVirtualMachineParams(id string) *DestroyVirtualMachineParams {
@@ -1798,6 +2270,14 @@
 	p.p["id"] = v
 }
 
+func (p *ExpungeVirtualMachineParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ExpungeVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewExpungeVirtualMachineParams(id string) *ExpungeVirtualMachineParams {
@@ -1866,6 +2346,14 @@
 	p.p["id"] = v
 }
 
+func (p *GetVMPasswordParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new GetVMPasswordParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewGetVMPasswordParams(id string) *GetVMPasswordParams {
@@ -2033,6 +2521,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetAffinitygroupid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2040,6 +2536,14 @@
 	p.p["affinitygroupid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetAffinitygroupid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["affinitygroupid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetDetails(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2047,6 +2551,14 @@
 	p.p["details"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetDetails() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].([]string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetDisplayvm(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2054,6 +2566,14 @@
 	p.p["displayvm"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetDisplayvm() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displayvm"].(bool)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2061,6 +2581,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetForvirtualnetwork(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2068,6 +2596,14 @@
 	p.p["forvirtualnetwork"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetForvirtualnetwork() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forvirtualnetwork"].(bool)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetGroupid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2075,6 +2611,14 @@
 	p.p["groupid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetGroupid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["groupid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetHaenable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2082,6 +2626,14 @@
 	p.p["haenable"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetHaenable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["haenable"].(bool)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetHostid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2089,6 +2641,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2096,6 +2656,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2103,6 +2671,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetIds(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2110,6 +2686,14 @@
 	p.p["ids"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetIds() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ids"].([]string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetIsoid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2117,6 +2701,14 @@
 	p.p["isoid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetIsoid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isoid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2124,6 +2716,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetKeypair(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2131,6 +2731,14 @@
 	p.p["keypair"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetKeypair() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keypair"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2138,6 +2746,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2145,6 +2761,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2152,6 +2776,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2159,6 +2791,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2166,6 +2806,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2173,6 +2821,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2180,6 +2836,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2187,6 +2851,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetSecuritygroupid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2194,6 +2866,14 @@
 	p.p["securitygroupid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetSecuritygroupid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["securitygroupid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetServiceofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2201,6 +2881,14 @@
 	p.p["serviceofferingid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetServiceofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceofferingid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2208,6 +2896,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetStorageid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2215,6 +2911,14 @@
 	p.p["storageid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetStorageid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storageid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2222,6 +2926,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetTemplateid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2229,6 +2941,14 @@
 	p.p["templateid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetTemplateid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["templateid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetUserid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2236,6 +2956,14 @@
 	p.p["userid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetUserid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2243,6 +2971,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2250,6 +2986,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListVirtualMachinesParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListVirtualMachinesParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewListVirtualMachinesParams() *ListVirtualMachinesParams {
@@ -2632,6 +3376,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetAffinitygroupid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2639,6 +3391,14 @@
 	p.p["affinitygroupid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetAffinitygroupid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["affinitygroupid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetDetails(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2646,6 +3406,14 @@
 	p.p["details"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetDetails() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].([]string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetDisplayvm(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2653,6 +3421,14 @@
 	p.p["displayvm"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetDisplayvm() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displayvm"].(bool)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2660,6 +3436,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetForvirtualnetwork(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2667,6 +3451,14 @@
 	p.p["forvirtualnetwork"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetForvirtualnetwork() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forvirtualnetwork"].(bool)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetGroupid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2674,6 +3466,14 @@
 	p.p["groupid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetGroupid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["groupid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetHaenable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2681,6 +3481,14 @@
 	p.p["haenable"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetHaenable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["haenable"].(bool)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetHostid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2688,6 +3496,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetHypervisor(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2695,6 +3511,14 @@
 	p.p["hypervisor"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetHypervisor() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hypervisor"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2702,6 +3526,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetIds(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2709,6 +3541,14 @@
 	p.p["ids"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetIds() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ids"].([]string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetIsoid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2716,6 +3556,14 @@
 	p.p["isoid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetIsoid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isoid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2723,6 +3571,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetKeypair(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2730,6 +3586,14 @@
 	p.p["keypair"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetKeypair() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keypair"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2737,6 +3601,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2744,6 +3616,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2751,6 +3631,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetNetworkid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2758,6 +3646,14 @@
 	p.p["networkid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetNetworkid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networkid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2765,6 +3661,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2772,6 +3676,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2779,6 +3691,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2786,6 +3706,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetSecuritygroupid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2793,6 +3721,14 @@
 	p.p["securitygroupid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetSecuritygroupid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["securitygroupid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetServiceofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2800,6 +3736,14 @@
 	p.p["serviceofferingid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetServiceofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceofferingid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2807,6 +3751,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetStorageid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2814,6 +3766,14 @@
 	p.p["storageid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetStorageid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storageid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2821,6 +3781,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetTemplateid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2828,6 +3796,14 @@
 	p.p["templateid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetTemplateid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["templateid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetUserid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2835,6 +3811,14 @@
 	p.p["userid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetUserid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetVpcid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2842,6 +3826,14 @@
 	p.p["vpcid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetVpcid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["vpcid"].(string)
+	return value, ok
+}
+
 func (p *ListVirtualMachinesMetricsParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2849,6 +3841,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListVirtualMachinesMetricsParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListVirtualMachinesMetricsParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewListVirtualMachinesMetricsParams() *ListVirtualMachinesMetricsParams {
@@ -3139,6 +4139,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *MigrateVirtualMachineParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *MigrateVirtualMachineParams) SetStorageid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3146,6 +4154,14 @@
 	p.p["storageid"] = v
 }
 
+func (p *MigrateVirtualMachineParams) GetStorageid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storageid"].(string)
+	return value, ok
+}
+
 func (p *MigrateVirtualMachineParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3153,6 +4169,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *MigrateVirtualMachineParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new MigrateVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewMigrateVirtualMachineParams(virtualmachineid string) *MigrateVirtualMachineParams {
@@ -3373,6 +4397,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *MigrateVirtualMachineWithVolumeParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *MigrateVirtualMachineWithVolumeParams) SetMigrateto(v []map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3380,6 +4412,14 @@
 	p.p["migrateto"] = v
 }
 
+func (p *MigrateVirtualMachineWithVolumeParams) GetMigrateto() ([]map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["migrateto"].([]map[string]string)
+	return value, ok
+}
+
 func (p *MigrateVirtualMachineWithVolumeParams) AddMigrateto(item map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3401,6 +4441,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *MigrateVirtualMachineWithVolumeParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new MigrateVirtualMachineWithVolumeParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewMigrateVirtualMachineWithVolumeParams(hostid string, virtualmachineid string) *MigrateVirtualMachineWithVolumeParams {
@@ -3615,6 +4663,14 @@
 	p.p["bootintosetup"] = v
 }
 
+func (p *RebootVirtualMachineParams) GetBootintosetup() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bootintosetup"].(bool)
+	return value, ok
+}
+
 func (p *RebootVirtualMachineParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -3622,6 +4678,14 @@
 	p.p["id"] = v
 }
 
+func (p *RebootVirtualMachineParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RebootVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewRebootVirtualMachineParams(id string) *RebootVirtualMachineParams {
@@ -3831,6 +4895,14 @@
 	p.p["id"] = v
 }
 
+func (p *RecoverVirtualMachineParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RecoverVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewRecoverVirtualMachineParams(id string) *RecoverVirtualMachineParams {
@@ -4023,6 +5095,14 @@
 	p.p["nicid"] = v
 }
 
+func (p *RemoveNicFromVirtualMachineParams) GetNicid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nicid"].(string)
+	return value, ok
+}
+
 func (p *RemoveNicFromVirtualMachineParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4030,6 +5110,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *RemoveNicFromVirtualMachineParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RemoveNicFromVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewRemoveNicFromVirtualMachineParams(nicid string, virtualmachineid string) *RemoveNicFromVirtualMachineParams {
@@ -4240,6 +5328,14 @@
 	p.p["id"] = v
 }
 
+func (p *ResetPasswordForVirtualMachineParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ResetPasswordForVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewResetPasswordForVirtualMachineParams(id string) *ResetPasswordForVirtualMachineParams {
@@ -4452,6 +5548,14 @@
 	p.p["templateid"] = v
 }
 
+func (p *RestoreVirtualMachineParams) GetTemplateid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["templateid"].(string)
+	return value, ok
+}
+
 func (p *RestoreVirtualMachineParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4459,6 +5563,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *RestoreVirtualMachineParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new RestoreVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewRestoreVirtualMachineParams(virtualmachineid string) *RestoreVirtualMachineParams {
@@ -4677,6 +5789,14 @@
 	p.p["details"] = v
 }
 
+func (p *ScaleVirtualMachineParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *ScaleVirtualMachineParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4684,6 +5804,14 @@
 	p.p["id"] = v
 }
 
+func (p *ScaleVirtualMachineParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ScaleVirtualMachineParams) SetServiceofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4691,6 +5819,14 @@
 	p.p["serviceofferingid"] = v
 }
 
+func (p *ScaleVirtualMachineParams) GetServiceofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["serviceofferingid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ScaleVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewScaleVirtualMachineParams(id string, serviceofferingid string) *ScaleVirtualMachineParams {
@@ -4776,6 +5912,14 @@
 	p.p["bootintosetup"] = v
 }
 
+func (p *StartVirtualMachineParams) GetBootintosetup() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["bootintosetup"].(bool)
+	return value, ok
+}
+
 func (p *StartVirtualMachineParams) SetClusterid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4783,6 +5927,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *StartVirtualMachineParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *StartVirtualMachineParams) SetDeploymentplanner(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4790,6 +5942,14 @@
 	p.p["deploymentplanner"] = v
 }
 
+func (p *StartVirtualMachineParams) GetDeploymentplanner() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["deploymentplanner"].(string)
+	return value, ok
+}
+
 func (p *StartVirtualMachineParams) SetHostid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4797,6 +5957,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *StartVirtualMachineParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *StartVirtualMachineParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4804,6 +5972,14 @@
 	p.p["id"] = v
 }
 
+func (p *StartVirtualMachineParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *StartVirtualMachineParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -4811,6 +5987,14 @@
 	p.p["podid"] = v
 }
 
+func (p *StartVirtualMachineParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new StartVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewStartVirtualMachineParams(id string) *StartVirtualMachineParams {
@@ -5024,6 +6208,14 @@
 	p.p["forced"] = v
 }
 
+func (p *StopVirtualMachineParams) GetForced() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["forced"].(bool)
+	return value, ok
+}
+
 func (p *StopVirtualMachineParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5031,6 +6223,14 @@
 	p.p["id"] = v
 }
 
+func (p *StopVirtualMachineParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new StopVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewStopVirtualMachineParams(id string) *StopVirtualMachineParams {
@@ -5243,6 +6443,14 @@
 	p.p["nicid"] = v
 }
 
+func (p *UpdateDefaultNicForVirtualMachineParams) GetNicid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["nicid"].(string)
+	return value, ok
+}
+
 func (p *UpdateDefaultNicForVirtualMachineParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5250,6 +6458,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *UpdateDefaultNicForVirtualMachineParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateDefaultNicForVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewUpdateDefaultNicForVirtualMachineParams(nicid string, virtualmachineid string) *UpdateDefaultNicForVirtualMachineParams {
@@ -5522,6 +6738,14 @@
 	p.p["cleanupdetails"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetCleanupdetails() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["cleanupdetails"].(bool)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetCustomid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5529,6 +6753,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetDetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5536,6 +6768,14 @@
 	p.p["details"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetDhcpoptionsnetworklist(v []map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5543,6 +6783,14 @@
 	p.p["dhcpoptionsnetworklist"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetDhcpoptionsnetworklist() ([]map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["dhcpoptionsnetworklist"].([]map[string]string)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) AddDhcpoptionsnetworklist(item map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5564,6 +6812,14 @@
 	p.p["displayname"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetDisplayname() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displayname"].(string)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetDisplayvm(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5571,6 +6827,14 @@
 	p.p["displayvm"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetDisplayvm() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displayvm"].(bool)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetExtraconfig(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5578,6 +6842,14 @@
 	p.p["extraconfig"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetExtraconfig() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["extraconfig"].(string)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetGroup(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5585,6 +6857,14 @@
 	p.p["group"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetGroup() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["group"].(string)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetHaenable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5592,6 +6872,14 @@
 	p.p["haenable"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetHaenable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["haenable"].(bool)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5599,6 +6887,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetInstancename(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5606,6 +6902,14 @@
 	p.p["instancename"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetInstancename() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["instancename"].(string)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetIsdynamicallyscalable(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5613,6 +6917,14 @@
 	p.p["isdynamicallyscalable"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetIsdynamicallyscalable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isdynamicallyscalable"].(bool)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5620,6 +6932,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetOstypeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5627,6 +6947,14 @@
 	p.p["ostypeid"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetOstypeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ostypeid"].(string)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetSecuritygroupids(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5634,6 +6962,14 @@
 	p.p["securitygroupids"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetSecuritygroupids() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["securitygroupids"].([]string)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetSecuritygroupnames(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5641,6 +6977,14 @@
 	p.p["securitygroupnames"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetSecuritygroupnames() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["securitygroupnames"].([]string)
+	return value, ok
+}
+
 func (p *UpdateVirtualMachineParams) SetUserdata(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -5648,6 +6992,14 @@
 	p.p["userdata"] = v
 }
 
+func (p *UpdateVirtualMachineParams) GetUserdata() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["userdata"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateVirtualMachineParams instance,
 // as then you are sure you have configured all required params
 func (s *VirtualMachineService) NewUpdateVirtualMachineParams(id string) *UpdateVirtualMachineParams {
diff --git a/cloudstack/VolumeService.go b/cloudstack/VolumeService.go
index 484d022..eeeec79 100644
--- a/cloudstack/VolumeService.go
+++ b/cloudstack/VolumeService.go
@@ -90,6 +90,14 @@
 	p.p["deviceid"] = v
 }
 
+func (p *AttachVolumeParams) GetDeviceid() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["deviceid"].(int64)
+	return value, ok
+}
+
 func (p *AttachVolumeParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -97,6 +105,14 @@
 	p.p["id"] = v
 }
 
+func (p *AttachVolumeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *AttachVolumeParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -104,6 +120,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *AttachVolumeParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new AttachVolumeParams instance,
 // as then you are sure you have configured all required params
 func (s *VolumeService) NewAttachVolumeParams(id string, virtualmachineid string) *AttachVolumeParams {
@@ -278,6 +302,14 @@
 	p.p["account"] = v
 }
 
+func (p *CreateVolumeParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *CreateVolumeParams) SetCustomid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -285,6 +317,14 @@
 	p.p["customid"] = v
 }
 
+func (p *CreateVolumeParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *CreateVolumeParams) SetDiskofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -292,6 +332,14 @@
 	p.p["diskofferingid"] = v
 }
 
+func (p *CreateVolumeParams) GetDiskofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["diskofferingid"].(string)
+	return value, ok
+}
+
 func (p *CreateVolumeParams) SetDisplayvolume(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -299,6 +347,14 @@
 	p.p["displayvolume"] = v
 }
 
+func (p *CreateVolumeParams) GetDisplayvolume() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displayvolume"].(bool)
+	return value, ok
+}
+
 func (p *CreateVolumeParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -306,6 +362,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateVolumeParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateVolumeParams) SetMaxiops(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -313,6 +377,14 @@
 	p.p["maxiops"] = v
 }
 
+func (p *CreateVolumeParams) GetMaxiops() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["maxiops"].(int64)
+	return value, ok
+}
+
 func (p *CreateVolumeParams) SetMiniops(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -320,6 +392,14 @@
 	p.p["miniops"] = v
 }
 
+func (p *CreateVolumeParams) GetMiniops() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["miniops"].(int64)
+	return value, ok
+}
+
 func (p *CreateVolumeParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -327,6 +407,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateVolumeParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateVolumeParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -334,6 +422,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *CreateVolumeParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *CreateVolumeParams) SetSize(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -341,6 +437,14 @@
 	p.p["size"] = v
 }
 
+func (p *CreateVolumeParams) GetSize() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["size"].(int64)
+	return value, ok
+}
+
 func (p *CreateVolumeParams) SetSnapshotid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -348,6 +452,14 @@
 	p.p["snapshotid"] = v
 }
 
+func (p *CreateVolumeParams) GetSnapshotid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["snapshotid"].(string)
+	return value, ok
+}
+
 func (p *CreateVolumeParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -355,6 +467,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *CreateVolumeParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 func (p *CreateVolumeParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -362,6 +482,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *CreateVolumeParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateVolumeParams instance,
 // as then you are sure you have configured all required params
 func (s *VolumeService) NewCreateVolumeParams() *CreateVolumeParams {
@@ -494,6 +622,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteVolumeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteVolumeParams instance,
 // as then you are sure you have configured all required params
 func (s *VolumeService) NewDeleteVolumeParams(id string) *DeleteVolumeParams {
@@ -581,6 +717,14 @@
 	p.p["deviceid"] = v
 }
 
+func (p *DetachVolumeParams) GetDeviceid() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["deviceid"].(int64)
+	return value, ok
+}
+
 func (p *DetachVolumeParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -588,6 +732,14 @@
 	p.p["id"] = v
 }
 
+func (p *DetachVolumeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *DetachVolumeParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -595,6 +747,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *DetachVolumeParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DetachVolumeParams instance,
 // as then you are sure you have configured all required params
 func (s *VolumeService) NewDetachVolumeParams() *DetachVolumeParams {
@@ -736,6 +896,14 @@
 	p.p["id"] = v
 }
 
+func (p *ExtractVolumeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ExtractVolumeParams) SetMode(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -743,6 +911,14 @@
 	p.p["mode"] = v
 }
 
+func (p *ExtractVolumeParams) GetMode() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["mode"].(string)
+	return value, ok
+}
+
 func (p *ExtractVolumeParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -750,6 +926,14 @@
 	p.p["url"] = v
 }
 
+func (p *ExtractVolumeParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *ExtractVolumeParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -757,6 +941,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ExtractVolumeParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ExtractVolumeParams instance,
 // as then you are sure you have configured all required params
 func (s *VolumeService) NewExtractVolumeParams(id string, mode string, zoneid string) *ExtractVolumeParams {
@@ -844,6 +1036,14 @@
 	p.p["volumeid"] = v
 }
 
+func (p *GetPathForVolumeParams) GetVolumeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["volumeid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new GetPathForVolumeParams instance,
 // as then you are sure you have configured all required params
 func (s *VolumeService) NewGetPathForVolumeParams(volumeid string) *GetPathForVolumeParams {
@@ -896,6 +1096,14 @@
 	p.p["volumeid"] = v
 }
 
+func (p *GetSolidFireVolumeSizeParams) GetVolumeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["volumeid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new GetSolidFireVolumeSizeParams instance,
 // as then you are sure you have configured all required params
 func (s *VolumeService) NewGetSolidFireVolumeSizeParams(volumeid string) *GetSolidFireVolumeSizeParams {
@@ -972,6 +1180,14 @@
 	p.p["account"] = v
 }
 
+func (p *GetUploadParamsForVolumeParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForVolumeParams) SetChecksum(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -979,6 +1195,14 @@
 	p.p["checksum"] = v
 }
 
+func (p *GetUploadParamsForVolumeParams) GetChecksum() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["checksum"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForVolumeParams) SetDiskofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -986,6 +1210,14 @@
 	p.p["diskofferingid"] = v
 }
 
+func (p *GetUploadParamsForVolumeParams) GetDiskofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["diskofferingid"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForVolumeParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -993,6 +1225,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *GetUploadParamsForVolumeParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForVolumeParams) SetFormat(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1000,6 +1240,14 @@
 	p.p["format"] = v
 }
 
+func (p *GetUploadParamsForVolumeParams) GetFormat() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["format"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForVolumeParams) SetImagestoreuuid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1007,6 +1255,14 @@
 	p.p["imagestoreuuid"] = v
 }
 
+func (p *GetUploadParamsForVolumeParams) GetImagestoreuuid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["imagestoreuuid"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForVolumeParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1014,6 +1270,14 @@
 	p.p["name"] = v
 }
 
+func (p *GetUploadParamsForVolumeParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForVolumeParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1021,6 +1285,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *GetUploadParamsForVolumeParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *GetUploadParamsForVolumeParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1028,6 +1300,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *GetUploadParamsForVolumeParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new GetUploadParamsForVolumeParams instance,
 // as then you are sure you have configured all required params
 func (s *VolumeService) NewGetUploadParamsForVolumeParams(format string, name string, zoneid string) *GetUploadParamsForVolumeParams {
@@ -1086,6 +1366,14 @@
 	p.p["volumeid"] = v
 }
 
+func (p *GetVolumeiScsiNameParams) GetVolumeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["volumeid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new GetVolumeiScsiNameParams instance,
 // as then you are sure you have configured all required params
 func (s *VolumeService) NewGetVolumeiScsiNameParams(volumeid string) *GetVolumeiScsiNameParams {
@@ -1211,6 +1499,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListVolumesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetClusterid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1218,6 +1514,14 @@
 	p.p["clusterid"] = v
 }
 
+func (p *ListVolumesParams) GetClusterid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["clusterid"].(string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetDiskofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1225,6 +1529,14 @@
 	p.p["diskofferingid"] = v
 }
 
+func (p *ListVolumesParams) GetDiskofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["diskofferingid"].(string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetDisplayvolume(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1232,6 +1544,14 @@
 	p.p["displayvolume"] = v
 }
 
+func (p *ListVolumesParams) GetDisplayvolume() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displayvolume"].(bool)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1239,6 +1559,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListVolumesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetHostid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1246,6 +1574,14 @@
 	p.p["hostid"] = v
 }
 
+func (p *ListVolumesParams) GetHostid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["hostid"].(string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1253,6 +1589,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListVolumesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetIds(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1260,6 +1604,14 @@
 	p.p["ids"] = v
 }
 
+func (p *ListVolumesParams) GetIds() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ids"].([]string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetIsrecursive(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1267,6 +1619,14 @@
 	p.p["isrecursive"] = v
 }
 
+func (p *ListVolumesParams) GetIsrecursive() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["isrecursive"].(bool)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1274,6 +1634,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListVolumesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetListall(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1281,6 +1649,14 @@
 	p.p["listall"] = v
 }
 
+func (p *ListVolumesParams) GetListall() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["listall"].(bool)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1288,6 +1664,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListVolumesParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1295,6 +1679,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListVolumesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1302,6 +1694,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListVolumesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetPodid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1309,6 +1709,14 @@
 	p.p["podid"] = v
 }
 
+func (p *ListVolumesParams) GetPodid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["podid"].(string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1316,6 +1724,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *ListVolumesParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1323,6 +1739,14 @@
 	p.p["state"] = v
 }
 
+func (p *ListVolumesParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetStorageid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1330,6 +1754,14 @@
 	p.p["storageid"] = v
 }
 
+func (p *ListVolumesParams) GetStorageid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storageid"].(string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1337,6 +1769,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListVolumesParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetType(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1344,6 +1784,14 @@
 	p.p["type"] = v
 }
 
+func (p *ListVolumesParams) GetType() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["type"].(string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetVirtualmachineid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1351,6 +1799,14 @@
 	p.p["virtualmachineid"] = v
 }
 
+func (p *ListVolumesParams) GetVirtualmachineid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["virtualmachineid"].(string)
+	return value, ok
+}
+
 func (p *ListVolumesParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1358,6 +1814,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListVolumesParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListVolumesParams instance,
 // as then you are sure you have configured all required params
 func (s *VolumeService) NewListVolumesParams() *ListVolumesParams {
@@ -1568,6 +2032,14 @@
 	p.p["livemigrate"] = v
 }
 
+func (p *MigrateVolumeParams) GetLivemigrate() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["livemigrate"].(bool)
+	return value, ok
+}
+
 func (p *MigrateVolumeParams) SetNewdiskofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1575,6 +2047,14 @@
 	p.p["newdiskofferingid"] = v
 }
 
+func (p *MigrateVolumeParams) GetNewdiskofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["newdiskofferingid"].(string)
+	return value, ok
+}
+
 func (p *MigrateVolumeParams) SetStorageid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1582,6 +2062,14 @@
 	p.p["storageid"] = v
 }
 
+func (p *MigrateVolumeParams) GetStorageid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storageid"].(string)
+	return value, ok
+}
+
 func (p *MigrateVolumeParams) SetVolumeid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1589,6 +2077,14 @@
 	p.p["volumeid"] = v
 }
 
+func (p *MigrateVolumeParams) GetVolumeid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["volumeid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new MigrateVolumeParams instance,
 // as then you are sure you have configured all required params
 func (s *VolumeService) NewMigrateVolumeParams(storageid string, volumeid string) *MigrateVolumeParams {
@@ -1742,6 +2238,14 @@
 	p.p["diskofferingid"] = v
 }
 
+func (p *ResizeVolumeParams) GetDiskofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["diskofferingid"].(string)
+	return value, ok
+}
+
 func (p *ResizeVolumeParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1749,6 +2253,14 @@
 	p.p["id"] = v
 }
 
+func (p *ResizeVolumeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ResizeVolumeParams) SetMaxiops(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1756,6 +2268,14 @@
 	p.p["maxiops"] = v
 }
 
+func (p *ResizeVolumeParams) GetMaxiops() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["maxiops"].(int64)
+	return value, ok
+}
+
 func (p *ResizeVolumeParams) SetMiniops(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1763,6 +2283,14 @@
 	p.p["miniops"] = v
 }
 
+func (p *ResizeVolumeParams) GetMiniops() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["miniops"].(int64)
+	return value, ok
+}
+
 func (p *ResizeVolumeParams) SetShrinkok(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1770,6 +2298,14 @@
 	p.p["shrinkok"] = v
 }
 
+func (p *ResizeVolumeParams) GetShrinkok() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["shrinkok"].(bool)
+	return value, ok
+}
+
 func (p *ResizeVolumeParams) SetSize(v int64) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1777,6 +2313,14 @@
 	p.p["size"] = v
 }
 
+func (p *ResizeVolumeParams) GetSize() (int64, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["size"].(int64)
+	return value, ok
+}
+
 // You should always use this function to get a new ResizeVolumeParams instance,
 // as then you are sure you have configured all required params
 func (s *VolumeService) NewResizeVolumeParams(id string) *ResizeVolumeParams {
@@ -1929,6 +2473,14 @@
 	p.p["chaininfo"] = v
 }
 
+func (p *UpdateVolumeParams) GetChaininfo() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["chaininfo"].(string)
+	return value, ok
+}
+
 func (p *UpdateVolumeParams) SetCustomid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1936,6 +2488,14 @@
 	p.p["customid"] = v
 }
 
+func (p *UpdateVolumeParams) GetCustomid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["customid"].(string)
+	return value, ok
+}
+
 func (p *UpdateVolumeParams) SetDisplayvolume(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1943,6 +2503,14 @@
 	p.p["displayvolume"] = v
 }
 
+func (p *UpdateVolumeParams) GetDisplayvolume() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["displayvolume"].(bool)
+	return value, ok
+}
+
 func (p *UpdateVolumeParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1950,6 +2518,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateVolumeParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateVolumeParams) SetPath(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1957,6 +2533,14 @@
 	p.p["path"] = v
 }
 
+func (p *UpdateVolumeParams) GetPath() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["path"].(string)
+	return value, ok
+}
+
 func (p *UpdateVolumeParams) SetState(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1964,6 +2548,14 @@
 	p.p["state"] = v
 }
 
+func (p *UpdateVolumeParams) GetState() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["state"].(string)
+	return value, ok
+}
+
 func (p *UpdateVolumeParams) SetStorageid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1971,6 +2563,14 @@
 	p.p["storageid"] = v
 }
 
+func (p *UpdateVolumeParams) GetStorageid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["storageid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateVolumeParams instance,
 // as then you are sure you have configured all required params
 func (s *VolumeService) NewUpdateVolumeParams() *UpdateVolumeParams {
@@ -2130,6 +2730,14 @@
 	p.p["account"] = v
 }
 
+func (p *UploadVolumeParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *UploadVolumeParams) SetChecksum(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2137,6 +2745,14 @@
 	p.p["checksum"] = v
 }
 
+func (p *UploadVolumeParams) GetChecksum() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["checksum"].(string)
+	return value, ok
+}
+
 func (p *UploadVolumeParams) SetDiskofferingid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2144,6 +2760,14 @@
 	p.p["diskofferingid"] = v
 }
 
+func (p *UploadVolumeParams) GetDiskofferingid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["diskofferingid"].(string)
+	return value, ok
+}
+
 func (p *UploadVolumeParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2151,6 +2775,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *UploadVolumeParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *UploadVolumeParams) SetFormat(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2158,6 +2790,14 @@
 	p.p["format"] = v
 }
 
+func (p *UploadVolumeParams) GetFormat() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["format"].(string)
+	return value, ok
+}
+
 func (p *UploadVolumeParams) SetImagestoreuuid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2165,6 +2805,14 @@
 	p.p["imagestoreuuid"] = v
 }
 
+func (p *UploadVolumeParams) GetImagestoreuuid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["imagestoreuuid"].(string)
+	return value, ok
+}
+
 func (p *UploadVolumeParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2172,6 +2820,14 @@
 	p.p["name"] = v
 }
 
+func (p *UploadVolumeParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UploadVolumeParams) SetProjectid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2179,6 +2835,14 @@
 	p.p["projectid"] = v
 }
 
+func (p *UploadVolumeParams) GetProjectid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["projectid"].(string)
+	return value, ok
+}
+
 func (p *UploadVolumeParams) SetUrl(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2186,6 +2850,14 @@
 	p.p["url"] = v
 }
 
+func (p *UploadVolumeParams) GetUrl() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["url"].(string)
+	return value, ok
+}
+
 func (p *UploadVolumeParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -2193,6 +2865,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *UploadVolumeParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new UploadVolumeParams instance,
 // as then you are sure you have configured all required params
 func (s *VolumeService) NewUploadVolumeParams(format string, name string, url string, zoneid string) *UploadVolumeParams {
diff --git a/cloudstack/ZoneService.go b/cloudstack/ZoneService.go
index adcc8ac..b11de52 100644
--- a/cloudstack/ZoneService.go
+++ b/cloudstack/ZoneService.go
@@ -118,6 +118,14 @@
 	p.p["allocationstate"] = v
 }
 
+func (p *CreateZoneParams) GetAllocationstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["allocationstate"].(string)
+	return value, ok
+}
+
 func (p *CreateZoneParams) SetDns1(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -125,6 +133,14 @@
 	p.p["dns1"] = v
 }
 
+func (p *CreateZoneParams) GetDns1() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["dns1"].(string)
+	return value, ok
+}
+
 func (p *CreateZoneParams) SetDns2(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -132,6 +148,14 @@
 	p.p["dns2"] = v
 }
 
+func (p *CreateZoneParams) GetDns2() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["dns2"].(string)
+	return value, ok
+}
+
 func (p *CreateZoneParams) SetDomain(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -139,6 +163,14 @@
 	p.p["domain"] = v
 }
 
+func (p *CreateZoneParams) GetDomain() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domain"].(string)
+	return value, ok
+}
+
 func (p *CreateZoneParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -146,6 +178,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *CreateZoneParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *CreateZoneParams) SetGuestcidraddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -153,6 +193,14 @@
 	p.p["guestcidraddress"] = v
 }
 
+func (p *CreateZoneParams) GetGuestcidraddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["guestcidraddress"].(string)
+	return value, ok
+}
+
 func (p *CreateZoneParams) SetInternaldns1(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -160,6 +208,14 @@
 	p.p["internaldns1"] = v
 }
 
+func (p *CreateZoneParams) GetInternaldns1() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["internaldns1"].(string)
+	return value, ok
+}
+
 func (p *CreateZoneParams) SetInternaldns2(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -167,6 +223,14 @@
 	p.p["internaldns2"] = v
 }
 
+func (p *CreateZoneParams) GetInternaldns2() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["internaldns2"].(string)
+	return value, ok
+}
+
 func (p *CreateZoneParams) SetIp6dns1(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -174,6 +238,14 @@
 	p.p["ip6dns1"] = v
 }
 
+func (p *CreateZoneParams) GetIp6dns1() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ip6dns1"].(string)
+	return value, ok
+}
+
 func (p *CreateZoneParams) SetIp6dns2(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -181,6 +253,14 @@
 	p.p["ip6dns2"] = v
 }
 
+func (p *CreateZoneParams) GetIp6dns2() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ip6dns2"].(string)
+	return value, ok
+}
+
 func (p *CreateZoneParams) SetLocalstorageenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -188,6 +268,14 @@
 	p.p["localstorageenabled"] = v
 }
 
+func (p *CreateZoneParams) GetLocalstorageenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["localstorageenabled"].(bool)
+	return value, ok
+}
+
 func (p *CreateZoneParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -195,6 +283,14 @@
 	p.p["name"] = v
 }
 
+func (p *CreateZoneParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *CreateZoneParams) SetNetworktype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -202,6 +298,14 @@
 	p.p["networktype"] = v
 }
 
+func (p *CreateZoneParams) GetNetworktype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networktype"].(string)
+	return value, ok
+}
+
 func (p *CreateZoneParams) SetSecuritygroupenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -209,6 +313,14 @@
 	p.p["securitygroupenabled"] = v
 }
 
+func (p *CreateZoneParams) GetSecuritygroupenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["securitygroupenabled"].(bool)
+	return value, ok
+}
+
 // You should always use this function to get a new CreateZoneParams instance,
 // as then you are sure you have configured all required params
 func (s *ZoneService) NewCreateZoneParams(dns1 string, internaldns1 string, name string, networktype string) *CreateZoneParams {
@@ -307,6 +419,14 @@
 	p.p["account"] = v
 }
 
+func (p *DedicateZoneParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *DedicateZoneParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -314,6 +434,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *DedicateZoneParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *DedicateZoneParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -321,6 +449,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *DedicateZoneParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DedicateZoneParams instance,
 // as then you are sure you have configured all required params
 func (s *ZoneService) NewDedicateZoneParams(domainid string, zoneid string) *DedicateZoneParams {
@@ -399,6 +535,14 @@
 	p.p["id"] = v
 }
 
+func (p *DeleteZoneParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DeleteZoneParams instance,
 // as then you are sure you have configured all required params
 func (s *ZoneService) NewDeleteZoneParams(id string) *DeleteZoneParams {
@@ -479,6 +623,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *DisableOutOfBandManagementForZoneParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DisableOutOfBandManagementForZoneParams instance,
 // as then you are sure you have configured all required params
 func (s *ZoneService) NewDisableOutOfBandManagementForZoneParams(zoneid string) *DisableOutOfBandManagementForZoneParams {
@@ -561,6 +713,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *EnableOutOfBandManagementForZoneParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new EnableOutOfBandManagementForZoneParams instance,
 // as then you are sure you have configured all required params
 func (s *ZoneService) NewEnableOutOfBandManagementForZoneParams(zoneid string) *EnableOutOfBandManagementForZoneParams {
@@ -643,6 +803,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *DisableHAForZoneParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new DisableHAForZoneParams instance,
 // as then you are sure you have configured all required params
 func (s *ZoneService) NewDisableHAForZoneParams(zoneid string) *DisableHAForZoneParams {
@@ -711,6 +879,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *EnableHAForZoneParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new EnableHAForZoneParams instance,
 // as then you are sure you have configured all required params
 func (s *ZoneService) NewEnableHAForZoneParams(zoneid string) *EnableHAForZoneParams {
@@ -799,6 +975,14 @@
 	p.p["account"] = v
 }
 
+func (p *ListDedicatedZonesParams) GetAccount() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["account"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedZonesParams) SetAffinitygroupid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -806,6 +990,14 @@
 	p.p["affinitygroupid"] = v
 }
 
+func (p *ListDedicatedZonesParams) GetAffinitygroupid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["affinitygroupid"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedZonesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -813,6 +1005,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListDedicatedZonesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedZonesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -820,6 +1020,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListDedicatedZonesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListDedicatedZonesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -827,6 +1035,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListDedicatedZonesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListDedicatedZonesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -834,6 +1050,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListDedicatedZonesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListDedicatedZonesParams) SetZoneid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -841,6 +1065,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ListDedicatedZonesParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListDedicatedZonesParams instance,
 // as then you are sure you have configured all required params
 func (s *ZoneService) NewListDedicatedZonesParams() *ListDedicatedZonesParams {
@@ -937,6 +1169,14 @@
 	p.p["available"] = v
 }
 
+func (p *ListZonesParams) GetAvailable() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["available"].(bool)
+	return value, ok
+}
+
 func (p *ListZonesParams) SetDomainid(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -944,6 +1184,14 @@
 	p.p["domainid"] = v
 }
 
+func (p *ListZonesParams) GetDomainid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domainid"].(string)
+	return value, ok
+}
+
 func (p *ListZonesParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -951,6 +1199,14 @@
 	p.p["id"] = v
 }
 
+func (p *ListZonesParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *ListZonesParams) SetKeyword(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -958,6 +1214,14 @@
 	p.p["keyword"] = v
 }
 
+func (p *ListZonesParams) GetKeyword() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["keyword"].(string)
+	return value, ok
+}
+
 func (p *ListZonesParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -965,6 +1229,14 @@
 	p.p["name"] = v
 }
 
+func (p *ListZonesParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *ListZonesParams) SetNetworktype(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -972,6 +1244,14 @@
 	p.p["networktype"] = v
 }
 
+func (p *ListZonesParams) GetNetworktype() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["networktype"].(string)
+	return value, ok
+}
+
 func (p *ListZonesParams) SetPage(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -979,6 +1259,14 @@
 	p.p["page"] = v
 }
 
+func (p *ListZonesParams) GetPage() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["page"].(int)
+	return value, ok
+}
+
 func (p *ListZonesParams) SetPagesize(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -986,6 +1274,14 @@
 	p.p["pagesize"] = v
 }
 
+func (p *ListZonesParams) GetPagesize() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["pagesize"].(int)
+	return value, ok
+}
+
 func (p *ListZonesParams) SetShowcapacities(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -993,6 +1289,14 @@
 	p.p["showcapacities"] = v
 }
 
+func (p *ListZonesParams) GetShowcapacities() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["showcapacities"].(bool)
+	return value, ok
+}
+
 func (p *ListZonesParams) SetTags(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1000,6 +1304,14 @@
 	p.p["tags"] = v
 }
 
+func (p *ListZonesParams) GetTags() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["tags"].(map[string]string)
+	return value, ok
+}
+
 // You should always use this function to get a new ListZonesParams instance,
 // as then you are sure you have configured all required params
 func (s *ZoneService) NewListZonesParams() *ListZonesParams {
@@ -1176,6 +1488,14 @@
 	p.p["zoneid"] = v
 }
 
+func (p *ReleaseDedicatedZoneParams) GetZoneid() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["zoneid"].(string)
+	return value, ok
+}
+
 // You should always use this function to get a new ReleaseDedicatedZoneParams instance,
 // as then you are sure you have configured all required params
 func (s *ZoneService) NewReleaseDedicatedZoneParams(zoneid string) *ReleaseDedicatedZoneParams {
@@ -1300,6 +1620,14 @@
 	p.p["allocationstate"] = v
 }
 
+func (p *UpdateZoneParams) GetAllocationstate() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["allocationstate"].(string)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetDetails(v map[string]string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1307,6 +1635,14 @@
 	p.p["details"] = v
 }
 
+func (p *UpdateZoneParams) GetDetails() (map[string]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["details"].(map[string]string)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetDhcpprovider(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1314,6 +1650,14 @@
 	p.p["dhcpprovider"] = v
 }
 
+func (p *UpdateZoneParams) GetDhcpprovider() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["dhcpprovider"].(string)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetDns1(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1321,6 +1665,14 @@
 	p.p["dns1"] = v
 }
 
+func (p *UpdateZoneParams) GetDns1() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["dns1"].(string)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetDns2(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1328,6 +1680,14 @@
 	p.p["dns2"] = v
 }
 
+func (p *UpdateZoneParams) GetDns2() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["dns2"].(string)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetDnssearchorder(v []string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1335,6 +1695,14 @@
 	p.p["dnssearchorder"] = v
 }
 
+func (p *UpdateZoneParams) GetDnssearchorder() ([]string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["dnssearchorder"].([]string)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetDomain(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1342,6 +1710,14 @@
 	p.p["domain"] = v
 }
 
+func (p *UpdateZoneParams) GetDomain() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["domain"].(string)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetGuestcidraddress(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1349,6 +1725,14 @@
 	p.p["guestcidraddress"] = v
 }
 
+func (p *UpdateZoneParams) GetGuestcidraddress() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["guestcidraddress"].(string)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetId(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1356,6 +1740,14 @@
 	p.p["id"] = v
 }
 
+func (p *UpdateZoneParams) GetId() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["id"].(string)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetInternaldns1(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1363,6 +1755,14 @@
 	p.p["internaldns1"] = v
 }
 
+func (p *UpdateZoneParams) GetInternaldns1() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["internaldns1"].(string)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetInternaldns2(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1370,6 +1770,14 @@
 	p.p["internaldns2"] = v
 }
 
+func (p *UpdateZoneParams) GetInternaldns2() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["internaldns2"].(string)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetIp6dns1(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1377,6 +1785,14 @@
 	p.p["ip6dns1"] = v
 }
 
+func (p *UpdateZoneParams) GetIp6dns1() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ip6dns1"].(string)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetIp6dns2(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1384,6 +1800,14 @@
 	p.p["ip6dns2"] = v
 }
 
+func (p *UpdateZoneParams) GetIp6dns2() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ip6dns2"].(string)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetIspublic(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1391,6 +1815,14 @@
 	p.p["ispublic"] = v
 }
 
+func (p *UpdateZoneParams) GetIspublic() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["ispublic"].(bool)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetLocalstorageenabled(v bool) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1398,6 +1830,14 @@
 	p.p["localstorageenabled"] = v
 }
 
+func (p *UpdateZoneParams) GetLocalstorageenabled() (bool, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["localstorageenabled"].(bool)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetName(v string) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1405,6 +1845,14 @@
 	p.p["name"] = v
 }
 
+func (p *UpdateZoneParams) GetName() (string, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["name"].(string)
+	return value, ok
+}
+
 func (p *UpdateZoneParams) SetSortkey(v int) {
 	if p.p == nil {
 		p.p = make(map[string]interface{})
@@ -1412,6 +1860,14 @@
 	p.p["sortkey"] = v
 }
 
+func (p *UpdateZoneParams) GetSortkey() (int, bool) {
+	if p.p == nil {
+		p.p = make(map[string]interface{})
+	}
+	value, ok := p.p["sortkey"].(int)
+	return value, ok
+}
+
 // You should always use this function to get a new UpdateZoneParams instance,
 // as then you are sure you have configured all required params
 func (s *ZoneService) NewUpdateZoneParams(id string) *UpdateZoneParams {
diff --git a/generate/generate.go b/generate/generate.go
index a69b902..79692ad 100644
--- a/generate/generate.go
+++ b/generate/generate.go
@@ -894,6 +894,13 @@
 		pn("	}")
 		pn("	p.p[param] = v")
 		pn("}")
+		pn("func (p *CustomServiceParams) GetParam(param string) (interface{}, bool) {")
+		pn("	if p.p == nil {")
+		pn("		p.p = make(map[string]interface{})")
+		pn("	}")
+		pn("	value, ok := p.p[param].(interface{})")
+		pn("	return value, ok")
+		pn("}")
 		pn("")
 		pn("func (s *CustomService) CustomRequest(api string, p *CustomServiceParams, result interface{}) error {")
 		pn("	resp, err := s.cs.newRequest(api, p.toURLValues())")
@@ -910,7 +917,7 @@
 	for _, a := range s.apis {
 		s.generateParamType(a)
 		s.generateToURLValuesFunc(a)
-		s.generateParamSettersFunc(a)
+		s.generateParamGettersAndSettersFunc(a)
 		s.generateNewParamTypeFunc(a)
 		s.generateHelperFuncs(a)
 		s.generateNewAPICallFunc(a)
@@ -1094,7 +1101,7 @@
 	return uncapitalize(strings.TrimSuffix(s.name, "Service")) + "Type"
 }
 
-func (s *service) generateParamSettersFunc(a *API) {
+func (s *service) generateParamGettersAndSettersFunc(a *API) {
 	pn := s.pn
 	found := make(map[string]bool)
 
@@ -1108,6 +1115,15 @@
 			pn("}")
 			pn("")
 
+			pn("func (p *%s) Get%s() (%s, bool) {", capitalize(a.Name+"Params"), capitalize(ap.Name), mapType(a.Name, ap.Name, ap.Type))
+			pn("	if p.p == nil {")
+			pn("		p.p = make(map[string]interface{})")
+			pn("	}")
+			pn("	value, ok := p.p[\"%s\"].(%s)", ap.Name, mapType(a.Name, ap.Name, ap.Type))
+			pn("	return value, ok")
+			pn("}")
+			pn("")
+
 			if mapRequireList[a.Name] != nil && mapRequireList[a.Name][ap.Name] {
 				pn("func (p *%s) Add%s(item map[string]string) {", capitalize(a.Name+"Params"), capitalize(ap.Name))
 				pn("	if p.p == nil {")