1 /**
2 * Copyright 2016-2024 IBM Corp.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
5 * the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
6 *
7 * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed
8 * on an "AS IS" BASIS,WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9 * See the License for the specific language governing permissions and limitations under the License.
10 */
11 12 // AUTOMATICALLY GENERATED CODE - DO NOT MODIFY
13 14 package services
15 16 import (
17 "fmt"
18 "strings"
19 20 "github.com/softlayer/softlayer-go/datatypes"
21 "github.com/softlayer/softlayer-go/session"
22 "github.com/softlayer/softlayer-go/sl"
23 )
24 25 // The SoftLayer_User_Customer data type contains general information relating to a single SoftLayer customer portal user. Personal information in this type such as names, addresses, and phone numbers are not necessarily associated with the customer account the user is assigned to.
26 type User_Customer struct {
27 Session session.SLSession
28 Options sl.Options
29 }
30 31 // GetUserCustomerService returns an instance of the User_Customer SoftLayer service
32 func GetUserCustomerService(sess session.SLSession) User_Customer {
33 return User_Customer{Session: sess}
34 }
35 36 func (r User_Customer) Id(id int) User_Customer {
37 r.Options.Id = &id
38 return r
39 }
40 41 func (r User_Customer) Mask(mask string) User_Customer {
42 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
43 mask = fmt.Sprintf("mask[%s]", mask)
44 }
45 46 r.Options.Mask = mask
47 return r
48 }
49 50 func (r User_Customer) Filter(filter string) User_Customer {
51 r.Options.Filter = filter
52 return r
53 }
54 55 func (r User_Customer) Limit(limit int) User_Customer {
56 r.Options.Limit = &limit
57 return r
58 }
59 60 func (r User_Customer) Offset(offset int) User_Customer {
61 r.Options.Offset = &offset
62 return r
63 }
64 65 // no documentation yet
66 func (r User_Customer) AcknowledgeSupportPolicy() (err error) {
67 var resp datatypes.Void
68 err = r.Session.DoRequest("SoftLayer_User_Customer", "acknowledgeSupportPolicy", nil, &r.Options, &resp)
69 return
70 }
71 72 // Create a user's API authentication key, allowing that user access to query the SoftLayer API. addApiAuthenticationKey() returns the user's new API key. Each portal user is allowed only one API key.
73 func (r User_Customer) AddApiAuthenticationKey() (resp string, err error) {
74 err = r.Session.DoRequest("SoftLayer_User_Customer", "addApiAuthenticationKey", nil, &r.Options, &resp)
75 return
76 }
77 78 // Grants the user access to one or more dedicated host devices. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access, then "not found" exceptions are thrown if the user attempts to access any of these devices.
79 //
80 // Users can assign device access to their child users, but not to themselves. An account's master has access to all devices on their customer account and can set dedicated host access for any of the other users on their account.
81 func (r User_Customer) AddBulkDedicatedHostAccess(dedicatedHostIds []int) (resp bool, err error) {
82 params := []interface{}{
83 dedicatedHostIds,
84 }
85 err = r.Session.DoRequest("SoftLayer_User_Customer", "addBulkDedicatedHostAccess", params, &r.Options, &resp)
86 return
87 }
88 89 // Add multiple hardware to a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. Hardware does not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. addBulkHardwareAccess() does not attempt to add hardware access if the given user already has access to that hardware object.
90 //
91 // Users can assign hardware access to their child users, but not to themselves. An account's master has access to all hardware on their customer account and can set hardware access for any of the other users on their account.
92 func (r User_Customer) AddBulkHardwareAccess(hardwareIds []int) (resp bool, err error) {
93 params := []interface{}{
94 hardwareIds,
95 }
96 err = r.Session.DoRequest("SoftLayer_User_Customer", "addBulkHardwareAccess", params, &r.Options, &resp)
97 return
98 }
99 100 // Add multiple permissions to a portal user's permission set. [[SoftLayer_User_Customer_CustomerPermission_Permission]] control which features in the SoftLayer customer portal and API a user may use. addBulkPortalPermission() does not attempt to add permissions already assigned to the user.
101 //
102 // Users can assign permissions to their child users, but not to themselves. An account's master has all portal permissions and can set permissions for any of the other users on their account.
103 //
104 // Use the [[SoftLayer_User_Customer_CustomerPermission_Permission::getAllObjects]] method to retrieve a list of all permissions available in the SoftLayer customer portal and API. Permissions are removed based on the keyName property of the permission objects within the permissions parameter.
105 func (r User_Customer) AddBulkPortalPermission(permissions []datatypes.User_Customer_CustomerPermission_Permission) (resp bool, err error) {
106 params := []interface{}{
107 permissions,
108 }
109 err = r.Session.DoRequest("SoftLayer_User_Customer", "addBulkPortalPermission", params, &r.Options, &resp)
110 return
111 }
112 113 // no documentation yet
114 func (r User_Customer) AddBulkRoles(roles []datatypes.User_Permission_Role) (err error) {
115 var resp datatypes.Void
116 params := []interface{}{
117 roles,
118 }
119 err = r.Session.DoRequest("SoftLayer_User_Customer", "addBulkRoles", params, &r.Options, &resp)
120 return
121 }
122 123 // Add multiple CloudLayer Computing Instances to a portal user's access list. A user's CloudLayer Computing Instance access list controls which of an account's CloudLayer Computing Instance objects a user has access to in the SoftLayer customer portal and API. CloudLayer Computing Instances do not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. addBulkVirtualGuestAccess() does not attempt to add CloudLayer Computing Instance access if the given user already has access to that CloudLayer Computing Instance object.
124 //
125 // Users can assign CloudLayer Computing Instance access to their child users, but not to themselves. An account's master has access to all CloudLayer Computing Instances on their customer account and can set CloudLayer Computing Instance access for any of the other users on their account.
126 func (r User_Customer) AddBulkVirtualGuestAccess(virtualGuestIds []int) (resp bool, err error) {
127 params := []interface{}{
128 virtualGuestIds,
129 }
130 err = r.Session.DoRequest("SoftLayer_User_Customer", "addBulkVirtualGuestAccess", params, &r.Options, &resp)
131 return
132 }
133 134 // Grants the user access to a single dedicated host device. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access, then "not found" exceptions are thrown if the user attempts to access any of these devices.
135 //
136 // Users can assign device access to their child users, but not to themselves. An account's master has access to all devices on their customer account and can set dedicated host access for any of the other users on their account.
137 //
138 // Only the USER_MANAGE permission is required to execute this.
139 func (r User_Customer) AddDedicatedHostAccess(dedicatedHostId *int) (resp bool, err error) {
140 params := []interface{}{
141 dedicatedHostId,
142 }
143 err = r.Session.DoRequest("SoftLayer_User_Customer", "addDedicatedHostAccess", params, &r.Options, &resp)
144 return
145 }
146 147 // no documentation yet
148 func (r User_Customer) AddExternalBinding(externalBinding *datatypes.User_External_Binding) (resp datatypes.User_Customer_External_Binding, err error) {
149 params := []interface{}{
150 externalBinding,
151 }
152 err = r.Session.DoRequest("SoftLayer_User_Customer", "addExternalBinding", params, &r.Options, &resp)
153 return
154 }
155 156 // Add hardware to a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. Hardware does not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user already has access to the hardware you're attempting to add then addHardwareAccess() returns true.
157 //
158 // Users can assign hardware access to their child users, but not to themselves. An account's master has access to all hardware on their customer account and can set hardware access for any of the other users on their account.
159 //
160 // Only the USER_MANAGE permission is required to execute this.
161 func (r User_Customer) AddHardwareAccess(hardwareId *int) (resp bool, err error) {
162 params := []interface{}{
163 hardwareId,
164 }
165 err = r.Session.DoRequest("SoftLayer_User_Customer", "addHardwareAccess", params, &r.Options, &resp)
166 return
167 }
168 169 // Create a notification subscription record for the user. If a subscription record exists for the notification, the record will be set to active, if currently inactive.
170 func (r User_Customer) AddNotificationSubscriber(notificationKeyName *string) (resp bool, err error) {
171 params := []interface{}{
172 notificationKeyName,
173 }
174 err = r.Session.DoRequest("SoftLayer_User_Customer", "addNotificationSubscriber", params, &r.Options, &resp)
175 return
176 }
177 178 // Add a permission to a portal user's permission set. [[SoftLayer_User_Customer_CustomerPermission_Permission]] control which features in the SoftLayer customer portal and API a user may use. If the user already has the permission you're attempting to add then addPortalPermission() returns true.
179 //
180 // Users can assign permissions to their child users, but not to themselves. An account's master has all portal permissions and can set permissions for any of the other users on their account.
181 //
182 // Use the [[SoftLayer_User_Customer_CustomerPermission_Permission::getAllObjects]] method to retrieve a list of all permissions available in the SoftLayer customer portal and API. Permissions are added based on the keyName property of the permission parameter.
183 func (r User_Customer) AddPortalPermission(permission *datatypes.User_Customer_CustomerPermission_Permission) (resp bool, err error) {
184 params := []interface{}{
185 permission,
186 }
187 err = r.Session.DoRequest("SoftLayer_User_Customer", "addPortalPermission", params, &r.Options, &resp)
188 return
189 }
190 191 // no documentation yet
192 func (r User_Customer) AddRole(role *datatypes.User_Permission_Role) (err error) {
193 var resp datatypes.Void
194 params := []interface{}{
195 role,
196 }
197 err = r.Session.DoRequest("SoftLayer_User_Customer", "addRole", params, &r.Options, &resp)
198 return
199 }
200 201 // Add a CloudLayer Computing Instance to a portal user's access list. A user's CloudLayer Computing Instance access list controls which of an account's CloudLayer Computing Instance objects a user has access to in the SoftLayer customer portal and API. CloudLayer Computing Instances do not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user already has access to the CloudLayer Computing Instance you're attempting to add then addVirtualGuestAccess() returns true.
202 //
203 // Users can assign CloudLayer Computing Instance access to their child users, but not to themselves. An account's master has access to all CloudLayer Computing Instances on their customer account and can set CloudLayer Computing Instance access for any of the other users on their account.
204 //
205 // Only the USER_MANAGE permission is required to execute this.
206 func (r User_Customer) AddVirtualGuestAccess(virtualGuestId *int) (resp bool, err error) {
207 params := []interface{}{
208 virtualGuestId,
209 }
210 err = r.Session.DoRequest("SoftLayer_User_Customer", "addVirtualGuestAccess", params, &r.Options, &resp)
211 return
212 }
213 214 // This method can be used in place of [[SoftLayer_User_Customer::editObject]] to change the parent user of this user.
215 //
216 // The new parent must be a user on the same account, and must not be a child of this user. A user is not allowed to change their own parent.
217 //
218 // If the cascadeFlag is set to false, then an exception will be thrown if the new parent does not have all of the permissions that this user possesses. If the cascadeFlag is set to true, then permissions will be removed from this user and the descendants of this user as necessary so that no children of the parent will have permissions that the parent does not possess. However, setting the cascadeFlag to true will not remove the access all device permissions from this user. The customer portal will need to be used to remove these permissions.
219 func (r User_Customer) AssignNewParentId(parentId *int, cascadePermissionsFlag *bool) (resp datatypes.User_Customer, err error) {
220 params := []interface{}{
221 parentId,
222 cascadePermissionsFlag,
223 }
224 err = r.Session.DoRequest("SoftLayer_User_Customer", "assignNewParentId", params, &r.Options, &resp)
225 return
226 }
227 228 // Select a type of preference you would like to modify using [[SoftLayer_User_Customer::getPreferenceTypes|getPreferenceTypes]] and invoke this method using that preference type key name.
229 func (r User_Customer) ChangePreference(preferenceTypeKeyName *string, value *string) (resp []datatypes.User_Preference, err error) {
230 params := []interface{}{
231 preferenceTypeKeyName,
232 value,
233 }
234 err = r.Session.DoRequest("SoftLayer_User_Customer", "changePreference", params, &r.Options, &resp)
235 return
236 }
237 238 // Create a new subscriber for a given resource.
239 func (r User_Customer) CreateNotificationSubscriber(keyName *string, resourceTableId *int) (resp bool, err error) {
240 params := []interface{}{
241 keyName,
242 resourceTableId,
243 }
244 err = r.Session.DoRequest("SoftLayer_User_Customer", "createNotificationSubscriber", params, &r.Options, &resp)
245 return
246 }
247 248 // Create a new user in the SoftLayer customer portal. It is not possible to set up SLL enable flags during object creation. These flags are ignored during object creation. You will need to make a subsequent call to edit object in order to enable VPN access.
249 //
250 // An account's master user and sub-users who have the User Manage permission can add new users.
251 //
252 // Users are created with a default permission set. After adding a user it may be helpful to set their permissions and device access.
253 //
254 // secondaryPasswordTimeoutDays will be set to the system configured default value if the attribute is not provided or the attribute is not a valid value.
255 //
256 // Note, neither password nor vpnPassword parameters are required.
257 //
258 // Password When a new user is created, an email will be sent to the new user's email address with a link to a url that will allow the new user to create or change their password for the SoftLayer customer portal.
259 //
260 // If the password parameter is provided and is not null, then that value will be validated. If it is a valid password, then the user will be created with this password. This user will still receive a portal password email. It can be used within 24 hours to change their password, or it can be allowed to expire, and the password provided during user creation will remain as the user's password.
261 //
262 // If the password parameter is not provided or the value is null, the user must set their portal password using the link sent in email within 24 hours. If the user fails to set their password within 24 hours, then a non-master user can use the "Reset Password" link on the login page of the portal to request a new email. A master user can use the link to retrieve a phone number to call to assist in resetting their password.
263 //
264 // The password parameter is ignored for VPN_ONLY users or for IBMid authenticated users.
265 //
266 // vpnPassword If the vpnPassword is provided, then the user's vpnPassword will be set to the provided password. When creating a vpn only user, the vpnPassword MUST be supplied. If the vpnPassword is not provided, then the user will need to use the portal to edit their profile and set the vpnPassword.
267 //
268 // IBMid considerations When a SoftLayer account is linked to a Platform Services (PaaS, formerly Bluemix) account, AND the trait on the SoftLayer Account indicating IBMid authentication is set, then SoftLayer will delegate the creation of an ACTIVE user to PaaS. This means that even though the request to create a new user in such an account may start at the IMS API, via this delegation we effectively turn it into a request that is driven by PaaS. In particular this means that any "invitation email" that comes to the user, will come from PaaS, not from IMS via IBMid.
269 //
270 // Users created in states other than ACTIVE (for example, a VPN_ONLY user) will be created directly in IMS without delegation (but note that no invitation is sent for a user created in any state other than ACTIVE).
271 func (r User_Customer) CreateObject(templateObject *datatypes.User_Customer, password *string, vpnPassword *string) (resp datatypes.User_Customer, err error) {
272 params := []interface{}{
273 templateObject,
274 password,
275 vpnPassword,
276 }
277 err = r.Session.DoRequest("SoftLayer_User_Customer", "createObject", params, &r.Options, &resp)
278 return
279 }
280 281 // Create delivery methods for a notification that the user is subscribed to. Multiple delivery method keyNames can be supplied to create multiple delivery methods for the specified notification. Available delivery methods - 'EMAIL'. Available notifications - 'PLANNED_MAINTENANCE', 'UNPLANNED_INCIDENT'.
282 func (r User_Customer) CreateSubscriberDeliveryMethods(notificationKeyName *string, deliveryMethodKeyNames []string) (resp bool, err error) {
283 params := []interface{}{
284 notificationKeyName,
285 deliveryMethodKeyNames,
286 }
287 err = r.Session.DoRequest("SoftLayer_User_Customer", "createSubscriberDeliveryMethods", params, &r.Options, &resp)
288 return
289 }
290 291 // Create a new subscriber for a given resource.
292 func (r User_Customer) DeactivateNotificationSubscriber(keyName *string, resourceTableId *int) (resp bool, err error) {
293 params := []interface{}{
294 keyName,
295 resourceTableId,
296 }
297 err = r.Session.DoRequest("SoftLayer_User_Customer", "deactivateNotificationSubscriber", params, &r.Options, &resp)
298 return
299 }
300 301 // Account master users and sub-users who have the User Manage permission in the SoftLayer customer portal can update other user's information. Use editObject() if you wish to edit a single user account. Users who do not have the User Manage permission can only update their own information.
302 func (r User_Customer) EditObject(templateObject *datatypes.User_Customer) (resp bool, err error) {
303 params := []interface{}{
304 templateObject,
305 }
306 err = r.Session.DoRequest("SoftLayer_User_Customer", "editObject", params, &r.Options, &resp)
307 return
308 }
309 310 // Account master users and sub-users who have the User Manage permission in the SoftLayer customer portal can update other user's information. Use editObjects() if you wish to edit multiple users at once. Users who do not have the User Manage permission can only update their own information.
311 func (r User_Customer) EditObjects(templateObjects []datatypes.User_Customer) (resp bool, err error) {
312 params := []interface{}{
313 templateObjects,
314 }
315 err = r.Session.DoRequest("SoftLayer_User_Customer", "editObjects", params, &r.Options, &resp)
316 return
317 }
318 319 // no documentation yet
320 func (r User_Customer) FindUserPreference(profileName *string, containerKeyname *string, preferenceKeyname *string) (resp []datatypes.Layout_Profile, err error) {
321 params := []interface{}{
322 profileName,
323 containerKeyname,
324 preferenceKeyname,
325 }
326 err = r.Session.DoRequest("SoftLayer_User_Customer", "findUserPreference", params, &r.Options, &resp)
327 return
328 }
329 330 // Retrieve The customer account that a user belongs to.
331 func (r User_Customer) GetAccount() (resp datatypes.Account, err error) {
332 err = r.Session.DoRequest("SoftLayer_User_Customer", "getAccount", nil, &r.Options, &resp)
333 return
334 }
335 336 // Retrieve
337 func (r User_Customer) GetActions() (resp []datatypes.User_Permission_Action, err error) {
338 err = r.Session.DoRequest("SoftLayer_User_Customer", "getActions", nil, &r.Options, &resp)
339 return
340 }
341 342 // The getActiveExternalAuthenticationVendors method will return a list of available external vendors that a SoftLayer user can authenticate against. The list will only contain vendors for which the user has at least one active external binding.
343 func (r User_Customer) GetActiveExternalAuthenticationVendors() (resp []datatypes.Container_User_Customer_External_Binding_Vendor, err error) {
344 err = r.Session.DoRequest("SoftLayer_User_Customer", "getActiveExternalAuthenticationVendors", nil, &r.Options, &resp)
345 return
346 }
347 348 // Retrieve A portal user's additional email addresses. These email addresses are contacted when updates are made to support tickets.
349 func (r User_Customer) GetAdditionalEmails() (resp []datatypes.User_Customer_AdditionalEmail, err error) {
350 err = r.Session.DoRequest("SoftLayer_User_Customer", "getAdditionalEmails", nil, &r.Options, &resp)
351 return
352 }
353 354 // no documentation yet
355 func (r User_Customer) GetAgentImpersonationToken() (resp string, err error) {
356 err = r.Session.DoRequest("SoftLayer_User_Customer", "getAgentImpersonationToken", nil, &r.Options, &resp)
357 return
358 }
359 360 // no documentation yet
361 func (r User_Customer) GetAllowedDedicatedHostIds() (resp []int, err error) {
362 err = r.Session.DoRequest("SoftLayer_User_Customer", "getAllowedDedicatedHostIds", nil, &r.Options, &resp)
363 return
364 }
365 366 // no documentation yet
367 func (r User_Customer) GetAllowedHardwareIds() (resp []int, err error) {
368 err = r.Session.DoRequest("SoftLayer_User_Customer", "getAllowedHardwareIds", nil, &r.Options, &resp)
369 return
370 }
371 372 // no documentation yet
373 func (r User_Customer) GetAllowedVirtualGuestIds() (resp []int, err error) {
374 err = r.Session.DoRequest("SoftLayer_User_Customer", "getAllowedVirtualGuestIds", nil, &r.Options, &resp)
375 return
376 }
377 378 // Retrieve A portal user's API Authentication keys. There is a max limit of one API key per user.
379 func (r User_Customer) GetApiAuthenticationKeys() (resp []datatypes.User_Customer_ApiAuthentication, err error) {
380 err = r.Session.DoRequest("SoftLayer_User_Customer", "getApiAuthenticationKeys", nil, &r.Options, &resp)
381 return
382 }
383 384 // This method generate user authentication token and return [[SoftLayer_Container_User_Authentication_Token]] object which will be used to authenticate user to login to SoftLayer customer portal.
385 func (r User_Customer) GetAuthenticationToken(token *datatypes.Container_User_Authentication_Token) (resp datatypes.Container_User_Authentication_Token, err error) {
386 params := []interface{}{
387 token,
388 }
389 err = r.Session.DoRequest("SoftLayer_User_Customer", "getAuthenticationToken", params, &r.Options, &resp)
390 return
391 }
392 393 // Retrieve A portal user's child users. Some portal users may not have child users.
394 func (r User_Customer) GetChildUsers() (resp []datatypes.User_Customer, err error) {
395 err = r.Session.DoRequest("SoftLayer_User_Customer", "getChildUsers", nil, &r.Options, &resp)
396 return
397 }
398 399 // Retrieve An user's associated closed tickets.
400 func (r User_Customer) GetClosedTickets() (resp []datatypes.Ticket, err error) {
401 err = r.Session.DoRequest("SoftLayer_User_Customer", "getClosedTickets", nil, &r.Options, &resp)
402 return
403 }
404 405 // Retrieve The dedicated hosts to which the user has been granted access.
406 func (r User_Customer) GetDedicatedHosts() (resp []datatypes.Virtual_DedicatedHost, err error) {
407 err = r.Session.DoRequest("SoftLayer_User_Customer", "getDedicatedHosts", nil, &r.Options, &resp)
408 return
409 }
410 411 // This method is not applicable to legacy SoftLayer-authenticated users and can only be invoked for IBMid-authenticated users.
412 func (r User_Customer) GetDefaultAccount(providerType *string) (resp datatypes.Account, err error) {
413 params := []interface{}{
414 providerType,
415 }
416 err = r.Session.DoRequest("SoftLayer_User_Customer", "getDefaultAccount", params, &r.Options, &resp)
417 return
418 }
419 420 // Retrieve The external authentication bindings that link an external identifier to a SoftLayer user.
421 func (r User_Customer) GetExternalBindings() (resp []datatypes.User_External_Binding, err error) {
422 err = r.Session.DoRequest("SoftLayer_User_Customer", "getExternalBindings", nil, &r.Options, &resp)
423 return
424 }
425 426 // Retrieve A portal user's accessible hardware. These permissions control which hardware a user has access to in the SoftLayer customer portal.
427 func (r User_Customer) GetHardware() (resp []datatypes.Hardware, err error) {
428 err = r.Session.DoRequest("SoftLayer_User_Customer", "getHardware", nil, &r.Options, &resp)
429 return
430 }
431 432 // Retrieve the number of servers that a portal user has access to. Portal users can have restrictions set to limit services for and to perform actions on hardware. You can set these permissions in the portal by clicking the "administrative" then "user admin" links.
433 func (r User_Customer) GetHardwareCount() (resp int, err error) {
434 err = r.Session.DoRequest("SoftLayer_User_Customer", "getHardwareCount", nil, &r.Options, &resp)
435 return
436 }
437 438 // Retrieve Hardware notifications associated with this user. A hardware notification links a user to a piece of hardware, and that user will be notified if any monitors on that hardware fail, if the monitors have a status of 'Notify User'.
439 func (r User_Customer) GetHardwareNotifications() (resp []datatypes.User_Customer_Notification_Hardware, err error) {
440 err = r.Session.DoRequest("SoftLayer_User_Customer", "getHardwareNotifications", nil, &r.Options, &resp)
441 return
442 }
443 444 // Retrieve Whether or not a user has acknowledged the support policy.
445 func (r User_Customer) GetHasAcknowledgedSupportPolicyFlag() (resp bool, err error) {
446 err = r.Session.DoRequest("SoftLayer_User_Customer", "getHasAcknowledgedSupportPolicyFlag", nil, &r.Options, &resp)
447 return
448 }
449 450 // Retrieve Permission granting the user access to all Dedicated Host devices on the account.
451 func (r User_Customer) GetHasFullDedicatedHostAccessFlag() (resp bool, err error) {
452 err = r.Session.DoRequest("SoftLayer_User_Customer", "getHasFullDedicatedHostAccessFlag", nil, &r.Options, &resp)
453 return
454 }
455 456 // Retrieve Whether or not a portal user has access to all hardware on their account.
457 func (r User_Customer) GetHasFullHardwareAccessFlag() (resp bool, err error) {
458 err = r.Session.DoRequest("SoftLayer_User_Customer", "getHasFullHardwareAccessFlag", nil, &r.Options, &resp)
459 return
460 }
461 462 // Retrieve Whether or not a portal user has access to all virtual guests on their account.
463 func (r User_Customer) GetHasFullVirtualGuestAccessFlag() (resp bool, err error) {
464 err = r.Session.DoRequest("SoftLayer_User_Customer", "getHasFullVirtualGuestAccessFlag", nil, &r.Options, &resp)
465 return
466 }
467 468 // Retrieve Specifically relating the Customer instance to an IBMid. A Customer instance may or may not have an IBMid link.
469 func (r User_Customer) GetIbmIdLink() (resp datatypes.User_Customer_Link, err error) {
470 err = r.Session.DoRequest("SoftLayer_User_Customer", "getIbmIdLink", nil, &r.Options, &resp)
471 return
472 }
473 474 // no documentation yet
475 func (r User_Customer) GetImpersonationToken() (resp string, err error) {
476 err = r.Session.DoRequest("SoftLayer_User_Customer", "getImpersonationToken", nil, &r.Options, &resp)
477 return
478 }
479 480 // Retrieve Contains the definition of the layout profile.
481 func (r User_Customer) GetLayoutProfiles() (resp []datatypes.Layout_Profile, err error) {
482 err = r.Session.DoRequest("SoftLayer_User_Customer", "getLayoutProfiles", nil, &r.Options, &resp)
483 return
484 }
485 486 // Retrieve A user's locale. Locale holds user's language and region information.
487 func (r User_Customer) GetLocale() (resp datatypes.Locale, err error) {
488 err = r.Session.DoRequest("SoftLayer_User_Customer", "getLocale", nil, &r.Options, &resp)
489 return
490 }
491 492 // Retrieve A user's attempts to log into the SoftLayer customer portal.
493 func (r User_Customer) GetLoginAttempts() (resp []datatypes.User_Customer_Access_Authentication, err error) {
494 err = r.Session.DoRequest("SoftLayer_User_Customer", "getLoginAttempts", nil, &r.Options, &resp)
495 return
496 }
497 498 // Attempt to authenticate a user to the SoftLayer customer portal using the provided authentication container. Depending on the specific type of authentication container that is used, this API will leverage the appropriate authentication protocol. If authentication is successful then the API returns a list of linked accounts for the user, a token containing the ID of the authenticated user and a hash key used by the SoftLayer customer portal to maintain authentication.
499 func (r User_Customer) GetLoginToken(request *datatypes.Container_Authentication_Request_Contract) (resp datatypes.Container_Authentication_Response_Common, err error) {
500 params := []interface{}{
501 request,
502 }
503 err = r.Session.DoRequest("SoftLayer_User_Customer", "getLoginToken", params, &r.Options, &resp)
504 return
505 }
506 507 // An OpenIdConnect identity, for example an IBMid, can be linked or mapped to one or more individual SoftLayer users, but no more than one SoftLayer user per account. This effectively links the OpenIdConnect identity to those accounts. This API returns a list of all the accounts for which there is a link between the OpenIdConnect identity and a SoftLayer user. Invoke this only on IBMid-authenticated users.
508 func (r User_Customer) GetMappedAccounts(providerType *string) (resp []datatypes.Account, err error) {
509 params := []interface{}{
510 providerType,
511 }
512 err = r.Session.DoRequest("SoftLayer_User_Customer", "getMappedAccounts", params, &r.Options, &resp)
513 return
514 }
515 516 // Retrieve Notification subscription records for the user.
517 func (r User_Customer) GetNotificationSubscribers() (resp []datatypes.Notification_Subscriber, err error) {
518 err = r.Session.DoRequest("SoftLayer_User_Customer", "getNotificationSubscribers", nil, &r.Options, &resp)
519 return
520 }
521 522 // getObject retrieves the SoftLayer_User_Customer object whose ID number corresponds to the ID number of the init parameter passed to the SoftLayer_User_Customer service. You can only retrieve users that are assigned to the customer account belonging to the user making the API call.
523 func (r User_Customer) GetObject() (resp datatypes.User_Customer, err error) {
524 err = r.Session.DoRequest("SoftLayer_User_Customer", "getObject", nil, &r.Options, &resp)
525 return
526 }
527 528 // This API returns a SoftLayer_Container_User_Customer_OpenIdConnect_MigrationState object containing the necessary information to determine what migration state the user is in. If the account is not OpenIdConnect authenticated, then an exception is thrown.
529 func (r User_Customer) GetOpenIdConnectMigrationState() (resp datatypes.Container_User_Customer_OpenIdConnect_MigrationState, err error) {
530 err = r.Session.DoRequest("SoftLayer_User_Customer", "getOpenIdConnectMigrationState", nil, &r.Options, &resp)
531 return
532 }
533 534 // Retrieve An user's associated open tickets.
535 func (r User_Customer) GetOpenTickets() (resp []datatypes.Ticket, err error) {
536 err = r.Session.DoRequest("SoftLayer_User_Customer", "getOpenTickets", nil, &r.Options, &resp)
537 return
538 }
539 540 // Retrieve A portal user's vpn accessible subnets.
541 func (r User_Customer) GetOverrides() (resp []datatypes.Network_Service_Vpn_Overrides, err error) {
542 err = r.Session.DoRequest("SoftLayer_User_Customer", "getOverrides", nil, &r.Options, &resp)
543 return
544 }
545 546 // Retrieve A portal user's parent user. If a SoftLayer_User_Customer has a null parentId property then it doesn't have a parent user.
547 func (r User_Customer) GetParent() (resp datatypes.User_Customer, err error) {
548 err = r.Session.DoRequest("SoftLayer_User_Customer", "getParent", nil, &r.Options, &resp)
549 return
550 }
551 552 // no documentation yet
553 func (r User_Customer) GetPasswordRequirements(isVpn *bool) (resp datatypes.Container_User_Customer_PasswordSet, err error) {
554 params := []interface{}{
555 isVpn,
556 }
557 err = r.Session.DoRequest("SoftLayer_User_Customer", "getPasswordRequirements", params, &r.Options, &resp)
558 return
559 }
560 561 // Retrieve A portal user's permissions. These permissions control that user's access to functions within the SoftLayer customer portal and API.
562 func (r User_Customer) GetPermissions() (resp []datatypes.User_Customer_CustomerPermission_Permission, err error) {
563 err = r.Session.DoRequest("SoftLayer_User_Customer", "getPermissions", nil, &r.Options, &resp)
564 return
565 }
566 567 // Attempt to authenticate a username and password to the SoftLayer customer portal. Many portal user accounts are configured to require answering a security question on login. In this case getPortalLoginToken() also verifies the given security question ID and answer. If authentication is successful then the API returns a token containing the ID of the authenticated user and a hash key used by the SoftLayer customer portal to maintain authentication.
568 func (r User_Customer) GetPortalLoginToken(username *string, password *string, securityQuestionId *int, securityQuestionAnswer *string) (resp datatypes.Container_User_Customer_Portal_Token, err error) {
569 params := []interface{}{
570 username,
571 password,
572 securityQuestionId,
573 securityQuestionAnswer,
574 }
575 err = r.Session.DoRequest("SoftLayer_User_Customer", "getPortalLoginToken", params, &r.Options, &resp)
576 return
577 }
578 579 // Select a type of preference you would like to get using [[SoftLayer_User_Customer::getPreferenceTypes|getPreferenceTypes]] and invoke this method using that preference type key name.
580 func (r User_Customer) GetPreference(preferenceTypeKeyName *string) (resp datatypes.User_Preference, err error) {
581 params := []interface{}{
582 preferenceTypeKeyName,
583 }
584 err = r.Session.DoRequest("SoftLayer_User_Customer", "getPreference", params, &r.Options, &resp)
585 return
586 }
587 588 // Use any of the preference types to fetch or modify user preferences using [[SoftLayer_User_Customer::getPreference|getPreference]] or [[SoftLayer_User_Customer::changePreference|changePreference]], respectively.
589 func (r User_Customer) GetPreferenceTypes() (resp []datatypes.User_Preference_Type, err error) {
590 err = r.Session.DoRequest("SoftLayer_User_Customer", "getPreferenceTypes", nil, &r.Options, &resp)
591 return
592 }
593 594 // Retrieve Data type contains a single user preference to a specific preference type.
595 func (r User_Customer) GetPreferences() (resp []datatypes.User_Preference, err error) {
596 err = r.Session.DoRequest("SoftLayer_User_Customer", "getPreferences", nil, &r.Options, &resp)
597 return
598 }
599 600 // Retrieve the authentication requirements for an outstanding password set/reset request. The requirements returned in the same SoftLayer_Container_User_Customer_PasswordSet container which is provided as a parameter into this request. The SoftLayer_Container_User_Customer_PasswordSet::authenticationMethods array will contain an entry for each authentication method required for the user. See SoftLayer_Container_User_Customer_PasswordSet for more details.
601 //
602 // If the user has required authentication methods, then authentication information will be supplied to the SoftLayer_User_Customer::processPasswordSetRequest method within this same SoftLayer_Container_User_Customer_PasswordSet container. All existing information in the container must continue to exist in the container to complete the password set/reset process.
603 func (r User_Customer) GetRequirementsForPasswordSet(passwordSet *datatypes.Container_User_Customer_PasswordSet) (resp datatypes.Container_User_Customer_PasswordSet, err error) {
604 params := []interface{}{
605 passwordSet,
606 }
607 err = r.Session.DoRequest("SoftLayer_User_Customer", "getRequirementsForPasswordSet", params, &r.Options, &resp)
608 return
609 }
610 611 // Retrieve
612 func (r User_Customer) GetRoles() (resp []datatypes.User_Permission_Role, err error) {
613 err = r.Session.DoRequest("SoftLayer_User_Customer", "getRoles", nil, &r.Options, &resp)
614 return
615 }
616 617 // Retrieve A portal user's security question answers. Some portal users may not have security answers or may not be configured to require answering a security question on login.
618 func (r User_Customer) GetSecurityAnswers() (resp []datatypes.User_Customer_Security_Answer, err error) {
619 err = r.Session.DoRequest("SoftLayer_User_Customer", "getSecurityAnswers", nil, &r.Options, &resp)
620 return
621 }
622 623 // Retrieve A user's notification subscription records.
624 func (r User_Customer) GetSubscribers() (resp []datatypes.Notification_User_Subscriber, err error) {
625 err = r.Session.DoRequest("SoftLayer_User_Customer", "getSubscribers", nil, &r.Options, &resp)
626 return
627 }
628 629 // Retrieve A user's successful attempts to log into the SoftLayer customer portal.
630 func (r User_Customer) GetSuccessfulLogins() (resp []datatypes.User_Customer_Access_Authentication, err error) {
631 err = r.Session.DoRequest("SoftLayer_User_Customer", "getSuccessfulLogins", nil, &r.Options, &resp)
632 return
633 }
634 635 // Retrieve Whether or not a user is required to acknowledge the support policy for portal access.
636 func (r User_Customer) GetSupportPolicyAcknowledgementRequiredFlag() (resp int, err error) {
637 err = r.Session.DoRequest("SoftLayer_User_Customer", "getSupportPolicyAcknowledgementRequiredFlag", nil, &r.Options, &resp)
638 return
639 }
640 641 // no documentation yet
642 func (r User_Customer) GetSupportPolicyDocument() (resp []byte, err error) {
643 err = r.Session.DoRequest("SoftLayer_User_Customer", "getSupportPolicyDocument", nil, &r.Options, &resp)
644 return
645 }
646 647 // no documentation yet
648 func (r User_Customer) GetSupportPolicyName() (resp string, err error) {
649 err = r.Session.DoRequest("SoftLayer_User_Customer", "getSupportPolicyName", nil, &r.Options, &resp)
650 return
651 }
652 653 // no documentation yet
654 func (r User_Customer) GetSupportedLocales() (resp []datatypes.Locale, err error) {
655 err = r.Session.DoRequest("SoftLayer_User_Customer", "getSupportedLocales", nil, &r.Options, &resp)
656 return
657 }
658 659 // Retrieve Whether or not a user must take a brief survey the next time they log into the SoftLayer customer portal.
660 func (r User_Customer) GetSurveyRequiredFlag() (resp bool, err error) {
661 err = r.Session.DoRequest("SoftLayer_User_Customer", "getSurveyRequiredFlag", nil, &r.Options, &resp)
662 return
663 }
664 665 // Retrieve The surveys that a user has taken in the SoftLayer customer portal.
666 func (r User_Customer) GetSurveys() (resp []datatypes.Survey, err error) {
667 err = r.Session.DoRequest("SoftLayer_User_Customer", "getSurveys", nil, &r.Options, &resp)
668 return
669 }
670 671 // Retrieve An user's associated tickets.
672 func (r User_Customer) GetTickets() (resp []datatypes.Ticket, err error) {
673 err = r.Session.DoRequest("SoftLayer_User_Customer", "getTickets", nil, &r.Options, &resp)
674 return
675 }
676 677 // Retrieve A portal user's time zone.
678 func (r User_Customer) GetTimezone() (resp datatypes.Locale_Timezone, err error) {
679 err = r.Session.DoRequest("SoftLayer_User_Customer", "getTimezone", nil, &r.Options, &resp)
680 return
681 }
682 683 // Retrieve A user's unsuccessful attempts to log into the SoftLayer customer portal.
684 func (r User_Customer) GetUnsuccessfulLogins() (resp []datatypes.User_Customer_Access_Authentication, err error) {
685 err = r.Session.DoRequest("SoftLayer_User_Customer", "getUnsuccessfulLogins", nil, &r.Options, &resp)
686 return
687 }
688 689 // Retrieve a user id using a password token provided to the user in an email generated by the SoftLayer_User_Customer::initiatePortalPasswordChange request. Password recovery keys are valid for 24 hours after they're generated.
690 //
691 // When a new user is created or when a user has requested a password change using initiatePortalPasswordChange, they will have received an email that contains a url with a token. That token is used as the parameter for getUserIdForPasswordSet. Once the user id is known, then the SoftLayer_User_Customer object can be retrieved which is necessary to complete the process to set or reset a user's password.
692 func (r User_Customer) GetUserIdForPasswordSet(key *string) (resp int, err error) {
693 params := []interface{}{
694 key,
695 }
696 err = r.Session.DoRequest("SoftLayer_User_Customer", "getUserIdForPasswordSet", params, &r.Options, &resp)
697 return
698 }
699 700 // Retrieve User customer link with IBMid and IAMid.
701 func (r User_Customer) GetUserLinks() (resp []datatypes.User_Customer_Link, err error) {
702 err = r.Session.DoRequest("SoftLayer_User_Customer", "getUserLinks", nil, &r.Options, &resp)
703 return
704 }
705 706 // no documentation yet
707 func (r User_Customer) GetUserPreferences(profileName *string, containerKeyname *string) (resp []datatypes.Layout_Profile, err error) {
708 params := []interface{}{
709 profileName,
710 containerKeyname,
711 }
712 err = r.Session.DoRequest("SoftLayer_User_Customer", "getUserPreferences", params, &r.Options, &resp)
713 return
714 }
715 716 // Retrieve A portal user's status, which controls overall access to the SoftLayer customer portal and VPN access to the private network.
717 func (r User_Customer) GetUserStatus() (resp datatypes.User_Customer_Status, err error) {
718 err = r.Session.DoRequest("SoftLayer_User_Customer", "getUserStatus", nil, &r.Options, &resp)
719 return
720 }
721 722 // Retrieve the number of CloudLayer Computing Instances that a portal user has access to. Portal users can have restrictions set to limit services for and to perform actions on CloudLayer Computing Instances. You can set these permissions in the portal by clicking the "administrative" then "user admin" links.
723 func (r User_Customer) GetVirtualGuestCount() (resp int, err error) {
724 err = r.Session.DoRequest("SoftLayer_User_Customer", "getVirtualGuestCount", nil, &r.Options, &resp)
725 return
726 }
727 728 // Retrieve A portal user's accessible CloudLayer Computing Instances. These permissions control which CloudLayer Computing Instances a user has access to in the SoftLayer customer portal.
729 func (r User_Customer) GetVirtualGuests() (resp []datatypes.Virtual_Guest, err error) {
730 err = r.Session.DoRequest("SoftLayer_User_Customer", "getVirtualGuests", nil, &r.Options, &resp)
731 return
732 }
733 734 // no documentation yet
735 func (r User_Customer) InTerminalStatus() (resp bool, err error) {
736 err = r.Session.DoRequest("SoftLayer_User_Customer", "inTerminalStatus", nil, &r.Options, &resp)
737 return
738 }
739 740 // Sends password change email to the user containing url that allows the user the change their password. This is the first step when a user wishes to change their password. The url that is generated contains a one-time use token that is valid for only 24-hours.
741 //
742 // If this is a new master user who has never logged into the portal, then password reset will be initiated. Once a master user has logged into the portal, they must setup their security questions prior to logging out because master users are required to answer a security question during the password reset process. Should a master user not have security questions defined and not remember their password in order to define the security questions, then they will need to contact support at live chat or Revenue Services for assistance.
743 //
744 // Due to security reasons, the number of reset requests per username are limited within a undisclosed timeframe.
745 func (r User_Customer) InitiatePortalPasswordChange(username *string) (resp bool, err error) {
746 params := []interface{}{
747 username,
748 }
749 err = r.Session.DoRequest("SoftLayer_User_Customer", "initiatePortalPasswordChange", params, &r.Options, &resp)
750 return
751 }
752 753 // A Brand Agent that has permissions to Add Customer Accounts will be able to request the password email be sent to the Master User of a Customer Account created by the same Brand as the agent making the request. Due to security reasons, the number of reset requests are limited within an undisclosed timeframe.
754 func (r User_Customer) InitiatePortalPasswordChangeByBrandAgent(username *string) (resp bool, err error) {
755 params := []interface{}{
756 username,
757 }
758 err = r.Session.DoRequest("SoftLayer_User_Customer", "initiatePortalPasswordChangeByBrandAgent", params, &r.Options, &resp)
759 return
760 }
761 762 // Send email invitation to a user to join a SoftLayer account and authenticate with OpenIdConnect. Throws an exception on error.
763 func (r User_Customer) InviteUserToLinkOpenIdConnect(providerType *string) (err error) {
764 var resp datatypes.Void
765 params := []interface{}{
766 providerType,
767 }
768 err = r.Session.DoRequest("SoftLayer_User_Customer", "inviteUserToLinkOpenIdConnect", params, &r.Options, &resp)
769 return
770 }
771 772 // Portal users are considered master users if they don't have an associated parent user. The only users who don't have parent users are users whose username matches their SoftLayer account name. Master users have special permissions throughout the SoftLayer customer portal.
773 // Deprecated: This function has been marked as deprecated.
774 func (r User_Customer) IsMasterUser() (resp bool, err error) {
775 err = r.Session.DoRequest("SoftLayer_User_Customer", "isMasterUser", nil, &r.Options, &resp)
776 return
777 }
778 779 // Determine if a string is the given user's login password to the SoftLayer customer portal.
780 func (r User_Customer) IsValidPortalPassword(password *string) (resp bool, err error) {
781 params := []interface{}{
782 password,
783 }
784 err = r.Session.DoRequest("SoftLayer_User_Customer", "isValidPortalPassword", params, &r.Options, &resp)
785 return
786 }
787 788 // The perform external authentication method will authenticate the given external authentication container with an external vendor. The authentication container and its contents will be verified before an attempt is made to authenticate the contents of the container with an external vendor.
789 func (r User_Customer) PerformExternalAuthentication(authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp datatypes.Container_User_Customer_Portal_Token, err error) {
790 params := []interface{}{
791 authenticationContainer,
792 }
793 err = r.Session.DoRequest("SoftLayer_User_Customer", "performExternalAuthentication", params, &r.Options, &resp)
794 return
795 }
796 797 // Set the password for a user who has an outstanding password request. A user with an outstanding password request will have an unused and unexpired password key. The password key is part of the url provided to the user in the email sent to the user with information on how to set their password. The email was generated by the SoftLayer_User_Customer::initiatePortalPasswordRequest request. Password recovery keys are valid for 24 hours after they're generated.
798 //
799 // If the user has required authentication methods as specified by in the SoftLayer_Container_User_Customer_PasswordSet container returned from the SoftLayer_User_Customer::getRequirementsForPasswordSet request, then additional requests must be made to processPasswordSetRequest to authenticate the user before changing the password. First, if the user has security questions set on their profile, they will be required to answer one of their questions correctly. Next, if the user has Verisign or Google Authentication on their account, they must authenticate according to the two-factor provider. All of this authentication is done using the SoftLayer_Container_User_Customer_PasswordSet container.
800 //
801 // User portal passwords must match the following restrictions. Portal passwords must...
802 // * ...be over eight characters long.
803 // * ...be under twenty characters long.
804 // * ...contain at least one uppercase letter
805 // * ...contain at least one lowercase letter
806 // * ...contain at least one number
807 // * ...contain one of the special characters _ - | @ . , ? / ! ~ # $ % ^ & * ( ) { } [ ] \ + =
808 // * ...not match your username
809 func (r User_Customer) ProcessPasswordSetRequest(passwordSet *datatypes.Container_User_Customer_PasswordSet, authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp bool, err error) {
810 params := []interface{}{
811 passwordSet,
812 authenticationContainer,
813 }
814 err = r.Session.DoRequest("SoftLayer_User_Customer", "processPasswordSetRequest", params, &r.Options, &resp)
815 return
816 }
817 818 // Revoke access to all dedicated hosts on the account for this user. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access or the access has been revoked, then "not found" exceptions are thrown if the user attempts to access any of these devices. If the current user does not have administrative privileges over this user, an inadequate permissions exception will get thrown.
819 //
820 // Users can call this function on child users, but not to themselves. An account's master has access to all users permissions on their account.
821 func (r User_Customer) RemoveAllDedicatedHostAccessForThisUser() (resp bool, err error) {
822 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeAllDedicatedHostAccessForThisUser", nil, &r.Options, &resp)
823 return
824 }
825 826 // Remove all hardware from a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. If the current user does not have administrative privileges over this user, an inadequate permissions exception will get thrown.
827 //
828 // Users can call this function on child users, but not to themselves. An account's master has access to all users permissions on their account.
829 func (r User_Customer) RemoveAllHardwareAccessForThisUser() (resp bool, err error) {
830 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeAllHardwareAccessForThisUser", nil, &r.Options, &resp)
831 return
832 }
833 834 // Remove all cloud computing instances from a portal user's instance access list. A user's instance access list controls which of an account's computing instance objects a user has access to in the SoftLayer customer portal and API. If the current user does not have administrative privileges over this user, an inadequate permissions exception will get thrown.
835 //
836 // Users can call this function on child users, but not to themselves. An account's master has access to all users permissions on their account.
837 func (r User_Customer) RemoveAllVirtualAccessForThisUser() (resp bool, err error) {
838 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeAllVirtualAccessForThisUser", nil, &r.Options, &resp)
839 return
840 }
841 842 // Remove a user's API authentication key, removing that user's access to query the SoftLayer API.
843 func (r User_Customer) RemoveApiAuthenticationKey(keyId *int) (resp bool, err error) {
844 params := []interface{}{
845 keyId,
846 }
847 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeApiAuthenticationKey", params, &r.Options, &resp)
848 return
849 }
850 851 // Revokes access for the user to one or more dedicated host devices. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access or the access has been revoked, then "not found" exceptions are thrown if the user attempts to access any of these devices.
852 //
853 // Users can assign device access to their child users, but not to themselves. An account's master has access to all devices on their customer account and can set dedicated host access for any of the other users on their account.
854 //
855 // If the user has full dedicatedHost access, then it will provide access to "ALL but passed in" dedicatedHost ids.
856 func (r User_Customer) RemoveBulkDedicatedHostAccess(dedicatedHostIds []int) (resp bool, err error) {
857 params := []interface{}{
858 dedicatedHostIds,
859 }
860 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeBulkDedicatedHostAccess", params, &r.Options, &resp)
861 return
862 }
863 864 // Remove multiple hardware from a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. Hardware does not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user does not has access to the hardware you're attempting to remove then removeBulkHardwareAccess() returns true.
865 //
866 // Users can assign hardware access to their child users, but not to themselves. An account's master has access to all hardware on their customer account and can set hardware access for any of the other users on their account.
867 //
868 // If the user has full hardware access, then it will provide access to "ALL but passed in" hardware ids.
869 func (r User_Customer) RemoveBulkHardwareAccess(hardwareIds []int) (resp bool, err error) {
870 params := []interface{}{
871 hardwareIds,
872 }
873 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeBulkHardwareAccess", params, &r.Options, &resp)
874 return
875 }
876 877 // Remove (revoke) multiple permissions from a portal user's permission set. [[SoftLayer_User_Customer_CustomerPermission_Permission]] control which features in the SoftLayer customer portal and API a user may use. Removing a user's permission will affect that user's portal and API access. removePortalPermission() does not attempt to remove permissions that are not assigned to the user.
878 //
879 // Users can grant or revoke permissions to their child users, but not to themselves. An account's master has all portal permissions and can grant permissions for any of the other users on their account.
880 //
881 // If the cascadePermissionsFlag is set to true, then removing the permissions from a user will cascade down the child hierarchy and remove the permissions from this user along with all child users who also have the permission.
882 //
883 // If the cascadePermissionsFlag is not provided or is set to false and the user has children users who have the permission, then an exception will be thrown, and the permission will not be removed from this user.
884 //
885 // Use the [[SoftLayer_User_Customer_CustomerPermission_Permission::getAllObjects]] method to retrieve a list of all permissions available in the SoftLayer customer portal and API. Permissions are removed based on the keyName property of the permission objects within the permissions parameter.
886 func (r User_Customer) RemoveBulkPortalPermission(permissions []datatypes.User_Customer_CustomerPermission_Permission, cascadePermissionsFlag *bool) (resp bool, err error) {
887 params := []interface{}{
888 permissions,
889 cascadePermissionsFlag,
890 }
891 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeBulkPortalPermission", params, &r.Options, &resp)
892 return
893 }
894 895 // no documentation yet
896 func (r User_Customer) RemoveBulkRoles(roles []datatypes.User_Permission_Role) (err error) {
897 var resp datatypes.Void
898 params := []interface{}{
899 roles,
900 }
901 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeBulkRoles", params, &r.Options, &resp)
902 return
903 }
904 905 // Remove multiple CloudLayer Computing Instances from a portal user's access list. A user's CloudLayer Computing Instance access list controls which of an account's CloudLayer Computing Instance objects a user has access to in the SoftLayer customer portal and API. CloudLayer Computing Instances do not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user does not has access to the CloudLayer Computing Instance you're attempting remove add then removeBulkVirtualGuestAccess() returns true.
906 //
907 // Users can assign CloudLayer Computing Instance access to their child users, but not to themselves. An account's master has access to all CloudLayer Computing Instances on their customer account and can set hardware access for any of the other users on their account.
908 func (r User_Customer) RemoveBulkVirtualGuestAccess(virtualGuestIds []int) (resp bool, err error) {
909 params := []interface{}{
910 virtualGuestIds,
911 }
912 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeBulkVirtualGuestAccess", params, &r.Options, &resp)
913 return
914 }
915 916 // Revokes access for the user to a single dedicated host device. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access or the access has been revoked, then "not found" exceptions are thrown if the user attempts to access any of these devices.
917 //
918 // Users can assign device access to their child users, but not to themselves. An account's master has access to all devices on their customer account and can set dedicated host access for any of the other users on their account.
919 func (r User_Customer) RemoveDedicatedHostAccess(dedicatedHostId *int) (resp bool, err error) {
920 params := []interface{}{
921 dedicatedHostId,
922 }
923 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeDedicatedHostAccess", params, &r.Options, &resp)
924 return
925 }
926 927 // no documentation yet
928 func (r User_Customer) RemoveExternalBinding(externalBinding *datatypes.User_External_Binding) (resp bool, err error) {
929 params := []interface{}{
930 externalBinding,
931 }
932 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeExternalBinding", params, &r.Options, &resp)
933 return
934 }
935 936 // Remove hardware from a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. Hardware does not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user does not has access to the hardware you're attempting remove add then removeHardwareAccess() returns true.
937 //
938 // Users can assign hardware access to their child users, but not to themselves. An account's master has access to all hardware on their customer account and can set hardware access for any of the other users on their account.
939 func (r User_Customer) RemoveHardwareAccess(hardwareId *int) (resp bool, err error) {
940 params := []interface{}{
941 hardwareId,
942 }
943 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeHardwareAccess", params, &r.Options, &resp)
944 return
945 }
946 947 // Remove (revoke) a permission from a portal user's permission set. [[SoftLayer_User_Customer_CustomerPermission_Permission]] control which features in the SoftLayer customer portal and API a user may use. Removing a user's permission will affect that user's portal and API access. If the user does not have the permission you're attempting to remove then removePortalPermission() returns true.
948 //
949 // Users can assign permissions to their child users, but not to themselves. An account's master has all portal permissions and can set permissions for any of the other users on their account.
950 //
951 // If the cascadePermissionsFlag is set to true, then removing the permission from a user will cascade down the child hierarchy and remove the permission from this user and all child users who also have the permission.
952 //
953 // If the cascadePermissionsFlag is not set or is set to false and the user has children users who have the permission, then an exception will be thrown, and the permission will not be removed from this user.
954 //
955 // Use the [[SoftLayer_User_Customer_CustomerPermission_Permission::getAllObjects]] method to retrieve a list of all permissions available in the SoftLayer customer portal and API. Permissions are removed based on the keyName property of the permission parameter.
956 func (r User_Customer) RemovePortalPermission(permission *datatypes.User_Customer_CustomerPermission_Permission, cascadePermissionsFlag *bool) (resp bool, err error) {
957 params := []interface{}{
958 permission,
959 cascadePermissionsFlag,
960 }
961 err = r.Session.DoRequest("SoftLayer_User_Customer", "removePortalPermission", params, &r.Options, &resp)
962 return
963 }
964 965 // no documentation yet
966 func (r User_Customer) RemoveRole(role *datatypes.User_Permission_Role) (err error) {
967 var resp datatypes.Void
968 params := []interface{}{
969 role,
970 }
971 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeRole", params, &r.Options, &resp)
972 return
973 }
974 975 // no documentation yet
976 func (r User_Customer) RemoveSecurityAnswers() (resp bool, err error) {
977 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeSecurityAnswers", nil, &r.Options, &resp)
978 return
979 }
980 981 // Remove a CloudLayer Computing Instance from a portal user's access list. A user's CloudLayer Computing Instance access list controls which of an account's computing instances a user has access to in the SoftLayer customer portal and API. CloudLayer Computing Instances do not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user does not has access to the CloudLayer Computing Instance you're attempting remove add then removeVirtualGuestAccess() returns true.
982 //
983 // Users can assign CloudLayer Computing Instance access to their child users, but not to themselves. An account's master has access to all CloudLayer Computing Instances on their customer account and can set instance access for any of the other users on their account.
984 func (r User_Customer) RemoveVirtualGuestAccess(virtualGuestId *int) (resp bool, err error) {
985 params := []interface{}{
986 virtualGuestId,
987 }
988 err = r.Session.DoRequest("SoftLayer_User_Customer", "removeVirtualGuestAccess", params, &r.Options, &resp)
989 return
990 }
991 992 // This method will change the IBMid that a SoftLayer user is linked to, if we need to do that for some reason. It will do this by modifying the link to the desired new IBMid. NOTE: This method cannot be used to "un-link" a SoftLayer user. Once linked, a SoftLayer user can never be un-linked. Also, this method cannot be used to reset the link if the user account is already Bluemix linked. To reset a link for the Bluemix-linked user account, use resetOpenIdConnectLinkUnifiedUserManagementMode.
993 func (r User_Customer) ResetOpenIdConnectLink(providerType *string, newIbmIdUsername *string, removeSecuritySettings *bool) (err error) {
994 var resp datatypes.Void
995 params := []interface{}{
996 providerType,
997 newIbmIdUsername,
998 removeSecuritySettings,
999 }
1000 err = r.Session.DoRequest("SoftLayer_User_Customer", "resetOpenIdConnectLink", params, &r.Options, &resp)
1001 return
1002 }
1003 1004 // This method will change the IBMid that a SoftLayer master user is linked to, if we need to do that for some reason. It will do this by unlinking the new owner IBMid from its current user association in this account, if there is one (note that the new owner IBMid is not required to already be a member of the IMS account). Then it will modify the existing IBMid link for the master user to use the new owner IBMid-realm IAMid. At this point, if the new owner IBMid isn't already a member of the PaaS account, it will attempt to add it. As a last step, it will call PaaS to modify the owner on that side, if necessary. Only when all those steps are complete, it will commit the IMS-side DB changes. Then, it will clean up the SoftLayer user that was linked to the new owner IBMid (this user became unlinked as the first step in this process). It will also call BSS to delete the old owner IBMid. NOTE: This method cannot be used to "un-link" a SoftLayer user. Once linked, a SoftLayer user can never be un-linked. Also, this method cannot be used to reset the link if the user account is not Bluemix linked. To reset a link for the user account not linked to Bluemix, use resetOpenIdConnectLink.
1005 func (r User_Customer) ResetOpenIdConnectLinkUnifiedUserManagementMode(providerType *string, newIbmIdUsername *string, removeSecuritySettings *bool) (err error) {
1006 var resp datatypes.Void
1007 params := []interface{}{
1008 providerType,
1009 newIbmIdUsername,
1010 removeSecuritySettings,
1011 }
1012 err = r.Session.DoRequest("SoftLayer_User_Customer", "resetOpenIdConnectLinkUnifiedUserManagementMode", params, &r.Options, &resp)
1013 return
1014 }
1015 1016 // no documentation yet
1017 func (r User_Customer) SamlAuthenticate(accountId *string, samlResponse *string) (resp datatypes.Container_User_Customer_Portal_Token, err error) {
1018 params := []interface{}{
1019 accountId,
1020 samlResponse,
1021 }
1022 err = r.Session.DoRequest("SoftLayer_User_Customer", "samlAuthenticate", params, &r.Options, &resp)
1023 return
1024 }
1025 1026 // no documentation yet
1027 func (r User_Customer) SamlBeginAuthentication(accountId *int) (resp string, err error) {
1028 params := []interface{}{
1029 accountId,
1030 }
1031 err = r.Session.DoRequest("SoftLayer_User_Customer", "samlBeginAuthentication", params, &r.Options, &resp)
1032 return
1033 }
1034 1035 // no documentation yet
1036 func (r User_Customer) SamlBeginLogout() (resp string, err error) {
1037 err = r.Session.DoRequest("SoftLayer_User_Customer", "samlBeginLogout", nil, &r.Options, &resp)
1038 return
1039 }
1040 1041 // no documentation yet
1042 func (r User_Customer) SamlLogout(samlResponse *string) (err error) {
1043 var resp datatypes.Void
1044 params := []interface{}{
1045 samlResponse,
1046 }
1047 err = r.Session.DoRequest("SoftLayer_User_Customer", "samlLogout", params, &r.Options, &resp)
1048 return
1049 }
1050 1051 // no documentation yet
1052 func (r User_Customer) SelfPasswordChange(currentPassword *string, newPassword *string) (err error) {
1053 var resp datatypes.Void
1054 params := []interface{}{
1055 currentPassword,
1056 newPassword,
1057 }
1058 err = r.Session.DoRequest("SoftLayer_User_Customer", "selfPasswordChange", params, &r.Options, &resp)
1059 return
1060 }
1061 1062 // An OpenIdConnect identity, for example an IBMid, can be linked or mapped to one or more individual SoftLayer users, but no more than one per account. If an OpenIdConnect identity is mapped to multiple accounts in this manner, one such account should be identified as the default account for that identity. Invoke this only on IBMid-authenticated users.
1063 func (r User_Customer) SetDefaultAccount(providerType *string, accountId *int) (resp datatypes.Account, err error) {
1064 params := []interface{}{
1065 providerType,
1066 accountId,
1067 }
1068 err = r.Session.DoRequest("SoftLayer_User_Customer", "setDefaultAccount", params, &r.Options, &resp)
1069 return
1070 }
1071 1072 // As master user, calling this api for the IBMid provider type when there is an existing IBMid for the email on the SL account will silently (without sending an invitation email) create a link for the IBMid. NOTE: If the SoftLayer user is already linked to IBMid, this call will fail. If the IBMid specified by the email of this user, is already used in a link to another user in this account, this call will fail. If there is already an open invitation from this SoftLayer user to this or any IBMid, this call will fail. If there is already an open invitation from some other SoftLayer user in this account to this IBMid, then this call will fail.
1073 func (r User_Customer) SilentlyMigrateUserOpenIdConnect(providerType *string) (resp bool, err error) {
1074 params := []interface{}{
1075 providerType,
1076 }
1077 err = r.Session.DoRequest("SoftLayer_User_Customer", "silentlyMigrateUserOpenIdConnect", params, &r.Options, &resp)
1078 return
1079 }
1080 1081 // This method allows the master user of an account to undo the designation of this user as an alternate master user. This can not be applied to the true master user of the account.
1082 //
1083 // Note that this method, by itself, WILL NOT affect the IAM Policies granted this user. This API is not intended for general customer use. It is intended to be called by IAM, in concert with other actions taken by IAM when the master user / account owner turns off an "alternate/auxiliary master user / account owner".
1084 func (r User_Customer) TurnOffMasterUserPermissionCheckMode() (err error) {
1085 var resp datatypes.Void
1086 err = r.Session.DoRequest("SoftLayer_User_Customer", "turnOffMasterUserPermissionCheckMode", nil, &r.Options, &resp)
1087 return
1088 }
1089 1090 // This method allows the master user of an account to designate this user as an alternate master user. Effectively this means that this user should have "all the same IMS permissions as a master user".
1091 //
1092 // Note that this method, by itself, WILL NOT affect the IAM Policies granted to this user. This API is not intended for general customer use. It is intended to be called by IAM, in concert with other actions taken by IAM when the master user / account owner designates an "alternate/auxiliary master user / account owner".
1093 func (r User_Customer) TurnOnMasterUserPermissionCheckMode() (err error) {
1094 var resp datatypes.Void
1095 err = r.Session.DoRequest("SoftLayer_User_Customer", "turnOnMasterUserPermissionCheckMode", nil, &r.Options, &resp)
1096 return
1097 }
1098 1099 // Update the active status for a notification that the user is subscribed to. A notification along with an active flag can be supplied to update the active status for a particular notification subscription.
1100 func (r User_Customer) UpdateNotificationSubscriber(notificationKeyName *string, active *int) (resp bool, err error) {
1101 params := []interface{}{
1102 notificationKeyName,
1103 active,
1104 }
1105 err = r.Session.DoRequest("SoftLayer_User_Customer", "updateNotificationSubscriber", params, &r.Options, &resp)
1106 return
1107 }
1108 1109 // Update a user's login security questions and answers on the SoftLayer customer portal. These questions and answers are used to optionally log into the SoftLayer customer portal using two-factor authentication. Each user must have three distinct questions set with a unique answer for each question, and each answer may only contain alphanumeric or the . , - _ ( ) [ ] : ; > < characters. Existing user security questions and answers are deleted before new ones are set, and users may only update their own security questions and answers.
1110 func (r User_Customer) UpdateSecurityAnswers(questions []datatypes.User_Security_Question, answers []string) (resp bool, err error) {
1111 params := []interface{}{
1112 questions,
1113 answers,
1114 }
1115 err = r.Session.DoRequest("SoftLayer_User_Customer", "updateSecurityAnswers", params, &r.Options, &resp)
1116 return
1117 }
1118 1119 // Update a delivery method for a notification that the user is subscribed to. A delivery method keyName along with an active flag can be supplied to update the active status of the delivery methods for the specified notification. Available delivery methods - 'EMAIL'. Available notifications - 'PLANNED_MAINTENANCE', 'UNPLANNED_INCIDENT'.
1120 func (r User_Customer) UpdateSubscriberDeliveryMethod(notificationKeyName *string, deliveryMethodKeyNames []string, active *int) (resp bool, err error) {
1121 params := []interface{}{
1122 notificationKeyName,
1123 deliveryMethodKeyNames,
1124 active,
1125 }
1126 err = r.Session.DoRequest("SoftLayer_User_Customer", "updateSubscriberDeliveryMethod", params, &r.Options, &resp)
1127 return
1128 }
1129 1130 // Update a user's VPN password on the SoftLayer customer portal. As with portal passwords, VPN passwords must match the following restrictions. VPN passwords must...
1131 // * ...be over eight characters long.
1132 // * ...be under twenty characters long.
1133 // * ...contain at least one uppercase letter
1134 // * ...contain at least one lowercase letter
1135 // * ...contain at least one number
1136 // * ...contain one of the special characters _ - | @ . , ? / ! ~ # $ % ^ & * ( ) { } [ ] \ =
1137 // * ...not match your username
1138 // Finally, users can only update their own VPN password. An account's master user can update any of their account users' VPN passwords.
1139 func (r User_Customer) UpdateVpnPassword(password *string) (resp bool, err error) {
1140 params := []interface{}{
1141 password,
1142 }
1143 err = r.Session.DoRequest("SoftLayer_User_Customer", "updateVpnPassword", params, &r.Options, &resp)
1144 return
1145 }
1146 1147 // Always call this function to enable changes when manually configuring VPN subnet access.
1148 func (r User_Customer) UpdateVpnUser() (resp bool, err error) {
1149 err = r.Session.DoRequest("SoftLayer_User_Customer", "updateVpnUser", nil, &r.Options, &resp)
1150 return
1151 }
1152 1153 // This method validate the given authentication token using the user id by comparing it with the actual user authentication token and return [[SoftLayer_Container_User_Customer_Portal_Token]] object
1154 func (r User_Customer) ValidateAuthenticationToken(authenticationToken *datatypes.Container_User_Authentication_Token) (resp datatypes.Container_User_Customer_Portal_Token, err error) {
1155 params := []interface{}{
1156 authenticationToken,
1157 }
1158 err = r.Session.DoRequest("SoftLayer_User_Customer", "validateAuthenticationToken", params, &r.Options, &resp)
1159 return
1160 }
1161 1162 // The SoftLayer_User_Customer_ApiAuthentication type contains user's authentication key(s).
1163 type User_Customer_ApiAuthentication struct {
1164 Session session.SLSession
1165 Options sl.Options
1166 }
1167 1168 // GetUserCustomerApiAuthenticationService returns an instance of the User_Customer_ApiAuthentication SoftLayer service
1169 func GetUserCustomerApiAuthenticationService(sess session.SLSession) User_Customer_ApiAuthentication {
1170 return User_Customer_ApiAuthentication{Session: sess}
1171 }
1172 1173 func (r User_Customer_ApiAuthentication) Id(id int) User_Customer_ApiAuthentication {
1174 r.Options.Id = &id
1175 return r
1176 }
1177 1178 func (r User_Customer_ApiAuthentication) Mask(mask string) User_Customer_ApiAuthentication {
1179 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
1180 mask = fmt.Sprintf("mask[%s]", mask)
1181 }
1182 1183 r.Options.Mask = mask
1184 return r
1185 }
1186 1187 func (r User_Customer_ApiAuthentication) Filter(filter string) User_Customer_ApiAuthentication {
1188 r.Options.Filter = filter
1189 return r
1190 }
1191 1192 func (r User_Customer_ApiAuthentication) Limit(limit int) User_Customer_ApiAuthentication {
1193 r.Options.Limit = &limit
1194 return r
1195 }
1196 1197 func (r User_Customer_ApiAuthentication) Offset(offset int) User_Customer_ApiAuthentication {
1198 r.Options.Offset = &offset
1199 return r
1200 }
1201 1202 // Edit the properties of customer ApiAuthentication record by passing in a modified instance of a SoftLayer_User_Customer_ApiAuthentication object. Only the ipAddressRestriction property can be modified.
1203 func (r User_Customer_ApiAuthentication) EditObject(templateObject *datatypes.User_Customer_ApiAuthentication) (resp datatypes.User_Customer_ApiAuthentication, err error) {
1204 params := []interface{}{
1205 templateObject,
1206 }
1207 err = r.Session.DoRequest("SoftLayer_User_Customer_ApiAuthentication", "editObject", params, &r.Options, &resp)
1208 return
1209 }
1210 1211 // getObject retrieves the SoftLayer_User_Customer_ApiAuthentication object whose ID number corresponds to the ID number of the init parameter passed to the SoftLayer_User_Customer_ApiAuthentication service.
1212 func (r User_Customer_ApiAuthentication) GetObject() (resp datatypes.User_Customer_ApiAuthentication, err error) {
1213 err = r.Session.DoRequest("SoftLayer_User_Customer_ApiAuthentication", "getObject", nil, &r.Options, &resp)
1214 return
1215 }
1216 1217 // Retrieve The user who owns the api authentication key.
1218 func (r User_Customer_ApiAuthentication) GetUser() (resp datatypes.User_Customer, err error) {
1219 err = r.Session.DoRequest("SoftLayer_User_Customer_ApiAuthentication", "getUser", nil, &r.Options, &resp)
1220 return
1221 }
1222 1223 // Each SoftLayer portal account is assigned a series of permissions that determine what access the user has to functions within the SoftLayer customer portal. This status is reflected in the SoftLayer_User_Customer_Status data type. Permissions differ from user status in that user status applies globally to the portal while user permissions are applied to specific portal functions.
1224 // Deprecated: This function has been marked as deprecated.
1225 type User_Customer_CustomerPermission_Permission struct {
1226 Session session.SLSession
1227 Options sl.Options
1228 }
1229 1230 // GetUserCustomerCustomerPermissionPermissionService returns an instance of the User_Customer_CustomerPermission_Permission SoftLayer service
1231 func GetUserCustomerCustomerPermissionPermissionService(sess session.SLSession) User_Customer_CustomerPermission_Permission {
1232 return User_Customer_CustomerPermission_Permission{Session: sess}
1233 }
1234 1235 func (r User_Customer_CustomerPermission_Permission) Id(id int) User_Customer_CustomerPermission_Permission {
1236 r.Options.Id = &id
1237 return r
1238 }
1239 1240 func (r User_Customer_CustomerPermission_Permission) Mask(mask string) User_Customer_CustomerPermission_Permission {
1241 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
1242 mask = fmt.Sprintf("mask[%s]", mask)
1243 }
1244 1245 r.Options.Mask = mask
1246 return r
1247 }
1248 1249 func (r User_Customer_CustomerPermission_Permission) Filter(filter string) User_Customer_CustomerPermission_Permission {
1250 r.Options.Filter = filter
1251 return r
1252 }
1253 1254 func (r User_Customer_CustomerPermission_Permission) Limit(limit int) User_Customer_CustomerPermission_Permission {
1255 r.Options.Limit = &limit
1256 return r
1257 }
1258 1259 func (r User_Customer_CustomerPermission_Permission) Offset(offset int) User_Customer_CustomerPermission_Permission {
1260 r.Options.Offset = &offset
1261 return r
1262 }
1263 1264 // Retrieve all available permissions.
1265 // Deprecated: This function has been marked as deprecated.
1266 func (r User_Customer_CustomerPermission_Permission) GetAllObjects() (resp []datatypes.User_Customer_CustomerPermission_Permission, err error) {
1267 err = r.Session.DoRequest("SoftLayer_User_Customer_CustomerPermission_Permission", "getAllObjects", nil, &r.Options, &resp)
1268 return
1269 }
1270 1271 // getObject retrieves the SoftLayer_User_Customer_CustomerPermission_Permission object whose ID number corresponds to the ID number of the init parameter passed to the SoftLayer_User_Customer_CustomerPermission_Permission service.
1272 func (r User_Customer_CustomerPermission_Permission) GetObject() (resp datatypes.User_Customer_CustomerPermission_Permission, err error) {
1273 err = r.Session.DoRequest("SoftLayer_User_Customer_CustomerPermission_Permission", "getObject", nil, &r.Options, &resp)
1274 return
1275 }
1276 1277 // The SoftLayer_User_Customer_External_Binding data type contains general information for a single external binding. This includes the 3rd party vendor, type of binding, and a unique identifier and password that is used to authenticate against the 3rd party service.
1278 type User_Customer_External_Binding struct {
1279 Session session.SLSession
1280 Options sl.Options
1281 }
1282 1283 // GetUserCustomerExternalBindingService returns an instance of the User_Customer_External_Binding SoftLayer service
1284 func GetUserCustomerExternalBindingService(sess session.SLSession) User_Customer_External_Binding {
1285 return User_Customer_External_Binding{Session: sess}
1286 }
1287 1288 func (r User_Customer_External_Binding) Id(id int) User_Customer_External_Binding {
1289 r.Options.Id = &id
1290 return r
1291 }
1292 1293 func (r User_Customer_External_Binding) Mask(mask string) User_Customer_External_Binding {
1294 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
1295 mask = fmt.Sprintf("mask[%s]", mask)
1296 }
1297 1298 r.Options.Mask = mask
1299 return r
1300 }
1301 1302 func (r User_Customer_External_Binding) Filter(filter string) User_Customer_External_Binding {
1303 r.Options.Filter = filter
1304 return r
1305 }
1306 1307 func (r User_Customer_External_Binding) Limit(limit int) User_Customer_External_Binding {
1308 r.Options.Limit = &limit
1309 return r
1310 }
1311 1312 func (r User_Customer_External_Binding) Offset(offset int) User_Customer_External_Binding {
1313 r.Options.Offset = &offset
1314 return r
1315 }
1316 1317 // Delete an external authentication binding. If the external binding currently has an active billing item associated you will be prevented from deleting the binding. The alternative method to remove an external authentication binding is to use the service cancellation form.
1318 func (r User_Customer_External_Binding) DeleteObject() (resp bool, err error) {
1319 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding", "deleteObject", nil, &r.Options, &resp)
1320 return
1321 }
1322 1323 // Disabling an external binding will allow you to keep the external binding on your SoftLayer account, but will not require you to authentication with our trusted 2 form factor vendor when logging into the SoftLayer customer portal.
1324 //
1325 // You may supply one of the following reason when you disable an external binding:
1326 // *Unspecified
1327 // *TemporarilyUnavailable
1328 // *Lost
1329 // *Stolen
1330 func (r User_Customer_External_Binding) Disable(reason *string) (resp bool, err error) {
1331 params := []interface{}{
1332 reason,
1333 }
1334 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding", "disable", params, &r.Options, &resp)
1335 return
1336 }
1337 1338 // Enabling an external binding will activate the binding on your account and require you to authenticate with our trusted 3rd party 2 form factor vendor when logging into the SoftLayer customer portal.
1339 //
1340 // Please note that API access will be disabled for users that have an active external binding.
1341 func (r User_Customer_External_Binding) Enable() (resp bool, err error) {
1342 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding", "enable", nil, &r.Options, &resp)
1343 return
1344 }
1345 1346 // Retrieve Attributes of an external authentication binding.
1347 func (r User_Customer_External_Binding) GetAttributes() (resp []datatypes.User_External_Binding_Attribute, err error) {
1348 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding", "getAttributes", nil, &r.Options, &resp)
1349 return
1350 }
1351 1352 // Retrieve Information regarding the billing item for external authentication.
1353 func (r User_Customer_External_Binding) GetBillingItem() (resp datatypes.Billing_Item, err error) {
1354 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding", "getBillingItem", nil, &r.Options, &resp)
1355 return
1356 }
1357 1358 // Retrieve An optional note for identifying the external binding.
1359 func (r User_Customer_External_Binding) GetNote() (resp string, err error) {
1360 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding", "getNote", nil, &r.Options, &resp)
1361 return
1362 }
1363 1364 // no documentation yet
1365 func (r User_Customer_External_Binding) GetObject() (resp datatypes.User_Customer_External_Binding, err error) {
1366 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding", "getObject", nil, &r.Options, &resp)
1367 return
1368 }
1369 1370 // Retrieve The type of external authentication binding.
1371 func (r User_Customer_External_Binding) GetType() (resp datatypes.User_External_Binding_Type, err error) {
1372 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding", "getType", nil, &r.Options, &resp)
1373 return
1374 }
1375 1376 // Retrieve The SoftLayer user that the external authentication binding belongs to.
1377 func (r User_Customer_External_Binding) GetUser() (resp datatypes.User_Customer, err error) {
1378 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding", "getUser", nil, &r.Options, &resp)
1379 return
1380 }
1381 1382 // Retrieve The vendor of an external authentication binding.
1383 func (r User_Customer_External_Binding) GetVendor() (resp datatypes.User_External_Binding_Vendor, err error) {
1384 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding", "getVendor", nil, &r.Options, &resp)
1385 return
1386 }
1387 1388 // Update the note of an external binding. The note is an optional property that is used to store information about a binding.
1389 func (r User_Customer_External_Binding) UpdateNote(text *string) (resp bool, err error) {
1390 params := []interface{}{
1391 text,
1392 }
1393 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding", "updateNote", params, &r.Options, &resp)
1394 return
1395 }
1396 1397 // The SoftLayer_User_Customer_External_Binding_Totp data type contains information about a single time-based one time password external binding. The external binding information is used when a SoftLayer customer logs into the SoftLayer customer portal to authenticate them.
1398 //
1399 // The information provided by this external binding data type includes:
1400 // * The type of credential
1401 // * The current state of the credential
1402 // ** Active
1403 // ** Inactive
1404 //
1405 // SoftLayer users with an active external binding will be prohibited from using the API for security reasons.
1406 type User_Customer_External_Binding_Totp struct {
1407 Session session.SLSession
1408 Options sl.Options
1409 }
1410 1411 // GetUserCustomerExternalBindingTotpService returns an instance of the User_Customer_External_Binding_Totp SoftLayer service
1412 func GetUserCustomerExternalBindingTotpService(sess session.SLSession) User_Customer_External_Binding_Totp {
1413 return User_Customer_External_Binding_Totp{Session: sess}
1414 }
1415 1416 func (r User_Customer_External_Binding_Totp) Id(id int) User_Customer_External_Binding_Totp {
1417 r.Options.Id = &id
1418 return r
1419 }
1420 1421 func (r User_Customer_External_Binding_Totp) Mask(mask string) User_Customer_External_Binding_Totp {
1422 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
1423 mask = fmt.Sprintf("mask[%s]", mask)
1424 }
1425 1426 r.Options.Mask = mask
1427 return r
1428 }
1429 1430 func (r User_Customer_External_Binding_Totp) Filter(filter string) User_Customer_External_Binding_Totp {
1431 r.Options.Filter = filter
1432 return r
1433 }
1434 1435 func (r User_Customer_External_Binding_Totp) Limit(limit int) User_Customer_External_Binding_Totp {
1436 r.Options.Limit = &limit
1437 return r
1438 }
1439 1440 func (r User_Customer_External_Binding_Totp) Offset(offset int) User_Customer_External_Binding_Totp {
1441 r.Options.Offset = &offset
1442 return r
1443 }
1444 1445 // no documentation yet
1446 func (r User_Customer_External_Binding_Totp) Activate() (resp bool, err error) {
1447 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Totp", "activate", nil, &r.Options, &resp)
1448 return
1449 }
1450 1451 // no documentation yet
1452 func (r User_Customer_External_Binding_Totp) Deactivate() (resp bool, err error) {
1453 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Totp", "deactivate", nil, &r.Options, &resp)
1454 return
1455 }
1456 1457 // Delete an external authentication binding. If the external binding currently has an active billing item associated you will be prevented from deleting the binding. The alternative method to remove an external authentication binding is to use the service cancellation form.
1458 func (r User_Customer_External_Binding_Totp) DeleteObject() (resp bool, err error) {
1459 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Totp", "deleteObject", nil, &r.Options, &resp)
1460 return
1461 }
1462 1463 // Disabling an external binding will allow you to keep the external binding on your SoftLayer account, but will not require you to authentication with our trusted 2 form factor vendor when logging into the SoftLayer customer portal.
1464 //
1465 // You may supply one of the following reason when you disable an external binding:
1466 // *Unspecified
1467 // *TemporarilyUnavailable
1468 // *Lost
1469 // *Stolen
1470 func (r User_Customer_External_Binding_Totp) Disable(reason *string) (resp bool, err error) {
1471 params := []interface{}{
1472 reason,
1473 }
1474 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Totp", "disable", params, &r.Options, &resp)
1475 return
1476 }
1477 1478 // Enabling an external binding will activate the binding on your account and require you to authenticate with our trusted 3rd party 2 form factor vendor when logging into the SoftLayer customer portal.
1479 //
1480 // Please note that API access will be disabled for users that have an active external binding.
1481 func (r User_Customer_External_Binding_Totp) Enable() (resp bool, err error) {
1482 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Totp", "enable", nil, &r.Options, &resp)
1483 return
1484 }
1485 1486 // no documentation yet
1487 func (r User_Customer_External_Binding_Totp) GenerateSecretKey() (resp string, err error) {
1488 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Totp", "generateSecretKey", nil, &r.Options, &resp)
1489 return
1490 }
1491 1492 // Retrieve Attributes of an external authentication binding.
1493 func (r User_Customer_External_Binding_Totp) GetAttributes() (resp []datatypes.User_External_Binding_Attribute, err error) {
1494 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Totp", "getAttributes", nil, &r.Options, &resp)
1495 return
1496 }
1497 1498 // Retrieve Information regarding the billing item for external authentication.
1499 func (r User_Customer_External_Binding_Totp) GetBillingItem() (resp datatypes.Billing_Item, err error) {
1500 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Totp", "getBillingItem", nil, &r.Options, &resp)
1501 return
1502 }
1503 1504 // Retrieve An optional note for identifying the external binding.
1505 func (r User_Customer_External_Binding_Totp) GetNote() (resp string, err error) {
1506 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Totp", "getNote", nil, &r.Options, &resp)
1507 return
1508 }
1509 1510 // no documentation yet
1511 func (r User_Customer_External_Binding_Totp) GetObject() (resp datatypes.User_Customer_External_Binding_Totp, err error) {
1512 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Totp", "getObject", nil, &r.Options, &resp)
1513 return
1514 }
1515 1516 // Retrieve The type of external authentication binding.
1517 func (r User_Customer_External_Binding_Totp) GetType() (resp datatypes.User_External_Binding_Type, err error) {
1518 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Totp", "getType", nil, &r.Options, &resp)
1519 return
1520 }
1521 1522 // Retrieve The SoftLayer user that the external authentication binding belongs to.
1523 func (r User_Customer_External_Binding_Totp) GetUser() (resp datatypes.User_Customer, err error) {
1524 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Totp", "getUser", nil, &r.Options, &resp)
1525 return
1526 }
1527 1528 // Retrieve The vendor of an external authentication binding.
1529 func (r User_Customer_External_Binding_Totp) GetVendor() (resp datatypes.User_External_Binding_Vendor, err error) {
1530 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Totp", "getVendor", nil, &r.Options, &resp)
1531 return
1532 }
1533 1534 // Update the note of an external binding. The note is an optional property that is used to store information about a binding.
1535 func (r User_Customer_External_Binding_Totp) UpdateNote(text *string) (resp bool, err error) {
1536 params := []interface{}{
1537 text,
1538 }
1539 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Totp", "updateNote", params, &r.Options, &resp)
1540 return
1541 }
1542 1543 // The SoftLayer_User_Customer_External_Binding_Vendor data type contains information for a single external binding vendor. This information includes a user friendly vendor name, a unique version of the vendor name, and a unique internal identifier that can be used when creating a new external binding.
1544 type User_Customer_External_Binding_Vendor struct {
1545 Session session.SLSession
1546 Options sl.Options
1547 }
1548 1549 // GetUserCustomerExternalBindingVendorService returns an instance of the User_Customer_External_Binding_Vendor SoftLayer service
1550 func GetUserCustomerExternalBindingVendorService(sess session.SLSession) User_Customer_External_Binding_Vendor {
1551 return User_Customer_External_Binding_Vendor{Session: sess}
1552 }
1553 1554 func (r User_Customer_External_Binding_Vendor) Id(id int) User_Customer_External_Binding_Vendor {
1555 r.Options.Id = &id
1556 return r
1557 }
1558 1559 func (r User_Customer_External_Binding_Vendor) Mask(mask string) User_Customer_External_Binding_Vendor {
1560 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
1561 mask = fmt.Sprintf("mask[%s]", mask)
1562 }
1563 1564 r.Options.Mask = mask
1565 return r
1566 }
1567 1568 func (r User_Customer_External_Binding_Vendor) Filter(filter string) User_Customer_External_Binding_Vendor {
1569 r.Options.Filter = filter
1570 return r
1571 }
1572 1573 func (r User_Customer_External_Binding_Vendor) Limit(limit int) User_Customer_External_Binding_Vendor {
1574 r.Options.Limit = &limit
1575 return r
1576 }
1577 1578 func (r User_Customer_External_Binding_Vendor) Offset(offset int) User_Customer_External_Binding_Vendor {
1579 r.Options.Offset = &offset
1580 return r
1581 }
1582 1583 // getAllObjects() will return a list of the available external binding vendors that SoftLayer supports. Use this list to select the appropriate vendor when creating a new external binding.
1584 func (r User_Customer_External_Binding_Vendor) GetAllObjects() (resp []datatypes.User_External_Binding_Vendor, err error) {
1585 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Vendor", "getAllObjects", nil, &r.Options, &resp)
1586 return
1587 }
1588 1589 // no documentation yet
1590 func (r User_Customer_External_Binding_Vendor) GetObject() (resp datatypes.User_Customer_External_Binding_Vendor, err error) {
1591 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Vendor", "getObject", nil, &r.Options, &resp)
1592 return
1593 }
1594 1595 // The SoftLayer_User_Customer_External_Binding_Verisign data type contains information about a single VeriSign external binding. The external binding information is used when a SoftLayer customer logs into the SoftLayer customer portal to authenticate them against a 3rd party, in this case VeriSign.
1596 //
1597 // The information provided by the VeriSign external binding data type includes:
1598 // * The type of credential
1599 // * The current state of the credential
1600 // ** Enabled
1601 // ** Disabled
1602 // ** Locked
1603 // * The credential's expiration date
1604 // * The last time the credential was updated
1605 //
1606 // SoftLayer users with an active external binding will be prohibited from using the API for security reasons.
1607 type User_Customer_External_Binding_Verisign struct {
1608 Session session.SLSession
1609 Options sl.Options
1610 }
1611 1612 // GetUserCustomerExternalBindingVerisignService returns an instance of the User_Customer_External_Binding_Verisign SoftLayer service
1613 func GetUserCustomerExternalBindingVerisignService(sess session.SLSession) User_Customer_External_Binding_Verisign {
1614 return User_Customer_External_Binding_Verisign{Session: sess}
1615 }
1616 1617 func (r User_Customer_External_Binding_Verisign) Id(id int) User_Customer_External_Binding_Verisign {
1618 r.Options.Id = &id
1619 return r
1620 }
1621 1622 func (r User_Customer_External_Binding_Verisign) Mask(mask string) User_Customer_External_Binding_Verisign {
1623 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
1624 mask = fmt.Sprintf("mask[%s]", mask)
1625 }
1626 1627 r.Options.Mask = mask
1628 return r
1629 }
1630 1631 func (r User_Customer_External_Binding_Verisign) Filter(filter string) User_Customer_External_Binding_Verisign {
1632 r.Options.Filter = filter
1633 return r
1634 }
1635 1636 func (r User_Customer_External_Binding_Verisign) Limit(limit int) User_Customer_External_Binding_Verisign {
1637 r.Options.Limit = &limit
1638 return r
1639 }
1640 1641 func (r User_Customer_External_Binding_Verisign) Offset(offset int) User_Customer_External_Binding_Verisign {
1642 r.Options.Offset = &offset
1643 return r
1644 }
1645 1646 // Delete a VeriSign external binding. The only VeriSign external binding that can be deleted through this method is the free VeriSign external binding for the master user of a SoftLayer account. All other external bindings must be canceled using the SoftLayer service cancellation form.
1647 //
1648 // When a VeriSign external binding is deleted the credential is deactivated in VeriSign's system for use on the SoftLayer site and the $0 billing item associated with the free VeriSign external binding is cancelled.
1649 func (r User_Customer_External_Binding_Verisign) DeleteObject() (resp bool, err error) {
1650 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "deleteObject", nil, &r.Options, &resp)
1651 return
1652 }
1653 1654 // Disabling an external binding will allow you to keep the external binding on your SoftLayer account, but will not require you to authentication with our trusted 2 form factor vendor when logging into the SoftLayer customer portal.
1655 //
1656 // You may supply one of the following reason when you disable an external binding:
1657 // *Unspecified
1658 // *TemporarilyUnavailable
1659 // *Lost
1660 // *Stolen
1661 func (r User_Customer_External_Binding_Verisign) Disable(reason *string) (resp bool, err error) {
1662 params := []interface{}{
1663 reason,
1664 }
1665 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "disable", params, &r.Options, &resp)
1666 return
1667 }
1668 1669 // Enabling an external binding will activate the binding on your account and require you to authenticate with our trusted 3rd party 2 form factor vendor when logging into the SoftLayer customer portal.
1670 //
1671 // Please note that API access will be disabled for users that have an active external binding.
1672 func (r User_Customer_External_Binding_Verisign) Enable() (resp bool, err error) {
1673 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "enable", nil, &r.Options, &resp)
1674 return
1675 }
1676 1677 // An activation code is required when provisioning a new mobile credential from Verisign. This method will return the required activation code.
1678 func (r User_Customer_External_Binding_Verisign) GetActivationCodeForMobileClient() (resp string, err error) {
1679 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "getActivationCodeForMobileClient", nil, &r.Options, &resp)
1680 return
1681 }
1682 1683 // Retrieve Attributes of an external authentication binding.
1684 func (r User_Customer_External_Binding_Verisign) GetAttributes() (resp []datatypes.User_External_Binding_Attribute, err error) {
1685 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "getAttributes", nil, &r.Options, &resp)
1686 return
1687 }
1688 1689 // Retrieve Information regarding the billing item for external authentication.
1690 func (r User_Customer_External_Binding_Verisign) GetBillingItem() (resp datatypes.Billing_Item, err error) {
1691 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "getBillingItem", nil, &r.Options, &resp)
1692 return
1693 }
1694 1695 // Retrieve The date that a VeriSign credential expires.
1696 func (r User_Customer_External_Binding_Verisign) GetCredentialExpirationDate() (resp string, err error) {
1697 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "getCredentialExpirationDate", nil, &r.Options, &resp)
1698 return
1699 }
1700 1701 // Retrieve The last time a VeriSign credential was updated.
1702 func (r User_Customer_External_Binding_Verisign) GetCredentialLastUpdateDate() (resp string, err error) {
1703 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "getCredentialLastUpdateDate", nil, &r.Options, &resp)
1704 return
1705 }
1706 1707 // Retrieve The current state of a VeriSign credential. This can be 'Enabled', 'Disabled', or 'Locked'.
1708 func (r User_Customer_External_Binding_Verisign) GetCredentialState() (resp string, err error) {
1709 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "getCredentialState", nil, &r.Options, &resp)
1710 return
1711 }
1712 1713 // Retrieve The type of VeriSign credential. This can be either 'Hardware' or 'Software'.
1714 func (r User_Customer_External_Binding_Verisign) GetCredentialType() (resp string, err error) {
1715 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "getCredentialType", nil, &r.Options, &resp)
1716 return
1717 }
1718 1719 // Retrieve An optional note for identifying the external binding.
1720 func (r User_Customer_External_Binding_Verisign) GetNote() (resp string, err error) {
1721 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "getNote", nil, &r.Options, &resp)
1722 return
1723 }
1724 1725 // no documentation yet
1726 func (r User_Customer_External_Binding_Verisign) GetObject() (resp datatypes.User_Customer_External_Binding_Verisign, err error) {
1727 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "getObject", nil, &r.Options, &resp)
1728 return
1729 }
1730 1731 // Retrieve The type of external authentication binding.
1732 func (r User_Customer_External_Binding_Verisign) GetType() (resp datatypes.User_External_Binding_Type, err error) {
1733 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "getType", nil, &r.Options, &resp)
1734 return
1735 }
1736 1737 // Retrieve The SoftLayer user that the external authentication binding belongs to.
1738 func (r User_Customer_External_Binding_Verisign) GetUser() (resp datatypes.User_Customer, err error) {
1739 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "getUser", nil, &r.Options, &resp)
1740 return
1741 }
1742 1743 // Retrieve The vendor of an external authentication binding.
1744 func (r User_Customer_External_Binding_Verisign) GetVendor() (resp datatypes.User_External_Binding_Vendor, err error) {
1745 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "getVendor", nil, &r.Options, &resp)
1746 return
1747 }
1748 1749 // If a VeriSign credential becomes locked because of too many failed login attempts the unlock method can be used to unlock a VeriSign credential. As a security precaution a valid security code generated by the credential will be required before the credential is unlocked.
1750 func (r User_Customer_External_Binding_Verisign) Unlock(securityCode *string) (resp bool, err error) {
1751 params := []interface{}{
1752 securityCode,
1753 }
1754 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "unlock", params, &r.Options, &resp)
1755 return
1756 }
1757 1758 // Update the note of an external binding. The note is an optional property that is used to store information about a binding.
1759 func (r User_Customer_External_Binding_Verisign) UpdateNote(text *string) (resp bool, err error) {
1760 params := []interface{}{
1761 text,
1762 }
1763 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "updateNote", params, &r.Options, &resp)
1764 return
1765 }
1766 1767 // Validate the user id and VeriSign credential id used to create an external authentication binding.
1768 func (r User_Customer_External_Binding_Verisign) ValidateCredentialId(userId *int, externalId *string) (resp bool, err error) {
1769 params := []interface{}{
1770 userId,
1771 externalId,
1772 }
1773 err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Verisign", "validateCredentialId", params, &r.Options, &resp)
1774 return
1775 }
1776 1777 // no documentation yet
1778 type User_Customer_Invitation struct {
1779 Session session.SLSession
1780 Options sl.Options
1781 }
1782 1783 // GetUserCustomerInvitationService returns an instance of the User_Customer_Invitation SoftLayer service
1784 func GetUserCustomerInvitationService(sess session.SLSession) User_Customer_Invitation {
1785 return User_Customer_Invitation{Session: sess}
1786 }
1787 1788 func (r User_Customer_Invitation) Id(id int) User_Customer_Invitation {
1789 r.Options.Id = &id
1790 return r
1791 }
1792 1793 func (r User_Customer_Invitation) Mask(mask string) User_Customer_Invitation {
1794 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
1795 mask = fmt.Sprintf("mask[%s]", mask)
1796 }
1797 1798 r.Options.Mask = mask
1799 return r
1800 }
1801 1802 func (r User_Customer_Invitation) Filter(filter string) User_Customer_Invitation {
1803 r.Options.Filter = filter
1804 return r
1805 }
1806 1807 func (r User_Customer_Invitation) Limit(limit int) User_Customer_Invitation {
1808 r.Options.Limit = &limit
1809 return r
1810 }
1811 1812 func (r User_Customer_Invitation) Offset(offset int) User_Customer_Invitation {
1813 r.Options.Offset = &offset
1814 return r
1815 }
1816 1817 // no documentation yet
1818 func (r User_Customer_Invitation) GetObject() (resp datatypes.User_Customer_Invitation, err error) {
1819 err = r.Session.DoRequest("SoftLayer_User_Customer_Invitation", "getObject", nil, &r.Options, &resp)
1820 return
1821 }
1822 1823 // Retrieve
1824 func (r User_Customer_Invitation) GetUser() (resp datatypes.User_Customer, err error) {
1825 err = r.Session.DoRequest("SoftLayer_User_Customer_Invitation", "getUser", nil, &r.Options, &resp)
1826 return
1827 }
1828 1829 // The Customer_Notification_Hardware object stores links between customers and the hardware devices they wish to monitor. This link is not enough, the user must be sure to also create SoftLayer_Network_Monitor_Version1_Query_Host instance with the response action set to "notify users" in order for the users linked to that hardware object to be notified on failure.
1830 type User_Customer_Notification_Hardware struct {
1831 Session session.SLSession
1832 Options sl.Options
1833 }
1834 1835 // GetUserCustomerNotificationHardwareService returns an instance of the User_Customer_Notification_Hardware SoftLayer service
1836 func GetUserCustomerNotificationHardwareService(sess session.SLSession) User_Customer_Notification_Hardware {
1837 return User_Customer_Notification_Hardware{Session: sess}
1838 }
1839 1840 func (r User_Customer_Notification_Hardware) Id(id int) User_Customer_Notification_Hardware {
1841 r.Options.Id = &id
1842 return r
1843 }
1844 1845 func (r User_Customer_Notification_Hardware) Mask(mask string) User_Customer_Notification_Hardware {
1846 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
1847 mask = fmt.Sprintf("mask[%s]", mask)
1848 }
1849 1850 r.Options.Mask = mask
1851 return r
1852 }
1853 1854 func (r User_Customer_Notification_Hardware) Filter(filter string) User_Customer_Notification_Hardware {
1855 r.Options.Filter = filter
1856 return r
1857 }
1858 1859 func (r User_Customer_Notification_Hardware) Limit(limit int) User_Customer_Notification_Hardware {
1860 r.Options.Limit = &limit
1861 return r
1862 }
1863 1864 func (r User_Customer_Notification_Hardware) Offset(offset int) User_Customer_Notification_Hardware {
1865 r.Options.Offset = &offset
1866 return r
1867 }
1868 1869 // Passing in an unsaved instances of a Customer_Notification_Hardware object into this function will create the object and return the results to the user.
1870 func (r User_Customer_Notification_Hardware) CreateObject(templateObject *datatypes.User_Customer_Notification_Hardware) (resp datatypes.User_Customer_Notification_Hardware, err error) {
1871 params := []interface{}{
1872 templateObject,
1873 }
1874 err = r.Session.DoRequest("SoftLayer_User_Customer_Notification_Hardware", "createObject", params, &r.Options, &resp)
1875 return
1876 }
1877 1878 // Passing in a collection of unsaved instances of Customer_Notification_Hardware objects into this function will create all objects and return the results to the user.
1879 func (r User_Customer_Notification_Hardware) CreateObjects(templateObjects []datatypes.User_Customer_Notification_Hardware) (resp []datatypes.User_Customer_Notification_Hardware, err error) {
1880 params := []interface{}{
1881 templateObjects,
1882 }
1883 err = r.Session.DoRequest("SoftLayer_User_Customer_Notification_Hardware", "createObjects", params, &r.Options, &resp)
1884 return
1885 }
1886 1887 // Like any other API object, the customer notification objects can be deleted by passing an instance of them into this function. The ID on the object must be set.
1888 func (r User_Customer_Notification_Hardware) DeleteObjects(templateObjects []datatypes.User_Customer_Notification_Hardware) (resp bool, err error) {
1889 params := []interface{}{
1890 templateObjects,
1891 }
1892 err = r.Session.DoRequest("SoftLayer_User_Customer_Notification_Hardware", "deleteObjects", params, &r.Options, &resp)
1893 return
1894 }
1895 1896 // This method returns all Customer_Notification_Hardware objects associated with the passed in hardware ID as long as that hardware ID is owned by the current user's account.
1897 //
1898 // This behavior can also be accomplished by simply tapping monitoringUserNotification on the Hardware_Server object.
1899 func (r User_Customer_Notification_Hardware) FindByHardwareId(hardwareId *int) (resp []datatypes.User_Customer_Notification_Hardware, err error) {
1900 params := []interface{}{
1901 hardwareId,
1902 }
1903 err = r.Session.DoRequest("SoftLayer_User_Customer_Notification_Hardware", "findByHardwareId", params, &r.Options, &resp)
1904 return
1905 }
1906 1907 // Retrieve The hardware object that will be monitored.
1908 func (r User_Customer_Notification_Hardware) GetHardware() (resp datatypes.Hardware, err error) {
1909 err = r.Session.DoRequest("SoftLayer_User_Customer_Notification_Hardware", "getHardware", nil, &r.Options, &resp)
1910 return
1911 }
1912 1913 // getObject retrieves the SoftLayer_User_Customer_Notification_Hardware object whose ID number corresponds to the ID number of the init parameter passed to the SoftLayer_User_Customer_Notification_Hardware service. You can only retrieve hardware notifications attached to hardware and users that belong to your account
1914 func (r User_Customer_Notification_Hardware) GetObject() (resp datatypes.User_Customer_Notification_Hardware, err error) {
1915 err = r.Session.DoRequest("SoftLayer_User_Customer_Notification_Hardware", "getObject", nil, &r.Options, &resp)
1916 return
1917 }
1918 1919 // Retrieve The user that will be notified when the associated hardware object fails a monitoring instance.
1920 func (r User_Customer_Notification_Hardware) GetUser() (resp datatypes.User_Customer, err error) {
1921 err = r.Session.DoRequest("SoftLayer_User_Customer_Notification_Hardware", "getUser", nil, &r.Options, &resp)
1922 return
1923 }
1924 1925 // The SoftLayer_User_Customer_Notification_Virtual_Guest object stores links between customers and the virtual guests they wish to monitor. This link is not enough, the user must be sure to also create SoftLayer_Network_Monitor_Version1_Query_Host instance with the response action set to "notify users" in order for the users linked to that Virtual Guest object to be notified on failure.
1926 type User_Customer_Notification_Virtual_Guest struct {
1927 Session session.SLSession
1928 Options sl.Options
1929 }
1930 1931 // GetUserCustomerNotificationVirtualGuestService returns an instance of the User_Customer_Notification_Virtual_Guest SoftLayer service
1932 func GetUserCustomerNotificationVirtualGuestService(sess session.SLSession) User_Customer_Notification_Virtual_Guest {
1933 return User_Customer_Notification_Virtual_Guest{Session: sess}
1934 }
1935 1936 func (r User_Customer_Notification_Virtual_Guest) Id(id int) User_Customer_Notification_Virtual_Guest {
1937 r.Options.Id = &id
1938 return r
1939 }
1940 1941 func (r User_Customer_Notification_Virtual_Guest) Mask(mask string) User_Customer_Notification_Virtual_Guest {
1942 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
1943 mask = fmt.Sprintf("mask[%s]", mask)
1944 }
1945 1946 r.Options.Mask = mask
1947 return r
1948 }
1949 1950 func (r User_Customer_Notification_Virtual_Guest) Filter(filter string) User_Customer_Notification_Virtual_Guest {
1951 r.Options.Filter = filter
1952 return r
1953 }
1954 1955 func (r User_Customer_Notification_Virtual_Guest) Limit(limit int) User_Customer_Notification_Virtual_Guest {
1956 r.Options.Limit = &limit
1957 return r
1958 }
1959 1960 func (r User_Customer_Notification_Virtual_Guest) Offset(offset int) User_Customer_Notification_Virtual_Guest {
1961 r.Options.Offset = &offset
1962 return r
1963 }
1964 1965 // Passing in an unsaved instance of a SoftLayer_Customer_Notification_Virtual_Guest object into this function will create the object and return the results to the user.
1966 func (r User_Customer_Notification_Virtual_Guest) CreateObject(templateObject *datatypes.User_Customer_Notification_Virtual_Guest) (resp datatypes.User_Customer_Notification_Virtual_Guest, err error) {
1967 params := []interface{}{
1968 templateObject,
1969 }
1970 err = r.Session.DoRequest("SoftLayer_User_Customer_Notification_Virtual_Guest", "createObject", params, &r.Options, &resp)
1971 return
1972 }
1973 1974 // Passing in a collection of unsaved instances of SoftLayer_Customer_Notification_Virtual_Guest objects into this function will create all objects and return the results to the user.
1975 func (r User_Customer_Notification_Virtual_Guest) CreateObjects(templateObjects []datatypes.User_Customer_Notification_Virtual_Guest) (resp []datatypes.User_Customer_Notification_Virtual_Guest, err error) {
1976 params := []interface{}{
1977 templateObjects,
1978 }
1979 err = r.Session.DoRequest("SoftLayer_User_Customer_Notification_Virtual_Guest", "createObjects", params, &r.Options, &resp)
1980 return
1981 }
1982 1983 // Like any other API object, the customer notification objects can be deleted by passing an instance of them into this function. The ID on the object must be set.
1984 func (r User_Customer_Notification_Virtual_Guest) DeleteObjects(templateObjects []datatypes.User_Customer_Notification_Virtual_Guest) (resp bool, err error) {
1985 params := []interface{}{
1986 templateObjects,
1987 }
1988 err = r.Session.DoRequest("SoftLayer_User_Customer_Notification_Virtual_Guest", "deleteObjects", params, &r.Options, &resp)
1989 return
1990 }
1991 1992 // This method returns all SoftLayer_User_Customer_Notification_Virtual_Guest objects associated with the passed in ID as long as that Virtual Guest ID is owned by the current user's account.
1993 //
1994 // This behavior can also be accomplished by simply tapping monitoringUserNotification on the Virtual_Guest object.
1995 func (r User_Customer_Notification_Virtual_Guest) FindByGuestId(id *int) (resp []datatypes.User_Customer_Notification_Virtual_Guest, err error) {
1996 params := []interface{}{
1997 id,
1998 }
1999 err = r.Session.DoRequest("SoftLayer_User_Customer_Notification_Virtual_Guest", "findByGuestId", params, &r.Options, &resp)
2000 return
2001 }
2002 2003 // Retrieve The virtual guest object that will be monitored.
2004 func (r User_Customer_Notification_Virtual_Guest) GetGuest() (resp datatypes.Virtual_Guest, err error) {
2005 err = r.Session.DoRequest("SoftLayer_User_Customer_Notification_Virtual_Guest", "getGuest", nil, &r.Options, &resp)
2006 return
2007 }
2008 2009 // getObject retrieves the SoftLayer_User_Customer_Notification_Virtual_Guest object whose ID number corresponds to the ID number of the init parameter passed to the SoftLayer_User_Customer_Notification_Virtual_Guest service. You can only retrieve guest notifications attached to virtual guests and users that belong to your account
2010 func (r User_Customer_Notification_Virtual_Guest) GetObject() (resp datatypes.User_Customer_Notification_Virtual_Guest, err error) {
2011 err = r.Session.DoRequest("SoftLayer_User_Customer_Notification_Virtual_Guest", "getObject", nil, &r.Options, &resp)
2012 return
2013 }
2014 2015 // Retrieve The user that will be notified when the associated virtual guest object fails a monitoring instance.
2016 func (r User_Customer_Notification_Virtual_Guest) GetUser() (resp datatypes.User_Customer, err error) {
2017 err = r.Session.DoRequest("SoftLayer_User_Customer_Notification_Virtual_Guest", "getUser", nil, &r.Options, &resp)
2018 return
2019 }
2020 2021 // no documentation yet
2022 type User_Customer_OpenIdConnect struct {
2023 Session session.SLSession
2024 Options sl.Options
2025 }
2026 2027 // GetUserCustomerOpenIdConnectService returns an instance of the User_Customer_OpenIdConnect SoftLayer service
2028 func GetUserCustomerOpenIdConnectService(sess session.SLSession) User_Customer_OpenIdConnect {
2029 return User_Customer_OpenIdConnect{Session: sess}
2030 }
2031 2032 func (r User_Customer_OpenIdConnect) Id(id int) User_Customer_OpenIdConnect {
2033 r.Options.Id = &id
2034 return r
2035 }
2036 2037 func (r User_Customer_OpenIdConnect) Mask(mask string) User_Customer_OpenIdConnect {
2038 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
2039 mask = fmt.Sprintf("mask[%s]", mask)
2040 }
2041 2042 r.Options.Mask = mask
2043 return r
2044 }
2045 2046 func (r User_Customer_OpenIdConnect) Filter(filter string) User_Customer_OpenIdConnect {
2047 r.Options.Filter = filter
2048 return r
2049 }
2050 2051 func (r User_Customer_OpenIdConnect) Limit(limit int) User_Customer_OpenIdConnect {
2052 r.Options.Limit = &limit
2053 return r
2054 }
2055 2056 func (r User_Customer_OpenIdConnect) Offset(offset int) User_Customer_OpenIdConnect {
2057 r.Options.Offset = &offset
2058 return r
2059 }
2060 2061 // no documentation yet
2062 func (r User_Customer_OpenIdConnect) AcknowledgeSupportPolicy() (err error) {
2063 var resp datatypes.Void
2064 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "acknowledgeSupportPolicy", nil, &r.Options, &resp)
2065 return
2066 }
2067 2068 // Completes invitation process for an OpenIdConnect user created by Bluemix Unified User Console.
2069 func (r User_Customer_OpenIdConnect) ActivateOpenIdConnectUser(verificationCode *string, userInfo *datatypes.User_Customer, iamId *string) (err error) {
2070 var resp datatypes.Void
2071 params := []interface{}{
2072 verificationCode,
2073 userInfo,
2074 iamId,
2075 }
2076 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "activateOpenIdConnectUser", params, &r.Options, &resp)
2077 return
2078 }
2079 2080 // Create a user's API authentication key, allowing that user access to query the SoftLayer API. addApiAuthenticationKey() returns the user's new API key. Each portal user is allowed only one API key.
2081 func (r User_Customer_OpenIdConnect) AddApiAuthenticationKey() (resp string, err error) {
2082 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "addApiAuthenticationKey", nil, &r.Options, &resp)
2083 return
2084 }
2085 2086 // Grants the user access to one or more dedicated host devices. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access, then "not found" exceptions are thrown if the user attempts to access any of these devices.
2087 //
2088 // Users can assign device access to their child users, but not to themselves. An account's master has access to all devices on their customer account and can set dedicated host access for any of the other users on their account.
2089 func (r User_Customer_OpenIdConnect) AddBulkDedicatedHostAccess(dedicatedHostIds []int) (resp bool, err error) {
2090 params := []interface{}{
2091 dedicatedHostIds,
2092 }
2093 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "addBulkDedicatedHostAccess", params, &r.Options, &resp)
2094 return
2095 }
2096 2097 // Add multiple hardware to a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. Hardware does not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. addBulkHardwareAccess() does not attempt to add hardware access if the given user already has access to that hardware object.
2098 //
2099 // Users can assign hardware access to their child users, but not to themselves. An account's master has access to all hardware on their customer account and can set hardware access for any of the other users on their account.
2100 func (r User_Customer_OpenIdConnect) AddBulkHardwareAccess(hardwareIds []int) (resp bool, err error) {
2101 params := []interface{}{
2102 hardwareIds,
2103 }
2104 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "addBulkHardwareAccess", params, &r.Options, &resp)
2105 return
2106 }
2107 2108 // Add multiple permissions to a portal user's permission set. [[SoftLayer_User_Customer_CustomerPermission_Permission]] control which features in the SoftLayer customer portal and API a user may use. addBulkPortalPermission() does not attempt to add permissions already assigned to the user.
2109 //
2110 // Users can assign permissions to their child users, but not to themselves. An account's master has all portal permissions and can set permissions for any of the other users on their account.
2111 //
2112 // Use the [[SoftLayer_User_Customer_CustomerPermission_Permission::getAllObjects]] method to retrieve a list of all permissions available in the SoftLayer customer portal and API. Permissions are removed based on the keyName property of the permission objects within the permissions parameter.
2113 func (r User_Customer_OpenIdConnect) AddBulkPortalPermission(permissions []datatypes.User_Customer_CustomerPermission_Permission) (resp bool, err error) {
2114 params := []interface{}{
2115 permissions,
2116 }
2117 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "addBulkPortalPermission", params, &r.Options, &resp)
2118 return
2119 }
2120 2121 // no documentation yet
2122 func (r User_Customer_OpenIdConnect) AddBulkRoles(roles []datatypes.User_Permission_Role) (err error) {
2123 var resp datatypes.Void
2124 params := []interface{}{
2125 roles,
2126 }
2127 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "addBulkRoles", params, &r.Options, &resp)
2128 return
2129 }
2130 2131 // Add multiple CloudLayer Computing Instances to a portal user's access list. A user's CloudLayer Computing Instance access list controls which of an account's CloudLayer Computing Instance objects a user has access to in the SoftLayer customer portal and API. CloudLayer Computing Instances do not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. addBulkVirtualGuestAccess() does not attempt to add CloudLayer Computing Instance access if the given user already has access to that CloudLayer Computing Instance object.
2132 //
2133 // Users can assign CloudLayer Computing Instance access to their child users, but not to themselves. An account's master has access to all CloudLayer Computing Instances on their customer account and can set CloudLayer Computing Instance access for any of the other users on their account.
2134 func (r User_Customer_OpenIdConnect) AddBulkVirtualGuestAccess(virtualGuestIds []int) (resp bool, err error) {
2135 params := []interface{}{
2136 virtualGuestIds,
2137 }
2138 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "addBulkVirtualGuestAccess", params, &r.Options, &resp)
2139 return
2140 }
2141 2142 // Grants the user access to a single dedicated host device. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access, then "not found" exceptions are thrown if the user attempts to access any of these devices.
2143 //
2144 // Users can assign device access to their child users, but not to themselves. An account's master has access to all devices on their customer account and can set dedicated host access for any of the other users on their account.
2145 //
2146 // Only the USER_MANAGE permission is required to execute this.
2147 func (r User_Customer_OpenIdConnect) AddDedicatedHostAccess(dedicatedHostId *int) (resp bool, err error) {
2148 params := []interface{}{
2149 dedicatedHostId,
2150 }
2151 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "addDedicatedHostAccess", params, &r.Options, &resp)
2152 return
2153 }
2154 2155 // no documentation yet
2156 func (r User_Customer_OpenIdConnect) AddExternalBinding(externalBinding *datatypes.User_External_Binding) (resp datatypes.User_Customer_External_Binding, err error) {
2157 params := []interface{}{
2158 externalBinding,
2159 }
2160 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "addExternalBinding", params, &r.Options, &resp)
2161 return
2162 }
2163 2164 // Add hardware to a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. Hardware does not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user already has access to the hardware you're attempting to add then addHardwareAccess() returns true.
2165 //
2166 // Users can assign hardware access to their child users, but not to themselves. An account's master has access to all hardware on their customer account and can set hardware access for any of the other users on their account.
2167 //
2168 // Only the USER_MANAGE permission is required to execute this.
2169 func (r User_Customer_OpenIdConnect) AddHardwareAccess(hardwareId *int) (resp bool, err error) {
2170 params := []interface{}{
2171 hardwareId,
2172 }
2173 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "addHardwareAccess", params, &r.Options, &resp)
2174 return
2175 }
2176 2177 // Create a notification subscription record for the user. If a subscription record exists for the notification, the record will be set to active, if currently inactive.
2178 func (r User_Customer_OpenIdConnect) AddNotificationSubscriber(notificationKeyName *string) (resp bool, err error) {
2179 params := []interface{}{
2180 notificationKeyName,
2181 }
2182 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "addNotificationSubscriber", params, &r.Options, &resp)
2183 return
2184 }
2185 2186 // Add a permission to a portal user's permission set. [[SoftLayer_User_Customer_CustomerPermission_Permission]] control which features in the SoftLayer customer portal and API a user may use. If the user already has the permission you're attempting to add then addPortalPermission() returns true.
2187 //
2188 // Users can assign permissions to their child users, but not to themselves. An account's master has all portal permissions and can set permissions for any of the other users on their account.
2189 //
2190 // Use the [[SoftLayer_User_Customer_CustomerPermission_Permission::getAllObjects]] method to retrieve a list of all permissions available in the SoftLayer customer portal and API. Permissions are added based on the keyName property of the permission parameter.
2191 func (r User_Customer_OpenIdConnect) AddPortalPermission(permission *datatypes.User_Customer_CustomerPermission_Permission) (resp bool, err error) {
2192 params := []interface{}{
2193 permission,
2194 }
2195 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "addPortalPermission", params, &r.Options, &resp)
2196 return
2197 }
2198 2199 // no documentation yet
2200 func (r User_Customer_OpenIdConnect) AddRole(role *datatypes.User_Permission_Role) (err error) {
2201 var resp datatypes.Void
2202 params := []interface{}{
2203 role,
2204 }
2205 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "addRole", params, &r.Options, &resp)
2206 return
2207 }
2208 2209 // Add a CloudLayer Computing Instance to a portal user's access list. A user's CloudLayer Computing Instance access list controls which of an account's CloudLayer Computing Instance objects a user has access to in the SoftLayer customer portal and API. CloudLayer Computing Instances do not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user already has access to the CloudLayer Computing Instance you're attempting to add then addVirtualGuestAccess() returns true.
2210 //
2211 // Users can assign CloudLayer Computing Instance access to their child users, but not to themselves. An account's master has access to all CloudLayer Computing Instances on their customer account and can set CloudLayer Computing Instance access for any of the other users on their account.
2212 //
2213 // Only the USER_MANAGE permission is required to execute this.
2214 func (r User_Customer_OpenIdConnect) AddVirtualGuestAccess(virtualGuestId *int) (resp bool, err error) {
2215 params := []interface{}{
2216 virtualGuestId,
2217 }
2218 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "addVirtualGuestAccess", params, &r.Options, &resp)
2219 return
2220 }
2221 2222 // This method can be used in place of [[SoftLayer_User_Customer::editObject]] to change the parent user of this user.
2223 //
2224 // The new parent must be a user on the same account, and must not be a child of this user. A user is not allowed to change their own parent.
2225 //
2226 // If the cascadeFlag is set to false, then an exception will be thrown if the new parent does not have all of the permissions that this user possesses. If the cascadeFlag is set to true, then permissions will be removed from this user and the descendants of this user as necessary so that no children of the parent will have permissions that the parent does not possess. However, setting the cascadeFlag to true will not remove the access all device permissions from this user. The customer portal will need to be used to remove these permissions.
2227 func (r User_Customer_OpenIdConnect) AssignNewParentId(parentId *int, cascadePermissionsFlag *bool) (resp datatypes.User_Customer, err error) {
2228 params := []interface{}{
2229 parentId,
2230 cascadePermissionsFlag,
2231 }
2232 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "assignNewParentId", params, &r.Options, &resp)
2233 return
2234 }
2235 2236 // Select a type of preference you would like to modify using [[SoftLayer_User_Customer::getPreferenceTypes|getPreferenceTypes]] and invoke this method using that preference type key name.
2237 func (r User_Customer_OpenIdConnect) ChangePreference(preferenceTypeKeyName *string, value *string) (resp []datatypes.User_Preference, err error) {
2238 params := []interface{}{
2239 preferenceTypeKeyName,
2240 value,
2241 }
2242 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "changePreference", params, &r.Options, &resp)
2243 return
2244 }
2245 2246 // no documentation yet
2247 func (r User_Customer_OpenIdConnect) CompleteInvitationAfterLogin(providerType *string, accessToken *string, emailRegistrationCode *string) (err error) {
2248 var resp datatypes.Void
2249 params := []interface{}{
2250 providerType,
2251 accessToken,
2252 emailRegistrationCode,
2253 }
2254 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "completeInvitationAfterLogin", params, &r.Options, &resp)
2255 return
2256 }
2257 2258 // Create a new subscriber for a given resource.
2259 func (r User_Customer_OpenIdConnect) CreateNotificationSubscriber(keyName *string, resourceTableId *int) (resp bool, err error) {
2260 params := []interface{}{
2261 keyName,
2262 resourceTableId,
2263 }
2264 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "createNotificationSubscriber", params, &r.Options, &resp)
2265 return
2266 }
2267 2268 // Create a new user in the SoftLayer customer portal. It is not possible to set up SLL enable flags during object creation. These flags are ignored during object creation. You will need to make a subsequent call to edit object in order to enable VPN access.
2269 //
2270 // An account's master user and sub-users who have the User Manage permission can add new users.
2271 //
2272 // Users are created with a default permission set. After adding a user it may be helpful to set their permissions and device access.
2273 //
2274 // secondaryPasswordTimeoutDays will be set to the system configured default value if the attribute is not provided or the attribute is not a valid value.
2275 //
2276 // Note, neither password nor vpnPassword parameters are required.
2277 //
2278 // Password When a new user is created, an email will be sent to the new user's email address with a link to a url that will allow the new user to create or change their password for the SoftLayer customer portal.
2279 //
2280 // If the password parameter is provided and is not null, then that value will be validated. If it is a valid password, then the user will be created with this password. This user will still receive a portal password email. It can be used within 24 hours to change their password, or it can be allowed to expire, and the password provided during user creation will remain as the user's password.
2281 //
2282 // If the password parameter is not provided or the value is null, the user must set their portal password using the link sent in email within 24 hours. If the user fails to set their password within 24 hours, then a non-master user can use the "Reset Password" link on the login page of the portal to request a new email. A master user can use the link to retrieve a phone number to call to assist in resetting their password.
2283 //
2284 // The password parameter is ignored for VPN_ONLY users or for IBMid authenticated users.
2285 //
2286 // vpnPassword If the vpnPassword is provided, then the user's vpnPassword will be set to the provided password. When creating a vpn only user, the vpnPassword MUST be supplied. If the vpnPassword is not provided, then the user will need to use the portal to edit their profile and set the vpnPassword.
2287 //
2288 // IBMid considerations When a SoftLayer account is linked to a Platform Services (PaaS, formerly Bluemix) account, AND the trait on the SoftLayer Account indicating IBMid authentication is set, then SoftLayer will delegate the creation of an ACTIVE user to PaaS. This means that even though the request to create a new user in such an account may start at the IMS API, via this delegation we effectively turn it into a request that is driven by PaaS. In particular this means that any "invitation email" that comes to the user, will come from PaaS, not from IMS via IBMid.
2289 //
2290 // Users created in states other than ACTIVE (for example, a VPN_ONLY user) will be created directly in IMS without delegation (but note that no invitation is sent for a user created in any state other than ACTIVE).
2291 func (r User_Customer_OpenIdConnect) CreateObject(templateObject *datatypes.User_Customer_OpenIdConnect, password *string, vpnPassword *string) (resp datatypes.User_Customer_OpenIdConnect, err error) {
2292 params := []interface{}{
2293 templateObject,
2294 password,
2295 vpnPassword,
2296 }
2297 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "createObject", params, &r.Options, &resp)
2298 return
2299 }
2300 2301 // no documentation yet
2302 func (r User_Customer_OpenIdConnect) CreateOpenIdConnectUserAndCompleteInvitation(providerType *string, user *datatypes.User_Customer, password *string, registrationCode *string) (err error) {
2303 var resp datatypes.Void
2304 params := []interface{}{
2305 providerType,
2306 user,
2307 password,
2308 registrationCode,
2309 }
2310 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "createOpenIdConnectUserAndCompleteInvitation", params, &r.Options, &resp)
2311 return
2312 }
2313 2314 // Create delivery methods for a notification that the user is subscribed to. Multiple delivery method keyNames can be supplied to create multiple delivery methods for the specified notification. Available delivery methods - 'EMAIL'. Available notifications - 'PLANNED_MAINTENANCE', 'UNPLANNED_INCIDENT'.
2315 func (r User_Customer_OpenIdConnect) CreateSubscriberDeliveryMethods(notificationKeyName *string, deliveryMethodKeyNames []string) (resp bool, err error) {
2316 params := []interface{}{
2317 notificationKeyName,
2318 deliveryMethodKeyNames,
2319 }
2320 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "createSubscriberDeliveryMethods", params, &r.Options, &resp)
2321 return
2322 }
2323 2324 // Create a new subscriber for a given resource.
2325 func (r User_Customer_OpenIdConnect) DeactivateNotificationSubscriber(keyName *string, resourceTableId *int) (resp bool, err error) {
2326 params := []interface{}{
2327 keyName,
2328 resourceTableId,
2329 }
2330 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "deactivateNotificationSubscriber", params, &r.Options, &resp)
2331 return
2332 }
2333 2334 // Declines an invitation to link an OpenIdConnect identity to a SoftLayer (Atlas) identity and account. Note that this uses a registration code that is likely a one-time-use-only token, so if an invitation has already been processed (accepted or previously declined) it will not be possible to process it a second time.
2335 func (r User_Customer_OpenIdConnect) DeclineInvitation(providerType *string, registrationCode *string) (err error) {
2336 var resp datatypes.Void
2337 params := []interface{}{
2338 providerType,
2339 registrationCode,
2340 }
2341 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "declineInvitation", params, &r.Options, &resp)
2342 return
2343 }
2344 2345 // Account master users and sub-users who have the User Manage permission in the SoftLayer customer portal can update other user's information. Use editObject() if you wish to edit a single user account. Users who do not have the User Manage permission can only update their own information.
2346 func (r User_Customer_OpenIdConnect) EditObject(templateObject *datatypes.User_Customer) (resp bool, err error) {
2347 params := []interface{}{
2348 templateObject,
2349 }
2350 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "editObject", params, &r.Options, &resp)
2351 return
2352 }
2353 2354 // Account master users and sub-users who have the User Manage permission in the SoftLayer customer portal can update other user's information. Use editObjects() if you wish to edit multiple users at once. Users who do not have the User Manage permission can only update their own information.
2355 func (r User_Customer_OpenIdConnect) EditObjects(templateObjects []datatypes.User_Customer) (resp bool, err error) {
2356 params := []interface{}{
2357 templateObjects,
2358 }
2359 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "editObjects", params, &r.Options, &resp)
2360 return
2361 }
2362 2363 // no documentation yet
2364 func (r User_Customer_OpenIdConnect) FindUserPreference(profileName *string, containerKeyname *string, preferenceKeyname *string) (resp []datatypes.Layout_Profile, err error) {
2365 params := []interface{}{
2366 profileName,
2367 containerKeyname,
2368 preferenceKeyname,
2369 }
2370 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "findUserPreference", params, &r.Options, &resp)
2371 return
2372 }
2373 2374 // Retrieve The customer account that a user belongs to.
2375 func (r User_Customer_OpenIdConnect) GetAccount() (resp datatypes.Account, err error) {
2376 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getAccount", nil, &r.Options, &resp)
2377 return
2378 }
2379 2380 // Retrieve
2381 func (r User_Customer_OpenIdConnect) GetActions() (resp []datatypes.User_Permission_Action, err error) {
2382 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getActions", nil, &r.Options, &resp)
2383 return
2384 }
2385 2386 // The getActiveExternalAuthenticationVendors method will return a list of available external vendors that a SoftLayer user can authenticate against. The list will only contain vendors for which the user has at least one active external binding.
2387 func (r User_Customer_OpenIdConnect) GetActiveExternalAuthenticationVendors() (resp []datatypes.Container_User_Customer_External_Binding_Vendor, err error) {
2388 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getActiveExternalAuthenticationVendors", nil, &r.Options, &resp)
2389 return
2390 }
2391 2392 // Retrieve A portal user's additional email addresses. These email addresses are contacted when updates are made to support tickets.
2393 func (r User_Customer_OpenIdConnect) GetAdditionalEmails() (resp []datatypes.User_Customer_AdditionalEmail, err error) {
2394 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getAdditionalEmails", nil, &r.Options, &resp)
2395 return
2396 }
2397 2398 // no documentation yet
2399 func (r User_Customer_OpenIdConnect) GetAgentImpersonationToken() (resp string, err error) {
2400 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getAgentImpersonationToken", nil, &r.Options, &resp)
2401 return
2402 }
2403 2404 // no documentation yet
2405 func (r User_Customer_OpenIdConnect) GetAllowedDedicatedHostIds() (resp []int, err error) {
2406 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getAllowedDedicatedHostIds", nil, &r.Options, &resp)
2407 return
2408 }
2409 2410 // no documentation yet
2411 func (r User_Customer_OpenIdConnect) GetAllowedHardwareIds() (resp []int, err error) {
2412 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getAllowedHardwareIds", nil, &r.Options, &resp)
2413 return
2414 }
2415 2416 // no documentation yet
2417 func (r User_Customer_OpenIdConnect) GetAllowedVirtualGuestIds() (resp []int, err error) {
2418 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getAllowedVirtualGuestIds", nil, &r.Options, &resp)
2419 return
2420 }
2421 2422 // Retrieve A portal user's API Authentication keys. There is a max limit of one API key per user.
2423 func (r User_Customer_OpenIdConnect) GetApiAuthenticationKeys() (resp []datatypes.User_Customer_ApiAuthentication, err error) {
2424 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getApiAuthenticationKeys", nil, &r.Options, &resp)
2425 return
2426 }
2427 2428 // This method generate user authentication token and return [[SoftLayer_Container_User_Authentication_Token]] object which will be used to authenticate user to login to SoftLayer customer portal.
2429 func (r User_Customer_OpenIdConnect) GetAuthenticationToken(token *datatypes.Container_User_Authentication_Token) (resp datatypes.Container_User_Authentication_Token, err error) {
2430 params := []interface{}{
2431 token,
2432 }
2433 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getAuthenticationToken", params, &r.Options, &resp)
2434 return
2435 }
2436 2437 // Retrieve A portal user's child users. Some portal users may not have child users.
2438 func (r User_Customer_OpenIdConnect) GetChildUsers() (resp []datatypes.User_Customer, err error) {
2439 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getChildUsers", nil, &r.Options, &resp)
2440 return
2441 }
2442 2443 // Retrieve An user's associated closed tickets.
2444 func (r User_Customer_OpenIdConnect) GetClosedTickets() (resp []datatypes.Ticket, err error) {
2445 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getClosedTickets", nil, &r.Options, &resp)
2446 return
2447 }
2448 2449 // Retrieve The dedicated hosts to which the user has been granted access.
2450 func (r User_Customer_OpenIdConnect) GetDedicatedHosts() (resp []datatypes.Virtual_DedicatedHost, err error) {
2451 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getDedicatedHosts", nil, &r.Options, &resp)
2452 return
2453 }
2454 2455 // This API gets the account associated with the default user for the OpenIdConnect identity that is linked to the current active SoftLayer user identity. When a single active user is found for that IAMid, it becomes the default user and the associated account is returned. When multiple default users are found only the first is preserved and the associated account is returned (remaining defaults see their default flag unset). If the current SoftLayer user identity isn't linked to any OpenIdConnect identity, or if none of the linked users were found as defaults, the API returns null. Invoke this only on IAMid-authenticated users.
2456 func (r User_Customer_OpenIdConnect) GetDefaultAccount(providerType *string) (resp datatypes.Account, err error) {
2457 params := []interface{}{
2458 providerType,
2459 }
2460 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getDefaultAccount", params, &r.Options, &resp)
2461 return
2462 }
2463 2464 // Retrieve The external authentication bindings that link an external identifier to a SoftLayer user.
2465 func (r User_Customer_OpenIdConnect) GetExternalBindings() (resp []datatypes.User_External_Binding, err error) {
2466 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getExternalBindings", nil, &r.Options, &resp)
2467 return
2468 }
2469 2470 // Retrieve A portal user's accessible hardware. These permissions control which hardware a user has access to in the SoftLayer customer portal.
2471 func (r User_Customer_OpenIdConnect) GetHardware() (resp []datatypes.Hardware, err error) {
2472 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getHardware", nil, &r.Options, &resp)
2473 return
2474 }
2475 2476 // Retrieve the number of servers that a portal user has access to. Portal users can have restrictions set to limit services for and to perform actions on hardware. You can set these permissions in the portal by clicking the "administrative" then "user admin" links.
2477 func (r User_Customer_OpenIdConnect) GetHardwareCount() (resp int, err error) {
2478 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getHardwareCount", nil, &r.Options, &resp)
2479 return
2480 }
2481 2482 // Retrieve Hardware notifications associated with this user. A hardware notification links a user to a piece of hardware, and that user will be notified if any monitors on that hardware fail, if the monitors have a status of 'Notify User'.
2483 func (r User_Customer_OpenIdConnect) GetHardwareNotifications() (resp []datatypes.User_Customer_Notification_Hardware, err error) {
2484 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getHardwareNotifications", nil, &r.Options, &resp)
2485 return
2486 }
2487 2488 // Retrieve Whether or not a user has acknowledged the support policy.
2489 func (r User_Customer_OpenIdConnect) GetHasAcknowledgedSupportPolicyFlag() (resp bool, err error) {
2490 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getHasAcknowledgedSupportPolicyFlag", nil, &r.Options, &resp)
2491 return
2492 }
2493 2494 // Retrieve Permission granting the user access to all Dedicated Host devices on the account.
2495 func (r User_Customer_OpenIdConnect) GetHasFullDedicatedHostAccessFlag() (resp bool, err error) {
2496 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getHasFullDedicatedHostAccessFlag", nil, &r.Options, &resp)
2497 return
2498 }
2499 2500 // Retrieve Whether or not a portal user has access to all hardware on their account.
2501 func (r User_Customer_OpenIdConnect) GetHasFullHardwareAccessFlag() (resp bool, err error) {
2502 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getHasFullHardwareAccessFlag", nil, &r.Options, &resp)
2503 return
2504 }
2505 2506 // Retrieve Whether or not a portal user has access to all virtual guests on their account.
2507 func (r User_Customer_OpenIdConnect) GetHasFullVirtualGuestAccessFlag() (resp bool, err error) {
2508 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getHasFullVirtualGuestAccessFlag", nil, &r.Options, &resp)
2509 return
2510 }
2511 2512 // Retrieve Specifically relating the Customer instance to an IBMid. A Customer instance may or may not have an IBMid link.
2513 func (r User_Customer_OpenIdConnect) GetIbmIdLink() (resp datatypes.User_Customer_Link, err error) {
2514 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getIbmIdLink", nil, &r.Options, &resp)
2515 return
2516 }
2517 2518 // no documentation yet
2519 func (r User_Customer_OpenIdConnect) GetImpersonationToken() (resp string, err error) {
2520 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getImpersonationToken", nil, &r.Options, &resp)
2521 return
2522 }
2523 2524 // Retrieve Contains the definition of the layout profile.
2525 func (r User_Customer_OpenIdConnect) GetLayoutProfiles() (resp []datatypes.Layout_Profile, err error) {
2526 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getLayoutProfiles", nil, &r.Options, &resp)
2527 return
2528 }
2529 2530 // Retrieve A user's locale. Locale holds user's language and region information.
2531 func (r User_Customer_OpenIdConnect) GetLocale() (resp datatypes.Locale, err error) {
2532 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getLocale", nil, &r.Options, &resp)
2533 return
2534 }
2535 2536 // Validates a supplied OpenIdConnect access token to the SoftLayer customer portal and returns the default account name and id for the active user. An exception will be thrown if no matching customer is found.
2537 func (r User_Customer_OpenIdConnect) GetLoginAccountInfoOpenIdConnect(providerType *string, accessToken *string) (resp datatypes.Container_User_Customer_OpenIdConnect_LoginAccountInfo, err error) {
2538 params := []interface{}{
2539 providerType,
2540 accessToken,
2541 }
2542 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getLoginAccountInfoOpenIdConnect", params, &r.Options, &resp)
2543 return
2544 }
2545 2546 // Retrieve A user's attempts to log into the SoftLayer customer portal.
2547 func (r User_Customer_OpenIdConnect) GetLoginAttempts() (resp []datatypes.User_Customer_Access_Authentication, err error) {
2548 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getLoginAttempts", nil, &r.Options, &resp)
2549 return
2550 }
2551 2552 // Attempt to authenticate a user to the SoftLayer customer portal using the provided authentication container. Depending on the specific type of authentication container that is used, this API will leverage the appropriate authentication protocol. If authentication is successful then the API returns a list of linked accounts for the user, a token containing the ID of the authenticated user and a hash key used by the SoftLayer customer portal to maintain authentication.
2553 func (r User_Customer_OpenIdConnect) GetLoginToken(request *datatypes.Container_Authentication_Request_Contract) (resp datatypes.Container_Authentication_Response_Common, err error) {
2554 params := []interface{}{
2555 request,
2556 }
2557 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getLoginToken", params, &r.Options, &resp)
2558 return
2559 }
2560 2561 // An OpenIdConnect identity, for example an IAMid, can be linked or mapped to one or more individual SoftLayer users, but no more than one SoftLayer user per account. This effectively links the OpenIdConnect identity to those accounts. This API returns a list of all active accounts for which there is a link between the OpenIdConnect identity and a SoftLayer user. Invoke this only on IAMid-authenticated users.
2562 func (r User_Customer_OpenIdConnect) GetMappedAccounts(providerType *string) (resp []datatypes.Account, err error) {
2563 params := []interface{}{
2564 providerType,
2565 }
2566 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getMappedAccounts", params, &r.Options, &resp)
2567 return
2568 }
2569 2570 // Retrieve Notification subscription records for the user.
2571 func (r User_Customer_OpenIdConnect) GetNotificationSubscribers() (resp []datatypes.Notification_Subscriber, err error) {
2572 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getNotificationSubscribers", nil, &r.Options, &resp)
2573 return
2574 }
2575 2576 // no documentation yet
2577 func (r User_Customer_OpenIdConnect) GetObject() (resp datatypes.User_Customer_OpenIdConnect, err error) {
2578 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getObject", nil, &r.Options, &resp)
2579 return
2580 }
2581 2582 // This API returns a SoftLayer_Container_User_Customer_OpenIdConnect_MigrationState object containing the necessary information to determine what migration state the user is in. If the account is not OpenIdConnect authenticated, then an exception is thrown.
2583 func (r User_Customer_OpenIdConnect) GetOpenIdConnectMigrationState() (resp datatypes.Container_User_Customer_OpenIdConnect_MigrationState, err error) {
2584 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getOpenIdConnectMigrationState", nil, &r.Options, &resp)
2585 return
2586 }
2587 2588 // no documentation yet
2589 func (r User_Customer_OpenIdConnect) GetOpenIdRegistrationInfoFromCode(providerType *string, registrationCode *string) (resp datatypes.Account_Authentication_OpenIdConnect_RegistrationInformation, err error) {
2590 params := []interface{}{
2591 providerType,
2592 registrationCode,
2593 }
2594 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getOpenIdRegistrationInfoFromCode", params, &r.Options, &resp)
2595 return
2596 }
2597 2598 // Retrieve An user's associated open tickets.
2599 func (r User_Customer_OpenIdConnect) GetOpenTickets() (resp []datatypes.Ticket, err error) {
2600 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getOpenTickets", nil, &r.Options, &resp)
2601 return
2602 }
2603 2604 // Retrieve A portal user's vpn accessible subnets.
2605 func (r User_Customer_OpenIdConnect) GetOverrides() (resp []datatypes.Network_Service_Vpn_Overrides, err error) {
2606 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getOverrides", nil, &r.Options, &resp)
2607 return
2608 }
2609 2610 // Retrieve A portal user's parent user. If a SoftLayer_User_Customer has a null parentId property then it doesn't have a parent user.
2611 func (r User_Customer_OpenIdConnect) GetParent() (resp datatypes.User_Customer, err error) {
2612 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getParent", nil, &r.Options, &resp)
2613 return
2614 }
2615 2616 // no documentation yet
2617 func (r User_Customer_OpenIdConnect) GetPasswordRequirements(isVpn *bool) (resp datatypes.Container_User_Customer_PasswordSet, err error) {
2618 params := []interface{}{
2619 isVpn,
2620 }
2621 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getPasswordRequirements", params, &r.Options, &resp)
2622 return
2623 }
2624 2625 // Retrieve A portal user's permissions. These permissions control that user's access to functions within the SoftLayer customer portal and API.
2626 func (r User_Customer_OpenIdConnect) GetPermissions() (resp []datatypes.User_Customer_CustomerPermission_Permission, err error) {
2627 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getPermissions", nil, &r.Options, &resp)
2628 return
2629 }
2630 2631 // Attempt to authenticate a username and password to the SoftLayer customer portal. Many portal user accounts are configured to require answering a security question on login. In this case getPortalLoginToken() also verifies the given security question ID and answer. If authentication is successful then the API returns a token containing the ID of the authenticated user and a hash key used by the SoftLayer customer portal to maintain authentication.
2632 func (r User_Customer_OpenIdConnect) GetPortalLoginToken(username *string, password *string, securityQuestionId *int, securityQuestionAnswer *string) (resp datatypes.Container_User_Customer_Portal_Token, err error) {
2633 params := []interface{}{
2634 username,
2635 password,
2636 securityQuestionId,
2637 securityQuestionAnswer,
2638 }
2639 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getPortalLoginToken", params, &r.Options, &resp)
2640 return
2641 }
2642 2643 // Attempt to authenticate a supplied OpenIdConnect access token to the SoftLayer customer portal. If authentication is successful then the API returns a token containing the ID of the authenticated user and a hash key used by the SoftLayer customer portal to maintain authentication.
2644 // Deprecated: This function has been marked as deprecated.
2645 func (r User_Customer_OpenIdConnect) GetPortalLoginTokenOpenIdConnect(providerType *string, accessToken *string, accountId *int, securityQuestionId *int, securityQuestionAnswer *string) (resp datatypes.Container_User_Customer_Portal_Token, err error) {
2646 params := []interface{}{
2647 providerType,
2648 accessToken,
2649 accountId,
2650 securityQuestionId,
2651 securityQuestionAnswer,
2652 }
2653 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getPortalLoginTokenOpenIdConnect", params, &r.Options, &resp)
2654 return
2655 }
2656 2657 // Select a type of preference you would like to get using [[SoftLayer_User_Customer::getPreferenceTypes|getPreferenceTypes]] and invoke this method using that preference type key name.
2658 func (r User_Customer_OpenIdConnect) GetPreference(preferenceTypeKeyName *string) (resp datatypes.User_Preference, err error) {
2659 params := []interface{}{
2660 preferenceTypeKeyName,
2661 }
2662 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getPreference", params, &r.Options, &resp)
2663 return
2664 }
2665 2666 // Use any of the preference types to fetch or modify user preferences using [[SoftLayer_User_Customer::getPreference|getPreference]] or [[SoftLayer_User_Customer::changePreference|changePreference]], respectively.
2667 func (r User_Customer_OpenIdConnect) GetPreferenceTypes() (resp []datatypes.User_Preference_Type, err error) {
2668 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getPreferenceTypes", nil, &r.Options, &resp)
2669 return
2670 }
2671 2672 // Retrieve Data type contains a single user preference to a specific preference type.
2673 func (r User_Customer_OpenIdConnect) GetPreferences() (resp []datatypes.User_Preference, err error) {
2674 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getPreferences", nil, &r.Options, &resp)
2675 return
2676 }
2677 2678 // Retrieve the authentication requirements for an outstanding password set/reset request. The requirements returned in the same SoftLayer_Container_User_Customer_PasswordSet container which is provided as a parameter into this request. The SoftLayer_Container_User_Customer_PasswordSet::authenticationMethods array will contain an entry for each authentication method required for the user. See SoftLayer_Container_User_Customer_PasswordSet for more details.
2679 //
2680 // If the user has required authentication methods, then authentication information will be supplied to the SoftLayer_User_Customer::processPasswordSetRequest method within this same SoftLayer_Container_User_Customer_PasswordSet container. All existing information in the container must continue to exist in the container to complete the password set/reset process.
2681 func (r User_Customer_OpenIdConnect) GetRequirementsForPasswordSet(passwordSet *datatypes.Container_User_Customer_PasswordSet) (resp datatypes.Container_User_Customer_PasswordSet, err error) {
2682 params := []interface{}{
2683 passwordSet,
2684 }
2685 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getRequirementsForPasswordSet", params, &r.Options, &resp)
2686 return
2687 }
2688 2689 // Retrieve
2690 func (r User_Customer_OpenIdConnect) GetRoles() (resp []datatypes.User_Permission_Role, err error) {
2691 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getRoles", nil, &r.Options, &resp)
2692 return
2693 }
2694 2695 // Retrieve A portal user's security question answers. Some portal users may not have security answers or may not be configured to require answering a security question on login.
2696 func (r User_Customer_OpenIdConnect) GetSecurityAnswers() (resp []datatypes.User_Customer_Security_Answer, err error) {
2697 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getSecurityAnswers", nil, &r.Options, &resp)
2698 return
2699 }
2700 2701 // Retrieve A user's notification subscription records.
2702 func (r User_Customer_OpenIdConnect) GetSubscribers() (resp []datatypes.Notification_User_Subscriber, err error) {
2703 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getSubscribers", nil, &r.Options, &resp)
2704 return
2705 }
2706 2707 // Retrieve A user's successful attempts to log into the SoftLayer customer portal.
2708 func (r User_Customer_OpenIdConnect) GetSuccessfulLogins() (resp []datatypes.User_Customer_Access_Authentication, err error) {
2709 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getSuccessfulLogins", nil, &r.Options, &resp)
2710 return
2711 }
2712 2713 // Retrieve Whether or not a user is required to acknowledge the support policy for portal access.
2714 func (r User_Customer_OpenIdConnect) GetSupportPolicyAcknowledgementRequiredFlag() (resp int, err error) {
2715 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getSupportPolicyAcknowledgementRequiredFlag", nil, &r.Options, &resp)
2716 return
2717 }
2718 2719 // no documentation yet
2720 func (r User_Customer_OpenIdConnect) GetSupportPolicyDocument() (resp []byte, err error) {
2721 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getSupportPolicyDocument", nil, &r.Options, &resp)
2722 return
2723 }
2724 2725 // no documentation yet
2726 func (r User_Customer_OpenIdConnect) GetSupportPolicyName() (resp string, err error) {
2727 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getSupportPolicyName", nil, &r.Options, &resp)
2728 return
2729 }
2730 2731 // no documentation yet
2732 func (r User_Customer_OpenIdConnect) GetSupportedLocales() (resp []datatypes.Locale, err error) {
2733 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getSupportedLocales", nil, &r.Options, &resp)
2734 return
2735 }
2736 2737 // Retrieve Whether or not a user must take a brief survey the next time they log into the SoftLayer customer portal.
2738 func (r User_Customer_OpenIdConnect) GetSurveyRequiredFlag() (resp bool, err error) {
2739 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getSurveyRequiredFlag", nil, &r.Options, &resp)
2740 return
2741 }
2742 2743 // Retrieve The surveys that a user has taken in the SoftLayer customer portal.
2744 func (r User_Customer_OpenIdConnect) GetSurveys() (resp []datatypes.Survey, err error) {
2745 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getSurveys", nil, &r.Options, &resp)
2746 return
2747 }
2748 2749 // Retrieve An user's associated tickets.
2750 func (r User_Customer_OpenIdConnect) GetTickets() (resp []datatypes.Ticket, err error) {
2751 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getTickets", nil, &r.Options, &resp)
2752 return
2753 }
2754 2755 // Retrieve A portal user's time zone.
2756 func (r User_Customer_OpenIdConnect) GetTimezone() (resp datatypes.Locale_Timezone, err error) {
2757 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getTimezone", nil, &r.Options, &resp)
2758 return
2759 }
2760 2761 // Retrieve A user's unsuccessful attempts to log into the SoftLayer customer portal.
2762 func (r User_Customer_OpenIdConnect) GetUnsuccessfulLogins() (resp []datatypes.User_Customer_Access_Authentication, err error) {
2763 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getUnsuccessfulLogins", nil, &r.Options, &resp)
2764 return
2765 }
2766 2767 // Returns an IMS User Object from the provided OpenIdConnect User ID or IBMid Unique Identifier for the Account of the active user. Enforces the User Management permissions for the Active User. An exception will be thrown if no matching IMS User is found. NOTE that providing IBMid Unique Identifier is optional, but it will be preferred over OpenIdConnect User ID if provided.
2768 func (r User_Customer_OpenIdConnect) GetUserForUnifiedInvitation(openIdConnectUserId *string, uniqueIdentifier *string, searchInvitationsNotLinksFlag *string, accountId *string) (resp datatypes.User_Customer_OpenIdConnect, err error) {
2769 params := []interface{}{
2770 openIdConnectUserId,
2771 uniqueIdentifier,
2772 searchInvitationsNotLinksFlag,
2773 accountId,
2774 }
2775 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getUserForUnifiedInvitation", params, &r.Options, &resp)
2776 return
2777 }
2778 2779 // Retrieve a user id using a password token provided to the user in an email generated by the SoftLayer_User_Customer::initiatePortalPasswordChange request. Password recovery keys are valid for 24 hours after they're generated.
2780 //
2781 // When a new user is created or when a user has requested a password change using initiatePortalPasswordChange, they will have received an email that contains a url with a token. That token is used as the parameter for getUserIdForPasswordSet. Once the user id is known, then the SoftLayer_User_Customer object can be retrieved which is necessary to complete the process to set or reset a user's password.
2782 func (r User_Customer_OpenIdConnect) GetUserIdForPasswordSet(key *string) (resp int, err error) {
2783 params := []interface{}{
2784 key,
2785 }
2786 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getUserIdForPasswordSet", params, &r.Options, &resp)
2787 return
2788 }
2789 2790 // Retrieve User customer link with IBMid and IAMid.
2791 func (r User_Customer_OpenIdConnect) GetUserLinks() (resp []datatypes.User_Customer_Link, err error) {
2792 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getUserLinks", nil, &r.Options, &resp)
2793 return
2794 }
2795 2796 // no documentation yet
2797 func (r User_Customer_OpenIdConnect) GetUserPreferences(profileName *string, containerKeyname *string) (resp []datatypes.Layout_Profile, err error) {
2798 params := []interface{}{
2799 profileName,
2800 containerKeyname,
2801 }
2802 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getUserPreferences", params, &r.Options, &resp)
2803 return
2804 }
2805 2806 // Retrieve A portal user's status, which controls overall access to the SoftLayer customer portal and VPN access to the private network.
2807 func (r User_Customer_OpenIdConnect) GetUserStatus() (resp datatypes.User_Customer_Status, err error) {
2808 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getUserStatus", nil, &r.Options, &resp)
2809 return
2810 }
2811 2812 // Retrieve the number of CloudLayer Computing Instances that a portal user has access to. Portal users can have restrictions set to limit services for and to perform actions on CloudLayer Computing Instances. You can set these permissions in the portal by clicking the "administrative" then "user admin" links.
2813 func (r User_Customer_OpenIdConnect) GetVirtualGuestCount() (resp int, err error) {
2814 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getVirtualGuestCount", nil, &r.Options, &resp)
2815 return
2816 }
2817 2818 // Retrieve A portal user's accessible CloudLayer Computing Instances. These permissions control which CloudLayer Computing Instances a user has access to in the SoftLayer customer portal.
2819 func (r User_Customer_OpenIdConnect) GetVirtualGuests() (resp []datatypes.Virtual_Guest, err error) {
2820 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "getVirtualGuests", nil, &r.Options, &resp)
2821 return
2822 }
2823 2824 // no documentation yet
2825 func (r User_Customer_OpenIdConnect) InTerminalStatus() (resp bool, err error) {
2826 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "inTerminalStatus", nil, &r.Options, &resp)
2827 return
2828 }
2829 2830 // Sends password change email to the user containing url that allows the user the change their password. This is the first step when a user wishes to change their password. The url that is generated contains a one-time use token that is valid for only 24-hours.
2831 //
2832 // If this is a new master user who has never logged into the portal, then password reset will be initiated. Once a master user has logged into the portal, they must setup their security questions prior to logging out because master users are required to answer a security question during the password reset process. Should a master user not have security questions defined and not remember their password in order to define the security questions, then they will need to contact support at live chat or Revenue Services for assistance.
2833 //
2834 // Due to security reasons, the number of reset requests per username are limited within a undisclosed timeframe.
2835 func (r User_Customer_OpenIdConnect) InitiatePortalPasswordChange(username *string) (resp bool, err error) {
2836 params := []interface{}{
2837 username,
2838 }
2839 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "initiatePortalPasswordChange", params, &r.Options, &resp)
2840 return
2841 }
2842 2843 // A Brand Agent that has permissions to Add Customer Accounts will be able to request the password email be sent to the Master User of a Customer Account created by the same Brand as the agent making the request. Due to security reasons, the number of reset requests are limited within an undisclosed timeframe.
2844 func (r User_Customer_OpenIdConnect) InitiatePortalPasswordChangeByBrandAgent(username *string) (resp bool, err error) {
2845 params := []interface{}{
2846 username,
2847 }
2848 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "initiatePortalPasswordChangeByBrandAgent", params, &r.Options, &resp)
2849 return
2850 }
2851 2852 // Send email invitation to a user to join a SoftLayer account and authenticate with OpenIdConnect. Throws an exception on error.
2853 func (r User_Customer_OpenIdConnect) InviteUserToLinkOpenIdConnect(providerType *string) (err error) {
2854 var resp datatypes.Void
2855 params := []interface{}{
2856 providerType,
2857 }
2858 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "inviteUserToLinkOpenIdConnect", params, &r.Options, &resp)
2859 return
2860 }
2861 2862 // Portal users are considered master users if they don't have an associated parent user. The only users who don't have parent users are users whose username matches their SoftLayer account name. Master users have special permissions throughout the SoftLayer customer portal.
2863 // Deprecated: This function has been marked as deprecated.
2864 func (r User_Customer_OpenIdConnect) IsMasterUser() (resp bool, err error) {
2865 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "isMasterUser", nil, &r.Options, &resp)
2866 return
2867 }
2868 2869 // Determine if a string is the given user's login password to the SoftLayer customer portal.
2870 func (r User_Customer_OpenIdConnect) IsValidPortalPassword(password *string) (resp bool, err error) {
2871 params := []interface{}{
2872 password,
2873 }
2874 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "isValidPortalPassword", params, &r.Options, &resp)
2875 return
2876 }
2877 2878 // The perform external authentication method will authenticate the given external authentication container with an external vendor. The authentication container and its contents will be verified before an attempt is made to authenticate the contents of the container with an external vendor.
2879 func (r User_Customer_OpenIdConnect) PerformExternalAuthentication(authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp datatypes.Container_User_Customer_Portal_Token, err error) {
2880 params := []interface{}{
2881 authenticationContainer,
2882 }
2883 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "performExternalAuthentication", params, &r.Options, &resp)
2884 return
2885 }
2886 2887 // Set the password for a user who has an outstanding password request. A user with an outstanding password request will have an unused and unexpired password key. The password key is part of the url provided to the user in the email sent to the user with information on how to set their password. The email was generated by the SoftLayer_User_Customer::initiatePortalPasswordRequest request. Password recovery keys are valid for 24 hours after they're generated.
2888 //
2889 // If the user has required authentication methods as specified by in the SoftLayer_Container_User_Customer_PasswordSet container returned from the SoftLayer_User_Customer::getRequirementsForPasswordSet request, then additional requests must be made to processPasswordSetRequest to authenticate the user before changing the password. First, if the user has security questions set on their profile, they will be required to answer one of their questions correctly. Next, if the user has Verisign or Google Authentication on their account, they must authenticate according to the two-factor provider. All of this authentication is done using the SoftLayer_Container_User_Customer_PasswordSet container.
2890 //
2891 // User portal passwords must match the following restrictions. Portal passwords must...
2892 // * ...be over eight characters long.
2893 // * ...be under twenty characters long.
2894 // * ...contain at least one uppercase letter
2895 // * ...contain at least one lowercase letter
2896 // * ...contain at least one number
2897 // * ...contain one of the special characters _ - | @ . , ? / ! ~ # $ % ^ & * ( ) { } [ ] \ + =
2898 // * ...not match your username
2899 func (r User_Customer_OpenIdConnect) ProcessPasswordSetRequest(passwordSet *datatypes.Container_User_Customer_PasswordSet, authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp bool, err error) {
2900 params := []interface{}{
2901 passwordSet,
2902 authenticationContainer,
2903 }
2904 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "processPasswordSetRequest", params, &r.Options, &resp)
2905 return
2906 }
2907 2908 // Revoke access to all dedicated hosts on the account for this user. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access or the access has been revoked, then "not found" exceptions are thrown if the user attempts to access any of these devices. If the current user does not have administrative privileges over this user, an inadequate permissions exception will get thrown.
2909 //
2910 // Users can call this function on child users, but not to themselves. An account's master has access to all users permissions on their account.
2911 func (r User_Customer_OpenIdConnect) RemoveAllDedicatedHostAccessForThisUser() (resp bool, err error) {
2912 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeAllDedicatedHostAccessForThisUser", nil, &r.Options, &resp)
2913 return
2914 }
2915 2916 // Remove all hardware from a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. If the current user does not have administrative privileges over this user, an inadequate permissions exception will get thrown.
2917 //
2918 // Users can call this function on child users, but not to themselves. An account's master has access to all users permissions on their account.
2919 func (r User_Customer_OpenIdConnect) RemoveAllHardwareAccessForThisUser() (resp bool, err error) {
2920 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeAllHardwareAccessForThisUser", nil, &r.Options, &resp)
2921 return
2922 }
2923 2924 // Remove all cloud computing instances from a portal user's instance access list. A user's instance access list controls which of an account's computing instance objects a user has access to in the SoftLayer customer portal and API. If the current user does not have administrative privileges over this user, an inadequate permissions exception will get thrown.
2925 //
2926 // Users can call this function on child users, but not to themselves. An account's master has access to all users permissions on their account.
2927 func (r User_Customer_OpenIdConnect) RemoveAllVirtualAccessForThisUser() (resp bool, err error) {
2928 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeAllVirtualAccessForThisUser", nil, &r.Options, &resp)
2929 return
2930 }
2931 2932 // Remove a user's API authentication key, removing that user's access to query the SoftLayer API.
2933 func (r User_Customer_OpenIdConnect) RemoveApiAuthenticationKey(keyId *int) (resp bool, err error) {
2934 params := []interface{}{
2935 keyId,
2936 }
2937 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeApiAuthenticationKey", params, &r.Options, &resp)
2938 return
2939 }
2940 2941 // Revokes access for the user to one or more dedicated host devices. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access or the access has been revoked, then "not found" exceptions are thrown if the user attempts to access any of these devices.
2942 //
2943 // Users can assign device access to their child users, but not to themselves. An account's master has access to all devices on their customer account and can set dedicated host access for any of the other users on their account.
2944 //
2945 // If the user has full dedicatedHost access, then it will provide access to "ALL but passed in" dedicatedHost ids.
2946 func (r User_Customer_OpenIdConnect) RemoveBulkDedicatedHostAccess(dedicatedHostIds []int) (resp bool, err error) {
2947 params := []interface{}{
2948 dedicatedHostIds,
2949 }
2950 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeBulkDedicatedHostAccess", params, &r.Options, &resp)
2951 return
2952 }
2953 2954 // Remove multiple hardware from a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. Hardware does not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user does not has access to the hardware you're attempting to remove then removeBulkHardwareAccess() returns true.
2955 //
2956 // Users can assign hardware access to their child users, but not to themselves. An account's master has access to all hardware on their customer account and can set hardware access for any of the other users on their account.
2957 //
2958 // If the user has full hardware access, then it will provide access to "ALL but passed in" hardware ids.
2959 func (r User_Customer_OpenIdConnect) RemoveBulkHardwareAccess(hardwareIds []int) (resp bool, err error) {
2960 params := []interface{}{
2961 hardwareIds,
2962 }
2963 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeBulkHardwareAccess", params, &r.Options, &resp)
2964 return
2965 }
2966 2967 // Remove (revoke) multiple permissions from a portal user's permission set. [[SoftLayer_User_Customer_CustomerPermission_Permission]] control which features in the SoftLayer customer portal and API a user may use. Removing a user's permission will affect that user's portal and API access. removePortalPermission() does not attempt to remove permissions that are not assigned to the user.
2968 //
2969 // Users can grant or revoke permissions to their child users, but not to themselves. An account's master has all portal permissions and can grant permissions for any of the other users on their account.
2970 //
2971 // If the cascadePermissionsFlag is set to true, then removing the permissions from a user will cascade down the child hierarchy and remove the permissions from this user along with all child users who also have the permission.
2972 //
2973 // If the cascadePermissionsFlag is not provided or is set to false and the user has children users who have the permission, then an exception will be thrown, and the permission will not be removed from this user.
2974 //
2975 // Use the [[SoftLayer_User_Customer_CustomerPermission_Permission::getAllObjects]] method to retrieve a list of all permissions available in the SoftLayer customer portal and API. Permissions are removed based on the keyName property of the permission objects within the permissions parameter.
2976 func (r User_Customer_OpenIdConnect) RemoveBulkPortalPermission(permissions []datatypes.User_Customer_CustomerPermission_Permission, cascadePermissionsFlag *bool) (resp bool, err error) {
2977 params := []interface{}{
2978 permissions,
2979 cascadePermissionsFlag,
2980 }
2981 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeBulkPortalPermission", params, &r.Options, &resp)
2982 return
2983 }
2984 2985 // no documentation yet
2986 func (r User_Customer_OpenIdConnect) RemoveBulkRoles(roles []datatypes.User_Permission_Role) (err error) {
2987 var resp datatypes.Void
2988 params := []interface{}{
2989 roles,
2990 }
2991 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeBulkRoles", params, &r.Options, &resp)
2992 return
2993 }
2994 2995 // Remove multiple CloudLayer Computing Instances from a portal user's access list. A user's CloudLayer Computing Instance access list controls which of an account's CloudLayer Computing Instance objects a user has access to in the SoftLayer customer portal and API. CloudLayer Computing Instances do not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user does not has access to the CloudLayer Computing Instance you're attempting remove add then removeBulkVirtualGuestAccess() returns true.
2996 //
2997 // Users can assign CloudLayer Computing Instance access to their child users, but not to themselves. An account's master has access to all CloudLayer Computing Instances on their customer account and can set hardware access for any of the other users on their account.
2998 func (r User_Customer_OpenIdConnect) RemoveBulkVirtualGuestAccess(virtualGuestIds []int) (resp bool, err error) {
2999 params := []interface{}{
3000 virtualGuestIds,
3001 }
3002 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeBulkVirtualGuestAccess", params, &r.Options, &resp)
3003 return
3004 }
3005 3006 // Revokes access for the user to a single dedicated host device. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access or the access has been revoked, then "not found" exceptions are thrown if the user attempts to access any of these devices.
3007 //
3008 // Users can assign device access to their child users, but not to themselves. An account's master has access to all devices on their customer account and can set dedicated host access for any of the other users on their account.
3009 func (r User_Customer_OpenIdConnect) RemoveDedicatedHostAccess(dedicatedHostId *int) (resp bool, err error) {
3010 params := []interface{}{
3011 dedicatedHostId,
3012 }
3013 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeDedicatedHostAccess", params, &r.Options, &resp)
3014 return
3015 }
3016 3017 // no documentation yet
3018 func (r User_Customer_OpenIdConnect) RemoveExternalBinding(externalBinding *datatypes.User_External_Binding) (resp bool, err error) {
3019 params := []interface{}{
3020 externalBinding,
3021 }
3022 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeExternalBinding", params, &r.Options, &resp)
3023 return
3024 }
3025 3026 // Remove hardware from a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. Hardware does not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user does not has access to the hardware you're attempting remove add then removeHardwareAccess() returns true.
3027 //
3028 // Users can assign hardware access to their child users, but not to themselves. An account's master has access to all hardware on their customer account and can set hardware access for any of the other users on their account.
3029 func (r User_Customer_OpenIdConnect) RemoveHardwareAccess(hardwareId *int) (resp bool, err error) {
3030 params := []interface{}{
3031 hardwareId,
3032 }
3033 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeHardwareAccess", params, &r.Options, &resp)
3034 return
3035 }
3036 3037 // Remove (revoke) a permission from a portal user's permission set. [[SoftLayer_User_Customer_CustomerPermission_Permission]] control which features in the SoftLayer customer portal and API a user may use. Removing a user's permission will affect that user's portal and API access. If the user does not have the permission you're attempting to remove then removePortalPermission() returns true.
3038 //
3039 // Users can assign permissions to their child users, but not to themselves. An account's master has all portal permissions and can set permissions for any of the other users on their account.
3040 //
3041 // If the cascadePermissionsFlag is set to true, then removing the permission from a user will cascade down the child hierarchy and remove the permission from this user and all child users who also have the permission.
3042 //
3043 // If the cascadePermissionsFlag is not set or is set to false and the user has children users who have the permission, then an exception will be thrown, and the permission will not be removed from this user.
3044 //
3045 // Use the [[SoftLayer_User_Customer_CustomerPermission_Permission::getAllObjects]] method to retrieve a list of all permissions available in the SoftLayer customer portal and API. Permissions are removed based on the keyName property of the permission parameter.
3046 func (r User_Customer_OpenIdConnect) RemovePortalPermission(permission *datatypes.User_Customer_CustomerPermission_Permission, cascadePermissionsFlag *bool) (resp bool, err error) {
3047 params := []interface{}{
3048 permission,
3049 cascadePermissionsFlag,
3050 }
3051 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removePortalPermission", params, &r.Options, &resp)
3052 return
3053 }
3054 3055 // no documentation yet
3056 func (r User_Customer_OpenIdConnect) RemoveRole(role *datatypes.User_Permission_Role) (err error) {
3057 var resp datatypes.Void
3058 params := []interface{}{
3059 role,
3060 }
3061 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeRole", params, &r.Options, &resp)
3062 return
3063 }
3064 3065 // no documentation yet
3066 func (r User_Customer_OpenIdConnect) RemoveSecurityAnswers() (resp bool, err error) {
3067 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeSecurityAnswers", nil, &r.Options, &resp)
3068 return
3069 }
3070 3071 // Remove a CloudLayer Computing Instance from a portal user's access list. A user's CloudLayer Computing Instance access list controls which of an account's computing instances a user has access to in the SoftLayer customer portal and API. CloudLayer Computing Instances do not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user does not has access to the CloudLayer Computing Instance you're attempting remove add then removeVirtualGuestAccess() returns true.
3072 //
3073 // Users can assign CloudLayer Computing Instance access to their child users, but not to themselves. An account's master has access to all CloudLayer Computing Instances on their customer account and can set instance access for any of the other users on their account.
3074 func (r User_Customer_OpenIdConnect) RemoveVirtualGuestAccess(virtualGuestId *int) (resp bool, err error) {
3075 params := []interface{}{
3076 virtualGuestId,
3077 }
3078 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "removeVirtualGuestAccess", params, &r.Options, &resp)
3079 return
3080 }
3081 3082 // This method will change the IBMid that a SoftLayer user is linked to, if we need to do that for some reason. It will do this by modifying the link to the desired new IBMid. NOTE: This method cannot be used to "un-link" a SoftLayer user. Once linked, a SoftLayer user can never be un-linked. Also, this method cannot be used to reset the link if the user account is already Bluemix linked. To reset a link for the Bluemix-linked user account, use resetOpenIdConnectLinkUnifiedUserManagementMode.
3083 func (r User_Customer_OpenIdConnect) ResetOpenIdConnectLink(providerType *string, newIbmIdUsername *string, removeSecuritySettings *bool) (err error) {
3084 var resp datatypes.Void
3085 params := []interface{}{
3086 providerType,
3087 newIbmIdUsername,
3088 removeSecuritySettings,
3089 }
3090 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "resetOpenIdConnectLink", params, &r.Options, &resp)
3091 return
3092 }
3093 3094 // This method will change the IBMid that a SoftLayer master user is linked to, if we need to do that for some reason. It will do this by unlinking the new owner IBMid from its current user association in this account, if there is one (note that the new owner IBMid is not required to already be a member of the IMS account). Then it will modify the existing IBMid link for the master user to use the new owner IBMid-realm IAMid. At this point, if the new owner IBMid isn't already a member of the PaaS account, it will attempt to add it. As a last step, it will call PaaS to modify the owner on that side, if necessary. Only when all those steps are complete, it will commit the IMS-side DB changes. Then, it will clean up the SoftLayer user that was linked to the new owner IBMid (this user became unlinked as the first step in this process). It will also call BSS to delete the old owner IBMid. NOTE: This method cannot be used to "un-link" a SoftLayer user. Once linked, a SoftLayer user can never be un-linked. Also, this method cannot be used to reset the link if the user account is not Bluemix linked. To reset a link for the user account not linked to Bluemix, use resetOpenIdConnectLink.
3095 func (r User_Customer_OpenIdConnect) ResetOpenIdConnectLinkUnifiedUserManagementMode(providerType *string, newIbmIdUsername *string, removeSecuritySettings *bool) (err error) {
3096 var resp datatypes.Void
3097 params := []interface{}{
3098 providerType,
3099 newIbmIdUsername,
3100 removeSecuritySettings,
3101 }
3102 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "resetOpenIdConnectLinkUnifiedUserManagementMode", params, &r.Options, &resp)
3103 return
3104 }
3105 3106 // no documentation yet
3107 func (r User_Customer_OpenIdConnect) SamlAuthenticate(accountId *string, samlResponse *string) (resp datatypes.Container_User_Customer_Portal_Token, err error) {
3108 params := []interface{}{
3109 accountId,
3110 samlResponse,
3111 }
3112 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "samlAuthenticate", params, &r.Options, &resp)
3113 return
3114 }
3115 3116 // no documentation yet
3117 func (r User_Customer_OpenIdConnect) SamlBeginAuthentication(accountId *int) (resp string, err error) {
3118 params := []interface{}{
3119 accountId,
3120 }
3121 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "samlBeginAuthentication", params, &r.Options, &resp)
3122 return
3123 }
3124 3125 // no documentation yet
3126 func (r User_Customer_OpenIdConnect) SamlBeginLogout() (resp string, err error) {
3127 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "samlBeginLogout", nil, &r.Options, &resp)
3128 return
3129 }
3130 3131 // no documentation yet
3132 func (r User_Customer_OpenIdConnect) SamlLogout(samlResponse *string) (err error) {
3133 var resp datatypes.Void
3134 params := []interface{}{
3135 samlResponse,
3136 }
3137 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "samlLogout", params, &r.Options, &resp)
3138 return
3139 }
3140 3141 // no documentation yet
3142 func (r User_Customer_OpenIdConnect) SelfPasswordChange(currentPassword *string, newPassword *string) (err error) {
3143 var resp datatypes.Void
3144 params := []interface{}{
3145 currentPassword,
3146 newPassword,
3147 }
3148 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "selfPasswordChange", params, &r.Options, &resp)
3149 return
3150 }
3151 3152 // An OpenIdConnect identity, for example an IAMid, can be linked or mapped to one or more individual SoftLayer users, but no more than one per account. If an OpenIdConnect identity is mapped to multiple accounts in this manner, one such account should be identified as the default account for that identity. Invoke this only on IBMid-authenticated users.
3153 func (r User_Customer_OpenIdConnect) SetDefaultAccount(providerType *string, accountId *int) (resp datatypes.Account, err error) {
3154 params := []interface{}{
3155 providerType,
3156 accountId,
3157 }
3158 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "setDefaultAccount", params, &r.Options, &resp)
3159 return
3160 }
3161 3162 // As master user, calling this api for the IBMid provider type when there is an existing IBMid for the email on the SL account will silently (without sending an invitation email) create a link for the IBMid. NOTE: If the SoftLayer user is already linked to IBMid, this call will fail. If the IBMid specified by the email of this user, is already used in a link to another user in this account, this call will fail. If there is already an open invitation from this SoftLayer user to this or any IBMid, this call will fail. If there is already an open invitation from some other SoftLayer user in this account to this IBMid, then this call will fail.
3163 func (r User_Customer_OpenIdConnect) SilentlyMigrateUserOpenIdConnect(providerType *string) (resp bool, err error) {
3164 params := []interface{}{
3165 providerType,
3166 }
3167 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "silentlyMigrateUserOpenIdConnect", params, &r.Options, &resp)
3168 return
3169 }
3170 3171 // This method allows the master user of an account to undo the designation of this user as an alternate master user. This can not be applied to the true master user of the account.
3172 //
3173 // Note that this method, by itself, WILL NOT affect the IAM Policies granted this user. This API is not intended for general customer use. It is intended to be called by IAM, in concert with other actions taken by IAM when the master user / account owner turns off an "alternate/auxiliary master user / account owner".
3174 func (r User_Customer_OpenIdConnect) TurnOffMasterUserPermissionCheckMode() (err error) {
3175 var resp datatypes.Void
3176 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "turnOffMasterUserPermissionCheckMode", nil, &r.Options, &resp)
3177 return
3178 }
3179 3180 // This method allows the master user of an account to designate this user as an alternate master user. Effectively this means that this user should have "all the same IMS permissions as a master user".
3181 //
3182 // Note that this method, by itself, WILL NOT affect the IAM Policies granted to this user. This API is not intended for general customer use. It is intended to be called by IAM, in concert with other actions taken by IAM when the master user / account owner designates an "alternate/auxiliary master user / account owner".
3183 func (r User_Customer_OpenIdConnect) TurnOnMasterUserPermissionCheckMode() (err error) {
3184 var resp datatypes.Void
3185 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "turnOnMasterUserPermissionCheckMode", nil, &r.Options, &resp)
3186 return
3187 }
3188 3189 // Update the active status for a notification that the user is subscribed to. A notification along with an active flag can be supplied to update the active status for a particular notification subscription.
3190 func (r User_Customer_OpenIdConnect) UpdateNotificationSubscriber(notificationKeyName *string, active *int) (resp bool, err error) {
3191 params := []interface{}{
3192 notificationKeyName,
3193 active,
3194 }
3195 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "updateNotificationSubscriber", params, &r.Options, &resp)
3196 return
3197 }
3198 3199 // Update a user's login security questions and answers on the SoftLayer customer portal. These questions and answers are used to optionally log into the SoftLayer customer portal using two-factor authentication. Each user must have three distinct questions set with a unique answer for each question, and each answer may only contain alphanumeric or the . , - _ ( ) [ ] : ; > < characters. Existing user security questions and answers are deleted before new ones are set, and users may only update their own security questions and answers.
3200 func (r User_Customer_OpenIdConnect) UpdateSecurityAnswers(questions []datatypes.User_Security_Question, answers []string) (resp bool, err error) {
3201 params := []interface{}{
3202 questions,
3203 answers,
3204 }
3205 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "updateSecurityAnswers", params, &r.Options, &resp)
3206 return
3207 }
3208 3209 // Update a delivery method for a notification that the user is subscribed to. A delivery method keyName along with an active flag can be supplied to update the active status of the delivery methods for the specified notification. Available delivery methods - 'EMAIL'. Available notifications - 'PLANNED_MAINTENANCE', 'UNPLANNED_INCIDENT'.
3210 func (r User_Customer_OpenIdConnect) UpdateSubscriberDeliveryMethod(notificationKeyName *string, deliveryMethodKeyNames []string, active *int) (resp bool, err error) {
3211 params := []interface{}{
3212 notificationKeyName,
3213 deliveryMethodKeyNames,
3214 active,
3215 }
3216 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "updateSubscriberDeliveryMethod", params, &r.Options, &resp)
3217 return
3218 }
3219 3220 // Update a user's VPN password on the SoftLayer customer portal. As with portal passwords, VPN passwords must match the following restrictions. VPN passwords must...
3221 // * ...be over eight characters long.
3222 // * ...be under twenty characters long.
3223 // * ...contain at least one uppercase letter
3224 // * ...contain at least one lowercase letter
3225 // * ...contain at least one number
3226 // * ...contain one of the special characters _ - | @ . , ? / ! ~ # $ % ^ & * ( ) { } [ ] \ =
3227 // * ...not match your username
3228 // Finally, users can only update their own VPN password. An account's master user can update any of their account users' VPN passwords.
3229 func (r User_Customer_OpenIdConnect) UpdateVpnPassword(password *string) (resp bool, err error) {
3230 params := []interface{}{
3231 password,
3232 }
3233 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "updateVpnPassword", params, &r.Options, &resp)
3234 return
3235 }
3236 3237 // Always call this function to enable changes when manually configuring VPN subnet access.
3238 func (r User_Customer_OpenIdConnect) UpdateVpnUser() (resp bool, err error) {
3239 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "updateVpnUser", nil, &r.Options, &resp)
3240 return
3241 }
3242 3243 // This method validate the given authentication token using the user id by comparing it with the actual user authentication token and return [[SoftLayer_Container_User_Customer_Portal_Token]] object
3244 func (r User_Customer_OpenIdConnect) ValidateAuthenticationToken(authenticationToken *datatypes.Container_User_Authentication_Token) (resp datatypes.Container_User_Customer_Portal_Token, err error) {
3245 params := []interface{}{
3246 authenticationToken,
3247 }
3248 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "validateAuthenticationToken", params, &r.Options, &resp)
3249 return
3250 }
3251 3252 // no documentation yet
3253 type User_Customer_OpenIdConnect_TrustedProfile struct {
3254 Session session.SLSession
3255 Options sl.Options
3256 }
3257 3258 // GetUserCustomerOpenIdConnectTrustedProfileService returns an instance of the User_Customer_OpenIdConnect_TrustedProfile SoftLayer service
3259 func GetUserCustomerOpenIdConnectTrustedProfileService(sess session.SLSession) User_Customer_OpenIdConnect_TrustedProfile {
3260 return User_Customer_OpenIdConnect_TrustedProfile{Session: sess}
3261 }
3262 3263 func (r User_Customer_OpenIdConnect_TrustedProfile) Id(id int) User_Customer_OpenIdConnect_TrustedProfile {
3264 r.Options.Id = &id
3265 return r
3266 }
3267 3268 func (r User_Customer_OpenIdConnect_TrustedProfile) Mask(mask string) User_Customer_OpenIdConnect_TrustedProfile {
3269 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
3270 mask = fmt.Sprintf("mask[%s]", mask)
3271 }
3272 3273 r.Options.Mask = mask
3274 return r
3275 }
3276 3277 func (r User_Customer_OpenIdConnect_TrustedProfile) Filter(filter string) User_Customer_OpenIdConnect_TrustedProfile {
3278 r.Options.Filter = filter
3279 return r
3280 }
3281 3282 func (r User_Customer_OpenIdConnect_TrustedProfile) Limit(limit int) User_Customer_OpenIdConnect_TrustedProfile {
3283 r.Options.Limit = &limit
3284 return r
3285 }
3286 3287 func (r User_Customer_OpenIdConnect_TrustedProfile) Offset(offset int) User_Customer_OpenIdConnect_TrustedProfile {
3288 r.Options.Offset = &offset
3289 return r
3290 }
3291 3292 // no documentation yet
3293 func (r User_Customer_OpenIdConnect_TrustedProfile) AcknowledgeSupportPolicy() (err error) {
3294 var resp datatypes.Void
3295 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "acknowledgeSupportPolicy", nil, &r.Options, &resp)
3296 return
3297 }
3298 3299 // Completes invitation process for an OpenIdConnect user created by Bluemix Unified User Console.
3300 func (r User_Customer_OpenIdConnect_TrustedProfile) ActivateOpenIdConnectUser(verificationCode *string, userInfo *datatypes.User_Customer, iamId *string) (err error) {
3301 var resp datatypes.Void
3302 params := []interface{}{
3303 verificationCode,
3304 userInfo,
3305 iamId,
3306 }
3307 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "activateOpenIdConnectUser", params, &r.Options, &resp)
3308 return
3309 }
3310 3311 // Create a user's API authentication key, allowing that user access to query the SoftLayer API. addApiAuthenticationKey() returns the user's new API key. Each portal user is allowed only one API key.
3312 func (r User_Customer_OpenIdConnect_TrustedProfile) AddApiAuthenticationKey() (resp string, err error) {
3313 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "addApiAuthenticationKey", nil, &r.Options, &resp)
3314 return
3315 }
3316 3317 // Grants the user access to one or more dedicated host devices. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access, then "not found" exceptions are thrown if the user attempts to access any of these devices.
3318 //
3319 // Users can assign device access to their child users, but not to themselves. An account's master has access to all devices on their customer account and can set dedicated host access for any of the other users on their account.
3320 func (r User_Customer_OpenIdConnect_TrustedProfile) AddBulkDedicatedHostAccess(dedicatedHostIds []int) (resp bool, err error) {
3321 params := []interface{}{
3322 dedicatedHostIds,
3323 }
3324 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "addBulkDedicatedHostAccess", params, &r.Options, &resp)
3325 return
3326 }
3327 3328 // Add multiple hardware to a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. Hardware does not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. addBulkHardwareAccess() does not attempt to add hardware access if the given user already has access to that hardware object.
3329 //
3330 // Users can assign hardware access to their child users, but not to themselves. An account's master has access to all hardware on their customer account and can set hardware access for any of the other users on their account.
3331 func (r User_Customer_OpenIdConnect_TrustedProfile) AddBulkHardwareAccess(hardwareIds []int) (resp bool, err error) {
3332 params := []interface{}{
3333 hardwareIds,
3334 }
3335 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "addBulkHardwareAccess", params, &r.Options, &resp)
3336 return
3337 }
3338 3339 // Add multiple permissions to a portal user's permission set. [[SoftLayer_User_Customer_CustomerPermission_Permission]] control which features in the SoftLayer customer portal and API a user may use. addBulkPortalPermission() does not attempt to add permissions already assigned to the user.
3340 //
3341 // Users can assign permissions to their child users, but not to themselves. An account's master has all portal permissions and can set permissions for any of the other users on their account.
3342 //
3343 // Use the [[SoftLayer_User_Customer_CustomerPermission_Permission::getAllObjects]] method to retrieve a list of all permissions available in the SoftLayer customer portal and API. Permissions are removed based on the keyName property of the permission objects within the permissions parameter.
3344 func (r User_Customer_OpenIdConnect_TrustedProfile) AddBulkPortalPermission(permissions []datatypes.User_Customer_CustomerPermission_Permission) (resp bool, err error) {
3345 params := []interface{}{
3346 permissions,
3347 }
3348 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "addBulkPortalPermission", params, &r.Options, &resp)
3349 return
3350 }
3351 3352 // no documentation yet
3353 func (r User_Customer_OpenIdConnect_TrustedProfile) AddBulkRoles(roles []datatypes.User_Permission_Role) (err error) {
3354 var resp datatypes.Void
3355 params := []interface{}{
3356 roles,
3357 }
3358 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "addBulkRoles", params, &r.Options, &resp)
3359 return
3360 }
3361 3362 // Add multiple CloudLayer Computing Instances to a portal user's access list. A user's CloudLayer Computing Instance access list controls which of an account's CloudLayer Computing Instance objects a user has access to in the SoftLayer customer portal and API. CloudLayer Computing Instances do not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. addBulkVirtualGuestAccess() does not attempt to add CloudLayer Computing Instance access if the given user already has access to that CloudLayer Computing Instance object.
3363 //
3364 // Users can assign CloudLayer Computing Instance access to their child users, but not to themselves. An account's master has access to all CloudLayer Computing Instances on their customer account and can set CloudLayer Computing Instance access for any of the other users on their account.
3365 func (r User_Customer_OpenIdConnect_TrustedProfile) AddBulkVirtualGuestAccess(virtualGuestIds []int) (resp bool, err error) {
3366 params := []interface{}{
3367 virtualGuestIds,
3368 }
3369 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "addBulkVirtualGuestAccess", params, &r.Options, &resp)
3370 return
3371 }
3372 3373 // Grants the user access to a single dedicated host device. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access, then "not found" exceptions are thrown if the user attempts to access any of these devices.
3374 //
3375 // Users can assign device access to their child users, but not to themselves. An account's master has access to all devices on their customer account and can set dedicated host access for any of the other users on their account.
3376 //
3377 // Only the USER_MANAGE permission is required to execute this.
3378 func (r User_Customer_OpenIdConnect_TrustedProfile) AddDedicatedHostAccess(dedicatedHostId *int) (resp bool, err error) {
3379 params := []interface{}{
3380 dedicatedHostId,
3381 }
3382 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "addDedicatedHostAccess", params, &r.Options, &resp)
3383 return
3384 }
3385 3386 // no documentation yet
3387 func (r User_Customer_OpenIdConnect_TrustedProfile) AddExternalBinding(externalBinding *datatypes.User_External_Binding) (resp datatypes.User_Customer_External_Binding, err error) {
3388 params := []interface{}{
3389 externalBinding,
3390 }
3391 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "addExternalBinding", params, &r.Options, &resp)
3392 return
3393 }
3394 3395 // Add hardware to a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. Hardware does not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user already has access to the hardware you're attempting to add then addHardwareAccess() returns true.
3396 //
3397 // Users can assign hardware access to their child users, but not to themselves. An account's master has access to all hardware on their customer account and can set hardware access for any of the other users on their account.
3398 //
3399 // Only the USER_MANAGE permission is required to execute this.
3400 func (r User_Customer_OpenIdConnect_TrustedProfile) AddHardwareAccess(hardwareId *int) (resp bool, err error) {
3401 params := []interface{}{
3402 hardwareId,
3403 }
3404 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "addHardwareAccess", params, &r.Options, &resp)
3405 return
3406 }
3407 3408 // Create a notification subscription record for the user. If a subscription record exists for the notification, the record will be set to active, if currently inactive.
3409 func (r User_Customer_OpenIdConnect_TrustedProfile) AddNotificationSubscriber(notificationKeyName *string) (resp bool, err error) {
3410 params := []interface{}{
3411 notificationKeyName,
3412 }
3413 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "addNotificationSubscriber", params, &r.Options, &resp)
3414 return
3415 }
3416 3417 // Add a permission to a portal user's permission set. [[SoftLayer_User_Customer_CustomerPermission_Permission]] control which features in the SoftLayer customer portal and API a user may use. If the user already has the permission you're attempting to add then addPortalPermission() returns true.
3418 //
3419 // Users can assign permissions to their child users, but not to themselves. An account's master has all portal permissions and can set permissions for any of the other users on their account.
3420 //
3421 // Use the [[SoftLayer_User_Customer_CustomerPermission_Permission::getAllObjects]] method to retrieve a list of all permissions available in the SoftLayer customer portal and API. Permissions are added based on the keyName property of the permission parameter.
3422 func (r User_Customer_OpenIdConnect_TrustedProfile) AddPortalPermission(permission *datatypes.User_Customer_CustomerPermission_Permission) (resp bool, err error) {
3423 params := []interface{}{
3424 permission,
3425 }
3426 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "addPortalPermission", params, &r.Options, &resp)
3427 return
3428 }
3429 3430 // no documentation yet
3431 func (r User_Customer_OpenIdConnect_TrustedProfile) AddRole(role *datatypes.User_Permission_Role) (err error) {
3432 var resp datatypes.Void
3433 params := []interface{}{
3434 role,
3435 }
3436 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "addRole", params, &r.Options, &resp)
3437 return
3438 }
3439 3440 // Add a CloudLayer Computing Instance to a portal user's access list. A user's CloudLayer Computing Instance access list controls which of an account's CloudLayer Computing Instance objects a user has access to in the SoftLayer customer portal and API. CloudLayer Computing Instances do not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user already has access to the CloudLayer Computing Instance you're attempting to add then addVirtualGuestAccess() returns true.
3441 //
3442 // Users can assign CloudLayer Computing Instance access to their child users, but not to themselves. An account's master has access to all CloudLayer Computing Instances on their customer account and can set CloudLayer Computing Instance access for any of the other users on their account.
3443 //
3444 // Only the USER_MANAGE permission is required to execute this.
3445 func (r User_Customer_OpenIdConnect_TrustedProfile) AddVirtualGuestAccess(virtualGuestId *int) (resp bool, err error) {
3446 params := []interface{}{
3447 virtualGuestId,
3448 }
3449 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "addVirtualGuestAccess", params, &r.Options, &resp)
3450 return
3451 }
3452 3453 // This method can be used in place of [[SoftLayer_User_Customer::editObject]] to change the parent user of this user.
3454 //
3455 // The new parent must be a user on the same account, and must not be a child of this user. A user is not allowed to change their own parent.
3456 //
3457 // If the cascadeFlag is set to false, then an exception will be thrown if the new parent does not have all of the permissions that this user possesses. If the cascadeFlag is set to true, then permissions will be removed from this user and the descendants of this user as necessary so that no children of the parent will have permissions that the parent does not possess. However, setting the cascadeFlag to true will not remove the access all device permissions from this user. The customer portal will need to be used to remove these permissions.
3458 func (r User_Customer_OpenIdConnect_TrustedProfile) AssignNewParentId(parentId *int, cascadePermissionsFlag *bool) (resp datatypes.User_Customer, err error) {
3459 params := []interface{}{
3460 parentId,
3461 cascadePermissionsFlag,
3462 }
3463 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "assignNewParentId", params, &r.Options, &resp)
3464 return
3465 }
3466 3467 // Select a type of preference you would like to modify using [[SoftLayer_User_Customer::getPreferenceTypes|getPreferenceTypes]] and invoke this method using that preference type key name.
3468 func (r User_Customer_OpenIdConnect_TrustedProfile) ChangePreference(preferenceTypeKeyName *string, value *string) (resp []datatypes.User_Preference, err error) {
3469 params := []interface{}{
3470 preferenceTypeKeyName,
3471 value,
3472 }
3473 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "changePreference", params, &r.Options, &resp)
3474 return
3475 }
3476 3477 // no documentation yet
3478 func (r User_Customer_OpenIdConnect_TrustedProfile) CompleteInvitationAfterLogin(providerType *string, accessToken *string, emailRegistrationCode *string) (err error) {
3479 var resp datatypes.Void
3480 params := []interface{}{
3481 providerType,
3482 accessToken,
3483 emailRegistrationCode,
3484 }
3485 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "completeInvitationAfterLogin", params, &r.Options, &resp)
3486 return
3487 }
3488 3489 // Create a new subscriber for a given resource.
3490 func (r User_Customer_OpenIdConnect_TrustedProfile) CreateNotificationSubscriber(keyName *string, resourceTableId *int) (resp bool, err error) {
3491 params := []interface{}{
3492 keyName,
3493 resourceTableId,
3494 }
3495 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "createNotificationSubscriber", params, &r.Options, &resp)
3496 return
3497 }
3498 3499 // no documentation yet
3500 func (r User_Customer_OpenIdConnect_TrustedProfile) CreateObject(templateObject *datatypes.User_Customer_OpenIdConnect_TrustedProfile, password *string, vpnPassword *string) (resp datatypes.User_Customer_OpenIdConnect_TrustedProfile, err error) {
3501 params := []interface{}{
3502 templateObject,
3503 password,
3504 vpnPassword,
3505 }
3506 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "createObject", params, &r.Options, &resp)
3507 return
3508 }
3509 3510 // no documentation yet
3511 func (r User_Customer_OpenIdConnect_TrustedProfile) CreateOpenIdConnectUserAndCompleteInvitation(providerType *string, user *datatypes.User_Customer, password *string, registrationCode *string) (err error) {
3512 var resp datatypes.Void
3513 params := []interface{}{
3514 providerType,
3515 user,
3516 password,
3517 registrationCode,
3518 }
3519 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "createOpenIdConnectUserAndCompleteInvitation", params, &r.Options, &resp)
3520 return
3521 }
3522 3523 // Create delivery methods for a notification that the user is subscribed to. Multiple delivery method keyNames can be supplied to create multiple delivery methods for the specified notification. Available delivery methods - 'EMAIL'. Available notifications - 'PLANNED_MAINTENANCE', 'UNPLANNED_INCIDENT'.
3524 func (r User_Customer_OpenIdConnect_TrustedProfile) CreateSubscriberDeliveryMethods(notificationKeyName *string, deliveryMethodKeyNames []string) (resp bool, err error) {
3525 params := []interface{}{
3526 notificationKeyName,
3527 deliveryMethodKeyNames,
3528 }
3529 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "createSubscriberDeliveryMethods", params, &r.Options, &resp)
3530 return
3531 }
3532 3533 // Create a new subscriber for a given resource.
3534 func (r User_Customer_OpenIdConnect_TrustedProfile) DeactivateNotificationSubscriber(keyName *string, resourceTableId *int) (resp bool, err error) {
3535 params := []interface{}{
3536 keyName,
3537 resourceTableId,
3538 }
3539 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "deactivateNotificationSubscriber", params, &r.Options, &resp)
3540 return
3541 }
3542 3543 // Declines an invitation to link an OpenIdConnect identity to a SoftLayer (Atlas) identity and account. Note that this uses a registration code that is likely a one-time-use-only token, so if an invitation has already been processed (accepted or previously declined) it will not be possible to process it a second time.
3544 func (r User_Customer_OpenIdConnect_TrustedProfile) DeclineInvitation(providerType *string, registrationCode *string) (err error) {
3545 var resp datatypes.Void
3546 params := []interface{}{
3547 providerType,
3548 registrationCode,
3549 }
3550 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "declineInvitation", params, &r.Options, &resp)
3551 return
3552 }
3553 3554 // Account master users and sub-users who have the User Manage permission in the SoftLayer customer portal can update other user's information. Use editObject() if you wish to edit a single user account. Users who do not have the User Manage permission can only update their own information.
3555 func (r User_Customer_OpenIdConnect_TrustedProfile) EditObject(templateObject *datatypes.User_Customer) (resp bool, err error) {
3556 params := []interface{}{
3557 templateObject,
3558 }
3559 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "editObject", params, &r.Options, &resp)
3560 return
3561 }
3562 3563 // Account master users and sub-users who have the User Manage permission in the SoftLayer customer portal can update other user's information. Use editObjects() if you wish to edit multiple users at once. Users who do not have the User Manage permission can only update their own information.
3564 func (r User_Customer_OpenIdConnect_TrustedProfile) EditObjects(templateObjects []datatypes.User_Customer) (resp bool, err error) {
3565 params := []interface{}{
3566 templateObjects,
3567 }
3568 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "editObjects", params, &r.Options, &resp)
3569 return
3570 }
3571 3572 // no documentation yet
3573 func (r User_Customer_OpenIdConnect_TrustedProfile) FindUserPreference(profileName *string, containerKeyname *string, preferenceKeyname *string) (resp []datatypes.Layout_Profile, err error) {
3574 params := []interface{}{
3575 profileName,
3576 containerKeyname,
3577 preferenceKeyname,
3578 }
3579 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "findUserPreference", params, &r.Options, &resp)
3580 return
3581 }
3582 3583 // Retrieve The customer account that a user belongs to.
3584 func (r User_Customer_OpenIdConnect_TrustedProfile) GetAccount() (resp datatypes.Account, err error) {
3585 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getAccount", nil, &r.Options, &resp)
3586 return
3587 }
3588 3589 // Retrieve
3590 func (r User_Customer_OpenIdConnect_TrustedProfile) GetActions() (resp []datatypes.User_Permission_Action, err error) {
3591 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getActions", nil, &r.Options, &resp)
3592 return
3593 }
3594 3595 // The getActiveExternalAuthenticationVendors method will return a list of available external vendors that a SoftLayer user can authenticate against. The list will only contain vendors for which the user has at least one active external binding.
3596 func (r User_Customer_OpenIdConnect_TrustedProfile) GetActiveExternalAuthenticationVendors() (resp []datatypes.Container_User_Customer_External_Binding_Vendor, err error) {
3597 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getActiveExternalAuthenticationVendors", nil, &r.Options, &resp)
3598 return
3599 }
3600 3601 // Retrieve A portal user's additional email addresses. These email addresses are contacted when updates are made to support tickets.
3602 func (r User_Customer_OpenIdConnect_TrustedProfile) GetAdditionalEmails() (resp []datatypes.User_Customer_AdditionalEmail, err error) {
3603 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getAdditionalEmails", nil, &r.Options, &resp)
3604 return
3605 }
3606 3607 // no documentation yet
3608 func (r User_Customer_OpenIdConnect_TrustedProfile) GetAgentImpersonationToken() (resp string, err error) {
3609 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getAgentImpersonationToken", nil, &r.Options, &resp)
3610 return
3611 }
3612 3613 // no documentation yet
3614 func (r User_Customer_OpenIdConnect_TrustedProfile) GetAllowedDedicatedHostIds() (resp []int, err error) {
3615 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getAllowedDedicatedHostIds", nil, &r.Options, &resp)
3616 return
3617 }
3618 3619 // no documentation yet
3620 func (r User_Customer_OpenIdConnect_TrustedProfile) GetAllowedHardwareIds() (resp []int, err error) {
3621 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getAllowedHardwareIds", nil, &r.Options, &resp)
3622 return
3623 }
3624 3625 // no documentation yet
3626 func (r User_Customer_OpenIdConnect_TrustedProfile) GetAllowedVirtualGuestIds() (resp []int, err error) {
3627 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getAllowedVirtualGuestIds", nil, &r.Options, &resp)
3628 return
3629 }
3630 3631 // Retrieve A portal user's API Authentication keys. There is a max limit of one API key per user.
3632 func (r User_Customer_OpenIdConnect_TrustedProfile) GetApiAuthenticationKeys() (resp []datatypes.User_Customer_ApiAuthentication, err error) {
3633 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getApiAuthenticationKeys", nil, &r.Options, &resp)
3634 return
3635 }
3636 3637 // This method generate user authentication token and return [[SoftLayer_Container_User_Authentication_Token]] object which will be used to authenticate user to login to SoftLayer customer portal.
3638 func (r User_Customer_OpenIdConnect_TrustedProfile) GetAuthenticationToken(token *datatypes.Container_User_Authentication_Token) (resp datatypes.Container_User_Authentication_Token, err error) {
3639 params := []interface{}{
3640 token,
3641 }
3642 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getAuthenticationToken", params, &r.Options, &resp)
3643 return
3644 }
3645 3646 // Retrieve A portal user's child users. Some portal users may not have child users.
3647 func (r User_Customer_OpenIdConnect_TrustedProfile) GetChildUsers() (resp []datatypes.User_Customer, err error) {
3648 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getChildUsers", nil, &r.Options, &resp)
3649 return
3650 }
3651 3652 // Retrieve An user's associated closed tickets.
3653 func (r User_Customer_OpenIdConnect_TrustedProfile) GetClosedTickets() (resp []datatypes.Ticket, err error) {
3654 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getClosedTickets", nil, &r.Options, &resp)
3655 return
3656 }
3657 3658 // Retrieve The dedicated hosts to which the user has been granted access.
3659 func (r User_Customer_OpenIdConnect_TrustedProfile) GetDedicatedHosts() (resp []datatypes.Virtual_DedicatedHost, err error) {
3660 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getDedicatedHosts", nil, &r.Options, &resp)
3661 return
3662 }
3663 3664 // This API gets the account associated with the default user for the OpenIdConnect identity that is linked to the current active SoftLayer user identity. When a single active user is found for that IAMid, it becomes the default user and the associated account is returned. When multiple default users are found only the first is preserved and the associated account is returned (remaining defaults see their default flag unset). If the current SoftLayer user identity isn't linked to any OpenIdConnect identity, or if none of the linked users were found as defaults, the API returns null. Invoke this only on IAMid-authenticated users.
3665 func (r User_Customer_OpenIdConnect_TrustedProfile) GetDefaultAccount(providerType *string) (resp datatypes.Account, err error) {
3666 params := []interface{}{
3667 providerType,
3668 }
3669 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getDefaultAccount", params, &r.Options, &resp)
3670 return
3671 }
3672 3673 // Retrieve The external authentication bindings that link an external identifier to a SoftLayer user.
3674 func (r User_Customer_OpenIdConnect_TrustedProfile) GetExternalBindings() (resp []datatypes.User_External_Binding, err error) {
3675 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getExternalBindings", nil, &r.Options, &resp)
3676 return
3677 }
3678 3679 // Retrieve A portal user's accessible hardware. These permissions control which hardware a user has access to in the SoftLayer customer portal.
3680 func (r User_Customer_OpenIdConnect_TrustedProfile) GetHardware() (resp []datatypes.Hardware, err error) {
3681 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getHardware", nil, &r.Options, &resp)
3682 return
3683 }
3684 3685 // Retrieve the number of servers that a portal user has access to. Portal users can have restrictions set to limit services for and to perform actions on hardware. You can set these permissions in the portal by clicking the "administrative" then "user admin" links.
3686 func (r User_Customer_OpenIdConnect_TrustedProfile) GetHardwareCount() (resp int, err error) {
3687 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getHardwareCount", nil, &r.Options, &resp)
3688 return
3689 }
3690 3691 // Retrieve Hardware notifications associated with this user. A hardware notification links a user to a piece of hardware, and that user will be notified if any monitors on that hardware fail, if the monitors have a status of 'Notify User'.
3692 func (r User_Customer_OpenIdConnect_TrustedProfile) GetHardwareNotifications() (resp []datatypes.User_Customer_Notification_Hardware, err error) {
3693 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getHardwareNotifications", nil, &r.Options, &resp)
3694 return
3695 }
3696 3697 // Retrieve Whether or not a user has acknowledged the support policy.
3698 func (r User_Customer_OpenIdConnect_TrustedProfile) GetHasAcknowledgedSupportPolicyFlag() (resp bool, err error) {
3699 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getHasAcknowledgedSupportPolicyFlag", nil, &r.Options, &resp)
3700 return
3701 }
3702 3703 // Retrieve Permission granting the user access to all Dedicated Host devices on the account.
3704 func (r User_Customer_OpenIdConnect_TrustedProfile) GetHasFullDedicatedHostAccessFlag() (resp bool, err error) {
3705 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getHasFullDedicatedHostAccessFlag", nil, &r.Options, &resp)
3706 return
3707 }
3708 3709 // Retrieve Whether or not a portal user has access to all hardware on their account.
3710 func (r User_Customer_OpenIdConnect_TrustedProfile) GetHasFullHardwareAccessFlag() (resp bool, err error) {
3711 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getHasFullHardwareAccessFlag", nil, &r.Options, &resp)
3712 return
3713 }
3714 3715 // Retrieve Whether or not a portal user has access to all virtual guests on their account.
3716 func (r User_Customer_OpenIdConnect_TrustedProfile) GetHasFullVirtualGuestAccessFlag() (resp bool, err error) {
3717 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getHasFullVirtualGuestAccessFlag", nil, &r.Options, &resp)
3718 return
3719 }
3720 3721 // Retrieve Specifically relating the Customer instance to an IBMid. A Customer instance may or may not have an IBMid link.
3722 func (r User_Customer_OpenIdConnect_TrustedProfile) GetIbmIdLink() (resp datatypes.User_Customer_Link, err error) {
3723 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getIbmIdLink", nil, &r.Options, &resp)
3724 return
3725 }
3726 3727 // no documentation yet
3728 func (r User_Customer_OpenIdConnect_TrustedProfile) GetImpersonationToken() (resp string, err error) {
3729 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getImpersonationToken", nil, &r.Options, &resp)
3730 return
3731 }
3732 3733 // Retrieve Contains the definition of the layout profile.
3734 func (r User_Customer_OpenIdConnect_TrustedProfile) GetLayoutProfiles() (resp []datatypes.Layout_Profile, err error) {
3735 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getLayoutProfiles", nil, &r.Options, &resp)
3736 return
3737 }
3738 3739 // Retrieve A user's locale. Locale holds user's language and region information.
3740 func (r User_Customer_OpenIdConnect_TrustedProfile) GetLocale() (resp datatypes.Locale, err error) {
3741 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getLocale", nil, &r.Options, &resp)
3742 return
3743 }
3744 3745 // Validates a supplied OpenIdConnect access token to the SoftLayer customer portal and returns the default account name and id for the active user. An exception will be thrown if no matching customer is found.
3746 func (r User_Customer_OpenIdConnect_TrustedProfile) GetLoginAccountInfoOpenIdConnect(providerType *string, accessToken *string) (resp datatypes.Container_User_Customer_OpenIdConnect_LoginAccountInfo, err error) {
3747 params := []interface{}{
3748 providerType,
3749 accessToken,
3750 }
3751 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getLoginAccountInfoOpenIdConnect", params, &r.Options, &resp)
3752 return
3753 }
3754 3755 // Retrieve A user's attempts to log into the SoftLayer customer portal.
3756 func (r User_Customer_OpenIdConnect_TrustedProfile) GetLoginAttempts() (resp []datatypes.User_Customer_Access_Authentication, err error) {
3757 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getLoginAttempts", nil, &r.Options, &resp)
3758 return
3759 }
3760 3761 // Attempt to authenticate a user to the SoftLayer customer portal using the provided authentication container. Depending on the specific type of authentication container that is used, this API will leverage the appropriate authentication protocol. If authentication is successful then the API returns a list of linked accounts for the user, a token containing the ID of the authenticated user and a hash key used by the SoftLayer customer portal to maintain authentication.
3762 func (r User_Customer_OpenIdConnect_TrustedProfile) GetLoginToken(request *datatypes.Container_Authentication_Request_Contract) (resp datatypes.Container_Authentication_Response_Common, err error) {
3763 params := []interface{}{
3764 request,
3765 }
3766 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getLoginToken", params, &r.Options, &resp)
3767 return
3768 }
3769 3770 // An OpenIdConnect identity, for example an IAMid, can be linked or mapped to one or more individual SoftLayer users, but no more than one SoftLayer user per account. This effectively links the OpenIdConnect identity to those accounts. This API returns a list of all active accounts for which there is a link between the OpenIdConnect identity and a SoftLayer user. Invoke this only on IAMid-authenticated users.
3771 func (r User_Customer_OpenIdConnect_TrustedProfile) GetMappedAccounts(providerType *string) (resp []datatypes.Account, err error) {
3772 params := []interface{}{
3773 providerType,
3774 }
3775 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getMappedAccounts", params, &r.Options, &resp)
3776 return
3777 }
3778 3779 // Retrieve Notification subscription records for the user.
3780 func (r User_Customer_OpenIdConnect_TrustedProfile) GetNotificationSubscribers() (resp []datatypes.Notification_Subscriber, err error) {
3781 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getNotificationSubscribers", nil, &r.Options, &resp)
3782 return
3783 }
3784 3785 // no documentation yet
3786 func (r User_Customer_OpenIdConnect_TrustedProfile) GetObject() (resp datatypes.User_Customer_OpenIdConnect_TrustedProfile, err error) {
3787 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getObject", nil, &r.Options, &resp)
3788 return
3789 }
3790 3791 // This API returns a SoftLayer_Container_User_Customer_OpenIdConnect_MigrationState object containing the necessary information to determine what migration state the user is in. If the account is not OpenIdConnect authenticated, then an exception is thrown.
3792 func (r User_Customer_OpenIdConnect_TrustedProfile) GetOpenIdConnectMigrationState() (resp datatypes.Container_User_Customer_OpenIdConnect_MigrationState, err error) {
3793 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getOpenIdConnectMigrationState", nil, &r.Options, &resp)
3794 return
3795 }
3796 3797 // no documentation yet
3798 func (r User_Customer_OpenIdConnect_TrustedProfile) GetOpenIdRegistrationInfoFromCode(providerType *string, registrationCode *string) (resp datatypes.Account_Authentication_OpenIdConnect_RegistrationInformation, err error) {
3799 params := []interface{}{
3800 providerType,
3801 registrationCode,
3802 }
3803 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getOpenIdRegistrationInfoFromCode", params, &r.Options, &resp)
3804 return
3805 }
3806 3807 // Retrieve An user's associated open tickets.
3808 func (r User_Customer_OpenIdConnect_TrustedProfile) GetOpenTickets() (resp []datatypes.Ticket, err error) {
3809 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getOpenTickets", nil, &r.Options, &resp)
3810 return
3811 }
3812 3813 // Retrieve A portal user's vpn accessible subnets.
3814 func (r User_Customer_OpenIdConnect_TrustedProfile) GetOverrides() (resp []datatypes.Network_Service_Vpn_Overrides, err error) {
3815 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getOverrides", nil, &r.Options, &resp)
3816 return
3817 }
3818 3819 // Retrieve A portal user's parent user. If a SoftLayer_User_Customer has a null parentId property then it doesn't have a parent user.
3820 func (r User_Customer_OpenIdConnect_TrustedProfile) GetParent() (resp datatypes.User_Customer, err error) {
3821 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getParent", nil, &r.Options, &resp)
3822 return
3823 }
3824 3825 // no documentation yet
3826 func (r User_Customer_OpenIdConnect_TrustedProfile) GetPasswordRequirements(isVpn *bool) (resp datatypes.Container_User_Customer_PasswordSet, err error) {
3827 params := []interface{}{
3828 isVpn,
3829 }
3830 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getPasswordRequirements", params, &r.Options, &resp)
3831 return
3832 }
3833 3834 // Retrieve A portal user's permissions. These permissions control that user's access to functions within the SoftLayer customer portal and API.
3835 func (r User_Customer_OpenIdConnect_TrustedProfile) GetPermissions() (resp []datatypes.User_Customer_CustomerPermission_Permission, err error) {
3836 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getPermissions", nil, &r.Options, &resp)
3837 return
3838 }
3839 3840 // Attempt to authenticate a username and password to the SoftLayer customer portal. Many portal user accounts are configured to require answering a security question on login. In this case getPortalLoginToken() also verifies the given security question ID and answer. If authentication is successful then the API returns a token containing the ID of the authenticated user and a hash key used by the SoftLayer customer portal to maintain authentication.
3841 func (r User_Customer_OpenIdConnect_TrustedProfile) GetPortalLoginToken(username *string, password *string, securityQuestionId *int, securityQuestionAnswer *string) (resp datatypes.Container_User_Customer_Portal_Token, err error) {
3842 params := []interface{}{
3843 username,
3844 password,
3845 securityQuestionId,
3846 securityQuestionAnswer,
3847 }
3848 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getPortalLoginToken", params, &r.Options, &resp)
3849 return
3850 }
3851 3852 // Attempt to authenticate a supplied OpenIdConnect access token to the SoftLayer customer portal. If authentication is successful then the API returns a token containing the ID of the authenticated user and a hash key used by the SoftLayer customer portal to maintain authentication.
3853 // Deprecated: This function has been marked as deprecated.
3854 func (r User_Customer_OpenIdConnect_TrustedProfile) GetPortalLoginTokenOpenIdConnect(providerType *string, accessToken *string, accountId *int, securityQuestionId *int, securityQuestionAnswer *string) (resp datatypes.Container_User_Customer_Portal_Token, err error) {
3855 params := []interface{}{
3856 providerType,
3857 accessToken,
3858 accountId,
3859 securityQuestionId,
3860 securityQuestionAnswer,
3861 }
3862 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getPortalLoginTokenOpenIdConnect", params, &r.Options, &resp)
3863 return
3864 }
3865 3866 // Select a type of preference you would like to get using [[SoftLayer_User_Customer::getPreferenceTypes|getPreferenceTypes]] and invoke this method using that preference type key name.
3867 func (r User_Customer_OpenIdConnect_TrustedProfile) GetPreference(preferenceTypeKeyName *string) (resp datatypes.User_Preference, err error) {
3868 params := []interface{}{
3869 preferenceTypeKeyName,
3870 }
3871 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getPreference", params, &r.Options, &resp)
3872 return
3873 }
3874 3875 // Use any of the preference types to fetch or modify user preferences using [[SoftLayer_User_Customer::getPreference|getPreference]] or [[SoftLayer_User_Customer::changePreference|changePreference]], respectively.
3876 func (r User_Customer_OpenIdConnect_TrustedProfile) GetPreferenceTypes() (resp []datatypes.User_Preference_Type, err error) {
3877 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getPreferenceTypes", nil, &r.Options, &resp)
3878 return
3879 }
3880 3881 // Retrieve Data type contains a single user preference to a specific preference type.
3882 func (r User_Customer_OpenIdConnect_TrustedProfile) GetPreferences() (resp []datatypes.User_Preference, err error) {
3883 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getPreferences", nil, &r.Options, &resp)
3884 return
3885 }
3886 3887 // Retrieve the authentication requirements for an outstanding password set/reset request. The requirements returned in the same SoftLayer_Container_User_Customer_PasswordSet container which is provided as a parameter into this request. The SoftLayer_Container_User_Customer_PasswordSet::authenticationMethods array will contain an entry for each authentication method required for the user. See SoftLayer_Container_User_Customer_PasswordSet for more details.
3888 //
3889 // If the user has required authentication methods, then authentication information will be supplied to the SoftLayer_User_Customer::processPasswordSetRequest method within this same SoftLayer_Container_User_Customer_PasswordSet container. All existing information in the container must continue to exist in the container to complete the password set/reset process.
3890 func (r User_Customer_OpenIdConnect_TrustedProfile) GetRequirementsForPasswordSet(passwordSet *datatypes.Container_User_Customer_PasswordSet) (resp datatypes.Container_User_Customer_PasswordSet, err error) {
3891 params := []interface{}{
3892 passwordSet,
3893 }
3894 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getRequirementsForPasswordSet", params, &r.Options, &resp)
3895 return
3896 }
3897 3898 // Retrieve
3899 func (r User_Customer_OpenIdConnect_TrustedProfile) GetRoles() (resp []datatypes.User_Permission_Role, err error) {
3900 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getRoles", nil, &r.Options, &resp)
3901 return
3902 }
3903 3904 // Retrieve A portal user's security question answers. Some portal users may not have security answers or may not be configured to require answering a security question on login.
3905 func (r User_Customer_OpenIdConnect_TrustedProfile) GetSecurityAnswers() (resp []datatypes.User_Customer_Security_Answer, err error) {
3906 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getSecurityAnswers", nil, &r.Options, &resp)
3907 return
3908 }
3909 3910 // Retrieve A user's notification subscription records.
3911 func (r User_Customer_OpenIdConnect_TrustedProfile) GetSubscribers() (resp []datatypes.Notification_User_Subscriber, err error) {
3912 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getSubscribers", nil, &r.Options, &resp)
3913 return
3914 }
3915 3916 // Retrieve A user's successful attempts to log into the SoftLayer customer portal.
3917 func (r User_Customer_OpenIdConnect_TrustedProfile) GetSuccessfulLogins() (resp []datatypes.User_Customer_Access_Authentication, err error) {
3918 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getSuccessfulLogins", nil, &r.Options, &resp)
3919 return
3920 }
3921 3922 // Retrieve Whether or not a user is required to acknowledge the support policy for portal access.
3923 func (r User_Customer_OpenIdConnect_TrustedProfile) GetSupportPolicyAcknowledgementRequiredFlag() (resp int, err error) {
3924 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getSupportPolicyAcknowledgementRequiredFlag", nil, &r.Options, &resp)
3925 return
3926 }
3927 3928 // no documentation yet
3929 func (r User_Customer_OpenIdConnect_TrustedProfile) GetSupportPolicyDocument() (resp []byte, err error) {
3930 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getSupportPolicyDocument", nil, &r.Options, &resp)
3931 return
3932 }
3933 3934 // no documentation yet
3935 func (r User_Customer_OpenIdConnect_TrustedProfile) GetSupportPolicyName() (resp string, err error) {
3936 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getSupportPolicyName", nil, &r.Options, &resp)
3937 return
3938 }
3939 3940 // no documentation yet
3941 func (r User_Customer_OpenIdConnect_TrustedProfile) GetSupportedLocales() (resp []datatypes.Locale, err error) {
3942 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getSupportedLocales", nil, &r.Options, &resp)
3943 return
3944 }
3945 3946 // Retrieve Whether or not a user must take a brief survey the next time they log into the SoftLayer customer portal.
3947 func (r User_Customer_OpenIdConnect_TrustedProfile) GetSurveyRequiredFlag() (resp bool, err error) {
3948 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getSurveyRequiredFlag", nil, &r.Options, &resp)
3949 return
3950 }
3951 3952 // Retrieve The surveys that a user has taken in the SoftLayer customer portal.
3953 func (r User_Customer_OpenIdConnect_TrustedProfile) GetSurveys() (resp []datatypes.Survey, err error) {
3954 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getSurveys", nil, &r.Options, &resp)
3955 return
3956 }
3957 3958 // Retrieve An user's associated tickets.
3959 func (r User_Customer_OpenIdConnect_TrustedProfile) GetTickets() (resp []datatypes.Ticket, err error) {
3960 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getTickets", nil, &r.Options, &resp)
3961 return
3962 }
3963 3964 // Retrieve A portal user's time zone.
3965 func (r User_Customer_OpenIdConnect_TrustedProfile) GetTimezone() (resp datatypes.Locale_Timezone, err error) {
3966 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getTimezone", nil, &r.Options, &resp)
3967 return
3968 }
3969 3970 // Retrieve A user's unsuccessful attempts to log into the SoftLayer customer portal.
3971 func (r User_Customer_OpenIdConnect_TrustedProfile) GetUnsuccessfulLogins() (resp []datatypes.User_Customer_Access_Authentication, err error) {
3972 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getUnsuccessfulLogins", nil, &r.Options, &resp)
3973 return
3974 }
3975 3976 // Returns an IMS User Object from the provided OpenIdConnect User ID or IBMid Unique Identifier for the Account of the active user. Enforces the User Management permissions for the Active User. An exception will be thrown if no matching IMS User is found. NOTE that providing IBMid Unique Identifier is optional, but it will be preferred over OpenIdConnect User ID if provided.
3977 func (r User_Customer_OpenIdConnect_TrustedProfile) GetUserForUnifiedInvitation(openIdConnectUserId *string, uniqueIdentifier *string, searchInvitationsNotLinksFlag *string, accountId *string) (resp datatypes.User_Customer_OpenIdConnect, err error) {
3978 params := []interface{}{
3979 openIdConnectUserId,
3980 uniqueIdentifier,
3981 searchInvitationsNotLinksFlag,
3982 accountId,
3983 }
3984 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getUserForUnifiedInvitation", params, &r.Options, &resp)
3985 return
3986 }
3987 3988 // Retrieve a user id using a password token provided to the user in an email generated by the SoftLayer_User_Customer::initiatePortalPasswordChange request. Password recovery keys are valid for 24 hours after they're generated.
3989 //
3990 // When a new user is created or when a user has requested a password change using initiatePortalPasswordChange, they will have received an email that contains a url with a token. That token is used as the parameter for getUserIdForPasswordSet. Once the user id is known, then the SoftLayer_User_Customer object can be retrieved which is necessary to complete the process to set or reset a user's password.
3991 func (r User_Customer_OpenIdConnect_TrustedProfile) GetUserIdForPasswordSet(key *string) (resp int, err error) {
3992 params := []interface{}{
3993 key,
3994 }
3995 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getUserIdForPasswordSet", params, &r.Options, &resp)
3996 return
3997 }
3998 3999 // Retrieve User customer link with IBMid and IAMid.
4000 func (r User_Customer_OpenIdConnect_TrustedProfile) GetUserLinks() (resp []datatypes.User_Customer_Link, err error) {
4001 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getUserLinks", nil, &r.Options, &resp)
4002 return
4003 }
4004 4005 // no documentation yet
4006 func (r User_Customer_OpenIdConnect_TrustedProfile) GetUserPreferences(profileName *string, containerKeyname *string) (resp []datatypes.Layout_Profile, err error) {
4007 params := []interface{}{
4008 profileName,
4009 containerKeyname,
4010 }
4011 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getUserPreferences", params, &r.Options, &resp)
4012 return
4013 }
4014 4015 // Retrieve A portal user's status, which controls overall access to the SoftLayer customer portal and VPN access to the private network.
4016 func (r User_Customer_OpenIdConnect_TrustedProfile) GetUserStatus() (resp datatypes.User_Customer_Status, err error) {
4017 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getUserStatus", nil, &r.Options, &resp)
4018 return
4019 }
4020 4021 // Retrieve the number of CloudLayer Computing Instances that a portal user has access to. Portal users can have restrictions set to limit services for and to perform actions on CloudLayer Computing Instances. You can set these permissions in the portal by clicking the "administrative" then "user admin" links.
4022 func (r User_Customer_OpenIdConnect_TrustedProfile) GetVirtualGuestCount() (resp int, err error) {
4023 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getVirtualGuestCount", nil, &r.Options, &resp)
4024 return
4025 }
4026 4027 // Retrieve A portal user's accessible CloudLayer Computing Instances. These permissions control which CloudLayer Computing Instances a user has access to in the SoftLayer customer portal.
4028 func (r User_Customer_OpenIdConnect_TrustedProfile) GetVirtualGuests() (resp []datatypes.Virtual_Guest, err error) {
4029 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "getVirtualGuests", nil, &r.Options, &resp)
4030 return
4031 }
4032 4033 // no documentation yet
4034 func (r User_Customer_OpenIdConnect_TrustedProfile) InTerminalStatus() (resp bool, err error) {
4035 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "inTerminalStatus", nil, &r.Options, &resp)
4036 return
4037 }
4038 4039 // Sends password change email to the user containing url that allows the user the change their password. This is the first step when a user wishes to change their password. The url that is generated contains a one-time use token that is valid for only 24-hours.
4040 //
4041 // If this is a new master user who has never logged into the portal, then password reset will be initiated. Once a master user has logged into the portal, they must setup their security questions prior to logging out because master users are required to answer a security question during the password reset process. Should a master user not have security questions defined and not remember their password in order to define the security questions, then they will need to contact support at live chat or Revenue Services for assistance.
4042 //
4043 // Due to security reasons, the number of reset requests per username are limited within a undisclosed timeframe.
4044 func (r User_Customer_OpenIdConnect_TrustedProfile) InitiatePortalPasswordChange(username *string) (resp bool, err error) {
4045 params := []interface{}{
4046 username,
4047 }
4048 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "initiatePortalPasswordChange", params, &r.Options, &resp)
4049 return
4050 }
4051 4052 // A Brand Agent that has permissions to Add Customer Accounts will be able to request the password email be sent to the Master User of a Customer Account created by the same Brand as the agent making the request. Due to security reasons, the number of reset requests are limited within an undisclosed timeframe.
4053 func (r User_Customer_OpenIdConnect_TrustedProfile) InitiatePortalPasswordChangeByBrandAgent(username *string) (resp bool, err error) {
4054 params := []interface{}{
4055 username,
4056 }
4057 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "initiatePortalPasswordChangeByBrandAgent", params, &r.Options, &resp)
4058 return
4059 }
4060 4061 // Send email invitation to a user to join a SoftLayer account and authenticate with OpenIdConnect. Throws an exception on error.
4062 func (r User_Customer_OpenIdConnect_TrustedProfile) InviteUserToLinkOpenIdConnect(providerType *string) (err error) {
4063 var resp datatypes.Void
4064 params := []interface{}{
4065 providerType,
4066 }
4067 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "inviteUserToLinkOpenIdConnect", params, &r.Options, &resp)
4068 return
4069 }
4070 4071 // Portal users are considered master users if they don't have an associated parent user. The only users who don't have parent users are users whose username matches their SoftLayer account name. Master users have special permissions throughout the SoftLayer customer portal.
4072 // Deprecated: This function has been marked as deprecated.
4073 func (r User_Customer_OpenIdConnect_TrustedProfile) IsMasterUser() (resp bool, err error) {
4074 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "isMasterUser", nil, &r.Options, &resp)
4075 return
4076 }
4077 4078 // Determine if a string is the given user's login password to the SoftLayer customer portal.
4079 func (r User_Customer_OpenIdConnect_TrustedProfile) IsValidPortalPassword(password *string) (resp bool, err error) {
4080 params := []interface{}{
4081 password,
4082 }
4083 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "isValidPortalPassword", params, &r.Options, &resp)
4084 return
4085 }
4086 4087 // The perform external authentication method will authenticate the given external authentication container with an external vendor. The authentication container and its contents will be verified before an attempt is made to authenticate the contents of the container with an external vendor.
4088 func (r User_Customer_OpenIdConnect_TrustedProfile) PerformExternalAuthentication(authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp datatypes.Container_User_Customer_Portal_Token, err error) {
4089 params := []interface{}{
4090 authenticationContainer,
4091 }
4092 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "performExternalAuthentication", params, &r.Options, &resp)
4093 return
4094 }
4095 4096 // Set the password for a user who has an outstanding password request. A user with an outstanding password request will have an unused and unexpired password key. The password key is part of the url provided to the user in the email sent to the user with information on how to set their password. The email was generated by the SoftLayer_User_Customer::initiatePortalPasswordRequest request. Password recovery keys are valid for 24 hours after they're generated.
4097 //
4098 // If the user has required authentication methods as specified by in the SoftLayer_Container_User_Customer_PasswordSet container returned from the SoftLayer_User_Customer::getRequirementsForPasswordSet request, then additional requests must be made to processPasswordSetRequest to authenticate the user before changing the password. First, if the user has security questions set on their profile, they will be required to answer one of their questions correctly. Next, if the user has Verisign or Google Authentication on their account, they must authenticate according to the two-factor provider. All of this authentication is done using the SoftLayer_Container_User_Customer_PasswordSet container.
4099 //
4100 // User portal passwords must match the following restrictions. Portal passwords must...
4101 // * ...be over eight characters long.
4102 // * ...be under twenty characters long.
4103 // * ...contain at least one uppercase letter
4104 // * ...contain at least one lowercase letter
4105 // * ...contain at least one number
4106 // * ...contain one of the special characters _ - | @ . , ? / ! ~ # $ % ^ & * ( ) { } [ ] \ + =
4107 // * ...not match your username
4108 func (r User_Customer_OpenIdConnect_TrustedProfile) ProcessPasswordSetRequest(passwordSet *datatypes.Container_User_Customer_PasswordSet, authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp bool, err error) {
4109 params := []interface{}{
4110 passwordSet,
4111 authenticationContainer,
4112 }
4113 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "processPasswordSetRequest", params, &r.Options, &resp)
4114 return
4115 }
4116 4117 // Revoke access to all dedicated hosts on the account for this user. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access or the access has been revoked, then "not found" exceptions are thrown if the user attempts to access any of these devices. If the current user does not have administrative privileges over this user, an inadequate permissions exception will get thrown.
4118 //
4119 // Users can call this function on child users, but not to themselves. An account's master has access to all users permissions on their account.
4120 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveAllDedicatedHostAccessForThisUser() (resp bool, err error) {
4121 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeAllDedicatedHostAccessForThisUser", nil, &r.Options, &resp)
4122 return
4123 }
4124 4125 // Remove all hardware from a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. If the current user does not have administrative privileges over this user, an inadequate permissions exception will get thrown.
4126 //
4127 // Users can call this function on child users, but not to themselves. An account's master has access to all users permissions on their account.
4128 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveAllHardwareAccessForThisUser() (resp bool, err error) {
4129 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeAllHardwareAccessForThisUser", nil, &r.Options, &resp)
4130 return
4131 }
4132 4133 // Remove all cloud computing instances from a portal user's instance access list. A user's instance access list controls which of an account's computing instance objects a user has access to in the SoftLayer customer portal and API. If the current user does not have administrative privileges over this user, an inadequate permissions exception will get thrown.
4134 //
4135 // Users can call this function on child users, but not to themselves. An account's master has access to all users permissions on their account.
4136 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveAllVirtualAccessForThisUser() (resp bool, err error) {
4137 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeAllVirtualAccessForThisUser", nil, &r.Options, &resp)
4138 return
4139 }
4140 4141 // Remove a user's API authentication key, removing that user's access to query the SoftLayer API.
4142 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveApiAuthenticationKey(keyId *int) (resp bool, err error) {
4143 params := []interface{}{
4144 keyId,
4145 }
4146 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeApiAuthenticationKey", params, &r.Options, &resp)
4147 return
4148 }
4149 4150 // Revokes access for the user to one or more dedicated host devices. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access or the access has been revoked, then "not found" exceptions are thrown if the user attempts to access any of these devices.
4151 //
4152 // Users can assign device access to their child users, but not to themselves. An account's master has access to all devices on their customer account and can set dedicated host access for any of the other users on their account.
4153 //
4154 // If the user has full dedicatedHost access, then it will provide access to "ALL but passed in" dedicatedHost ids.
4155 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveBulkDedicatedHostAccess(dedicatedHostIds []int) (resp bool, err error) {
4156 params := []interface{}{
4157 dedicatedHostIds,
4158 }
4159 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeBulkDedicatedHostAccess", params, &r.Options, &resp)
4160 return
4161 }
4162 4163 // Remove multiple hardware from a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. Hardware does not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user does not has access to the hardware you're attempting to remove then removeBulkHardwareAccess() returns true.
4164 //
4165 // Users can assign hardware access to their child users, but not to themselves. An account's master has access to all hardware on their customer account and can set hardware access for any of the other users on their account.
4166 //
4167 // If the user has full hardware access, then it will provide access to "ALL but passed in" hardware ids.
4168 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveBulkHardwareAccess(hardwareIds []int) (resp bool, err error) {
4169 params := []interface{}{
4170 hardwareIds,
4171 }
4172 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeBulkHardwareAccess", params, &r.Options, &resp)
4173 return
4174 }
4175 4176 // Remove (revoke) multiple permissions from a portal user's permission set. [[SoftLayer_User_Customer_CustomerPermission_Permission]] control which features in the SoftLayer customer portal and API a user may use. Removing a user's permission will affect that user's portal and API access. removePortalPermission() does not attempt to remove permissions that are not assigned to the user.
4177 //
4178 // Users can grant or revoke permissions to their child users, but not to themselves. An account's master has all portal permissions and can grant permissions for any of the other users on their account.
4179 //
4180 // If the cascadePermissionsFlag is set to true, then removing the permissions from a user will cascade down the child hierarchy and remove the permissions from this user along with all child users who also have the permission.
4181 //
4182 // If the cascadePermissionsFlag is not provided or is set to false and the user has children users who have the permission, then an exception will be thrown, and the permission will not be removed from this user.
4183 //
4184 // Use the [[SoftLayer_User_Customer_CustomerPermission_Permission::getAllObjects]] method to retrieve a list of all permissions available in the SoftLayer customer portal and API. Permissions are removed based on the keyName property of the permission objects within the permissions parameter.
4185 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveBulkPortalPermission(permissions []datatypes.User_Customer_CustomerPermission_Permission, cascadePermissionsFlag *bool) (resp bool, err error) {
4186 params := []interface{}{
4187 permissions,
4188 cascadePermissionsFlag,
4189 }
4190 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeBulkPortalPermission", params, &r.Options, &resp)
4191 return
4192 }
4193 4194 // no documentation yet
4195 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveBulkRoles(roles []datatypes.User_Permission_Role) (err error) {
4196 var resp datatypes.Void
4197 params := []interface{}{
4198 roles,
4199 }
4200 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeBulkRoles", params, &r.Options, &resp)
4201 return
4202 }
4203 4204 // Remove multiple CloudLayer Computing Instances from a portal user's access list. A user's CloudLayer Computing Instance access list controls which of an account's CloudLayer Computing Instance objects a user has access to in the SoftLayer customer portal and API. CloudLayer Computing Instances do not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user does not has access to the CloudLayer Computing Instance you're attempting remove add then removeBulkVirtualGuestAccess() returns true.
4205 //
4206 // Users can assign CloudLayer Computing Instance access to their child users, but not to themselves. An account's master has access to all CloudLayer Computing Instances on their customer account and can set hardware access for any of the other users on their account.
4207 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveBulkVirtualGuestAccess(virtualGuestIds []int) (resp bool, err error) {
4208 params := []interface{}{
4209 virtualGuestIds,
4210 }
4211 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeBulkVirtualGuestAccess", params, &r.Options, &resp)
4212 return
4213 }
4214 4215 // Revokes access for the user to a single dedicated host device. The user will only be allowed to see and access devices in both the portal and the API to which they have been granted access. If the user's account has devices to which the user has not been granted access or the access has been revoked, then "not found" exceptions are thrown if the user attempts to access any of these devices.
4216 //
4217 // Users can assign device access to their child users, but not to themselves. An account's master has access to all devices on their customer account and can set dedicated host access for any of the other users on their account.
4218 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveDedicatedHostAccess(dedicatedHostId *int) (resp bool, err error) {
4219 params := []interface{}{
4220 dedicatedHostId,
4221 }
4222 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeDedicatedHostAccess", params, &r.Options, &resp)
4223 return
4224 }
4225 4226 // no documentation yet
4227 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveExternalBinding(externalBinding *datatypes.User_External_Binding) (resp bool, err error) {
4228 params := []interface{}{
4229 externalBinding,
4230 }
4231 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeExternalBinding", params, &r.Options, &resp)
4232 return
4233 }
4234 4235 // Remove hardware from a portal user's hardware access list. A user's hardware access list controls which of an account's hardware objects a user has access to in the SoftLayer customer portal and API. Hardware does not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user does not has access to the hardware you're attempting remove add then removeHardwareAccess() returns true.
4236 //
4237 // Users can assign hardware access to their child users, but not to themselves. An account's master has access to all hardware on their customer account and can set hardware access for any of the other users on their account.
4238 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveHardwareAccess(hardwareId *int) (resp bool, err error) {
4239 params := []interface{}{
4240 hardwareId,
4241 }
4242 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeHardwareAccess", params, &r.Options, &resp)
4243 return
4244 }
4245 4246 // Remove (revoke) a permission from a portal user's permission set. [[SoftLayer_User_Customer_CustomerPermission_Permission]] control which features in the SoftLayer customer portal and API a user may use. Removing a user's permission will affect that user's portal and API access. If the user does not have the permission you're attempting to remove then removePortalPermission() returns true.
4247 //
4248 // Users can assign permissions to their child users, but not to themselves. An account's master has all portal permissions and can set permissions for any of the other users on their account.
4249 //
4250 // If the cascadePermissionsFlag is set to true, then removing the permission from a user will cascade down the child hierarchy and remove the permission from this user and all child users who also have the permission.
4251 //
4252 // If the cascadePermissionsFlag is not set or is set to false and the user has children users who have the permission, then an exception will be thrown, and the permission will not be removed from this user.
4253 //
4254 // Use the [[SoftLayer_User_Customer_CustomerPermission_Permission::getAllObjects]] method to retrieve a list of all permissions available in the SoftLayer customer portal and API. Permissions are removed based on the keyName property of the permission parameter.
4255 func (r User_Customer_OpenIdConnect_TrustedProfile) RemovePortalPermission(permission *datatypes.User_Customer_CustomerPermission_Permission, cascadePermissionsFlag *bool) (resp bool, err error) {
4256 params := []interface{}{
4257 permission,
4258 cascadePermissionsFlag,
4259 }
4260 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removePortalPermission", params, &r.Options, &resp)
4261 return
4262 }
4263 4264 // no documentation yet
4265 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveRole(role *datatypes.User_Permission_Role) (err error) {
4266 var resp datatypes.Void
4267 params := []interface{}{
4268 role,
4269 }
4270 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeRole", params, &r.Options, &resp)
4271 return
4272 }
4273 4274 // no documentation yet
4275 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveSecurityAnswers() (resp bool, err error) {
4276 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeSecurityAnswers", nil, &r.Options, &resp)
4277 return
4278 }
4279 4280 // Remove a CloudLayer Computing Instance from a portal user's access list. A user's CloudLayer Computing Instance access list controls which of an account's computing instances a user has access to in the SoftLayer customer portal and API. CloudLayer Computing Instances do not exist in the SoftLayer portal and returns "not found" exceptions in the API if the user doesn't have access to it. If a user does not has access to the CloudLayer Computing Instance you're attempting remove add then removeVirtualGuestAccess() returns true.
4281 //
4282 // Users can assign CloudLayer Computing Instance access to their child users, but not to themselves. An account's master has access to all CloudLayer Computing Instances on their customer account and can set instance access for any of the other users on their account.
4283 func (r User_Customer_OpenIdConnect_TrustedProfile) RemoveVirtualGuestAccess(virtualGuestId *int) (resp bool, err error) {
4284 params := []interface{}{
4285 virtualGuestId,
4286 }
4287 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "removeVirtualGuestAccess", params, &r.Options, &resp)
4288 return
4289 }
4290 4291 // This method will change the IBMid that a SoftLayer user is linked to, if we need to do that for some reason. It will do this by modifying the link to the desired new IBMid. NOTE: This method cannot be used to "un-link" a SoftLayer user. Once linked, a SoftLayer user can never be un-linked. Also, this method cannot be used to reset the link if the user account is already Bluemix linked. To reset a link for the Bluemix-linked user account, use resetOpenIdConnectLinkUnifiedUserManagementMode.
4292 func (r User_Customer_OpenIdConnect_TrustedProfile) ResetOpenIdConnectLink(providerType *string, newIbmIdUsername *string, removeSecuritySettings *bool) (err error) {
4293 var resp datatypes.Void
4294 params := []interface{}{
4295 providerType,
4296 newIbmIdUsername,
4297 removeSecuritySettings,
4298 }
4299 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "resetOpenIdConnectLink", params, &r.Options, &resp)
4300 return
4301 }
4302 4303 // This method will change the IBMid that a SoftLayer master user is linked to, if we need to do that for some reason. It will do this by unlinking the new owner IBMid from its current user association in this account, if there is one (note that the new owner IBMid is not required to already be a member of the IMS account). Then it will modify the existing IBMid link for the master user to use the new owner IBMid-realm IAMid. At this point, if the new owner IBMid isn't already a member of the PaaS account, it will attempt to add it. As a last step, it will call PaaS to modify the owner on that side, if necessary. Only when all those steps are complete, it will commit the IMS-side DB changes. Then, it will clean up the SoftLayer user that was linked to the new owner IBMid (this user became unlinked as the first step in this process). It will also call BSS to delete the old owner IBMid. NOTE: This method cannot be used to "un-link" a SoftLayer user. Once linked, a SoftLayer user can never be un-linked. Also, this method cannot be used to reset the link if the user account is not Bluemix linked. To reset a link for the user account not linked to Bluemix, use resetOpenIdConnectLink.
4304 func (r User_Customer_OpenIdConnect_TrustedProfile) ResetOpenIdConnectLinkUnifiedUserManagementMode(providerType *string, newIbmIdUsername *string, removeSecuritySettings *bool) (err error) {
4305 var resp datatypes.Void
4306 params := []interface{}{
4307 providerType,
4308 newIbmIdUsername,
4309 removeSecuritySettings,
4310 }
4311 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "resetOpenIdConnectLinkUnifiedUserManagementMode", params, &r.Options, &resp)
4312 return
4313 }
4314 4315 // no documentation yet
4316 func (r User_Customer_OpenIdConnect_TrustedProfile) SamlAuthenticate(accountId *string, samlResponse *string) (resp datatypes.Container_User_Customer_Portal_Token, err error) {
4317 params := []interface{}{
4318 accountId,
4319 samlResponse,
4320 }
4321 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "samlAuthenticate", params, &r.Options, &resp)
4322 return
4323 }
4324 4325 // no documentation yet
4326 func (r User_Customer_OpenIdConnect_TrustedProfile) SamlBeginAuthentication(accountId *int) (resp string, err error) {
4327 params := []interface{}{
4328 accountId,
4329 }
4330 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "samlBeginAuthentication", params, &r.Options, &resp)
4331 return
4332 }
4333 4334 // no documentation yet
4335 func (r User_Customer_OpenIdConnect_TrustedProfile) SamlBeginLogout() (resp string, err error) {
4336 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "samlBeginLogout", nil, &r.Options, &resp)
4337 return
4338 }
4339 4340 // no documentation yet
4341 func (r User_Customer_OpenIdConnect_TrustedProfile) SamlLogout(samlResponse *string) (err error) {
4342 var resp datatypes.Void
4343 params := []interface{}{
4344 samlResponse,
4345 }
4346 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "samlLogout", params, &r.Options, &resp)
4347 return
4348 }
4349 4350 // no documentation yet
4351 func (r User_Customer_OpenIdConnect_TrustedProfile) SelfPasswordChange(currentPassword *string, newPassword *string) (err error) {
4352 var resp datatypes.Void
4353 params := []interface{}{
4354 currentPassword,
4355 newPassword,
4356 }
4357 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "selfPasswordChange", params, &r.Options, &resp)
4358 return
4359 }
4360 4361 // An OpenIdConnect identity, for example an IAMid, can be linked or mapped to one or more individual SoftLayer users, but no more than one per account. If an OpenIdConnect identity is mapped to multiple accounts in this manner, one such account should be identified as the default account for that identity. Invoke this only on IBMid-authenticated users.
4362 func (r User_Customer_OpenIdConnect_TrustedProfile) SetDefaultAccount(providerType *string, accountId *int) (resp datatypes.Account, err error) {
4363 params := []interface{}{
4364 providerType,
4365 accountId,
4366 }
4367 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "setDefaultAccount", params, &r.Options, &resp)
4368 return
4369 }
4370 4371 // As master user, calling this api for the IBMid provider type when there is an existing IBMid for the email on the SL account will silently (without sending an invitation email) create a link for the IBMid. NOTE: If the SoftLayer user is already linked to IBMid, this call will fail. If the IBMid specified by the email of this user, is already used in a link to another user in this account, this call will fail. If there is already an open invitation from this SoftLayer user to this or any IBMid, this call will fail. If there is already an open invitation from some other SoftLayer user in this account to this IBMid, then this call will fail.
4372 func (r User_Customer_OpenIdConnect_TrustedProfile) SilentlyMigrateUserOpenIdConnect(providerType *string) (resp bool, err error) {
4373 params := []interface{}{
4374 providerType,
4375 }
4376 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "silentlyMigrateUserOpenIdConnect", params, &r.Options, &resp)
4377 return
4378 }
4379 4380 // This method allows the master user of an account to undo the designation of this user as an alternate master user. This can not be applied to the true master user of the account.
4381 //
4382 // Note that this method, by itself, WILL NOT affect the IAM Policies granted this user. This API is not intended for general customer use. It is intended to be called by IAM, in concert with other actions taken by IAM when the master user / account owner turns off an "alternate/auxiliary master user / account owner".
4383 func (r User_Customer_OpenIdConnect_TrustedProfile) TurnOffMasterUserPermissionCheckMode() (err error) {
4384 var resp datatypes.Void
4385 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "turnOffMasterUserPermissionCheckMode", nil, &r.Options, &resp)
4386 return
4387 }
4388 4389 // This method allows the master user of an account to designate this user as an alternate master user. Effectively this means that this user should have "all the same IMS permissions as a master user".
4390 //
4391 // Note that this method, by itself, WILL NOT affect the IAM Policies granted to this user. This API is not intended for general customer use. It is intended to be called by IAM, in concert with other actions taken by IAM when the master user / account owner designates an "alternate/auxiliary master user / account owner".
4392 func (r User_Customer_OpenIdConnect_TrustedProfile) TurnOnMasterUserPermissionCheckMode() (err error) {
4393 var resp datatypes.Void
4394 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "turnOnMasterUserPermissionCheckMode", nil, &r.Options, &resp)
4395 return
4396 }
4397 4398 // Update the active status for a notification that the user is subscribed to. A notification along with an active flag can be supplied to update the active status for a particular notification subscription.
4399 func (r User_Customer_OpenIdConnect_TrustedProfile) UpdateNotificationSubscriber(notificationKeyName *string, active *int) (resp bool, err error) {
4400 params := []interface{}{
4401 notificationKeyName,
4402 active,
4403 }
4404 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "updateNotificationSubscriber", params, &r.Options, &resp)
4405 return
4406 }
4407 4408 // Update a user's login security questions and answers on the SoftLayer customer portal. These questions and answers are used to optionally log into the SoftLayer customer portal using two-factor authentication. Each user must have three distinct questions set with a unique answer for each question, and each answer may only contain alphanumeric or the . , - _ ( ) [ ] : ; > < characters. Existing user security questions and answers are deleted before new ones are set, and users may only update their own security questions and answers.
4409 func (r User_Customer_OpenIdConnect_TrustedProfile) UpdateSecurityAnswers(questions []datatypes.User_Security_Question, answers []string) (resp bool, err error) {
4410 params := []interface{}{
4411 questions,
4412 answers,
4413 }
4414 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "updateSecurityAnswers", params, &r.Options, &resp)
4415 return
4416 }
4417 4418 // Update a delivery method for a notification that the user is subscribed to. A delivery method keyName along with an active flag can be supplied to update the active status of the delivery methods for the specified notification. Available delivery methods - 'EMAIL'. Available notifications - 'PLANNED_MAINTENANCE', 'UNPLANNED_INCIDENT'.
4419 func (r User_Customer_OpenIdConnect_TrustedProfile) UpdateSubscriberDeliveryMethod(notificationKeyName *string, deliveryMethodKeyNames []string, active *int) (resp bool, err error) {
4420 params := []interface{}{
4421 notificationKeyName,
4422 deliveryMethodKeyNames,
4423 active,
4424 }
4425 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "updateSubscriberDeliveryMethod", params, &r.Options, &resp)
4426 return
4427 }
4428 4429 // Update a user's VPN password on the SoftLayer customer portal. As with portal passwords, VPN passwords must match the following restrictions. VPN passwords must...
4430 // * ...be over eight characters long.
4431 // * ...be under twenty characters long.
4432 // * ...contain at least one uppercase letter
4433 // * ...contain at least one lowercase letter
4434 // * ...contain at least one number
4435 // * ...contain one of the special characters _ - | @ . , ? / ! ~ # $ % ^ & * ( ) { } [ ] \ =
4436 // * ...not match your username
4437 // Finally, users can only update their own VPN password. An account's master user can update any of their account users' VPN passwords.
4438 func (r User_Customer_OpenIdConnect_TrustedProfile) UpdateVpnPassword(password *string) (resp bool, err error) {
4439 params := []interface{}{
4440 password,
4441 }
4442 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "updateVpnPassword", params, &r.Options, &resp)
4443 return
4444 }
4445 4446 // Always call this function to enable changes when manually configuring VPN subnet access.
4447 func (r User_Customer_OpenIdConnect_TrustedProfile) UpdateVpnUser() (resp bool, err error) {
4448 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "updateVpnUser", nil, &r.Options, &resp)
4449 return
4450 }
4451 4452 // This method validate the given authentication token using the user id by comparing it with the actual user authentication token and return [[SoftLayer_Container_User_Customer_Portal_Token]] object
4453 func (r User_Customer_OpenIdConnect_TrustedProfile) ValidateAuthenticationToken(authenticationToken *datatypes.Container_User_Authentication_Token) (resp datatypes.Container_User_Customer_Portal_Token, err error) {
4454 params := []interface{}{
4455 authenticationToken,
4456 }
4457 err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "validateAuthenticationToken", params, &r.Options, &resp)
4458 return
4459 }
4460 4461 // no documentation yet
4462 type User_Customer_Profile_Event_HyperWarp struct {
4463 Session session.SLSession
4464 Options sl.Options
4465 }
4466 4467 // GetUserCustomerProfileEventHyperWarpService returns an instance of the User_Customer_Profile_Event_HyperWarp SoftLayer service
4468 func GetUserCustomerProfileEventHyperWarpService(sess session.SLSession) User_Customer_Profile_Event_HyperWarp {
4469 return User_Customer_Profile_Event_HyperWarp{Session: sess}
4470 }
4471 4472 func (r User_Customer_Profile_Event_HyperWarp) Id(id int) User_Customer_Profile_Event_HyperWarp {
4473 r.Options.Id = &id
4474 return r
4475 }
4476 4477 func (r User_Customer_Profile_Event_HyperWarp) Mask(mask string) User_Customer_Profile_Event_HyperWarp {
4478 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
4479 mask = fmt.Sprintf("mask[%s]", mask)
4480 }
4481 4482 r.Options.Mask = mask
4483 return r
4484 }
4485 4486 func (r User_Customer_Profile_Event_HyperWarp) Filter(filter string) User_Customer_Profile_Event_HyperWarp {
4487 r.Options.Filter = filter
4488 return r
4489 }
4490 4491 func (r User_Customer_Profile_Event_HyperWarp) Limit(limit int) User_Customer_Profile_Event_HyperWarp {
4492 r.Options.Limit = &limit
4493 return r
4494 }
4495 4496 func (r User_Customer_Profile_Event_HyperWarp) Offset(offset int) User_Customer_Profile_Event_HyperWarp {
4497 r.Options.Offset = &offset
4498 return r
4499 }
4500 4501 // no documentation yet
4502 func (r User_Customer_Profile_Event_HyperWarp) ReceiveEventDirect(eventJson *datatypes.Container_User_Customer_Profile_Event_HyperWarp_ProfileChange) (resp bool, err error) {
4503 params := []interface{}{
4504 eventJson,
4505 }
4506 err = r.Session.DoRequest("SoftLayer_User_Customer_Profile_Event_HyperWarp", "receiveEventDirect", params, &r.Options, &resp)
4507 return
4508 }
4509 4510 // Contains user information for Service Provider Enrollment.
4511 type User_Customer_Prospect_ServiceProvider_EnrollRequest struct {
4512 Session session.SLSession
4513 Options sl.Options
4514 }
4515 4516 // GetUserCustomerProspectServiceProviderEnrollRequestService returns an instance of the User_Customer_Prospect_ServiceProvider_EnrollRequest SoftLayer service
4517 func GetUserCustomerProspectServiceProviderEnrollRequestService(sess session.SLSession) User_Customer_Prospect_ServiceProvider_EnrollRequest {
4518 return User_Customer_Prospect_ServiceProvider_EnrollRequest{Session: sess}
4519 }
4520 4521 func (r User_Customer_Prospect_ServiceProvider_EnrollRequest) Id(id int) User_Customer_Prospect_ServiceProvider_EnrollRequest {
4522 r.Options.Id = &id
4523 return r
4524 }
4525 4526 func (r User_Customer_Prospect_ServiceProvider_EnrollRequest) Mask(mask string) User_Customer_Prospect_ServiceProvider_EnrollRequest {
4527 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
4528 mask = fmt.Sprintf("mask[%s]", mask)
4529 }
4530 4531 r.Options.Mask = mask
4532 return r
4533 }
4534 4535 func (r User_Customer_Prospect_ServiceProvider_EnrollRequest) Filter(filter string) User_Customer_Prospect_ServiceProvider_EnrollRequest {
4536 r.Options.Filter = filter
4537 return r
4538 }
4539 4540 func (r User_Customer_Prospect_ServiceProvider_EnrollRequest) Limit(limit int) User_Customer_Prospect_ServiceProvider_EnrollRequest {
4541 r.Options.Limit = &limit
4542 return r
4543 }
4544 4545 func (r User_Customer_Prospect_ServiceProvider_EnrollRequest) Offset(offset int) User_Customer_Prospect_ServiceProvider_EnrollRequest {
4546 r.Options.Offset = &offset
4547 return r
4548 }
4549 4550 // Create a new Service Provider Enrollment
4551 func (r User_Customer_Prospect_ServiceProvider_EnrollRequest) Enroll(templateObject *datatypes.User_Customer_Prospect_ServiceProvider_EnrollRequest) (resp datatypes.User_Customer_Prospect_ServiceProvider_EnrollRequest, err error) {
4552 params := []interface{}{
4553 templateObject,
4554 }
4555 err = r.Session.DoRequest("SoftLayer_User_Customer_Prospect_ServiceProvider_EnrollRequest", "enroll", params, &r.Options, &resp)
4556 return
4557 }
4558 4559 // Retrieve Catalyst company types.
4560 func (r User_Customer_Prospect_ServiceProvider_EnrollRequest) GetCompanyType() (resp datatypes.Catalyst_Company_Type, err error) {
4561 err = r.Session.DoRequest("SoftLayer_User_Customer_Prospect_ServiceProvider_EnrollRequest", "getCompanyType", nil, &r.Options, &resp)
4562 return
4563 }
4564 4565 // no documentation yet
4566 func (r User_Customer_Prospect_ServiceProvider_EnrollRequest) GetObject() (resp datatypes.User_Customer_Prospect_ServiceProvider_EnrollRequest, err error) {
4567 err = r.Session.DoRequest("SoftLayer_User_Customer_Prospect_ServiceProvider_EnrollRequest", "getObject", nil, &r.Options, &resp)
4568 return
4569 }
4570 4571 // The SoftLayer_User_Customer_Security_Answer type contains user's answers to security questions.
4572 type User_Customer_Security_Answer struct {
4573 Session session.SLSession
4574 Options sl.Options
4575 }
4576 4577 // GetUserCustomerSecurityAnswerService returns an instance of the User_Customer_Security_Answer SoftLayer service
4578 func GetUserCustomerSecurityAnswerService(sess session.SLSession) User_Customer_Security_Answer {
4579 return User_Customer_Security_Answer{Session: sess}
4580 }
4581 4582 func (r User_Customer_Security_Answer) Id(id int) User_Customer_Security_Answer {
4583 r.Options.Id = &id
4584 return r
4585 }
4586 4587 func (r User_Customer_Security_Answer) Mask(mask string) User_Customer_Security_Answer {
4588 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
4589 mask = fmt.Sprintf("mask[%s]", mask)
4590 }
4591 4592 r.Options.Mask = mask
4593 return r
4594 }
4595 4596 func (r User_Customer_Security_Answer) Filter(filter string) User_Customer_Security_Answer {
4597 r.Options.Filter = filter
4598 return r
4599 }
4600 4601 func (r User_Customer_Security_Answer) Limit(limit int) User_Customer_Security_Answer {
4602 r.Options.Limit = &limit
4603 return r
4604 }
4605 4606 func (r User_Customer_Security_Answer) Offset(offset int) User_Customer_Security_Answer {
4607 r.Options.Offset = &offset
4608 return r
4609 }
4610 4611 // getObject retrieves the SoftLayer_User_Customer_Security_Answer object whose ID number corresponds to the ID number of the init parameter passed to the SoftLayer_User_Customer_Security_Answer service.
4612 func (r User_Customer_Security_Answer) GetObject() (resp datatypes.User_Customer_Security_Answer, err error) {
4613 err = r.Session.DoRequest("SoftLayer_User_Customer_Security_Answer", "getObject", nil, &r.Options, &resp)
4614 return
4615 }
4616 4617 // Retrieve The question the security answer is associated with.
4618 func (r User_Customer_Security_Answer) GetQuestion() (resp datatypes.User_Security_Question, err error) {
4619 err = r.Session.DoRequest("SoftLayer_User_Customer_Security_Answer", "getQuestion", nil, &r.Options, &resp)
4620 return
4621 }
4622 4623 // Retrieve The user who the security answer belongs to.
4624 func (r User_Customer_Security_Answer) GetUser() (resp datatypes.User_Customer, err error) {
4625 err = r.Session.DoRequest("SoftLayer_User_Customer_Security_Answer", "getUser", nil, &r.Options, &resp)
4626 return
4627 }
4628 4629 // Each SoftLayer User Customer instance is assigned a status code that determines how it's treated in the customer portal. This status is reflected in the SoftLayer_User_Customer_Status data type. Status differs from user permissions in that user status applies globally to the portal while user permissions are applied to specific portal functions.
4630 //
4631 // Note that a status of "PENDING" also has been added. This status is specific to users that are configured to use IBMid authentication. This would include some (not all) users on accounts that are linked to Platform Services (PaaS, formerly Bluemix) accounts, but is not limited to users in such accounts. Using IBMid authentication is optional for active users even if it is not required by the account type. PENDING status indicates that a relationship between an IBMid and a user is being set up but is not complete. To be complete, PENDING users need to perform an action ("accepting the invitation") before becoming an active user within IBM Cloud and/or IMS. PENDING is a system state, and can not be administered by users (including the account master user). SoftLayer Commercial is the only environment where IBMid and/or account linking are used.
4632 type User_Customer_Status struct {
4633 Session session.SLSession
4634 Options sl.Options
4635 }
4636 4637 // GetUserCustomerStatusService returns an instance of the User_Customer_Status SoftLayer service
4638 func GetUserCustomerStatusService(sess session.SLSession) User_Customer_Status {
4639 return User_Customer_Status{Session: sess}
4640 }
4641 4642 func (r User_Customer_Status) Id(id int) User_Customer_Status {
4643 r.Options.Id = &id
4644 return r
4645 }
4646 4647 func (r User_Customer_Status) Mask(mask string) User_Customer_Status {
4648 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
4649 mask = fmt.Sprintf("mask[%s]", mask)
4650 }
4651 4652 r.Options.Mask = mask
4653 return r
4654 }
4655 4656 func (r User_Customer_Status) Filter(filter string) User_Customer_Status {
4657 r.Options.Filter = filter
4658 return r
4659 }
4660 4661 func (r User_Customer_Status) Limit(limit int) User_Customer_Status {
4662 r.Options.Limit = &limit
4663 return r
4664 }
4665 4666 func (r User_Customer_Status) Offset(offset int) User_Customer_Status {
4667 r.Options.Offset = &offset
4668 return r
4669 }
4670 4671 // Retrieve all user status objects.
4672 func (r User_Customer_Status) GetAllObjects() (resp []datatypes.User_Customer_Status, err error) {
4673 err = r.Session.DoRequest("SoftLayer_User_Customer_Status", "getAllObjects", nil, &r.Options, &resp)
4674 return
4675 }
4676 4677 // getObject retrieves the SoftLayer_User_Customer_Status object whose ID number corresponds to the ID number of the init parameter passed to the SoftLayer_User_Customer_Status service.
4678 func (r User_Customer_Status) GetObject() (resp datatypes.User_Customer_Status, err error) {
4679 err = r.Session.DoRequest("SoftLayer_User_Customer_Status", "getObject", nil, &r.Options, &resp)
4680 return
4681 }
4682 4683 // The SoftLayer_User_External_Binding data type contains general information for a single external binding. This includes the 3rd party vendor, type of binding, and a unique identifier and password that is used to authenticate against the 3rd party service.
4684 type User_External_Binding struct {
4685 Session session.SLSession
4686 Options sl.Options
4687 }
4688 4689 // GetUserExternalBindingService returns an instance of the User_External_Binding SoftLayer service
4690 func GetUserExternalBindingService(sess session.SLSession) User_External_Binding {
4691 return User_External_Binding{Session: sess}
4692 }
4693 4694 func (r User_External_Binding) Id(id int) User_External_Binding {
4695 r.Options.Id = &id
4696 return r
4697 }
4698 4699 func (r User_External_Binding) Mask(mask string) User_External_Binding {
4700 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
4701 mask = fmt.Sprintf("mask[%s]", mask)
4702 }
4703 4704 r.Options.Mask = mask
4705 return r
4706 }
4707 4708 func (r User_External_Binding) Filter(filter string) User_External_Binding {
4709 r.Options.Filter = filter
4710 return r
4711 }
4712 4713 func (r User_External_Binding) Limit(limit int) User_External_Binding {
4714 r.Options.Limit = &limit
4715 return r
4716 }
4717 4718 func (r User_External_Binding) Offset(offset int) User_External_Binding {
4719 r.Options.Offset = &offset
4720 return r
4721 }
4722 4723 // Delete an external authentication binding. If the external binding currently has an active billing item associated you will be prevented from deleting the binding. The alternative method to remove an external authentication binding is to use the service cancellation form.
4724 func (r User_External_Binding) DeleteObject() (resp bool, err error) {
4725 err = r.Session.DoRequest("SoftLayer_User_External_Binding", "deleteObject", nil, &r.Options, &resp)
4726 return
4727 }
4728 4729 // Retrieve Attributes of an external authentication binding.
4730 func (r User_External_Binding) GetAttributes() (resp []datatypes.User_External_Binding_Attribute, err error) {
4731 err = r.Session.DoRequest("SoftLayer_User_External_Binding", "getAttributes", nil, &r.Options, &resp)
4732 return
4733 }
4734 4735 // Retrieve Information regarding the billing item for external authentication.
4736 func (r User_External_Binding) GetBillingItem() (resp datatypes.Billing_Item, err error) {
4737 err = r.Session.DoRequest("SoftLayer_User_External_Binding", "getBillingItem", nil, &r.Options, &resp)
4738 return
4739 }
4740 4741 // Retrieve An optional note for identifying the external binding.
4742 func (r User_External_Binding) GetNote() (resp string, err error) {
4743 err = r.Session.DoRequest("SoftLayer_User_External_Binding", "getNote", nil, &r.Options, &resp)
4744 return
4745 }
4746 4747 // no documentation yet
4748 func (r User_External_Binding) GetObject() (resp datatypes.User_External_Binding, err error) {
4749 err = r.Session.DoRequest("SoftLayer_User_External_Binding", "getObject", nil, &r.Options, &resp)
4750 return
4751 }
4752 4753 // Retrieve The type of external authentication binding.
4754 func (r User_External_Binding) GetType() (resp datatypes.User_External_Binding_Type, err error) {
4755 err = r.Session.DoRequest("SoftLayer_User_External_Binding", "getType", nil, &r.Options, &resp)
4756 return
4757 }
4758 4759 // Retrieve The vendor of an external authentication binding.
4760 func (r User_External_Binding) GetVendor() (resp datatypes.User_External_Binding_Vendor, err error) {
4761 err = r.Session.DoRequest("SoftLayer_User_External_Binding", "getVendor", nil, &r.Options, &resp)
4762 return
4763 }
4764 4765 // Update the note of an external binding. The note is an optional property that is used to store information about a binding.
4766 func (r User_External_Binding) UpdateNote(text *string) (resp bool, err error) {
4767 params := []interface{}{
4768 text,
4769 }
4770 err = r.Session.DoRequest("SoftLayer_User_External_Binding", "updateNote", params, &r.Options, &resp)
4771 return
4772 }
4773 4774 // The SoftLayer_User_External_Binding_Vendor data type contains information for a single external binding vendor. This information includes a user friendly vendor name, a unique version of the vendor name, and a unique internal identifier that can be used when creating a new external binding.
4775 type User_External_Binding_Vendor struct {
4776 Session session.SLSession
4777 Options sl.Options
4778 }
4779 4780 // GetUserExternalBindingVendorService returns an instance of the User_External_Binding_Vendor SoftLayer service
4781 func GetUserExternalBindingVendorService(sess session.SLSession) User_External_Binding_Vendor {
4782 return User_External_Binding_Vendor{Session: sess}
4783 }
4784 4785 func (r User_External_Binding_Vendor) Id(id int) User_External_Binding_Vendor {
4786 r.Options.Id = &id
4787 return r
4788 }
4789 4790 func (r User_External_Binding_Vendor) Mask(mask string) User_External_Binding_Vendor {
4791 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
4792 mask = fmt.Sprintf("mask[%s]", mask)
4793 }
4794 4795 r.Options.Mask = mask
4796 return r
4797 }
4798 4799 func (r User_External_Binding_Vendor) Filter(filter string) User_External_Binding_Vendor {
4800 r.Options.Filter = filter
4801 return r
4802 }
4803 4804 func (r User_External_Binding_Vendor) Limit(limit int) User_External_Binding_Vendor {
4805 r.Options.Limit = &limit
4806 return r
4807 }
4808 4809 func (r User_External_Binding_Vendor) Offset(offset int) User_External_Binding_Vendor {
4810 r.Options.Offset = &offset
4811 return r
4812 }
4813 4814 // getAllObjects() will return a list of the available external binding vendors that SoftLayer supports. Use this list to select the appropriate vendor when creating a new external binding.
4815 func (r User_External_Binding_Vendor) GetAllObjects() (resp []datatypes.User_External_Binding_Vendor, err error) {
4816 err = r.Session.DoRequest("SoftLayer_User_External_Binding_Vendor", "getAllObjects", nil, &r.Options, &resp)
4817 return
4818 }
4819 4820 // no documentation yet
4821 func (r User_External_Binding_Vendor) GetObject() (resp datatypes.User_External_Binding_Vendor, err error) {
4822 err = r.Session.DoRequest("SoftLayer_User_External_Binding_Vendor", "getObject", nil, &r.Options, &resp)
4823 return
4824 }
4825 4826 // The SoftLayer_User_Permission_Action data type contains local attributes to identify and describe the valid actions a customer user can perform within IMS. This includes a name, key name, and description. This data can not be modified by users of IMS.
4827 //
4828 // It also contains relational attributes that indicate which SoftLayer_User_Permission_Group's include the action.
4829 type User_Permission_Action struct {
4830 Session session.SLSession
4831 Options sl.Options
4832 }
4833 4834 // GetUserPermissionActionService returns an instance of the User_Permission_Action SoftLayer service
4835 func GetUserPermissionActionService(sess session.SLSession) User_Permission_Action {
4836 return User_Permission_Action{Session: sess}
4837 }
4838 4839 func (r User_Permission_Action) Id(id int) User_Permission_Action {
4840 r.Options.Id = &id
4841 return r
4842 }
4843 4844 func (r User_Permission_Action) Mask(mask string) User_Permission_Action {
4845 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
4846 mask = fmt.Sprintf("mask[%s]", mask)
4847 }
4848 4849 r.Options.Mask = mask
4850 return r
4851 }
4852 4853 func (r User_Permission_Action) Filter(filter string) User_Permission_Action {
4854 r.Options.Filter = filter
4855 return r
4856 }
4857 4858 func (r User_Permission_Action) Limit(limit int) User_Permission_Action {
4859 r.Options.Limit = &limit
4860 return r
4861 }
4862 4863 func (r User_Permission_Action) Offset(offset int) User_Permission_Action {
4864 r.Options.Offset = &offset
4865 return r
4866 }
4867 4868 // Object filters and result limits are enabled on this method.
4869 func (r User_Permission_Action) GetAllObjects() (resp []datatypes.User_Permission_Action, err error) {
4870 err = r.Session.DoRequest("SoftLayer_User_Permission_Action", "getAllObjects", nil, &r.Options, &resp)
4871 return
4872 }
4873 4874 // Retrieve
4875 func (r User_Permission_Action) GetDepartment() (resp datatypes.User_Permission_Department, err error) {
4876 err = r.Session.DoRequest("SoftLayer_User_Permission_Action", "getDepartment", nil, &r.Options, &resp)
4877 return
4878 }
4879 4880 // no documentation yet
4881 func (r User_Permission_Action) GetObject() (resp datatypes.User_Permission_Action, err error) {
4882 err = r.Session.DoRequest("SoftLayer_User_Permission_Action", "getObject", nil, &r.Options, &resp)
4883 return
4884 }
4885 4886 // no documentation yet
4887 type User_Permission_Department struct {
4888 Session session.SLSession
4889 Options sl.Options
4890 }
4891 4892 // GetUserPermissionDepartmentService returns an instance of the User_Permission_Department SoftLayer service
4893 func GetUserPermissionDepartmentService(sess session.SLSession) User_Permission_Department {
4894 return User_Permission_Department{Session: sess}
4895 }
4896 4897 func (r User_Permission_Department) Id(id int) User_Permission_Department {
4898 r.Options.Id = &id
4899 return r
4900 }
4901 4902 func (r User_Permission_Department) Mask(mask string) User_Permission_Department {
4903 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
4904 mask = fmt.Sprintf("mask[%s]", mask)
4905 }
4906 4907 r.Options.Mask = mask
4908 return r
4909 }
4910 4911 func (r User_Permission_Department) Filter(filter string) User_Permission_Department {
4912 r.Options.Filter = filter
4913 return r
4914 }
4915 4916 func (r User_Permission_Department) Limit(limit int) User_Permission_Department {
4917 r.Options.Limit = &limit
4918 return r
4919 }
4920 4921 func (r User_Permission_Department) Offset(offset int) User_Permission_Department {
4922 r.Options.Offset = &offset
4923 return r
4924 }
4925 4926 // no documentation yet
4927 func (r User_Permission_Department) GetAllObjects() (resp []datatypes.User_Permission_Department, err error) {
4928 err = r.Session.DoRequest("SoftLayer_User_Permission_Department", "getAllObjects", nil, &r.Options, &resp)
4929 return
4930 }
4931 4932 // no documentation yet
4933 func (r User_Permission_Department) GetObject() (resp datatypes.User_Permission_Department, err error) {
4934 err = r.Session.DoRequest("SoftLayer_User_Permission_Department", "getObject", nil, &r.Options, &resp)
4935 return
4936 }
4937 4938 // Retrieve
4939 func (r User_Permission_Department) GetPermissions() (resp []datatypes.User_Permission_Action, err error) {
4940 err = r.Session.DoRequest("SoftLayer_User_Permission_Department", "getPermissions", nil, &r.Options, &resp)
4941 return
4942 }
4943 4944 // The SoftLayer_User_Permission_Group data type contains local attributes to identify and describe the permission groups that have been created within IMS. These includes a name, description, and account id. Permission groups are defined specifically for a single [[SoftLayer_Account]].
4945 //
4946 // It also contains relational attributes that indicate what SoftLayer_User_Permission_Action objects belong to a particular group, and what SoftLayer_User_Permission_Role objects the group is linked.
4947 type User_Permission_Group struct {
4948 Session session.SLSession
4949 Options sl.Options
4950 }
4951 4952 // GetUserPermissionGroupService returns an instance of the User_Permission_Group SoftLayer service
4953 func GetUserPermissionGroupService(sess session.SLSession) User_Permission_Group {
4954 return User_Permission_Group{Session: sess}
4955 }
4956 4957 func (r User_Permission_Group) Id(id int) User_Permission_Group {
4958 r.Options.Id = &id
4959 return r
4960 }
4961 4962 func (r User_Permission_Group) Mask(mask string) User_Permission_Group {
4963 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
4964 mask = fmt.Sprintf("mask[%s]", mask)
4965 }
4966 4967 r.Options.Mask = mask
4968 return r
4969 }
4970 4971 func (r User_Permission_Group) Filter(filter string) User_Permission_Group {
4972 r.Options.Filter = filter
4973 return r
4974 }
4975 4976 func (r User_Permission_Group) Limit(limit int) User_Permission_Group {
4977 r.Options.Limit = &limit
4978 return r
4979 }
4980 4981 func (r User_Permission_Group) Offset(offset int) User_Permission_Group {
4982 r.Options.Offset = &offset
4983 return r
4984 }
4985 4986 // Assigns a SoftLayer_User_Permission_Action object to the group.
4987 func (r User_Permission_Group) AddAction(action *datatypes.User_Permission_Action) (err error) {
4988 var resp datatypes.Void
4989 params := []interface{}{
4990 action,
4991 }
4992 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "addAction", params, &r.Options, &resp)
4993 return
4994 }
4995 4996 // Assigns multiple SoftLayer_User_Permission_Action objects to the group.
4997 func (r User_Permission_Group) AddBulkActions(actions []datatypes.User_Permission_Action) (err error) {
4998 var resp datatypes.Void
4999 params := []interface{}{
5000 actions,
5001 }
5002 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "addBulkActions", params, &r.Options, &resp)
5003 return
5004 }
5005 5006 // Links multiple SoftLayer_Hardware_Server, SoftLayer_Virtual_Guest, or SoftLayer_Virtual_DedicatedHost objects to the group. All objects must be of the same type.
5007 func (r User_Permission_Group) AddBulkResourceObjects(resourceObjects []datatypes.Entity, resourceTypeKeyName *string) (resp bool, err error) {
5008 params := []interface{}{
5009 resourceObjects,
5010 resourceTypeKeyName,
5011 }
5012 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "addBulkResourceObjects", params, &r.Options, &resp)
5013 return
5014 }
5015 5016 // Links a SoftLayer_Hardware_Server, SoftLayer_Virtual_Guest, or SoftLayer_Virtual_DedicatedHost object to the group.
5017 func (r User_Permission_Group) AddResourceObject(resourceObject *datatypes.Entity, resourceTypeKeyName *string) (resp bool, err error) {
5018 params := []interface{}{
5019 resourceObject,
5020 resourceTypeKeyName,
5021 }
5022 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "addResourceObject", params, &r.Options, &resp)
5023 return
5024 }
5025 5026 // Customer created permission groups must be of type NORMAL. The SYSTEM type is reserved for internal use. The account id supplied in the template permission group must match account id of the user who is creating the permission group. The user who is creating the permission group must have the permission to manage users.
5027 func (r User_Permission_Group) CreateObject(templateObject *datatypes.User_Permission_Group) (resp datatypes.User_Permission_Group, err error) {
5028 params := []interface{}{
5029 templateObject,
5030 }
5031 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "createObject", params, &r.Options, &resp)
5032 return
5033 }
5034 5035 // Customer users can only delete permission groups of type NORMAL. The SYSTEM type is reserved for internal use. The user who is creating the permission group must have the permission to manage users.
5036 func (r User_Permission_Group) DeleteObject() (resp bool, err error) {
5037 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "deleteObject", nil, &r.Options, &resp)
5038 return
5039 }
5040 5041 // Allows a user to modify the name and description of an existing customer permission group. Customer permission groups must be of type NORMAL. The SYSTEM type is reserved for internal use. The account id supplied in the template permission group must match account id of the user who is creating the permission group. The user who is creating the permission group must have the permission to manage users.
5042 func (r User_Permission_Group) EditObject(templateObject *datatypes.User_Permission_Group) (resp datatypes.User_Permission_Group, err error) {
5043 params := []interface{}{
5044 templateObject,
5045 }
5046 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "editObject", params, &r.Options, &resp)
5047 return
5048 }
5049 5050 // Retrieve
5051 func (r User_Permission_Group) GetAccount() (resp datatypes.Account, err error) {
5052 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "getAccount", nil, &r.Options, &resp)
5053 return
5054 }
5055 5056 // Retrieve
5057 func (r User_Permission_Group) GetActions() (resp []datatypes.User_Permission_Action, err error) {
5058 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "getActions", nil, &r.Options, &resp)
5059 return
5060 }
5061 5062 // no documentation yet
5063 func (r User_Permission_Group) GetObject() (resp datatypes.User_Permission_Group, err error) {
5064 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "getObject", nil, &r.Options, &resp)
5065 return
5066 }
5067 5068 // Retrieve
5069 func (r User_Permission_Group) GetRoles() (resp []datatypes.User_Permission_Role, err error) {
5070 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "getRoles", nil, &r.Options, &resp)
5071 return
5072 }
5073 5074 // Retrieve The type of the permission group.
5075 func (r User_Permission_Group) GetType() (resp datatypes.User_Permission_Group_Type, err error) {
5076 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "getType", nil, &r.Options, &resp)
5077 return
5078 }
5079 5080 // Links a SoftLayer_User_Permission_Role object to the group.
5081 func (r User_Permission_Group) LinkRole(role *datatypes.User_Permission_Role) (err error) {
5082 var resp datatypes.Void
5083 params := []interface{}{
5084 role,
5085 }
5086 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "linkRole", params, &r.Options, &resp)
5087 return
5088 }
5089 5090 // Unassigns a SoftLayer_User_Permission_Action object from the group.
5091 func (r User_Permission_Group) RemoveAction(action *datatypes.User_Permission_Action) (err error) {
5092 var resp datatypes.Void
5093 params := []interface{}{
5094 action,
5095 }
5096 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "removeAction", params, &r.Options, &resp)
5097 return
5098 }
5099 5100 // Unassigns multiple SoftLayer_User_Permission_Action objects from the group.
5101 func (r User_Permission_Group) RemoveBulkActions(actions []datatypes.User_Permission_Action) (err error) {
5102 var resp datatypes.Void
5103 params := []interface{}{
5104 actions,
5105 }
5106 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "removeBulkActions", params, &r.Options, &resp)
5107 return
5108 }
5109 5110 // Unlinks multiple SoftLayer_Hardware_Server, SoftLayer_Virtual_Guest, or SoftLayer_Virtual_DedicatedHost objects from the group. All objects must be of the same type.
5111 func (r User_Permission_Group) RemoveBulkResourceObjects(resourceObjects []datatypes.Entity, resourceTypeKeyName *string) (resp bool, err error) {
5112 params := []interface{}{
5113 resourceObjects,
5114 resourceTypeKeyName,
5115 }
5116 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "removeBulkResourceObjects", params, &r.Options, &resp)
5117 return
5118 }
5119 5120 // Unlinks a SoftLayer_Hardware_Server, SoftLayer_Virtual_Guest, or SoftLayer_Virtual_DedicatedHost object from the group.
5121 func (r User_Permission_Group) RemoveResourceObject(resourceObject *datatypes.Entity, resourceTypeKeyName *string) (resp bool, err error) {
5122 params := []interface{}{
5123 resourceObject,
5124 resourceTypeKeyName,
5125 }
5126 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "removeResourceObject", params, &r.Options, &resp)
5127 return
5128 }
5129 5130 // Removes a link from SoftLayer_User_Permission_Role object to the group.
5131 func (r User_Permission_Group) UnlinkRole(role *datatypes.User_Permission_Role) (err error) {
5132 var resp datatypes.Void
5133 params := []interface{}{
5134 role,
5135 }
5136 err = r.Session.DoRequest("SoftLayer_User_Permission_Group", "unlinkRole", params, &r.Options, &resp)
5137 return
5138 }
5139 5140 // These are the attributes which describe a SoftLayer_User_Permission_Group_Type. All SoftLayer_User_Permission_Group objects must be linked to one of these types.
5141 //
5142 // For further information see: [[SoftLayer_User_Permission_Group]].
5143 type User_Permission_Group_Type struct {
5144 Session session.SLSession
5145 Options sl.Options
5146 }
5147 5148 // GetUserPermissionGroupTypeService returns an instance of the User_Permission_Group_Type SoftLayer service
5149 func GetUserPermissionGroupTypeService(sess session.SLSession) User_Permission_Group_Type {
5150 return User_Permission_Group_Type{Session: sess}
5151 }
5152 5153 func (r User_Permission_Group_Type) Id(id int) User_Permission_Group_Type {
5154 r.Options.Id = &id
5155 return r
5156 }
5157 5158 func (r User_Permission_Group_Type) Mask(mask string) User_Permission_Group_Type {
5159 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
5160 mask = fmt.Sprintf("mask[%s]", mask)
5161 }
5162 5163 r.Options.Mask = mask
5164 return r
5165 }
5166 5167 func (r User_Permission_Group_Type) Filter(filter string) User_Permission_Group_Type {
5168 r.Options.Filter = filter
5169 return r
5170 }
5171 5172 func (r User_Permission_Group_Type) Limit(limit int) User_Permission_Group_Type {
5173 r.Options.Limit = &limit
5174 return r
5175 }
5176 5177 func (r User_Permission_Group_Type) Offset(offset int) User_Permission_Group_Type {
5178 r.Options.Offset = &offset
5179 return r
5180 }
5181 5182 // Retrieve The groups that are of this type.
5183 func (r User_Permission_Group_Type) GetGroups() (resp []datatypes.User_Permission_Group, err error) {
5184 err = r.Session.DoRequest("SoftLayer_User_Permission_Group_Type", "getGroups", nil, &r.Options, &resp)
5185 return
5186 }
5187 5188 // no documentation yet
5189 func (r User_Permission_Group_Type) GetObject() (resp datatypes.User_Permission_Group_Type, err error) {
5190 err = r.Session.DoRequest("SoftLayer_User_Permission_Group_Type", "getObject", nil, &r.Options, &resp)
5191 return
5192 }
5193 5194 // These are the variables relating to SoftLayer_User_Permission_Resource_Type. Collectively they describe the types of resources which can be linked to [[SoftLayer_User_Permission_Group]].
5195 type User_Permission_Resource_Type struct {
5196 Session session.SLSession
5197 Options sl.Options
5198 }
5199 5200 // GetUserPermissionResourceTypeService returns an instance of the User_Permission_Resource_Type SoftLayer service
5201 func GetUserPermissionResourceTypeService(sess session.SLSession) User_Permission_Resource_Type {
5202 return User_Permission_Resource_Type{Session: sess}
5203 }
5204 5205 func (r User_Permission_Resource_Type) Id(id int) User_Permission_Resource_Type {
5206 r.Options.Id = &id
5207 return r
5208 }
5209 5210 func (r User_Permission_Resource_Type) Mask(mask string) User_Permission_Resource_Type {
5211 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
5212 mask = fmt.Sprintf("mask[%s]", mask)
5213 }
5214 5215 r.Options.Mask = mask
5216 return r
5217 }
5218 5219 func (r User_Permission_Resource_Type) Filter(filter string) User_Permission_Resource_Type {
5220 r.Options.Filter = filter
5221 return r
5222 }
5223 5224 func (r User_Permission_Resource_Type) Limit(limit int) User_Permission_Resource_Type {
5225 r.Options.Limit = &limit
5226 return r
5227 }
5228 5229 func (r User_Permission_Resource_Type) Offset(offset int) User_Permission_Resource_Type {
5230 r.Options.Offset = &offset
5231 return r
5232 }
5233 5234 // Retrieve an array of SoftLayer_User_Permission_Resource_Type objects.
5235 func (r User_Permission_Resource_Type) GetAllObjects() (resp []datatypes.User_Permission_Resource_Type, err error) {
5236 err = r.Session.DoRequest("SoftLayer_User_Permission_Resource_Type", "getAllObjects", nil, &r.Options, &resp)
5237 return
5238 }
5239 5240 // no documentation yet
5241 func (r User_Permission_Resource_Type) GetObject() (resp datatypes.User_Permission_Resource_Type, err error) {
5242 err = r.Session.DoRequest("SoftLayer_User_Permission_Resource_Type", "getObject", nil, &r.Options, &resp)
5243 return
5244 }
5245 5246 // The SoftLayer_User_Permission_Role data type contains local attributes to identify and describe the permission roles that have been created within IMS. These includes a name, description, and account id. Permission groups are defined specifically for a single [[SoftLayer_Account]].
5247 //
5248 // It also contains relational attributes that indicate what SoftLayer_User_Permission_Group objects are linked to a particular role, and the SoftLayer_User_Customer objects assigned to the role.
5249 type User_Permission_Role struct {
5250 Session session.SLSession
5251 Options sl.Options
5252 }
5253 5254 // GetUserPermissionRoleService returns an instance of the User_Permission_Role SoftLayer service
5255 func GetUserPermissionRoleService(sess session.SLSession) User_Permission_Role {
5256 return User_Permission_Role{Session: sess}
5257 }
5258 5259 func (r User_Permission_Role) Id(id int) User_Permission_Role {
5260 r.Options.Id = &id
5261 return r
5262 }
5263 5264 func (r User_Permission_Role) Mask(mask string) User_Permission_Role {
5265 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
5266 mask = fmt.Sprintf("mask[%s]", mask)
5267 }
5268 5269 r.Options.Mask = mask
5270 return r
5271 }
5272 5273 func (r User_Permission_Role) Filter(filter string) User_Permission_Role {
5274 r.Options.Filter = filter
5275 return r
5276 }
5277 5278 func (r User_Permission_Role) Limit(limit int) User_Permission_Role {
5279 r.Options.Limit = &limit
5280 return r
5281 }
5282 5283 func (r User_Permission_Role) Offset(offset int) User_Permission_Role {
5284 r.Options.Offset = &offset
5285 return r
5286 }
5287 5288 // Assigns a SoftLayer_User_Customer object to the role.
5289 func (r User_Permission_Role) AddUser(user *datatypes.User_Customer) (err error) {
5290 var resp datatypes.Void
5291 params := []interface{}{
5292 user,
5293 }
5294 err = r.Session.DoRequest("SoftLayer_User_Permission_Role", "addUser", params, &r.Options, &resp)
5295 return
5296 }
5297 5298 // Customer created permission roles must set the systemFlag attribute to false. The SYSTEM type is reserved for internal use. The account id supplied in the template permission group must match account id of the user who is creating the permission group. The user who is creating the permission group must have the permission to manage users.
5299 func (r User_Permission_Role) CreateObject(templateObject *datatypes.User_Permission_Role) (resp datatypes.User_Permission_Role, err error) {
5300 params := []interface{}{
5301 templateObject,
5302 }
5303 err = r.Session.DoRequest("SoftLayer_User_Permission_Role", "createObject", params, &r.Options, &resp)
5304 return
5305 }
5306 5307 // Customer users can only delete permission roles with systemFlag set to false. The SYSTEM type is reserved for internal use. The user who is creating the permission role must have the permission to manage users.
5308 func (r User_Permission_Role) DeleteObject() (resp bool, err error) {
5309 err = r.Session.DoRequest("SoftLayer_User_Permission_Role", "deleteObject", nil, &r.Options, &resp)
5310 return
5311 }
5312 5313 // Allows a user to modify the name and description of an existing customer permission role. Customer permission roles must set the systemFlag attribute to false. The SYSTEM type is reserved for internal use. The account id supplied in the template permission role must match account id of the user who is creating the permission role. The user who is creating the permission role must have the permission to manage users.
5314 func (r User_Permission_Role) EditObject(templateObject *datatypes.User_Permission_Role) (resp datatypes.User_Permission_Role, err error) {
5315 params := []interface{}{
5316 templateObject,
5317 }
5318 err = r.Session.DoRequest("SoftLayer_User_Permission_Role", "editObject", params, &r.Options, &resp)
5319 return
5320 }
5321 5322 // Retrieve
5323 func (r User_Permission_Role) GetAccount() (resp datatypes.Account, err error) {
5324 err = r.Session.DoRequest("SoftLayer_User_Permission_Role", "getAccount", nil, &r.Options, &resp)
5325 return
5326 }
5327 5328 // Retrieve
5329 func (r User_Permission_Role) GetActions() (resp []datatypes.User_Permission_Action, err error) {
5330 err = r.Session.DoRequest("SoftLayer_User_Permission_Role", "getActions", nil, &r.Options, &resp)
5331 return
5332 }
5333 5334 // Retrieve
5335 func (r User_Permission_Role) GetGroups() (resp []datatypes.User_Permission_Group, err error) {
5336 err = r.Session.DoRequest("SoftLayer_User_Permission_Role", "getGroups", nil, &r.Options, &resp)
5337 return
5338 }
5339 5340 // no documentation yet
5341 func (r User_Permission_Role) GetObject() (resp datatypes.User_Permission_Role, err error) {
5342 err = r.Session.DoRequest("SoftLayer_User_Permission_Role", "getObject", nil, &r.Options, &resp)
5343 return
5344 }
5345 5346 // Retrieve
5347 func (r User_Permission_Role) GetUsers() (resp []datatypes.User_Customer, err error) {
5348 err = r.Session.DoRequest("SoftLayer_User_Permission_Role", "getUsers", nil, &r.Options, &resp)
5349 return
5350 }
5351 5352 // Links a SoftLayer_User_Permission_Group object to the role.
5353 func (r User_Permission_Role) LinkGroup(group *datatypes.User_Permission_Group) (err error) {
5354 var resp datatypes.Void
5355 params := []interface{}{
5356 group,
5357 }
5358 err = r.Session.DoRequest("SoftLayer_User_Permission_Role", "linkGroup", params, &r.Options, &resp)
5359 return
5360 }
5361 5362 // Unassigns a SoftLayer_User_Customer object from the role.
5363 func (r User_Permission_Role) RemoveUser(user *datatypes.User_Customer) (err error) {
5364 var resp datatypes.Void
5365 params := []interface{}{
5366 user,
5367 }
5368 err = r.Session.DoRequest("SoftLayer_User_Permission_Role", "removeUser", params, &r.Options, &resp)
5369 return
5370 }
5371 5372 // Unlinks a SoftLayer_User_Permission_Group object to the role.
5373 func (r User_Permission_Role) UnlinkGroup(group *datatypes.User_Permission_Group) (err error) {
5374 var resp datatypes.Void
5375 params := []interface{}{
5376 group,
5377 }
5378 err = r.Session.DoRequest("SoftLayer_User_Permission_Role", "unlinkGroup", params, &r.Options, &resp)
5379 return
5380 }
5381 5382 // The SoftLayer_User_Security_Question data type contains questions.
5383 type User_Security_Question struct {
5384 Session session.SLSession
5385 Options sl.Options
5386 }
5387 5388 // GetUserSecurityQuestionService returns an instance of the User_Security_Question SoftLayer service
5389 func GetUserSecurityQuestionService(sess session.SLSession) User_Security_Question {
5390 return User_Security_Question{Session: sess}
5391 }
5392 5393 func (r User_Security_Question) Id(id int) User_Security_Question {
5394 r.Options.Id = &id
5395 return r
5396 }
5397 5398 func (r User_Security_Question) Mask(mask string) User_Security_Question {
5399 if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) {
5400 mask = fmt.Sprintf("mask[%s]", mask)
5401 }
5402 5403 r.Options.Mask = mask
5404 return r
5405 }
5406 5407 func (r User_Security_Question) Filter(filter string) User_Security_Question {
5408 r.Options.Filter = filter
5409 return r
5410 }
5411 5412 func (r User_Security_Question) Limit(limit int) User_Security_Question {
5413 r.Options.Limit = &limit
5414 return r
5415 }
5416 5417 func (r User_Security_Question) Offset(offset int) User_Security_Question {
5418 r.Options.Offset = &offset
5419 return r
5420 }
5421 5422 // Retrieve all viewable security questions.
5423 func (r User_Security_Question) GetAllObjects() (resp []datatypes.User_Security_Question, err error) {
5424 err = r.Session.DoRequest("SoftLayer_User_Security_Question", "getAllObjects", nil, &r.Options, &resp)
5425 return
5426 }
5427 5428 // getAllObjects retrieves all the SoftLayer_User_Security_Question objects where it is set to be viewable.
5429 func (r User_Security_Question) GetObject() (resp datatypes.User_Security_Question, err error) {
5430 err = r.Session.DoRequest("SoftLayer_User_Security_Question", "getObject", nil, &r.Options, &resp)
5431 return
5432 }
5433