From a335a690a613451e8afa4f81b64826db04a9d93b Mon Sep 17 00:00:00 2001 From: Christopher Gallo Date: Mon, 6 Feb 2023 16:36:52 -0600 Subject: [PATCH] 20230206 updates --- datatypes/account.go | 44 +- datatypes/billing.go | 87 ++- datatypes/container.go | 201 ++++-- datatypes/hardware.go | 49 +- datatypes/network.go | 198 +++--- datatypes/product.go | 3 - datatypes/resource.go | 3 - datatypes/scale.go | 489 --------------- datatypes/user.go | 25 +- datatypes/virtual.go | 23 +- services/account.go | 53 +- services/billing.go | 6 + services/hardware.go | 182 +++--- services/network.go | 276 +++++---- services/product.go | 6 - services/resource.go | 6 - services/scale.go | 1319 ---------------------------------------- services/user.go | 375 ++---------- services/virtual.go | 105 +--- 19 files changed, 766 insertions(+), 2684 deletions(-) diff --git a/datatypes/account.go b/datatypes/account.go index 4504dfb..028cd19 100644 --- a/datatypes/account.go +++ b/datatypes/account.go @@ -264,7 +264,7 @@ type Account struct { // Private template group objects (parent and children) and the shared template group objects (parent only) for an account. BlockDeviceTemplateGroups []Virtual_Guest_Block_Device_Template_Group `json:"blockDeviceTemplateGroups,omitempty" xmlrpc:"blockDeviceTemplateGroups,omitempty"` - // The Bluemix account link associated with this SoftLayer account, if one exists. + // The Platform account link associated with this SoftLayer account, if one exists. BluemixAccountLink *Account_Link_Bluemix `json:"bluemixAccountLink,omitempty" xmlrpc:"bluemixAccountLink,omitempty"` // Returns true if this account is linked to IBM Bluemix, false if not. @@ -569,12 +569,21 @@ type Account struct { // An in progress request to switch billing systems. InProgressExternalAccountSetup *Account_External_Setup `json:"inProgressExternalAccountSetup,omitempty" xmlrpc:"inProgressExternalAccountSetup,omitempty"` + // Account attribute flag indicating internal cci host account. + InternalCciHostAccountFlag *bool `json:"internalCciHostAccountFlag,omitempty" xmlrpc:"internalCciHostAccountFlag,omitempty"` + + // Account attribute flag indicating account creates internal image templates. + InternalImageTemplateCreationFlag *bool `json:"internalImageTemplateCreationFlag,omitempty" xmlrpc:"internalImageTemplateCreationFlag,omitempty"` + // A count of InternalNoteCount *uint `json:"internalNoteCount,omitempty" xmlrpc:"internalNoteCount,omitempty"` // no documentation yet InternalNotes []Account_Note `json:"internalNotes,omitempty" xmlrpc:"internalNotes,omitempty"` + // Account attribute flag indicating restricted account. + InternalRestrictionFlag *bool `json:"internalRestrictionFlag,omitempty" xmlrpc:"internalRestrictionFlag,omitempty"` + // A count of an account's associated billing invoices. InvoiceCount *uint `json:"invoiceCount,omitempty" xmlrpc:"invoiceCount,omitempty"` @@ -807,6 +816,7 @@ type Account struct { NextBillingPublicAllotmentHardwareBandwidthDetailCount *uint `json:"nextBillingPublicAllotmentHardwareBandwidthDetailCount,omitempty" xmlrpc:"nextBillingPublicAllotmentHardwareBandwidthDetailCount,omitempty"` // DEPRECATED - This information can be pulled directly through tapping keys now - DEPRECATED. The allotments for this account and their servers for the next billing cycle. The public inbound and outbound bandwidth is calculated for each server in addition to the daily average network traffic since the last billing date. + // Deprecated: This function has been marked as deprecated. NextBillingPublicAllotmentHardwareBandwidthDetails []Network_Bandwidth_Version1_Allotment `json:"nextBillingPublicAllotmentHardwareBandwidthDetails,omitempty" xmlrpc:"nextBillingPublicAllotmentHardwareBandwidthDetails,omitempty"` // The pre-tax total amount exempt from incubator credit for the account's next invoice. This field is now deprecated and will soon be removed. Please update all references to instead use nextInvoiceTotalAmount @@ -1044,6 +1054,7 @@ type Account struct { PrivateAllotmentHardwareBandwidthDetailCount *uint `json:"privateAllotmentHardwareBandwidthDetailCount,omitempty" xmlrpc:"privateAllotmentHardwareBandwidthDetailCount,omitempty"` // DEPRECATED - This information can be pulled directly through tapping keys now - DEPRECATED. The allotments for this account and their servers. The private inbound and outbound bandwidth is calculated for each server in addition to the daily average network traffic since the last billing date. + // Deprecated: This function has been marked as deprecated. PrivateAllotmentHardwareBandwidthDetails []Network_Bandwidth_Version1_Allotment `json:"privateAllotmentHardwareBandwidthDetails,omitempty" xmlrpc:"privateAllotmentHardwareBandwidthDetails,omitempty"` // A count of private and shared template group objects (parent only) for an account. @@ -1077,6 +1088,7 @@ type Account struct { PublicAllotmentHardwareBandwidthDetailCount *uint `json:"publicAllotmentHardwareBandwidthDetailCount,omitempty" xmlrpc:"publicAllotmentHardwareBandwidthDetailCount,omitempty"` // DEPRECATED - This information can be pulled directly through tapping keys now - DEPRECATED. The allotments for this account and their servers. The public inbound and outbound bandwidth is calculated for each server in addition to the daily average network traffic since the last billing date. + // Deprecated: This function has been marked as deprecated. PublicAllotmentHardwareBandwidthDetails []Network_Bandwidth_Version1_Allotment `json:"publicAllotmentHardwareBandwidthDetails,omitempty" xmlrpc:"publicAllotmentHardwareBandwidthDetails,omitempty"` // A count of @@ -1115,6 +1127,9 @@ type Account struct { // A count of if this is a account is a referral partner, the accounts this referral partner has referred ReferredAccountCount *uint `json:"referredAccountCount,omitempty" xmlrpc:"referredAccountCount,omitempty"` + // Flag indicating if the account was referred. + ReferredAccountFlag *bool `json:"referredAccountFlag,omitempty" xmlrpc:"referredAccountFlag,omitempty"` + // If this is a account is a referral partner, the accounts this referral partner has referred ReferredAccounts []Account `json:"referredAccounts,omitempty" xmlrpc:"referredAccounts,omitempty"` @@ -1154,12 +1169,6 @@ type Account struct { // The reserved capacity groups owned by this account. ReservedCapacityGroups []Virtual_ReservedCapacityGroup `json:"reservedCapacityGroups,omitempty" xmlrpc:"reservedCapacityGroups,omitempty"` - // A count of an account's associated top-level resource groups. - ResourceGroupCount *uint `json:"resourceGroupCount,omitempty" xmlrpc:"resourceGroupCount,omitempty"` - - // An account's associated top-level resource groups. - ResourceGroups []Resource_Group `json:"resourceGroups,omitempty" xmlrpc:"resourceGroups,omitempty"` - // A count of all Routers that an accounts VLANs reside on RouterCount *uint `json:"routerCount,omitempty" xmlrpc:"routerCount,omitempty"` @@ -1176,10 +1185,11 @@ type Account struct { // The SAML configuration for this account. SamlAuthentication *Account_Authentication_Saml `json:"samlAuthentication,omitempty" xmlrpc:"samlAuthentication,omitempty"` - // A count of all scale groups on this account. + // A count of [DEPRECATED] All scale groups on this account. ScaleGroupCount *uint `json:"scaleGroupCount,omitempty" xmlrpc:"scaleGroupCount,omitempty"` - // All scale groups on this account. + // [DEPRECATED] All scale groups on this account. + // Deprecated: This function has been marked as deprecated. ScaleGroups []Scale_Group `json:"scaleGroups,omitempty" xmlrpc:"scaleGroups,omitempty"` // A count of the secondary DNS records for a SoftLayer customer account. @@ -1287,6 +1297,9 @@ type Account struct { // no documentation yet Tags []Tag `json:"tags,omitempty" xmlrpc:"tags,omitempty"` + // Account attribute flag indicating test account. + TestAccountAttributeFlag *bool `json:"testAccountAttributeFlag,omitempty" xmlrpc:"testAccountAttributeFlag,omitempty"` + // A count of an account's associated tickets. TicketCount *uint `json:"ticketCount,omitempty" xmlrpc:"ticketCount,omitempty"` @@ -1693,29 +1706,29 @@ type Account_Attribute_Type struct { Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` } -// Account authentication has many different settings that can be set. This class allows the customer or employee to set these settigns. +// Account authentication has many different settings that can be set. This class allows the customer or employee to set these settings. type Account_Authentication_Attribute struct { Entity // The SoftLayer customer account. Account *Account `json:"account,omitempty" xmlrpc:"account,omitempty"` - // The internal identifier of the SoftLayer customer account that is assigned an account authenction attribute. + // The internal identifier of the SoftLayer customer account that is assigned an account authentication attribute. AccountId *int `json:"accountId,omitempty" xmlrpc:"accountId,omitempty"` // The SoftLayer account authentication that has an attribute. AuthenticationRecord *Account_Authentication_Saml `json:"authenticationRecord,omitempty" xmlrpc:"authenticationRecord,omitempty"` - // A SoftLayer account authenction attribute's internal identifier. + // A SoftLayer account authentication attribute's internal identifier. Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` // The type of attribute assigned to a SoftLayer account authentication. Type *Account_Authentication_Attribute_Type `json:"type,omitempty" xmlrpc:"type,omitempty"` - // The internal identifier of the type of attribute that a SoftLayer account authenction attribute belongs to. + // The internal identifier of the type of attribute that a SoftLayer account authentication attribute belongs to. TypeId *int `json:"typeId,omitempty" xmlrpc:"typeId,omitempty"` - // A SoftLayer account authenction attribute's value. + // A SoftLayer account authentication attribute's value. Value *string `json:"value,omitempty" xmlrpc:"value,omitempty"` } @@ -2006,6 +2019,9 @@ type Account_Link struct { // no documentation yet AccountId *int `json:"accountId,omitempty" xmlrpc:"accountId,omitempty"` + // Authorization token that's included on linking calls. + AuthorizationToken *string `json:"authorizationToken,omitempty" xmlrpc:"authorizationToken,omitempty"` + // no documentation yet CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` diff --git a/datatypes/billing.go b/datatypes/billing.go index be1e5b7..a794eb3 100644 --- a/datatypes/billing.go +++ b/datatypes/billing.go @@ -20,6 +20,14 @@ package datatypes +// no documentation yet +type Billing_Chargeback_Type struct { + Entity + + // Chargeback Type key name. + KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` +} + // no documentation yet type Billing_Currency struct { Entity @@ -262,6 +270,9 @@ type Billing_Invoice struct { // no documentation yet BrandAtInvoiceCreation *Brand `json:"brandAtInvoiceCreation,omitempty" xmlrpc:"brandAtInvoiceCreation,omitempty"` + // Chargeback type for invoice. + ChargebackType *Billing_Chargeback_Type `json:"chargebackType,omitempty" xmlrpc:"chargebackType,omitempty"` + // The city portion of an address belonging to an account at the time an invoice is created. City *string `json:"city,omitempty" xmlrpc:"city,omitempty"` @@ -280,6 +291,9 @@ type Billing_Invoice struct { // The date an invoice was created. CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` + // Credit type detail identifier for this invoice. + CreditTypeDetailId *int `json:"creditTypeDetailId,omitempty" xmlrpc:"creditTypeDetailId,omitempty"` + // A flag that will reflect whether the detailed version of the pdf has been generated. DetailedPdfGeneratedFlag *bool `json:"detailedPdfGeneratedFlag,omitempty" xmlrpc:"detailedPdfGeneratedFlag,omitempty"` @@ -438,6 +452,9 @@ type Billing_Invoice_Item struct { // The domain name of the invoiced item. This is only used on invoice items whose category is "server". DomainName *string `json:"domainName,omitempty" xmlrpc:"domainName,omitempty"` + // The end date of the invoice item. + EndDate *Time `json:"endDate,omitempty" xmlrpc:"endDate,omitempty"` + // An Invoice Item's associated child invoice items, excluding some items with a $0.00 recurring fee. Only parent invoice items have associated children. For instance, a server invoice item may have associated children. FilteredAssociatedChildren []Billing_Invoice_Item `json:"filteredAssociatedChildren,omitempty" xmlrpc:"filteredAssociatedChildren,omitempty"` @@ -1341,9 +1358,6 @@ type Billing_Item_Ctc_Account struct { // The SoftLayer_Billing_Item_Big_Data_Cluster data type contains general information relating to a single SoftLayer billing item for a big data cluster. type Billing_Item_Gateway_Appliance_Cluster struct { Billing_Item - - // The resource for a resource group billing item. - Resource *Resource_Group `json:"resource,omitempty" xmlrpc:"resource,omitempty"` } // The SoftLayer_Billing_Item_Hardware data type contains general information relating to a single SoftLayer billing item for hardware. @@ -2327,6 +2341,9 @@ type Billing_Payment_Card_ChangeRequest struct { // Please refer to https://cardinaldocs.atlassian.net/wiki/spaces/CC/pages/360668/Cardinal+Cruise+Hybrid and view section under "DFReferenceId / ReferenceId" to populate this property accordingly. PayerAuthenticationEnrollmentReferenceId *string `json:"payerAuthenticationEnrollmentReferenceId,omitempty" xmlrpc:"payerAuthenticationEnrollmentReferenceId,omitempty"` + // The URL where the issuing bank will redirect. + PayerAuthenticationEnrollmentReturnUrl *string `json:"payerAuthenticationEnrollmentReturnUrl,omitempty" xmlrpc:"payerAuthenticationEnrollmentReturnUrl,omitempty"` + // "Continue with Consumer Authentication" decoded response JWT (JSON Web Token) after successful authentication. The response is part of the implementation of Cardinal Cruise Hybrid. // // Please refer to https://cardinaldocs.atlassian.net/wiki/spaces/CC/pages/360668/Cardinal+Cruise+Hybrid and view section under "Continue with Consumer Authentication" to populate this property accordingly based on the CCA response. @@ -2459,6 +2476,9 @@ type Billing_Payment_Card_ManualPayment struct { // Please refer to https://cardinaldocs.atlassian.net/wiki/spaces/CC/pages/360668/Cardinal+Cruise+Hybrid and view section under "DFReferenceId / ReferenceId" to populate this property accordingly. PayerAuthenticationEnrollmentReferenceId *string `json:"payerAuthenticationEnrollmentReferenceId,omitempty" xmlrpc:"payerAuthenticationEnrollmentReferenceId,omitempty"` + // The URL where the issuing bank will redirect. + PayerAuthenticationEnrollmentReturnUrl *string `json:"payerAuthenticationEnrollmentReturnUrl,omitempty" xmlrpc:"payerAuthenticationEnrollmentReturnUrl,omitempty"` + // "Continue with Consumer Authentication" decoded response JWT (JSON Web Token) after successful authentication. The response is part of the implementation of Cardinal Cruise Hybrid. // // Please refer to https://cardinaldocs.atlassian.net/wiki/spaces/CC/pages/360668/Cardinal+Cruise+Hybrid and view section under "Continue with Consumer Authentication" to populate this property accordingly based on the CCA response. @@ -2480,6 +2500,67 @@ type Billing_Payment_Card_ManualPayment struct { Type *string `json:"type,omitempty" xmlrpc:"type,omitempty"` } +// This datatype payer authentication setup +type Billing_Payment_Card_PayerAuthentication_Setup struct { + Entity + + // This is used to authenticate the customer with the authentication provider. + AccessToken *string `json:"accessToken,omitempty" xmlrpc:"accessToken,omitempty"` + + // Location to send the authentication when you invoke device data collection. + DeviceDataCollectionUrl *string `json:"deviceDataCollectionUrl,omitempty" xmlrpc:"deviceDataCollectionUrl,omitempty"` + + // This identifier indicates that the device data collection + ReferenceId *string `json:"referenceId,omitempty" xmlrpc:"referenceId,omitempty"` +} + +// This is the datatype that needs to be populated and sent to SoftLayer_Account::initiatePayerAuthentication. +type Billing_Payment_Card_PayerAuthentication_Setup_Information struct { + Entity + + // The physical street address. Reserve information such as "apartment #123" or "Suite 2" for line 1. + BillingAddressLine1 *string `json:"billingAddressLine1,omitempty" xmlrpc:"billingAddressLine1,omitempty"` + + // The second line in the address. Information such as suite number goes here. + BillingAddressLine2 *string `json:"billingAddressLine2,omitempty" xmlrpc:"billingAddressLine2,omitempty"` + + // The city in which a customer's account resides. + BillingCity *string `json:"billingCity,omitempty" xmlrpc:"billingCity,omitempty"` + + // The 2-character Country code for an account's address. (i.e. US) + BillingCountryCode *string `json:"billingCountryCode,omitempty" xmlrpc:"billingCountryCode,omitempty"` + + // The email address associated with a customer account. + BillingEmail *string `json:"billingEmail,omitempty" xmlrpc:"billingEmail,omitempty"` + + // The first name of the customer account owner. + BillingNameFirst *string `json:"billingNameFirst,omitempty" xmlrpc:"billingNameFirst,omitempty"` + + // The last name of the customer account owner + BillingNameLast *string `json:"billingNameLast,omitempty" xmlrpc:"billingNameLast,omitempty"` + + // The Zip or Postal Code for the billing address on an account. + BillingPostalCode *string `json:"billingPostalCode,omitempty" xmlrpc:"billingPostalCode,omitempty"` + + // The State for the account. + BillingState *string `json:"billingState,omitempty" xmlrpc:"billingState,omitempty"` + + // The credit card number to use. + CardAccountNumber *string `json:"cardAccountNumber,omitempty" xmlrpc:"cardAccountNumber,omitempty"` + + // The payment card expiration month + CardExpirationMonth *int `json:"cardExpirationMonth,omitempty" xmlrpc:"cardExpirationMonth,omitempty"` + + // The payment card expiration year + CardExpirationYear *int `json:"cardExpirationYear,omitempty" xmlrpc:"cardExpirationYear,omitempty"` + + // The method key of the type payment issued + CardType *string `json:"cardType,omitempty" xmlrpc:"cardType,omitempty"` + + // The credit card verification number + CreditCardVerificationNumber *string `json:"creditCardVerificationNumber,omitempty" xmlrpc:"creditCardVerificationNumber,omitempty"` +} + // The SoftLayer_Billing_Payment_Card_Transaction data type contains general information relating to attempted credit card transactions. type Billing_Payment_Card_Transaction struct { Billing_Payment_Transaction diff --git a/datatypes/container.go b/datatypes/container.go index 89ef2e3..dbba800 100644 --- a/datatypes/container.go +++ b/datatypes/container.go @@ -957,9 +957,6 @@ type Container_Authentication_Response_Account struct { // no documentation yet ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` - // no documentation yet - PhoneFactorExternalAuthenticationRequired *bool `json:"phoneFactorExternalAuthenticationRequired,omitempty" xmlrpc:"phoneFactorExternalAuthenticationRequired,omitempty"` - // no documentation yet SecurityQuestionRequired *bool `json:"securityQuestionRequired,omitempty" xmlrpc:"securityQuestionRequired,omitempty"` @@ -2907,6 +2904,31 @@ type Container_Network_Message_Delivery_Email struct { To *string `json:"to,omitempty" xmlrpc:"to,omitempty"` } +// no documentation yet +type Container_Network_Message_Delivery_Email_Sendgrid_Account struct { + Entity + + // no documentation yet + Offerings []Container_Network_Message_Delivery_Email_Sendgrid_Account_Offering `json:"offerings,omitempty" xmlrpc:"offerings,omitempty"` + + // no documentation yet + Profile *Container_Network_Message_Delivery_Email_Sendgrid_Account_Profile `json:"profile,omitempty" xmlrpc:"profile,omitempty"` +} + +// no documentation yet +type Container_Network_Message_Delivery_Email_Sendgrid_Account_Offering struct { + Entity + + // no documentation yet + Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` + + // no documentation yet + Quantity *int `json:"quantity,omitempty" xmlrpc:"quantity,omitempty"` + + // no documentation yet + Type *string `json:"type,omitempty" xmlrpc:"type,omitempty"` +} + // no documentation yet type Container_Network_Message_Delivery_Email_Sendgrid_Account_Overview struct { Entity @@ -2923,6 +2945,12 @@ type Container_Network_Message_Delivery_Email_Sendgrid_Account_Overview struct { // no documentation yet CreditsUsed *int `json:"creditsUsed,omitempty" xmlrpc:"creditsUsed,omitempty"` + // no documentation yet + Email *int `json:"email,omitempty" xmlrpc:"email,omitempty"` + + // no documentation yet + Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` + // no documentation yet Package *string `json:"package,omitempty" xmlrpc:"package,omitempty"` @@ -2933,6 +2961,95 @@ type Container_Network_Message_Delivery_Email_Sendgrid_Account_Overview struct { Requests *int `json:"requests,omitempty" xmlrpc:"requests,omitempty"` } +// no documentation yet +type Container_Network_Message_Delivery_Email_Sendgrid_Account_Profile struct { + Entity + + // no documentation yet + CompanyName *string `json:"companyName,omitempty" xmlrpc:"companyName,omitempty"` + + // no documentation yet + CompanyWebsite *string `json:"companyWebsite,omitempty" xmlrpc:"companyWebsite,omitempty"` + + // no documentation yet + CreatedAt *string `json:"createdAt,omitempty" xmlrpc:"createdAt,omitempty"` + + // no documentation yet + Email *string `json:"email,omitempty" xmlrpc:"email,omitempty"` + + // no documentation yet + FirstName *string `json:"firstName,omitempty" xmlrpc:"firstName,omitempty"` + + // no documentation yet + Id *string `json:"id,omitempty" xmlrpc:"id,omitempty"` + + // no documentation yet + LastName *string `json:"lastName,omitempty" xmlrpc:"lastName,omitempty"` + + // no documentation yet + Overage *int `json:"overage,omitempty" xmlrpc:"overage,omitempty"` + + // no documentation yet + Package *string `json:"package,omitempty" xmlrpc:"package,omitempty"` + + // no documentation yet + Remain *int `json:"remain,omitempty" xmlrpc:"remain,omitempty"` + + // no documentation yet + Reputation *int `json:"reputation,omitempty" xmlrpc:"reputation,omitempty"` + + // no documentation yet + Total *int `json:"total,omitempty" xmlrpc:"total,omitempty"` + + // no documentation yet + UpdatedAt *string `json:"updatedAt,omitempty" xmlrpc:"updatedAt,omitempty"` + + // no documentation yet + Used *int `json:"used,omitempty" xmlrpc:"used,omitempty"` +} + +// no documentation yet +type Container_Network_Message_Delivery_Email_Sendgrid_Catalog_Item struct { + Entity + + // no documentation yet + Entitlements *Container_Network_Message_Delivery_Email_Sendgrid_Catalog_Item_Entitlements `json:"entitlements,omitempty" xmlrpc:"entitlements,omitempty"` + + // no documentation yet + Offering *Container_Network_Message_Delivery_Email_Sendgrid_Catalog_Item_Offering `json:"offering,omitempty" xmlrpc:"offering,omitempty"` +} + +// no documentation yet +type Container_Network_Message_Delivery_Email_Sendgrid_Catalog_Item_Entitlements struct { + Entity + + // no documentation yet + EmailSendsMaxMonthly *int `json:"emailSendsMaxMonthly,omitempty" xmlrpc:"emailSendsMaxMonthly,omitempty"` + + // no documentation yet + IpCount *int `json:"ipCount,omitempty" xmlrpc:"ipCount,omitempty"` + + // no documentation yet + TeammatesMaxTotal *int `json:"teammatesMaxTotal,omitempty" xmlrpc:"teammatesMaxTotal,omitempty"` + + // no documentation yet + UsersMaxTotal *int `json:"usersMaxTotal,omitempty" xmlrpc:"usersMaxTotal,omitempty"` +} + +// no documentation yet +type Container_Network_Message_Delivery_Email_Sendgrid_Catalog_Item_Offering struct { + Entity + + // no documentation yet + Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` + + // no documentation yet + Quantity *int `json:"quantity,omitempty" xmlrpc:"quantity,omitempty"` + + // no documentation yet + Type *string `json:"type,omitempty" xmlrpc:"type,omitempty"` +} + // no documentation yet type Container_Network_Message_Delivery_Email_Sendgrid_Customer_Profile struct { Entity @@ -3053,6 +3170,9 @@ type Container_Network_Message_Delivery_Email_Sendgrid_Statistics_Graph struct { type Container_Network_Message_Delivery_Email_Sendgrid_Statistics_Options struct { Entity + // no documentation yet + AggregatedBy *bool `json:"aggregatedBy,omitempty" xmlrpc:"aggregatedBy,omitempty"` + // no documentation yet AggregatesOnly *bool `json:"aggregatesOnly,omitempty" xmlrpc:"aggregatesOnly,omitempty"` @@ -4015,6 +4135,9 @@ type Container_Product_Order_Billing_Information struct { // Please refer to https://cardinaldocs.atlassian.net/wiki/spaces/CC/pages/360668/Cardinal+Cruise+Hybrid and view section under "DFReferenceId / ReferenceId" to populate this property accordingly. PayerAuthenticationEnrollmentReferenceId *string `json:"payerAuthenticationEnrollmentReferenceId,omitempty" xmlrpc:"payerAuthenticationEnrollmentReferenceId,omitempty"` + // The URL where the issuing bank will redirect. + PayerAuthenticationEnrollmentReturnUrl *string `json:"payerAuthenticationEnrollmentReturnUrl,omitempty" xmlrpc:"payerAuthenticationEnrollmentReturnUrl,omitempty"` + // "Continue with Consumer Authentication" decoded response JWT (JSON Web Token) after successful authentication. The response is part of the implementation of Cardinal Cruise Hybrid. // // Please refer to https://cardinaldocs.atlassian.net/wiki/spaces/CC/pages/360668/Cardinal+Cruise+Hybrid and view section under "Continue with Consumer Authentication" to populate this property accordingly based on the CCA response. @@ -4315,6 +4438,14 @@ type Container_Product_Order_Network_Message_Delivery struct { EmailAddress *string `json:"emailAddress,omitempty" xmlrpc:"emailAddress,omitempty"` } +// This is the datatype that needs to be populated and sent to SoftLayer_Product_Order::placeOrder. This datatype has everything required to place an upgrade order for network message delivery. +type Container_Product_Order_Network_Message_Delivery_Upgrade struct { + Container_Product_Order_Network_Message_Delivery + + // The ID of the [[SoftLayer_Network_Message_Delivery]] being upgraded. + MessageDeliveryId *int `json:"messageDeliveryId,omitempty" xmlrpc:"messageDeliveryId,omitempty"` +} + // This is the base data type for Performance storage order containers. If you wish to place an order you must not use this class and instead use the appropriate child container for the type of storage you would like to order: [[SoftLayer_Container_Product_Order_Network_PerformanceStorage_Nfs]] for File and [[SoftLayer_Container_Product_Order_Network_PerformanceStorage_Iscsi]] for Block storage. type Container_Product_Order_Network_PerformanceStorage struct { Container_Product_Order @@ -5582,53 +5713,6 @@ type Container_User_Customer_External_Binding struct { Vendor *string `json:"vendor,omitempty" xmlrpc:"vendor,omitempty"` } -// Container classed used to hold portal token -type Container_User_Customer_External_Binding_Phone struct { - Container_User_Customer_External_Binding -} - -// This container can be used to configure the phone authentication mode. By default, "VOICE_CALL" in "STANDARD" mode with no Pin number will be used. With the default mode, you will have to answer a phone call from a trusted 2 form factor vendor during authentication process. You have to answer the call and follow the instruction in order to complete the authentication. -// -// You can also use SMS text message or PhoneFactor mobile app modes (in case you're using PhoneFactor). Additionally, you can set up a Pin number. By requiring you to verify your secret PIN, you can ensure that you have possession of your phone. -type Container_User_Customer_External_Binding_Phone_Mode struct { - Entity - - // Authentication mode. Valid modes are: VOICE_CALL, SMS_TEXT, PHONE_APP - // - // - // *VOICE_CALL - // In this mode, users will receive a phone call to authenticate. Using PIN can enhance the security of the phone authentication by requiring the user to enter a PIN during the authentication call. Valid Pin modes are: PIN, VOICE_PRINT, STANDARD - // - // - // **STANDARD: (default) No PIN is used. - // **PIN: 4 to 10 digit numeric value - // **VOICE_PRINT: The user's voice will be used to identify the user. - // - // - // *SMS_TEXT - // SMS Text mode will send a SMS text message to the user's phone to complete the authentication. There are 2 different pin modes: - // - // - // **OTP: (default) A text message containing a One-Time Passcode (OTP) is sent to the user. The user must reply to the text message entering this OTP to complete the authentication. - // **OTP_PIN: This mode enhances the security of the authentication by requiring the user to enter the OTP + their PIN in the text reply. - // - // - // - // - // *PHONE_APP - // This mode is applicable for PhoneFactor. Phone App mode results in a notification being sent to the user's PhoneFactor phone app. There are 2 different pin modes for the mobile app authentication. - // **STANDARD: (default) The first authentication is when the user signs on using a username and password. - // The second authentication is when the user receives a notification in the PhoneFactor phone app. In Standard Mode, users will prompted to authenticate, deny, or deny and report fraud. - // **PIN: This mode enhances the security of the authentication by requiring the user to enter their PIN in the phone app. - Mode *string `json:"mode,omitempty" xmlrpc:"mode,omitempty"` - - // Optional authentication pin. - Pin *string `json:"pin,omitempty" xmlrpc:"pin,omitempty"` - - // Available Pin modes are: PIN, VOICE_PRINT, STANDARD Default: STANDARD (Pin is not used) - PinMode *string `json:"pinMode,omitempty" xmlrpc:"pinMode,omitempty"` -} - // Container classed used to hold portal token type Container_User_Customer_External_Binding_Totp struct { Container_User_Customer_External_Binding @@ -5849,23 +5933,6 @@ type Container_User_Customer_Profile_Event_HyperWarp_ProfileChange_EventProperti User_id *string `json:"user_id,omitempty" xmlrpc:"user_id,omitempty"` } -// This container holds user's phone information. -type Container_User_Data_Phone struct { - Entity - - // Country code number for the phone number Default: 1 (United States & Canada +1) - CountryCode *int `json:"countryCode,omitempty" xmlrpc:"countryCode,omitempty"` - - // Phone extension code. It can be digits, commas, *, and # are allowed. - Extension *string `json:"extension,omitempty" xmlrpc:"extension,omitempty"` - - // Phone number can be a mobile phone number, desk phone number, or some other option. The phone number format must match the format selected in the country code. - Phone *string `json:"phone,omitempty" xmlrpc:"phone,omitempty"` - - // Type of phone number such as "primary", "office" or "home" - PhoneType *string `json:"phoneType,omitempty" xmlrpc:"phoneType,omitempty"` -} - // Container classed used to hold portal token type Container_User_Employee_External_Binding_Verisign struct { Entity diff --git a/datatypes/hardware.go b/datatypes/hardware.go index 22f7241..57335a6 100644 --- a/datatypes/hardware.go +++ b/datatypes/hardware.go @@ -180,10 +180,11 @@ type Hardware struct { // A count of all network hardware downstream from the selected piece of hardware. DownstreamNetworkHardwareCount *uint `json:"downstreamNetworkHardwareCount,omitempty" xmlrpc:"downstreamNetworkHardwareCount,omitempty"` - // A count of all network hardware with monitoring warnings or errors that are downstream from the selected piece of hardware. + // A count of all network hardware with monitoring warnings or errors that are downstream from the selected piece of hardware. [DEPRECATED] DownstreamNetworkHardwareWithIncidentCount *uint `json:"downstreamNetworkHardwareWithIncidentCount,omitempty" xmlrpc:"downstreamNetworkHardwareWithIncidentCount,omitempty"` - // All network hardware with monitoring warnings or errors that are downstream from the selected piece of hardware. + // All network hardware with monitoring warnings or errors that are downstream from the selected piece of hardware. [DEPRECATED] + // Deprecated: This function has been marked as deprecated. DownstreamNetworkHardwareWithIncidents []Hardware `json:"downstreamNetworkHardwareWithIncidents,omitempty" xmlrpc:"downstreamNetworkHardwareWithIncidents,omitempty"` // A count of information regarding all servers attached downstream to a piece of network hardware. @@ -316,7 +317,7 @@ type Hardware struct { MemoryCount *uint `json:"memoryCount,omitempty" xmlrpc:"memoryCount,omitempty"` // A piece of hardware's metric tracking object. - MetricTrackingObject *Metric_Tracking_Object_HardwareServer `json:"metricTrackingObject,omitempty" xmlrpc:"metricTrackingObject,omitempty"` + MetricTrackingObject *Metric_Tracking_Object `json:"metricTrackingObject,omitempty" xmlrpc:"metricTrackingObject,omitempty"` // A count of ModuleCount *uint `json:"moduleCount,omitempty" xmlrpc:"moduleCount,omitempty"` @@ -381,10 +382,12 @@ type Hardware struct { // Information regarding a piece of hardware's network monitors. NetworkMonitors []Network_Monitor_Version1_Query_Host `json:"networkMonitors,omitempty" xmlrpc:"networkMonitors,omitempty"` - // The value of a hardware's network status attribute. + // The value of a hardware's network status attribute. [DEPRECATED] + // Deprecated: This function has been marked as deprecated. NetworkStatus *string `json:"networkStatus,omitempty" xmlrpc:"networkStatus,omitempty"` - // The hardware's related network status attribute. + // The hardware's related network status attribute. [DEPRECATED] + // Deprecated: This function has been marked as deprecated. NetworkStatusAttribute *Hardware_Attribute `json:"networkStatusAttribute,omitempty" xmlrpc:"networkStatusAttribute,omitempty"` // Information regarding a piece of hardware's associated network storage service account. @@ -540,10 +543,11 @@ type Hardware struct { // A hardware's routers. Routers []Hardware `json:"routers,omitempty" xmlrpc:"routers,omitempty"` - // A count of collection of scale assets this hardware corresponds to. + // A count of [DEPRECATED] Collection of scale assets this hardware corresponds to. ScaleAssetCount *uint `json:"scaleAssetCount,omitempty" xmlrpc:"scaleAssetCount,omitempty"` - // Collection of scale assets this hardware corresponds to. + // [DEPRECATED] Collection of scale assets this hardware corresponds to. + // Deprecated: This function has been marked as deprecated. ScaleAssets []Scale_Asset `json:"scaleAssets,omitempty" xmlrpc:"scaleAssets,omitempty"` // A count of information regarding a piece of hardware's vulnerability scan requests. @@ -607,6 +611,12 @@ type Hardware struct { // An account's associated upgrade request object, if any. UpgradeRequest *Product_Upgrade_Request `json:"upgradeRequest,omitempty" xmlrpc:"upgradeRequest,omitempty"` + // A count of a piece of hardware's active upgradeable physical components. + UpgradeableActiveComponentCount *uint `json:"upgradeableActiveComponentCount,omitempty" xmlrpc:"upgradeableActiveComponentCount,omitempty"` + + // A piece of hardware's active upgradeable physical components. + UpgradeableActiveComponents []Hardware_Component `json:"upgradeableActiveComponents,omitempty" xmlrpc:"upgradeableActiveComponents,omitempty"` + // The network device connected to a piece of hardware. UplinkHardware *Hardware `json:"uplinkHardware,omitempty" xmlrpc:"uplinkHardware,omitempty"` @@ -778,6 +788,9 @@ type Hardware_Chassis struct { // no documentation yet PowerCapacity *string `json:"powerCapacity,omitempty" xmlrpc:"powerCapacity,omitempty"` + // no documentation yet + StorageShelfNode *string `json:"storageShelfNode,omitempty" xmlrpc:"storageShelfNode,omitempty"` + // no documentation yet U2Capacity *string `json:"u2Capacity,omitempty" xmlrpc:"u2Capacity,omitempty"` @@ -825,6 +838,9 @@ type Hardware_Component struct { // The internal identifier of the hardware that a hardware component resides inside. HardwareId *int `json:"hardwareId,omitempty" xmlrpc:"hardwareId,omitempty"` + // no documentation yet + HasUpgradeableFirmware *bool `json:"hasUpgradeableFirmware,omitempty" xmlrpc:"hasUpgradeableFirmware,omitempty"` + // A hardware component's internal identifier. Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` @@ -1168,6 +1184,12 @@ type Hardware_Component_Model struct { // The model name of a hardware component model. Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` + // A count of + QualifiedFirmwareCount *uint `json:"qualifiedFirmwareCount,omitempty" xmlrpc:"qualifiedFirmwareCount,omitempty"` + + // no documentation yet + QualifiedFirmwares []Hardware_Component_Firmware `json:"qualifiedFirmwares,omitempty" xmlrpc:"qualifiedFirmwares,omitempty"` + // A motherboard's average reboot time. RebootTime *Hardware_Component_Motherboard_Reboot_Time `json:"rebootTime,omitempty" xmlrpc:"rebootTime,omitempty"` @@ -1660,10 +1682,11 @@ type Hardware_Group struct { // A count of all network hardware downstream from this hardware. DownstreamNetworkHardwareCount *uint `json:"downstreamNetworkHardwareCount,omitempty" xmlrpc:"downstreamNetworkHardwareCount,omitempty"` - // A count of all network hardware with monitoring warnings or errors downstream from this hardware. + // A count of all network hardware with monitoring warnings or errors downstream from this hardware. [DEPRECATED] DownstreamNetworkHardwareWithIncidentCount *uint `json:"downstreamNetworkHardwareWithIncidentCount,omitempty" xmlrpc:"downstreamNetworkHardwareWithIncidentCount,omitempty"` - // All network hardware with monitoring warnings or errors downstream from this hardware. + // All network hardware with monitoring warnings or errors downstream from this hardware. [DEPRECATED] + // Deprecated: This function has been marked as deprecated. DownstreamNetworkHardwareWithIncidents []Hardware `json:"downstreamNetworkHardwareWithIncidents,omitempty" xmlrpc:"downstreamNetworkHardwareWithIncidents,omitempty"` // The chassis that a piece of hardware is housed in. @@ -1687,7 +1710,8 @@ type Hardware_Group struct { // Virtual guests that are attached downstream to a hardware that have failed monitoring NetworkMonitorAttachedDownVirtualGuests []Virtual_Guest `json:"networkMonitorAttachedDownVirtualGuests,omitempty" xmlrpc:"networkMonitorAttachedDownVirtualGuests,omitempty"` - // The value of a hardware's network status attribute. + // The value of a hardware's network status attribute. [DEPRECATED] + // Deprecated: This function has been marked as deprecated. NetworkStatus *string `json:"networkStatus,omitempty" xmlrpc:"networkStatus,omitempty"` } @@ -2042,10 +2066,11 @@ type Hardware_Server struct { // A list of users that have access to this computing instance. Users []User_Customer `json:"users,omitempty" xmlrpc:"users,omitempty"` - // A count of a hardware server's virtual servers. + // A count of [DEPRECATED] A hardware server's virtual servers. VirtualGuestCount *uint `json:"virtualGuestCount,omitempty" xmlrpc:"virtualGuestCount,omitempty"` - // A hardware server's virtual servers. + // [DEPRECATED] A hardware server's virtual servers. + // Deprecated: This function has been marked as deprecated. VirtualGuests []Virtual_Guest `json:"virtualGuests,omitempty" xmlrpc:"virtualGuests,omitempty"` } diff --git a/datatypes/network.go b/datatypes/network.go index dbe7db1..513978e 100644 --- a/datatypes/network.go +++ b/datatypes/network.go @@ -211,10 +211,11 @@ type Network_Application_Delivery_Controller_LoadBalancer_Health_Check struct { // no documentation yet Notes *string `json:"notes,omitempty" xmlrpc:"notes,omitempty"` - // A count of collection of scale load balancers that use this health check. + // A count of [DEPRECATED] Collection of scale load balancers that use this health check. ScaleLoadBalancerCount *uint `json:"scaleLoadBalancerCount,omitempty" xmlrpc:"scaleLoadBalancerCount,omitempty"` - // Collection of scale load balancers that use this health check. + // [DEPRECATED] Collection of scale load balancers that use this health check. + // Deprecated: This function has been marked as deprecated. ScaleLoadBalancers []Scale_LoadBalancer `json:"scaleLoadBalancers,omitempty" xmlrpc:"scaleLoadBalancers,omitempty"` // A count of @@ -543,10 +544,11 @@ type Network_Application_Delivery_Controller_LoadBalancer_VirtualServer struct { // no documentation yet RoutingMethodId *int `json:"routingMethodId,omitempty" xmlrpc:"routingMethodId,omitempty"` - // A count of collection of scale load balancers this virtual server applies to. + // A count of [DEPRECATED] Collection of scale load balancers this virtual server applies to. ScaleLoadBalancerCount *uint `json:"scaleLoadBalancerCount,omitempty" xmlrpc:"scaleLoadBalancerCount,omitempty"` - // Collection of scale load balancers this virtual server applies to. + // [DEPRECATED] Collection of scale load balancers this virtual server applies to. + // Deprecated: This function has been marked as deprecated. ScaleLoadBalancers []Scale_LoadBalancer `json:"scaleLoadBalancers,omitempty" xmlrpc:"scaleLoadBalancers,omitempty"` // A count of @@ -769,7 +771,7 @@ type Network_Bandwidth_Version1_Allotment struct { ManagedVirtualGuests []Virtual_Guest `json:"managedVirtualGuests,omitempty" xmlrpc:"managedVirtualGuests,omitempty"` // A virtual rack's metric tracking object. This object records all periodic polled data available to this rack. - MetricTrackingObject *Metric_Tracking_Object_VirtualDedicatedRack `json:"metricTrackingObject,omitempty" xmlrpc:"metricTrackingObject,omitempty"` + MetricTrackingObject *Metric_Tracking_Object `json:"metricTrackingObject,omitempty" xmlrpc:"metricTrackingObject,omitempty"` // The metric tracking object id for this allotment. MetricTrackingObjectId *int `json:"metricTrackingObjectId,omitempty" xmlrpc:"metricTrackingObjectId,omitempty"` @@ -869,12 +871,6 @@ type Network_Bandwidth_Version1_Usage struct { // Bandwidth allotment detail for this hardware. BandwidthAllotmentDetail *Network_Bandwidth_Version1_Allotment_Detail `json:"bandwidthAllotmentDetail,omitempty" xmlrpc:"bandwidthAllotmentDetail,omitempty"` - - // Bandwidth usage details for this hardware. - BandwidthUsageDetail []Network_Bandwidth_Version1_Usage_Detail `json:"bandwidthUsageDetail,omitempty" xmlrpc:"bandwidthUsageDetail,omitempty"` - - // A count of bandwidth usage details for this hardware. - BandwidthUsageDetailCount *uint `json:"bandwidthUsageDetailCount,omitempty" xmlrpc:"bandwidthUsageDetailCount,omitempty"` } // The SoftLayer_Network_Bandwidth_Version1_Usage_Detail data type contains specific information relating to bandwidth utilization at a specific point in time on a given network interface. @@ -1119,6 +1115,9 @@ type Network_Component struct { // The VLANs that are trunked to this network component. NetworkVlanTrunks []Network_Component_Network_Vlan_Trunk `json:"networkVlanTrunks,omitempty" xmlrpc:"networkVlanTrunks,omitempty"` + // The viable trunking targets of this component. Viable targets include accessible VLANs in the same pod and network as this component, which are not already natively attached nor trunked to this component. + NetworkVlansTrunkable []Network_Vlan `json:"networkVlansTrunkable,omitempty" xmlrpc:"networkVlansTrunkable,omitempty"` + // A network component's port number. Most hardware has more than one network interface. The port property separates these interfaces. Use this in conjunction with the ''name'' property to identify a network component. For instance, the "eth0" interface on a server has the network component name "eth" and port 0. Port *int `json:"port,omitempty" xmlrpc:"port,omitempty"` @@ -1344,6 +1343,9 @@ type Network_Component_IpAddress struct { type Network_Component_Network_Vlan_Trunk struct { Entity + // A value of '1' indicates the existence of an ongoing request to modify this trunk record. + IsUpdating *bool `json:"isUpdating,omitempty" xmlrpc:"isUpdating,omitempty"` + // The network component that the VLAN is being trunked to. NetworkComponent *Network_Component `json:"networkComponent,omitempty" xmlrpc:"networkComponent,omitempty"` @@ -1793,6 +1795,20 @@ type Network_Gateway struct { StatusId *int `json:"statusId,omitempty" xmlrpc:"statusId,omitempty"` } +// no documentation yet +type Network_Gateway_Licenses struct { + Entity + + // no documentation yet + Employee *User_Employee `json:"employee,omitempty" xmlrpc:"employee,omitempty"` + + // no documentation yet + ItemKeyName *string `json:"itemKeyName,omitempty" xmlrpc:"itemKeyName,omitempty"` + + // no documentation yet + LicenseCategory *string `json:"licenseCategory,omitempty" xmlrpc:"licenseCategory,omitempty"` +} + // no documentation yet type Network_Gateway_Member struct { Entity @@ -1862,12 +1878,6 @@ type Network_Gateway_Member_Attribute struct { // Password of the user name. Password *string `json:"password,omitempty" xmlrpc:"password,omitempty"` - // no documentation yet - SshKey *Security_Ssh_Key `json:"sshKey,omitempty" xmlrpc:"sshKey,omitempty"` - - // The SSH key id of key assigned to Gateway. - SshKeyId *int `json:"sshKeyId,omitempty" xmlrpc:"sshKeyId,omitempty"` - // Timestamp when this gateway member was last upgraded UpgradedDate *Time `json:"upgradedDate,omitempty" xmlrpc:"upgradedDate,omitempty"` @@ -1888,6 +1898,9 @@ type Network_Gateway_Member_Licenses struct { // no documentation yet ExpirationDate *Time `json:"expirationDate,omitempty" xmlrpc:"expirationDate,omitempty"` + // The gateway license record. + GatewayLicense *Network_Gateway_Licenses `json:"gatewayLicense,omitempty" xmlrpc:"gatewayLicense,omitempty"` + // The gateway member has these licenses. GatewayMember *Network_Gateway_Member `json:"gatewayMember,omitempty" xmlrpc:"gatewayMember,omitempty"` @@ -3107,6 +3120,9 @@ type Network_Message_Delivery struct { // no documentation yet CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` + // no documentation yet + Guid *string `json:"guid,omitempty" xmlrpc:"guid,omitempty"` + // no documentation yet Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` @@ -3594,7 +3610,7 @@ type Network_Security_Scanner_Request struct { // The date and time that the request was last modified. ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` - // Flag whether the requestor owns the hardware the scan was run on. This flag will return for hardware servers only, virtual servers will result in a null return even if you have a request out for them. + // Flag whether the requestor owns the hardware the scan was run on. This flag will return for hardware servers only, virtual servers will result in a null return even if you have a request out for them. RequestorOwnedFlag *bool `json:"requestorOwnedFlag,omitempty" xmlrpc:"requestorOwnedFlag,omitempty"` // A security scan request's status. @@ -4009,6 +4025,9 @@ type Network_Storage struct { // The name of the snapshot that this volume was duplicated from. OriginalSnapshotName *string `json:"originalSnapshotName,omitempty" xmlrpc:"originalSnapshotName,omitempty"` + // Volume id of the origin volume from which this volume is been cloned. + OriginalVolumeId *int `json:"originalVolumeId,omitempty" xmlrpc:"originalVolumeId,omitempty"` + // The name of the volume that this volume was duplicated from. OriginalVolumeName *string `json:"originalVolumeName,omitempty" xmlrpc:"originalVolumeName,omitempty"` @@ -6099,201 +6118,210 @@ type Network_Tunnel_Module_Context_Address_Translation struct { Notes *string `json:"notes,omitempty" xmlrpc:"notes,omitempty"` } -// The SoftLayer_Network_Vlan data type models a single VLAN within SoftLayer's public and private networks. a Virtual LAN is a structure that associates network interfaces on routers, switches, and servers in different locations to act as if they were on the same local network broadcast domain. VLANs are a central part of the SoftLayer network. They can determine how new IP subnets are routed and how individual servers communicate to each other. +// VLANs comprise the fundamental segmentation model on the network, isolating customer networks from one another. +// +// VLANs are scoped to a single network, generally public or private, and a pod. Through association to a single VLAN, assigned subnets are routed on the network to provide IP address connectivity. +// +// Compute devices are associated to a single VLAN per active network, to which the Primary IP Address and containing Primary Subnet belongs. Additional VLANs may be associated to bare metal devices using VLAN trunking. +// +// [VLAN at Wikipedia](https://en.wikipedia.org/wiki/VLAN) type Network_Vlan struct { Entity - // The SoftLayer customer account associated with a VLAN. + // The account this VLAN is associated with. Account *Account `json:"account,omitempty" xmlrpc:"account,omitempty"` - // The internal identifier of the SoftLayer customer account that a VLAN is associated with. + // The identifier of the account this VLAN is assigned to. AccountId *int `json:"accountId,omitempty" xmlrpc:"accountId,omitempty"` - // A count of a VLAN's additional primary subnets. These are used to extend the number of servers attached to the VLAN by adding more ip addresses to the primary IP address pool. + // A count of the primary IPv4 subnets routed on this VLAN, excluding the primarySubnet. AdditionalPrimarySubnetCount *uint `json:"additionalPrimarySubnetCount,omitempty" xmlrpc:"additionalPrimarySubnetCount,omitempty"` - // A VLAN's additional primary subnets. These are used to extend the number of servers attached to the VLAN by adding more ip addresses to the primary IP address pool. + // The primary IPv4 subnets routed on this VLAN, excluding the primarySubnet. AdditionalPrimarySubnets []Network_Subnet `json:"additionalPrimarySubnets,omitempty" xmlrpc:"additionalPrimarySubnets,omitempty"` - // The gateway this VLAN is inside of. + // The gateway device this VLAN is associated with for routing purposes. AttachedNetworkGateway *Network_Gateway `json:"attachedNetworkGateway,omitempty" xmlrpc:"attachedNetworkGateway,omitempty"` - // Whether or not this VLAN is inside a gateway. + // A value of '1' indicates this VLAN is associated with a gateway device for routing purposes. AttachedNetworkGatewayFlag *bool `json:"attachedNetworkGatewayFlag,omitempty" xmlrpc:"attachedNetworkGatewayFlag,omitempty"` - // The inside VLAN record if this VLAN is inside a network gateway. + // The gateway device VLAN context this VLAN is associated with for routing purposes. AttachedNetworkGatewayVlan *Network_Gateway_Vlan `json:"attachedNetworkGatewayVlan,omitempty" xmlrpc:"attachedNetworkGatewayVlan,omitempty"` - // The billing item for a network vlan. + // The billing item for this VLAN. BillingItem *Billing_Item `json:"billingItem,omitempty" xmlrpc:"billingItem,omitempty"` - // A flag indicating that a network vlan is on a Hardware Firewall (Dedicated). + // The datacenter this VLAN is associated with. + Datacenter *Location `json:"datacenter,omitempty" xmlrpc:"datacenter,omitempty"` + + // A value of '1' indicates this VLAN is associated with a firewall device. This does not include Hardware Firewalls. DedicatedFirewallFlag *int `json:"dedicatedFirewallFlag,omitempty" xmlrpc:"dedicatedFirewallFlag,omitempty"` - // [DEPRECATED] The extension router that a VLAN is associated with. + // [DEPRECATED] The extension router that this VLAN is associated with. // Deprecated: This function has been marked as deprecated. ExtensionRouter *Hardware_Router `json:"extensionRouter,omitempty" xmlrpc:"extensionRouter,omitempty"` - // A count of a firewalled Vlan's network components. + // A count of the VSI network interfaces connected to this VLAN and associated with a Hardware Firewall. FirewallGuestNetworkComponentCount *uint `json:"firewallGuestNetworkComponentCount,omitempty" xmlrpc:"firewallGuestNetworkComponentCount,omitempty"` - // A firewalled Vlan's network components. + // The VSI network interfaces connected to this VLAN and associated with a Hardware Firewall. FirewallGuestNetworkComponents []Network_Component_Firewall `json:"firewallGuestNetworkComponents,omitempty" xmlrpc:"firewallGuestNetworkComponents,omitempty"` - // A count of a firewalled vlan's inbound/outbound interfaces. + // A count of the context for the firewall device associated with this VLAN. FirewallInterfaceCount *uint `json:"firewallInterfaceCount,omitempty" xmlrpc:"firewallInterfaceCount,omitempty"` - // A firewalled vlan's inbound/outbound interfaces. + // The context for the firewall device associated with this VLAN. FirewallInterfaces []Network_Firewall_Module_Context_Interface `json:"firewallInterfaces,omitempty" xmlrpc:"firewallInterfaces,omitempty"` - // A count of a firewalled Vlan's network components. + // A count of the uplinks of the hardware network interfaces connected natively to this VLAN and associated with a Hardware Firewall. FirewallNetworkComponentCount *uint `json:"firewallNetworkComponentCount,omitempty" xmlrpc:"firewallNetworkComponentCount,omitempty"` - // A firewalled Vlan's network components. + // The uplinks of the hardware network interfaces connected natively to this VLAN and associated with a Hardware Firewall. FirewallNetworkComponents []Network_Component_Firewall `json:"firewallNetworkComponents,omitempty" xmlrpc:"firewallNetworkComponents,omitempty"` - // A count of the currently running rule set of a firewalled VLAN. + // A count of the access rules for the firewall device associated with this VLAN. FirewallRuleCount *uint `json:"firewallRuleCount,omitempty" xmlrpc:"firewallRuleCount,omitempty"` - // The currently running rule set of a firewalled VLAN. + // The access rules for the firewall device associated with this VLAN. FirewallRules []Network_Vlan_Firewall_Rule `json:"firewallRules,omitempty" xmlrpc:"firewallRules,omitempty"` - // A human readable, unique identifier for a VLAN. + // A human readable, unique identifier for this VLAN. FullyQualifiedName *string `json:"fullyQualifiedName,omitempty" xmlrpc:"fullyQualifiedName,omitempty"` - // A count of the networking components that are connected to a VLAN. + // A count of the VSI network interfaces connected to this VLAN. GuestNetworkComponentCount *uint `json:"guestNetworkComponentCount,omitempty" xmlrpc:"guestNetworkComponentCount,omitempty"` - // The networking components that are connected to a VLAN. + // The VSI network interfaces connected to this VLAN. GuestNetworkComponents []Virtual_Guest_Network_Component `json:"guestNetworkComponents,omitempty" xmlrpc:"guestNetworkComponents,omitempty"` - // All of the hardware that exists on a VLAN. Hardware is associated with a VLAN by its networking components. + // The hardware with network interfaces connected natively to this VLAN. Hardware []Hardware `json:"hardware,omitempty" xmlrpc:"hardware,omitempty"` - // A count of all of the hardware that exists on a VLAN. Hardware is associated with a VLAN by its networking components. + // A count of the hardware with network interfaces connected natively to this VLAN. HardwareCount *uint `json:"hardwareCount,omitempty" xmlrpc:"hardwareCount,omitempty"` - // no documentation yet + // A value of '1' indicates this VLAN is associated with a firewall device in a high availability configuration. HighAvailabilityFirewallFlag *bool `json:"highAvailabilityFirewallFlag,omitempty" xmlrpc:"highAvailabilityFirewallFlag,omitempty"` - // A VLAN's internal identifier. This should not be confused with the ''vlanNumber'' property, which is used in network configuration. + // The unique identifier of this VLAN. Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - // A flag indicating that a vlan can be assigned to a host that has local disk functionality. + // A value of '1' indicates this VLAN's pod has VSI local disk storage capability. LocalDiskStorageCapabilityFlag *bool `json:"localDiskStorageCapabilityFlag,omitempty" xmlrpc:"localDiskStorageCapabilityFlag,omitempty"` - // The date a VLAN was last modified. + // The time this VLAN was last modified. ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` - // The optional name for this VLAN + // The customer name for this VLAN. Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` - // The network in which this VLAN resides. + // [DEPRECATED] The network in which this VLAN resides. + // Deprecated: This function has been marked as deprecated. Network *Network `json:"network,omitempty" xmlrpc:"network,omitempty"` - // A count of the networking components that are connected to a VLAN. + // A count of the hardware network interfaces connected natively to this VLAN. NetworkComponentCount *uint `json:"networkComponentCount,omitempty" xmlrpc:"networkComponentCount,omitempty"` - // A count of the network components that are connected to this VLAN through a trunk. + // A count of the hardware network interfaces connected via trunk to this VLAN. NetworkComponentTrunkCount *uint `json:"networkComponentTrunkCount,omitempty" xmlrpc:"networkComponentTrunkCount,omitempty"` - // The network components that are connected to this VLAN through a trunk. + // The hardware network interfaces connected via trunk to this VLAN. NetworkComponentTrunks []Network_Component_Network_Vlan_Trunk `json:"networkComponentTrunks,omitempty" xmlrpc:"networkComponentTrunks,omitempty"` - // The networking components that are connected to a VLAN. + // The hardware network interfaces connected natively to this VLAN. NetworkComponents []Network_Component `json:"networkComponents,omitempty" xmlrpc:"networkComponents,omitempty"` - // The viable trunking targets of this VLAN. Viable targets include accessible components of assigned hardware in the same pod and network as this VLAN, which are not already natively attached nor trunked. + // The viable hardware network interface trunking targets of this VLAN. Viable targets include accessible components of assigned hardware in the same pod and network as this VLAN, which are not already connected, either natively or trunked. NetworkComponentsTrunkable []Network_Component `json:"networkComponentsTrunkable,omitempty" xmlrpc:"networkComponentsTrunkable,omitempty"` - // Identifier to denote whether a VLAN is used for public or private connectivity. + // The network that this VLAN is on, either PUBLIC or PRIVATE, if applicable. NetworkSpace *string `json:"networkSpace,omitempty" xmlrpc:"networkSpace,omitempty"` - // The Hardware Firewall (Dedicated) for a network vlan. + // The firewall device associated with this VLAN. NetworkVlanFirewall *Network_Vlan_Firewall `json:"networkVlanFirewall,omitempty" xmlrpc:"networkVlanFirewall,omitempty"` - // The note for this vlan. + // An internal description of this VLAN, if applicable. Note *string `json:"note,omitempty" xmlrpc:"note,omitempty"` - // The primary router that a VLAN is associated with. Every SoftLayer VLAN is connected to more than one router for greater network redundancy. + // The router device that this VLAN is associated with. PrimaryRouter *Hardware_Router `json:"primaryRouter,omitempty" xmlrpc:"primaryRouter,omitempty"` - // A VLAN's primary subnet. Each VLAN has at least one subnet, usually the subnet that is assigned to a server or new IP address block when it's purchased. + // A primary IPv4 subnet routed on this VLAN, if accessible. PrimarySubnet *Network_Subnet `json:"primarySubnet,omitempty" xmlrpc:"primarySubnet,omitempty"` - // A count of + // A count of all primary subnets routed on this VLAN. PrimarySubnetCount *uint `json:"primarySubnetCount,omitempty" xmlrpc:"primarySubnetCount,omitempty"` - // The internal identifier of the primary subnet addressed on a VLAN. + // The identifier of a primary IPv4 subnet routed on this VLAN. PrimarySubnetId *int `json:"primarySubnetId,omitempty" xmlrpc:"primarySubnetId,omitempty"` - // A VLAN's primary IPv6 subnet. Some VLAN's may not have a primary IPv6 subnet. + // The primary IPv6 subnet routed on this VLAN, if IPv6 is enabled. PrimarySubnetVersion6 *Network_Subnet `json:"primarySubnetVersion6,omitempty" xmlrpc:"primarySubnetVersion6,omitempty"` - // no documentation yet + // All primary subnets routed on this VLAN. PrimarySubnets []Network_Subnet `json:"primarySubnets,omitempty" xmlrpc:"primarySubnets,omitempty"` - // A count of the gateways this VLAN is the private VLAN of. + // A count of the gateway devices with connectivity supported by this private VLAN. PrivateNetworkGatewayCount *uint `json:"privateNetworkGatewayCount,omitempty" xmlrpc:"privateNetworkGatewayCount,omitempty"` - // The gateways this VLAN is the private VLAN of. + // The gateway devices with connectivity supported by this private VLAN. PrivateNetworkGateways []Network_Gateway `json:"privateNetworkGateways,omitempty" xmlrpc:"privateNetworkGateways,omitempty"` - // A count of + // A count of iP addresses routed on this VLAN which are actively associated with network protections. ProtectedIpAddressCount *uint `json:"protectedIpAddressCount,omitempty" xmlrpc:"protectedIpAddressCount,omitempty"` - // no documentation yet + // IP addresses routed on this VLAN which are actively associated with network protections. ProtectedIpAddresses []Network_Subnet_IpAddress `json:"protectedIpAddresses,omitempty" xmlrpc:"protectedIpAddresses,omitempty"` - // A count of the gateways this VLAN is the public VLAN of. + // A count of the gateway devices with connectivity supported by this public VLAN. PublicNetworkGatewayCount *uint `json:"publicNetworkGatewayCount,omitempty" xmlrpc:"publicNetworkGatewayCount,omitempty"` - // The gateways this VLAN is the public VLAN of. + // The gateway devices with connectivity supported by this public VLAN. PublicNetworkGateways []Network_Gateway `json:"publicNetworkGateways,omitempty" xmlrpc:"publicNetworkGateways,omitempty"` - // A flag indicating that a vlan can be assigned to a host that has SAN disk functionality. + // A value of '1' indicates this VLAN's pod has VSI SAN disk storage capability. SanStorageCapabilityFlag *bool `json:"sanStorageCapabilityFlag,omitempty" xmlrpc:"sanStorageCapabilityFlag,omitempty"` - // A count of collection of scale VLANs this VLAN applies to. - ScaleVlanCount *uint `json:"scaleVlanCount,omitempty" xmlrpc:"scaleVlanCount,omitempty"` - - // Collection of scale VLANs this VLAN applies to. + // [DEPRECATED] The scale VLANs associated to this VLAN. + // Deprecated: This function has been marked as deprecated. ScaleVlans []Scale_Network_Vlan `json:"scaleVlans,omitempty" xmlrpc:"scaleVlans,omitempty"` - // The secondary router that a VLAN is associated with. Every SoftLayer VLAN is connected to more than one router for greater network redundancy. + // [DEPRECATED] The secondary router device that this VLAN is associated with. + // Deprecated: This function has been marked as deprecated. SecondaryRouter *Hardware `json:"secondaryRouter,omitempty" xmlrpc:"secondaryRouter,omitempty"` - // A count of the subnets that exist as secondary interfaces on a VLAN + // A count of all non-primary subnets routed on this VLAN. SecondarySubnetCount *uint `json:"secondarySubnetCount,omitempty" xmlrpc:"secondarySubnetCount,omitempty"` - // The subnets that exist as secondary interfaces on a VLAN + // All non-primary subnets routed on this VLAN. SecondarySubnets []Network_Subnet `json:"secondarySubnets,omitempty" xmlrpc:"secondarySubnets,omitempty"` - // A count of all of the subnets that exist as VLAN interfaces. + // A count of all subnets routed on this VLAN. SubnetCount *uint `json:"subnetCount,omitempty" xmlrpc:"subnetCount,omitempty"` - // All of the subnets that exist as VLAN interfaces. + // All subnets routed on this VLAN. Subnets []Network_Subnet `json:"subnets,omitempty" xmlrpc:"subnets,omitempty"` - // A count of references to all tags for this VLAN. + // A count of the tags associated to this VLAN. TagReferenceCount *uint `json:"tagReferenceCount,omitempty" xmlrpc:"tagReferenceCount,omitempty"` - // References to all tags for this VLAN. + // The tags associated to this VLAN. TagReferences []Tag_Reference `json:"tagReferences,omitempty" xmlrpc:"tagReferences,omitempty"` - // The number of primary IP addresses in a VLAN. + // The number of primary IPv4 addresses routed on this VLAN. TotalPrimaryIpAddressCount *uint `json:"totalPrimaryIpAddressCount,omitempty" xmlrpc:"totalPrimaryIpAddressCount,omitempty"` - // The type of this VLAN. + // The type for this VLAN, with the following values: STANDARD, GATEWAY, INTERCONNECT Type *Network_Vlan_Type `json:"type,omitempty" xmlrpc:"type,omitempty"` - // A count of all of the Virtual Servers that are connected to a VLAN. + // A count of the VSIs with network interfaces connected to this VLAN. VirtualGuestCount *uint `json:"virtualGuestCount,omitempty" xmlrpc:"virtualGuestCount,omitempty"` - // All of the Virtual Servers that are connected to a VLAN. + // The VSIs with network interfaces connected to this VLAN. VirtualGuests []Virtual_Guest `json:"virtualGuests,omitempty" xmlrpc:"virtualGuests,omitempty"` - // A VLAN's number as recorded within the SoftLayer network. This is configured directly on SoftLayer's networking equipment and should not be confused with a VLAN's ''id'' property. + // The number of this VLAN configured on the network. VlanNumber *int `json:"vlanNumber,omitempty" xmlrpc:"vlanNumber,omitempty"` } diff --git a/datatypes/product.go b/datatypes/product.go index 3e70e48..ada3f1b 100644 --- a/datatypes/product.go +++ b/datatypes/product.go @@ -1265,9 +1265,6 @@ type Product_Package struct { // The regional locations that a package is available in. Regions []Location_Region `json:"regions,omitempty" xmlrpc:"regions,omitempty"` - // The resource group template that describes a multi-server solution. (Deprecated) - ResourceGroupTemplate *Resource_Group_Template `json:"resourceGroupTemplate,omitempty" xmlrpc:"resourceGroupTemplate,omitempty"` - // This currently contains no information but is here for future use. SubDescription *string `json:"subDescription,omitempty" xmlrpc:"subDescription,omitempty"` diff --git a/datatypes/resource.go b/datatypes/resource.go index 76bf572..51bf794 100644 --- a/datatypes/resource.go +++ b/datatypes/resource.go @@ -377,9 +377,6 @@ type Resource_Group_Template struct { // no documentation yet Members []Resource_Group_Template_Member `json:"members,omitempty" xmlrpc:"members,omitempty"` - - // no documentation yet - Package *Product_Package `json:"package,omitempty" xmlrpc:"package,omitempty"` } // no documentation yet diff --git a/datatypes/scale.go b/datatypes/scale.go index 4ecc2a0..eb8c298 100644 --- a/datatypes/scale.go +++ b/datatypes/scale.go @@ -23,537 +23,48 @@ package datatypes // no documentation yet type Scale_Asset struct { Entity - - // When this asset was created. - CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` - - // When set and true any edit that happens on this object, be it calling edit on this directly or setting as a child while editing a parent object, will end up being a deletion. - DeleteFlag *bool `json:"deleteFlag,omitempty" xmlrpc:"deleteFlag,omitempty"` - - // An asset's internal identifier. - Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - - // The group this asset belongs to. - ScaleGroup *Scale_Group `json:"scaleGroup,omitempty" xmlrpc:"scaleGroup,omitempty"` - - // The identifier of the group this asset belongs to. - ScaleGroupId *int `json:"scaleGroupId,omitempty" xmlrpc:"scaleGroupId,omitempty"` } // no documentation yet type Scale_Asset_Hardware struct { Scale_Asset - - // The hardware for this asset. - Hardware *Hardware `json:"hardware,omitempty" xmlrpc:"hardware,omitempty"` - - // The identifier of the hardware for this asset. - HardwareId *int `json:"hardwareId,omitempty" xmlrpc:"hardwareId,omitempty"` } // no documentation yet type Scale_Asset_Virtual_Guest struct { Scale_Asset - - // The guest for this asset. - VirtualGuest *Virtual_Guest `json:"virtualGuest,omitempty" xmlrpc:"virtualGuest,omitempty"` - - // The identifier of the guest for this asset. - VirtualGuestId *int `json:"virtualGuestId,omitempty" xmlrpc:"virtualGuestId,omitempty"` } // no documentation yet type Scale_Group struct { Entity - // The account for this scaling group. - Account *Account `json:"account,omitempty" xmlrpc:"account,omitempty"` - // The identifier of the account assigned to this group. AccountId *int `json:"accountId,omitempty" xmlrpc:"accountId,omitempty"` - - // If this is true, this group will scale down members in a way to preserve the balance across VLANs. If there is ambiguity about which member to use to maintain balance, the terminationPolicy is used to resolve it. This is false by default and can only be set to true if there are multiple VLANs that are being balanced across. - BalancedTerminationFlag *bool `json:"balancedTerminationFlag,omitempty" xmlrpc:"balancedTerminationFlag,omitempty"` - - // The number of seconds this group will wait after lastActionDate before performing another action. Be advised, this can be overridden per policy. While strongly discouraged, a value of 0 effectively disables cooldown. - Cooldown *int `json:"cooldown,omitempty" xmlrpc:"cooldown,omitempty"` - - // When this group was created. - CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` - - // This value is only available on the template for creating and editing a group. It will be null when retrieved. When this value is provided on create or edit, guests will be scaled up or down to meet this number. This number must be in the range provided by minimumMemberCount and maximumMemberCount. This value can only be present during create or edit when this group is active. Note, guests that are created as a result of this value can possibly be removed after cooldown by a policy. - DesiredMemberCount *int `json:"desiredMemberCount,omitempty" xmlrpc:"desiredMemberCount,omitempty"` - - // A group's internal identifier. - Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - - // The date of the last action on this group or its create date - LastActionDate *Time `json:"lastActionDate,omitempty" xmlrpc:"lastActionDate,omitempty"` - - // A count of collection of load balancers for this auto scale group. - LoadBalancerCount *uint `json:"loadBalancerCount,omitempty" xmlrpc:"loadBalancerCount,omitempty"` - - // Collection of load balancers for this auto scale group. - LoadBalancers []Scale_LoadBalancer `json:"loadBalancers,omitempty" xmlrpc:"loadBalancers,omitempty"` - - // A count of collection of log entries for this group. - LogCount *uint `json:"logCount,omitempty" xmlrpc:"logCount,omitempty"` - - // Collection of log entries for this group. - Logs []Scale_Group_Log `json:"logs,omitempty" xmlrpc:"logs,omitempty"` - - // The greatest number of virtual guest members that are allowed on this group. Any attempts to add a guest member will fail if it will result in the total guest member count of this group to be above this number. If this number is edited and is less than the current guest member count, guests will be removed to at least be no greater than this number. - MaximumMemberCount *int `json:"maximumMemberCount,omitempty" xmlrpc:"maximumMemberCount,omitempty"` - - // The fewest number of virtual guest members that are allowed on this group. Any attempts to remove a guest member will fail if it will result in the total guest member count of this group to be below this number. If this number is edited and is larger than the current guest member count, guests will be added to at least reach this number. - MinimumMemberCount *int `json:"minimumMemberCount,omitempty" xmlrpc:"minimumMemberCount,omitempty"` - - // When this group was last modified. - ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` - - // The name of this scale group. It must be unique on the account. - Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` - - // A count of collection of VLANs for this auto scale group. VLANs are optional. This can contain a public or private VLAN or both. When a single VLAN for a public/private type is given it can be a non-purchased VLAN only if the minimumMemberCount on the group is >= 1. This can also contain any number of public/private purchased VLANs and members are staggered across them when scaled up. - NetworkVlanCount *uint `json:"networkVlanCount,omitempty" xmlrpc:"networkVlanCount,omitempty"` - - // Collection of VLANs for this auto scale group. VLANs are optional. This can contain a public or private VLAN or both. When a single VLAN for a public/private type is given it can be a non-purchased VLAN only if the minimumMemberCount on the group is >= 1. This can also contain any number of public/private purchased VLANs and members are staggered across them when scaled up. - NetworkVlans []Scale_Network_Vlan `json:"networkVlans,omitempty" xmlrpc:"networkVlans,omitempty"` - - // Collection of policies for this group. This can be empty. - Policies []Scale_Policy `json:"policies,omitempty" xmlrpc:"policies,omitempty"` - - // A count of collection of policies for this group. This can be empty. - PolicyCount *uint `json:"policyCount,omitempty" xmlrpc:"policyCount,omitempty"` - - // The regional group for this scale group. - RegionalGroup *Location_Group_Regional `json:"regionalGroup,omitempty" xmlrpc:"regionalGroup,omitempty"` - - // The identifier of the regional group this scaling group is assigned to. - RegionalGroupId *int `json:"regionalGroupId,omitempty" xmlrpc:"regionalGroupId,omitempty"` - - // The status for this scale group. - Status *Scale_Group_Status `json:"status,omitempty" xmlrpc:"status,omitempty"` - - // If true, this group is suspended. - SuspendedFlag *bool `json:"suspendedFlag,omitempty" xmlrpc:"suspendedFlag,omitempty"` - - // The termination policy for this scaling group. - TerminationPolicy *Scale_Termination_Policy `json:"terminationPolicy,omitempty" xmlrpc:"terminationPolicy,omitempty"` - - // The termination policy for the group. This determines which member to choose to delete when scaling downwards. - TerminationPolicyId *int `json:"terminationPolicyId,omitempty" xmlrpc:"terminationPolicyId,omitempty"` - - // A count of collection of guests that have been pinned to this group. Guest assets are only used for certain trigger checks such as resource watches. They do not count towards the auto scaling guest counts of this group in anyway and are never automatically added or removed. - VirtualGuestAssetCount *uint `json:"virtualGuestAssetCount,omitempty" xmlrpc:"virtualGuestAssetCount,omitempty"` - - // Collection of guests that have been pinned to this group. Guest assets are only used for certain trigger checks such as resource watches. They do not count towards the auto scaling guest counts of this group in anyway and are never automatically added or removed. - VirtualGuestAssets []Scale_Asset_Virtual_Guest `json:"virtualGuestAssets,omitempty" xmlrpc:"virtualGuestAssets,omitempty"` - - // A count of collection of guests that have been scaled with the group. When this group is active, the count of guests here is guaranteed to be between minimumMemberCount and maximumMemberCount inclusively. - VirtualGuestMemberCount *uint `json:"virtualGuestMemberCount,omitempty" xmlrpc:"virtualGuestMemberCount,omitempty"` - - // This is the template to create guest members with. This is the same template accepted by the createObject call on SoftLayer_Virtual_Guest with some caveats. The hostname provided will have an arbitrary value appended to it for each guest created. Also, hourlyBillingFlag cannot be false, and if the datacenter is provided it must be in the region of this group. Finally, VLANs cannot be provided for the template, it will use VLANs provided to this group instead. - // - // Note, if this template is edited on an existing group the previous template values are not kept and are not considered during termination. This means a group's guest members could effectively be a hybrid of multiple templates because this value was changed after some guest members were created but before others were created. - VirtualGuestMemberTemplate *Virtual_Guest `json:"virtualGuestMemberTemplate,omitempty" xmlrpc:"virtualGuestMemberTemplate,omitempty"` - - // Collection of guests that have been scaled with the group. When this group is active, the count of guests here is guaranteed to be between minimumMemberCount and maximumMemberCount inclusively. - VirtualGuestMembers []Scale_Member_Virtual_Guest `json:"virtualGuestMembers,omitempty" xmlrpc:"virtualGuestMembers,omitempty"` -} - -// no documentation yet -type Scale_Group_Log struct { - Entity - - // When this event occurred. - CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` - - // A textual description of what happened during this action. - Description *string `json:"description,omitempty" xmlrpc:"description,omitempty"` - - // This log's internal identifier. - Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - - // The group this log refers to. - ScaleGroup *Scale_Group `json:"scaleGroup,omitempty" xmlrpc:"scaleGroup,omitempty"` - - // The identifier of the group this log refers to. - ScaleGroupId *int `json:"scaleGroupId,omitempty" xmlrpc:"scaleGroupId,omitempty"` -} - -// no documentation yet -type Scale_Group_Status struct { - Entity - - // A status's internal identifier. - Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - - // A status's programmatic name. - KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` - - // A status's human-friendly name. - Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` } // no documentation yet type Scale_LoadBalancer struct { Entity - // The percentage of connections allocated to this virtual server. - AllocationPercent *int `json:"allocationPercent,omitempty" xmlrpc:"allocationPercent,omitempty"` - - // When this load balancer configuration was created. - CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` - - // When set and true any edit that happens on this object, be it calling edit on this directly or setting as a child while editing a parent object, will end up being a deletion. - DeleteFlag *bool `json:"deleteFlag,omitempty" xmlrpc:"deleteFlag,omitempty"` - - // The health check for this configuration. - HealthCheck *Network_Application_Delivery_Controller_LoadBalancer_Health_Check `json:"healthCheck,omitempty" xmlrpc:"healthCheck,omitempty"` - // The identifier for the health check of this load balancer configuration HealthCheckId *int `json:"healthCheckId,omitempty" xmlrpc:"healthCheckId,omitempty"` - - // The load balancer configuration's internal identifier. - Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - - // When this load balancer configuration was last modified. - ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` - - // The port for this load balancer configuration. - Port *int `json:"port,omitempty" xmlrpc:"port,omitempty"` - - // The routing method. - RoutingMethod *Network_Application_Delivery_Controller_LoadBalancer_Routing_Method `json:"routingMethod,omitempty" xmlrpc:"routingMethod,omitempty"` - - // The routing type. - RoutingType *Network_Application_Delivery_Controller_LoadBalancer_Routing_Type `json:"routingType,omitempty" xmlrpc:"routingType,omitempty"` - - // The group this load balancer configuration is for. - ScaleGroup *Scale_Group `json:"scaleGroup,omitempty" xmlrpc:"scaleGroup,omitempty"` - - // The identifier of the group this load balancer configuration applies to. - ScaleGroupId *int `json:"scaleGroupId,omitempty" xmlrpc:"scaleGroupId,omitempty"` - - // The ID of the virtual IP address. - VirtualIpAddressId *int `json:"virtualIpAddressId,omitempty" xmlrpc:"virtualIpAddressId,omitempty"` - - // The virtual server for this configuration. - VirtualServer *Network_Application_Delivery_Controller_LoadBalancer_VirtualServer `json:"virtualServer,omitempty" xmlrpc:"virtualServer,omitempty"` - - // The identifier of the virtual server this load balancer configuration uses. - VirtualServerId *int `json:"virtualServerId,omitempty" xmlrpc:"virtualServerId,omitempty"` - - // The port on the virtual server. - VirtualServerPort *int `json:"virtualServerPort,omitempty" xmlrpc:"virtualServerPort,omitempty"` } // no documentation yet type Scale_Member struct { Entity - - // When this member was created. - CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` - - // A member's internal identifier. - Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - - // The group this member belongs to. - ScaleGroup *Scale_Group `json:"scaleGroup,omitempty" xmlrpc:"scaleGroup,omitempty"` - - // The identifier of the group this member belongs to. - ScaleGroupId *int `json:"scaleGroupId,omitempty" xmlrpc:"scaleGroupId,omitempty"` } // no documentation yet type Scale_Member_Virtual_Guest struct { Scale_Member - - // The guest for this member. - VirtualGuest *Virtual_Guest `json:"virtualGuest,omitempty" xmlrpc:"virtualGuest,omitempty"` - - // The identifier of the guest for this member. - VirtualGuestId *int `json:"virtualGuestId,omitempty" xmlrpc:"virtualGuestId,omitempty"` } // no documentation yet type Scale_Network_Vlan struct { Entity - // When this network VLAN reference was created. - CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` - - // When set and true any edit that happens on this object, be it calling edit on this directly or setting as a child while editing a parent object, will end up being a deletion. - DeleteFlag *bool `json:"deleteFlag,omitempty" xmlrpc:"deleteFlag,omitempty"` - - // The network VLAN reference's internal identifier. - Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - - // The network VLAN to scale with. - NetworkVlan *Network_Vlan `json:"networkVlan,omitempty" xmlrpc:"networkVlan,omitempty"` - // The identifier for the VLAN to scale with. NetworkVlanId *int `json:"networkVlanId,omitempty" xmlrpc:"networkVlanId,omitempty"` - - // The group this network VLAN is for. - ScaleGroup *Scale_Group `json:"scaleGroup,omitempty" xmlrpc:"scaleGroup,omitempty"` - - // The identifier of the group this network VLAN reference applies to. - ScaleGroupId *int `json:"scaleGroupId,omitempty" xmlrpc:"scaleGroupId,omitempty"` -} - -// no documentation yet -type Scale_Policy struct { - Entity - - // A count of the actions to perform upon any trigger hit. Currently this must be a single value. - ActionCount *uint `json:"actionCount,omitempty" xmlrpc:"actionCount,omitempty"` - - // The actions to perform upon any trigger hit. Currently this must be a single value. - Actions []Scale_Policy_Action `json:"actions,omitempty" xmlrpc:"actions,omitempty"` - - // The number of seconds this policy will wait after lastActionDate on group before performing another action. If not present, the group's cooldown value is used. - Cooldown *int `json:"cooldown,omitempty" xmlrpc:"cooldown,omitempty"` - - // When this policy was created. - CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` - - // When set and true any edit that happens on this object, be it calling edit on this directly or setting as a child while editing a parent object, will end up being a deletion. - DeleteFlag *bool `json:"deleteFlag,omitempty" xmlrpc:"deleteFlag,omitempty"` - - // A policy's internal identifier. - Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - - // When this policy was last modified. - ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` - - // The name of this policy. It must be unique within the group. - Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` - - // A count of the one-time triggers to check for this group. - OneTimeTriggerCount *uint `json:"oneTimeTriggerCount,omitempty" xmlrpc:"oneTimeTriggerCount,omitempty"` - - // The one-time triggers to check for this group. - OneTimeTriggers []Scale_Policy_Trigger_OneTime `json:"oneTimeTriggers,omitempty" xmlrpc:"oneTimeTriggers,omitempty"` - - // A count of the repeating triggers to check for this group. - RepeatingTriggerCount *uint `json:"repeatingTriggerCount,omitempty" xmlrpc:"repeatingTriggerCount,omitempty"` - - // The repeating triggers to check for this group. - RepeatingTriggers []Scale_Policy_Trigger_Repeating `json:"repeatingTriggers,omitempty" xmlrpc:"repeatingTriggers,omitempty"` - - // A count of the resource-use triggers to check for this group. - ResourceUseTriggerCount *uint `json:"resourceUseTriggerCount,omitempty" xmlrpc:"resourceUseTriggerCount,omitempty"` - - // The resource-use triggers to check for this group. - ResourceUseTriggers []Scale_Policy_Trigger_ResourceUse `json:"resourceUseTriggers,omitempty" xmlrpc:"resourceUseTriggers,omitempty"` - - // A count of the scale actions to perform upon any trigger hit. Currently this must be a single value. - ScaleActionCount *uint `json:"scaleActionCount,omitempty" xmlrpc:"scaleActionCount,omitempty"` - - // The scale actions to perform upon any trigger hit. Currently this must be a single value. - ScaleActions []Scale_Policy_Action_Scale `json:"scaleActions,omitempty" xmlrpc:"scaleActions,omitempty"` - - // The group this policy is on. - ScaleGroup *Scale_Group `json:"scaleGroup,omitempty" xmlrpc:"scaleGroup,omitempty"` - - // The identifier of the group this member belongs to. - ScaleGroupId *int `json:"scaleGroupId,omitempty" xmlrpc:"scaleGroupId,omitempty"` - - // A count of the triggers to check for this group. - TriggerCount *uint `json:"triggerCount,omitempty" xmlrpc:"triggerCount,omitempty"` - - // The triggers to check for this group. - Triggers []Scale_Policy_Trigger `json:"triggers,omitempty" xmlrpc:"triggers,omitempty"` -} - -// no documentation yet -type Scale_Policy_Action struct { - Entity - - // When this action was created. - CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` - - // When set and true any edit that happens on this object, be it calling edit on this directly or setting as a child while editing a parent object, will end up being a deletion. - DeleteFlag *bool `json:"deleteFlag,omitempty" xmlrpc:"deleteFlag,omitempty"` - - // An action's internal identifier. - Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - - // Then this action was last modified. - ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` - - // The policy this action is on. - ScalePolicy *Scale_Policy `json:"scalePolicy,omitempty" xmlrpc:"scalePolicy,omitempty"` - - // The policy this action is on. - ScalePolicyId *int `json:"scalePolicyId,omitempty" xmlrpc:"scalePolicyId,omitempty"` - - // The type of action. - Type *Scale_Policy_Action_Type `json:"type,omitempty" xmlrpc:"type,omitempty"` - - // The identifier of this action's type. - TypeId *int `json:"typeId,omitempty" xmlrpc:"typeId,omitempty"` -} - -// no documentation yet -type Scale_Policy_Action_Scale struct { - Scale_Policy_Action - - // The number to scale by. This number has different meanings based on type. - Amount *int `json:"amount,omitempty" xmlrpc:"amount,omitempty"` - - // The type of scale to perform. Possible values: - // - // - // * ABSOLUTE - Force the group to be set at a specific number of group members. This may include scaling up or - // down or not at all. If the amount is outside of the min/max range of the group, an error occurs. - // * PERCENT - Scale the group up or down based on the positive or negative percentage given in amount. The - // number is a percent of the current group member count. Any extra percent after the decimal point is always ignored. If the resulting amount is zero, -1 or 1 is used depending upon whether the percentage was negative or positive respectively. - // * RELATIVE - Scale the group up or down by the positive or negative value given in amount. - ScaleType *string `json:"scaleType,omitempty" xmlrpc:"scaleType,omitempty"` -} - -// no documentation yet -type Scale_Policy_Action_Type struct { - Entity - - // This type's internal identifier. - Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - - // An action type's programmatic name. - KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` - - // An action type's human-friendly name. - Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` -} - -// no documentation yet -type Scale_Policy_Trigger struct { - Entity - - // When this trigger was created. - CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` - - // When set and true any edit that happens on this object, be it calling edit on this directly or setting as a child while editing a parent object, will end up being a deletion. - DeleteFlag *bool `json:"deleteFlag,omitempty" xmlrpc:"deleteFlag,omitempty"` - - // A trigger's internal identifier. - Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - - // When this trigger was last modified. - ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` - - // The policy this trigger is on. - ScalePolicy *Scale_Policy `json:"scalePolicy,omitempty" xmlrpc:"scalePolicy,omitempty"` - - // The policy this trigger is on. - ScalePolicyId *int `json:"scalePolicyId,omitempty" xmlrpc:"scalePolicyId,omitempty"` - - // The type of trigger. - Type *Scale_Policy_Trigger_Type `json:"type,omitempty" xmlrpc:"type,omitempty"` - - // The type of trigger this is. - TypeId *int `json:"typeId,omitempty" xmlrpc:"typeId,omitempty"` -} - -// no documentation yet -type Scale_Policy_Trigger_OneTime struct { - Scale_Policy_Trigger - - // The date to execute the policy. - Date *Time `json:"date,omitempty" xmlrpc:"date,omitempty"` -} - -// no documentation yet -type Scale_Policy_Trigger_Repeating struct { - Scale_Policy_Trigger - - // The cron-formatted schedule. This is run in the UTC timezone. - Schedule *string `json:"schedule,omitempty" xmlrpc:"schedule,omitempty"` -} - -// no documentation yet -type Scale_Policy_Trigger_ResourceUse struct { - Scale_Policy_Trigger - - // A count of the resource watches for this trigger. - WatchCount *uint `json:"watchCount,omitempty" xmlrpc:"watchCount,omitempty"` - - // The resource watches for this trigger. - Watches []Scale_Policy_Trigger_ResourceUse_Watch `json:"watches,omitempty" xmlrpc:"watches,omitempty"` -} - -// no documentation yet -type Scale_Policy_Trigger_ResourceUse_Watch struct { - Entity - - // The algorithm to use when aggregating and comparing. Currently, the only value that is accepted is EWMA (Exponential Weighted Moving Average). EWMA is the default value if no value is given. - Algorithm *string `json:"algorithm,omitempty" xmlrpc:"algorithm,omitempty"` - - // When this watch was created. - CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` - - // When set and true any edit that happens on this object, be it calling edit on this directly or setting as a child while editing a parent object, will end up being a deletion. - DeleteFlag *bool `json:"deleteFlag,omitempty" xmlrpc:"deleteFlag,omitempty"` - - // A watch's internal identifier. - Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - - // The metric to watch. Possible values: - // - // - // * host.cpu.percent - On a scale of 0 to 100, the percent CPU a guest is using. - // * host.network.backend.in and host.network.frontend.in - The network bytes-per-second incoming on the interface - // of either the frontend or backend network. - // * host.network.backend.out and host.network.frontend.out - The network bytes-per-second incoming on the interface - // of either the frontend or backend network. - Metric *string `json:"metric,omitempty" xmlrpc:"metric,omitempty"` - - // When this watch was last modified. - ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` - - // The operator to use for comparison. The only two valid values are ">" and "<". - Operator *string `json:"operator,omitempty" xmlrpc:"operator,omitempty"` - - // The number of seconds the values are aggregated for when compared to value. If values are not retrieved steadily and consecutively for the length of this period, nothing is compared. - Period *int `json:"period,omitempty" xmlrpc:"period,omitempty"` - - // The trigger this watch is on. - ScalePolicyTrigger *Scale_Policy_Trigger_ResourceUse `json:"scalePolicyTrigger,omitempty" xmlrpc:"scalePolicyTrigger,omitempty"` - - // The trigger this watch is on. - ScalePolicyTriggerId *int `json:"scalePolicyTriggerId,omitempty" xmlrpc:"scalePolicyTriggerId,omitempty"` - - // The value to compare against. Although the value is a string, validation will be done on the value for restrictions (such as numeric-only) based on the metric. - Value *string `json:"value,omitempty" xmlrpc:"value,omitempty"` -} - -// no documentation yet -type Scale_Policy_Trigger_Type struct { - Entity - - // A trigger type's internal identifier. - Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - - // A trigger type's programmatic name. - KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` - - // A trigger type's human-friendly name. - Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` -} - -// no documentation yet -type Scale_Termination_Policy struct { - Entity - - // A termination policy's internal identifier. - Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` - - // A termination policy's programmatic name. - KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` - - // A termination policy's human-friendly name. - Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` } diff --git a/datatypes/user.go b/datatypes/user.go index 2729e2b..ff6d921 100644 --- a/datatypes/user.go +++ b/datatypes/user.go @@ -333,6 +333,9 @@ type User_Customer struct { // The expiration date for the user's password PasswordExpireDate *Time `json:"passwordExpireDate,omitempty" xmlrpc:"passwordExpireDate,omitempty"` + // no documentation yet + PermissionCheckLikeMasterUserFlag *int `json:"permissionCheckLikeMasterUserFlag,omitempty" xmlrpc:"permissionCheckLikeMasterUserFlag,omitempty"` + // A count of a portal user's permissions. These permissions control that user's access to functions within the SoftLayer customer portal and API. PermissionCount *uint `json:"permissionCount,omitempty" xmlrpc:"permissionCount,omitempty"` @@ -574,19 +577,6 @@ type User_Customer_External_Binding_Attribute struct { User_External_Binding_Attribute } -// The SoftLayer_User_Customer_External_Binding_Phone data type contains information about an external binding that uses a phone call, SMS or mobile app for 2 form factor authentication. The external binding information is used when a SoftLayer customer logs into the SoftLayer customer portal or VPN to authenticate them against a trusted 3rd party, in this case using a mobile phone, mobile phone application or land-line phone. -// -// SoftLayer users with an active external binding will be prohibited from using the API for security reasons. -type User_Customer_External_Binding_Phone struct { - User_Customer_External_Binding - - // The current external binding status. It can be "ACTIVE" or "BLOCKED". - BindingStatus *string `json:"bindingStatus,omitempty" xmlrpc:"bindingStatus,omitempty"` - - // no documentation yet - PinLength *string `json:"pinLength,omitempty" xmlrpc:"pinLength,omitempty"` -} - // 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. // // The information provided by this external binding data type includes: @@ -1144,15 +1134,6 @@ type User_Employee struct { // no documentation yet LayoutProfiles []Layout_Profile `json:"layoutProfiles,omitempty" xmlrpc:"layoutProfiles,omitempty"` - // no documentation yet - MetricTrackingObject *Metric_Tracking_Object `json:"metricTrackingObject,omitempty" xmlrpc:"metricTrackingObject,omitempty"` - - // A count of - SecurityLevelCount *uint `json:"securityLevelCount,omitempty" xmlrpc:"securityLevelCount,omitempty"` - - // no documentation yet - SecurityLevels []Security_Level `json:"securityLevels,omitempty" xmlrpc:"securityLevels,omitempty"` - // no documentation yet TicketActivities []Ticket_Activity `json:"ticketActivities,omitempty" xmlrpc:"ticketActivities,omitempty"` diff --git a/datatypes/virtual.go b/datatypes/virtual.go index eb4d8df..dddd765 100644 --- a/datatypes/virtual.go +++ b/datatypes/virtual.go @@ -707,16 +707,19 @@ type Virtual_Guest struct { // The reserved capacity group instance the guest is associated with. ReservedCapacityGroupInstance *Virtual_ReservedCapacityGroup_Instance `json:"reservedCapacityGroupInstance,omitempty" xmlrpc:"reservedCapacityGroupInstance,omitempty"` - // A count of collection of scale assets this guest corresponds to. + // A count of [DEPRECATED] Collection of scale assets this guest corresponds to. ScaleAssetCount *uint `json:"scaleAssetCount,omitempty" xmlrpc:"scaleAssetCount,omitempty"` - // Collection of scale assets this guest corresponds to. + // [DEPRECATED] Collection of scale assets this guest corresponds to. + // Deprecated: This function has been marked as deprecated. ScaleAssets []Scale_Asset `json:"scaleAssets,omitempty" xmlrpc:"scaleAssets,omitempty"` - // The scale member for this guest, if applicable. + // [DEPRECATED] The scale member for this guest, if applicable. + // Deprecated: This function has been marked as deprecated. ScaleMember *Scale_Member_Virtual_Guest `json:"scaleMember,omitempty" xmlrpc:"scaleMember,omitempty"` - // Whether or not this guest is a member of a scale group and was automatically created as part of a scale group action. + // [DEPRECATED] Whether or not this guest is a member of a scale group and was automatically created as part of a scale group action. + // Deprecated: This function has been marked as deprecated. ScaledFlag *bool `json:"scaledFlag,omitempty" xmlrpc:"scaledFlag,omitempty"` // A count of a guest's vulnerability scan requests. @@ -1357,12 +1360,6 @@ type Virtual_Host struct { // A virtual host's associated account id AccountId *int `json:"accountId,omitempty" xmlrpc:"accountId,omitempty"` - // Boolean flag indicating whether this virtualization platform gets billed per guest rather than at a fixed rate. - BilledPerGuestFlag *bool `json:"billedPerGuestFlag,omitempty" xmlrpc:"billedPerGuestFlag,omitempty"` - - // Boolean flag indicating whether this virtualization platform gets billed per memory usage rather than at a fixed rate. - BilledPerMemoryUsageFlag *bool `json:"billedPerMemoryUsageFlag,omitempty" xmlrpc:"billedPerMemoryUsageFlag,omitempty"` - // The date a virtual host was created. CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` @@ -1372,12 +1369,6 @@ type Virtual_Host struct { // The enabled flag specifies whether a virtual host can run guests. EnabledFlag *int `json:"enabledFlag,omitempty" xmlrpc:"enabledFlag,omitempty"` - // A count of the guests associated with a virtual host. - GuestCount *uint `json:"guestCount,omitempty" xmlrpc:"guestCount,omitempty"` - - // The guests associated with a virtual host. - Guests []Virtual_Guest `json:"guests,omitempty" xmlrpc:"guests,omitempty"` - // The hardware record which a virtual host resides on. Hardware *Hardware_Server `json:"hardware,omitempty" xmlrpc:"hardware,omitempty"` diff --git a/services/account.go b/services/account.go index af9cf4d..87cf3cb 100644 --- a/services/account.go +++ b/services/account.go @@ -554,7 +554,7 @@ func (r Account) GetBlockDeviceTemplateGroups() (resp []datatypes.Virtual_Guest_ return } -// Retrieve The Bluemix account link associated with this SoftLayer account, if one exists. +// Retrieve The Platform account link associated with this SoftLayer account, if one exists. func (r Account) GetBluemixAccountLink() (resp datatypes.Account_Link_Bluemix, err error) { err = r.Session.DoRequest("SoftLayer_Account", "getBluemixAccountLink", nil, &r.Options, &resp) return @@ -1040,12 +1040,30 @@ func (r Account) GetInProgressExternalAccountSetup() (resp datatypes.Account_Ext return } +// Retrieve Account attribute flag indicating internal cci host account. +func (r Account) GetInternalCciHostAccountFlag() (resp bool, err error) { + err = r.Session.DoRequest("SoftLayer_Account", "getInternalCciHostAccountFlag", nil, &r.Options, &resp) + return +} + +// Retrieve Account attribute flag indicating account creates internal image templates. +func (r Account) GetInternalImageTemplateCreationFlag() (resp bool, err error) { + err = r.Session.DoRequest("SoftLayer_Account", "getInternalImageTemplateCreationFlag", nil, &r.Options, &resp) + return +} + // Retrieve func (r Account) GetInternalNotes() (resp []datatypes.Account_Note, err error) { err = r.Session.DoRequest("SoftLayer_Account", "getInternalNotes", nil, &r.Options, &resp) return } +// Retrieve Account attribute flag indicating restricted account. +func (r Account) GetInternalRestrictionFlag() (resp bool, err error) { + err = r.Session.DoRequest("SoftLayer_Account", "getInternalRestrictionFlag", nil, &r.Options, &resp) + return +} + // Retrieve An account's associated billing invoices. func (r Account) GetInvoices() (resp []datatypes.Billing_Invoice, err error) { err = r.Session.DoRequest("SoftLayer_Account", "getInvoices", nil, &r.Options, &resp) @@ -1737,6 +1755,12 @@ func (r Account) GetReferralPartnerCommissionPending() (resp []datatypes.Contain return } +// Retrieve Flag indicating if the account was referred. +func (r Account) GetReferredAccountFlag() (resp bool, err error) { + err = r.Session.DoRequest("SoftLayer_Account", "getReferredAccountFlag", nil, &r.Options, &resp) + return +} + // Retrieve If this is a account is a referral partner, the accounts this referral partner has referred func (r Account) GetReferredAccounts() (resp []datatypes.Account, err error) { err = r.Session.DoRequest("SoftLayer_Account", "getReferredAccounts", nil, &r.Options, &resp) @@ -1779,12 +1803,6 @@ func (r Account) GetReservedCapacityGroups() (resp []datatypes.Virtual_ReservedC return } -// Retrieve An account's associated top-level resource groups. -func (r Account) GetResourceGroups() (resp []datatypes.Resource_Group, err error) { - err = r.Session.DoRequest("SoftLayer_Account", "getResourceGroups", nil, &r.Options, &resp) - return -} - // Retrieve All Routers that an accounts VLANs reside on func (r Account) GetRouters() (resp []datatypes.Hardware, err error) { err = r.Session.DoRequest("SoftLayer_Account", "getRouters", nil, &r.Options, &resp) @@ -1803,7 +1821,7 @@ func (r Account) GetSamlAuthentication() (resp datatypes.Account_Authentication_ return } -// Retrieve All scale groups on this account. +// Retrieve [DEPRECATED] All scale groups on this account. func (r Account) GetScaleGroups() (resp []datatypes.Scale_Group, err error) { err = r.Session.DoRequest("SoftLayer_Account", "getScaleGroups", nil, &r.Options, &resp) return @@ -1932,6 +1950,12 @@ func (r Account) GetTechIncubatorProgramInfo(forNextBillCycle *bool) (resp datat return } +// Retrieve Account attribute flag indicating test account. +func (r Account) GetTestAccountAttributeFlag() (resp bool, err error) { + err = r.Session.DoRequest("SoftLayer_Account", "getTestAccountAttributeFlag", nil, &r.Options, &resp) + return +} + // Returns multiple [[SoftLayer_Container_Policy_Acceptance]] that represent the acceptance status of the applicable third-party policies for this account. func (r Account) GetThirdPartyPoliciesAcceptanceStatus() (resp []datatypes.Container_Policy_Acceptance, err error) { err = r.Session.DoRequest("SoftLayer_Account", "getThirdPartyPoliciesAcceptanceStatus", nil, &r.Options, &resp) @@ -2133,6 +2157,15 @@ func (r Account) HourlyServerLimit() (resp int, err error) { return } +// Initiates Payer Authentication and provides data that is required for payer authentication enrollment and device data collection. +func (r Account) InitiatePayerAuthentication(setupInformation *datatypes.Billing_Payment_Card_PayerAuthentication_Setup_Information) (resp datatypes.Billing_Payment_Card_PayerAuthentication_Setup, err error) { + params := []interface{}{ + setupInformation, + } + err = r.Session.DoRequest("SoftLayer_Account", "initiatePayerAuthentication", params, &r.Options, &resp) + return +} + // no documentation yet func (r Account) IsActiveVmwareCustomer() (resp bool, err error) { err = r.Session.DoRequest("SoftLayer_Account", "isActiveVmwareCustomer", nil, &r.Options, &resp) @@ -2256,7 +2289,7 @@ func (r Account) UpdateVpnUsersForResource(objectId *int, objectType *string) (r return } -// This method will validate the following account fields. Included are the allowed characters for each field.
Company Name (required): alphabet, numbers, space, period, dash, octothorpe, forward slash, comma, colon, at sign, ampersand, underscore, apostrophe, parenthesis, exclamation point. Maximum length: 100 characters. (Note: may not contain an email address)
First Name (required): alphabet, space, period, dash, comma, apostrophe. Maximum length: 30 characters.
Last Name (required): alphabet, space, period, dash, comma, apostrophe. Maximum length: 30 characters.
Email (required): Validates e-mail addresses against the syntax in RFC 822.
Address 1 (required): alphabet, numbers, space, period, dash, octothorpe, forward slash, comma, colon, at sign, ampersand, underscore, apostrophe, parentheses. Maximum length: 100 characters. (Note: may not contain an email address)
Address 2: alphabet, numbers, space, period, dash, octothorpe, forward slash, comma, colon, at sign, ampersand, underscore, apostrophe, parentheses. Maximum length: 100 characters. (Note: may not contain an email address)
City (required): alphabet, numbers, space, period, dash, apostrophe, forward slash, comma, parenthesis. Maximum length: 100 characters.
State (required): Required if country is US, Brazil, Canada or India. Must be valid Alpha-2 ISO 3166-1 state code for that country.
Postal Code (required): alphabet, numbers, dash, space. Maximum length: 50 characters.
Country (required): alphabet, numbers. Must be valid Alpha-2 ISO 3166-1 country code.
Office Phone (required): alphabet, numbers, space, period, dash, parenthesis, plus sign. Maximum length: 100 characters.
Alternate Phone: alphabet, numbers, space, period, dash, parenthesis, plus sign. Maximum length: 100 characters.
Fax Phone: alphabet, numbers, space, period, dash, parenthesis, plus sign. Maximum length: 20 characters.
+// This method will validate the following account fields. Included are the allowed characters for each field.
Company Name (required): alphabet, numbers, space, period, dash, octothorpe, forward slash, comma, colon, at sign, ampersand, underscore, apostrophe, parenthesis, exclamation point. Maximum length: 100 characters. (Note: may not contain an email address)
First Name (required): alphabet, space, period, dash, comma, apostrophe. Maximum length: 30 characters.
Last Name (required): alphabet, space, period, dash, comma, apostrophe. Maximum length: 30 characters.
Email (required): Validates e-mail addresses against the syntax in RFC 822.
Address 1 (required): alphabet, numbers, space, period, dash, octothorpe, forward slash, comma, colon, at sign, ampersand, underscore, apostrophe, parentheses. Maximum length: 100 characters. (Note: may not contain an email address)
Address 2: alphabet, numbers, space, period, dash, octothorpe, forward slash, comma, colon, at sign, ampersand, underscore, apostrophe, parentheses. Maximum length: 100 characters. (Note: may not contain an email address)
City (required): alphabet, numbers, space, period, dash, apostrophe, forward slash, comma, parenthesis. Maximum length: 100 characters.
State (required if country is US, Brazil, Canada or India): Must be valid Alpha-2 ISO 3166-1 state code for that country.
Postal Code (required if country is US or Canada): Accepted characters are alphabet, numbers, dash, space. Maximum length: 50 characters.
Country (required): alphabet, numbers. Must be valid Alpha-2 ISO 3166-1 country code.
Office Phone (required): alphabet, numbers, space, period, dash, parenthesis, plus sign. Maximum length: 100 characters.
Alternate Phone: alphabet, numbers, space, period, dash, parenthesis, plus sign. Maximum length: 100 characters.
Fax Phone: alphabet, numbers, space, period, dash, parenthesis, plus sign. Maximum length: 20 characters.
func (r Account) Validate(account *datatypes.Account) (resp []string, err error) { params := []interface{}{ account, @@ -2602,7 +2635,7 @@ func (r Account_Agreement) GetTopLevelBillingItems() (resp []datatypes.Billing_I return } -// Account authentication has many different settings that can be set. This class allows the customer or employee to set these settigns. +// Account authentication has many different settings that can be set. This class allows the customer or employee to set these settings. type Account_Authentication_Attribute struct { Session *session.Session Options sl.Options diff --git a/services/billing.go b/services/billing.go index 687fabc..95e4a63 100644 --- a/services/billing.go +++ b/services/billing.go @@ -393,6 +393,12 @@ func (r Billing_Invoice) GetBrandAtInvoiceCreation() (resp datatypes.Brand, err return } +// Retrieve Chargeback type for invoice. +func (r Billing_Invoice) GetChargebackType() (resp datatypes.Billing_Chargeback_Type, err error) { + err = r.Session.DoRequest("SoftLayer_Billing_Invoice", "getChargebackType", nil, &r.Options, &resp) + return +} + // Retrieve A flag that will reflect whether the detailed version of the pdf has been generated. func (r Billing_Invoice) GetDetailedPdfGeneratedFlag() (resp bool, err error) { err = r.Session.DoRequest("SoftLayer_Billing_Invoice", "getDetailedPdfGeneratedFlag", nil, &r.Options, &resp) diff --git a/services/hardware.go b/services/hardware.go index 564c0a2..43d0b85 100644 --- a/services/hardware.go +++ b/services/hardware.go @@ -713,7 +713,7 @@ func (r Hardware) GetDownstreamNetworkHardware() (resp []datatypes.Hardware, err return } -// Retrieve All network hardware with monitoring warnings or errors that are downstream from the selected piece of hardware. +// Retrieve All network hardware with monitoring warnings or errors that are downstream from the selected piece of hardware. [DEPRECATED] func (r Hardware) GetDownstreamNetworkHardwareWithIncidents() (resp []datatypes.Hardware, err error) { err = r.Session.DoRequest("SoftLayer_Hardware", "getDownstreamNetworkHardwareWithIncidents", nil, &r.Options, &resp) return @@ -936,7 +936,7 @@ func (r Hardware) GetMemoryCapacity() (resp uint, err error) { } // Retrieve A piece of hardware's metric tracking object. -func (r Hardware) GetMetricTrackingObject() (resp datatypes.Metric_Tracking_Object_HardwareServer, err error) { +func (r Hardware) GetMetricTrackingObject() (resp datatypes.Metric_Tracking_Object, err error) { err = r.Session.DoRequest("SoftLayer_Hardware", "getMetricTrackingObject", nil, &r.Options, &resp) return } @@ -1025,13 +1025,13 @@ func (r Hardware) GetNetworkMonitors() (resp []datatypes.Network_Monitor_Version return } -// Retrieve The value of a hardware's network status attribute. +// Retrieve The value of a hardware's network status attribute. [DEPRECATED] func (r Hardware) GetNetworkStatus() (resp string, err error) { err = r.Session.DoRequest("SoftLayer_Hardware", "getNetworkStatus", nil, &r.Options, &resp) return } -// Retrieve The hardware's related network status attribute. +// Retrieve The hardware's related network status attribute. [DEPRECATED] func (r Hardware) GetNetworkStatusAttribute() (resp datatypes.Hardware_Attribute, err error) { err = r.Session.DoRequest("SoftLayer_Hardware", "getNetworkStatusAttribute", nil, &r.Options, &resp) return @@ -1261,7 +1261,7 @@ func (r Hardware) GetRouters() (resp []datatypes.Hardware, err error) { return } -// Retrieve Collection of scale assets this hardware corresponds to. +// Retrieve [DEPRECATED] Collection of scale assets this hardware corresponds to. func (r Hardware) GetScaleAssets() (resp []datatypes.Scale_Asset, err error) { err = r.Session.DoRequest("SoftLayer_Hardware", "getScaleAssets", nil, &r.Options, &resp) return @@ -1375,6 +1375,12 @@ func (r Hardware) GetUpgradeRequest() (resp datatypes.Product_Upgrade_Request, e return } +// Retrieve A piece of hardware's active upgradeable physical components. +func (r Hardware) GetUpgradeableActiveComponents() (resp []datatypes.Hardware_Component, err error) { + err = r.Session.DoRequest("SoftLayer_Hardware", "getUpgradeableActiveComponents", nil, &r.Options, &resp) + return +} + // Retrieve The network device connected to a piece of hardware. func (r Hardware) GetUplinkHardware() (resp datatypes.Hardware, err error) { err = r.Session.DoRequest("SoftLayer_Hardware", "getUplinkHardware", nil, &r.Options, &resp) @@ -1862,6 +1868,12 @@ func (r Hardware_Component_Model) GetObject() (resp datatypes.Hardware_Component return } +// Retrieve +func (r Hardware_Component_Model) GetQualifiedFirmwares() (resp []datatypes.Hardware_Component_Firmware, err error) { + err = r.Session.DoRequest("SoftLayer_Hardware_Component_Model", "getQualifiedFirmwares", nil, &r.Options, &resp) + return +} + // Retrieve A motherboard's average reboot time. func (r Hardware_Component_Model) GetRebootTime() (resp datatypes.Hardware_Component_Motherboard_Reboot_Time, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_Component_Model", "getRebootTime", nil, &r.Options, &resp) @@ -2713,7 +2725,7 @@ func (r Hardware_Router) GetDownstreamNetworkHardware() (resp []datatypes.Hardwa return } -// Retrieve All network hardware with monitoring warnings or errors that are downstream from the selected piece of hardware. +// Retrieve All network hardware with monitoring warnings or errors that are downstream from the selected piece of hardware. [DEPRECATED] func (r Hardware_Router) GetDownstreamNetworkHardwareWithIncidents() (resp []datatypes.Hardware, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_Router", "getDownstreamNetworkHardwareWithIncidents", nil, &r.Options, &resp) return @@ -2942,7 +2954,7 @@ func (r Hardware_Router) GetMemoryCapacity() (resp uint, err error) { } // Retrieve A piece of hardware's metric tracking object. -func (r Hardware_Router) GetMetricTrackingObject() (resp datatypes.Metric_Tracking_Object_HardwareServer, err error) { +func (r Hardware_Router) GetMetricTrackingObject() (resp datatypes.Metric_Tracking_Object, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_Router", "getMetricTrackingObject", nil, &r.Options, &resp) return } @@ -3031,13 +3043,13 @@ func (r Hardware_Router) GetNetworkMonitors() (resp []datatypes.Network_Monitor_ return } -// Retrieve The value of a hardware's network status attribute. +// Retrieve The value of a hardware's network status attribute. [DEPRECATED] func (r Hardware_Router) GetNetworkStatus() (resp string, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_Router", "getNetworkStatus", nil, &r.Options, &resp) return } -// Retrieve The hardware's related network status attribute. +// Retrieve The hardware's related network status attribute. [DEPRECATED] func (r Hardware_Router) GetNetworkStatusAttribute() (resp datatypes.Hardware_Attribute, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_Router", "getNetworkStatusAttribute", nil, &r.Options, &resp) return @@ -3273,7 +3285,7 @@ func (r Hardware_Router) GetSanStorageCapabilityFlag() (resp bool, err error) { return } -// Retrieve Collection of scale assets this hardware corresponds to. +// Retrieve [DEPRECATED] Collection of scale assets this hardware corresponds to. func (r Hardware_Router) GetScaleAssets() (resp []datatypes.Scale_Asset, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_Router", "getScaleAssets", nil, &r.Options, &resp) return @@ -3387,6 +3399,12 @@ func (r Hardware_Router) GetUpgradeRequest() (resp datatypes.Product_Upgrade_Req return } +// Retrieve A piece of hardware's active upgradeable physical components. +func (r Hardware_Router) GetUpgradeableActiveComponents() (resp []datatypes.Hardware_Component, err error) { + err = r.Session.DoRequest("SoftLayer_Hardware_Router", "getUpgradeableActiveComponents", nil, &r.Options, &resp) + return +} + // Retrieve The network device connected to a piece of hardware. func (r Hardware_Router) GetUplinkHardware() (resp datatypes.Hardware, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_Router", "getUplinkHardware", nil, &r.Options, &resp) @@ -3682,12 +3700,13 @@ func (r Hardware_SecurityModule) CreateFirmwareReflashTransaction(ipmi *int, rai // You can launch firmware updates by selecting from your server list. It will bring your server offline for approximately 20 minutes while the updates are in progress. // // In the event of a hardware failure during this test our datacenter engineers will be notified of the problem automatically. They will then replace any failed components to bring your server back online, and will be contacting you to ensure that impact on your server is minimal. -func (r Hardware_SecurityModule) CreateFirmwareUpdateTransaction(ipmi *int, raidController *int, bios *int, harddrive *int) (resp bool, err error) { +func (r Hardware_SecurityModule) CreateFirmwareUpdateTransaction(ipmi *int, raidController *int, bios *int, harddrive *int, networkCard *int) (resp bool, err error) { params := []interface{}{ ipmi, raidController, bios, harddrive, + networkCard, } err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule", "createFirmwareUpdateTransaction", params, &r.Options, &resp) return @@ -4206,17 +4225,6 @@ func (r Hardware_SecurityModule) GetBackendBandwidthUsage(startDate *datatypes.T return } -// Use this method to return an array of private bandwidth utilization records between a given date range. -// Deprecated: This function has been marked as deprecated. -func (r Hardware_SecurityModule) GetBackendBandwidthUse(startDate *datatypes.Time, endDate *datatypes.Time) (resp []datatypes.Network_Bandwidth_Version1_Usage_Detail, err error) { - params := []interface{}{ - startDate, - endDate, - } - err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule", "getBackendBandwidthUse", params, &r.Options, &resp) - return -} - // The ”'getBackendIncomingBandwidth”' method retrieves the amount of incoming private network traffic used between the given start date and end date parameters. When entering start and end dates, only the month, day and year are used to calculate bandwidth totals - the time (HH:MM:SS) is ignored and defaults to midnight. The amount of bandwidth retrieved is measured in gigabytes. func (r Hardware_SecurityModule) GetBackendIncomingBandwidth(startDate *datatypes.Time, endDate *datatypes.Time) (resp datatypes.Float64, err error) { params := []interface{}{ @@ -4515,7 +4523,7 @@ func (r Hardware_SecurityModule) GetDownstreamNetworkHardware() (resp []datatype return } -// Retrieve All network hardware with monitoring warnings or errors that are downstream from the selected piece of hardware. +// Retrieve All network hardware with monitoring warnings or errors that are downstream from the selected piece of hardware. [DEPRECATED] func (r Hardware_SecurityModule) GetDownstreamNetworkHardwareWithIncidents() (resp []datatypes.Hardware, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule", "getDownstreamNetworkHardwareWithIncidents", nil, &r.Options, &resp) return @@ -4575,17 +4583,6 @@ func (r Hardware_SecurityModule) GetFrontendBandwidthUsage(startDate *datatypes. return } -// Use this method to return an array of public bandwidth utilization records between a given date range. -// Deprecated: This function has been marked as deprecated. -func (r Hardware_SecurityModule) GetFrontendBandwidthUse(startDate *datatypes.Time, endDate *datatypes.Time) (resp []datatypes.Network_Bandwidth_Version1_Usage_Detail, err error) { - params := []interface{}{ - startDate, - endDate, - } - err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule", "getFrontendBandwidthUse", params, &r.Options, &resp) - return -} - // The ”'getFrontendIncomingBandwidth”' method retrieves the amount of incoming public network traffic used by a server between the given start and end date parameters. When entering the ”dateTime” parameter, only the month, day and year of the start and end dates are required - the time (hour, minute and second) are set to midnight by default and cannot be changed. The amount of bandwidth retrieved is measured in gigabytes (GB). func (r Hardware_SecurityModule) GetFrontendIncomingBandwidth(startDate *datatypes.Time, endDate *datatypes.Time) (resp datatypes.Float64, err error) { params := []interface{}{ @@ -4835,7 +4832,7 @@ func (r Hardware_SecurityModule) GetMemoryCapacity() (resp uint, err error) { } // Retrieve A piece of hardware's metric tracking object. -func (r Hardware_SecurityModule) GetMetricTrackingObject() (resp datatypes.Metric_Tracking_Object_HardwareServer, err error) { +func (r Hardware_SecurityModule) GetMetricTrackingObject() (resp datatypes.Metric_Tracking_Object, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule", "getMetricTrackingObject", nil, &r.Options, &resp) return } @@ -4942,13 +4939,13 @@ func (r Hardware_SecurityModule) GetNetworkMonitors() (resp []datatypes.Network_ return } -// Retrieve The value of a hardware's network status attribute. +// Retrieve The value of a hardware's network status attribute. [DEPRECATED] func (r Hardware_SecurityModule) GetNetworkStatus() (resp string, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule", "getNetworkStatus", nil, &r.Options, &resp) return } -// Retrieve The hardware's related network status attribute. +// Retrieve The hardware's related network status attribute. [DEPRECATED] func (r Hardware_SecurityModule) GetNetworkStatusAttribute() (resp datatypes.Hardware_Attribute, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule", "getNetworkStatusAttribute", nil, &r.Options, &resp) return @@ -5366,7 +5363,7 @@ func (r Hardware_SecurityModule) GetRouters() (resp []datatypes.Hardware, err er return } -// Retrieve Collection of scale assets this hardware corresponds to. +// Retrieve [DEPRECATED] Collection of scale assets this hardware corresponds to. func (r Hardware_SecurityModule) GetScaleAssets() (resp []datatypes.Scale_Asset, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule", "getScaleAssets", nil, &r.Options, &resp) return @@ -5504,6 +5501,12 @@ func (r Hardware_SecurityModule) GetUpgradeRequest() (resp datatypes.Product_Upg return } +// Retrieve A piece of hardware's active upgradeable physical components. +func (r Hardware_SecurityModule) GetUpgradeableActiveComponents() (resp []datatypes.Hardware_Component, err error) { + err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule", "getUpgradeableActiveComponents", nil, &r.Options, &resp) + return +} + // Retrieve The network device connected to a piece of hardware. func (r Hardware_SecurityModule) GetUplinkHardware() (resp datatypes.Hardware, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule", "getUplinkHardware", nil, &r.Options, &resp) @@ -5549,7 +5552,7 @@ func (r Hardware_SecurityModule) GetVirtualChassisSiblings() (resp []datatypes.H return } -// Retrieve A hardware server's virtual servers. +// Retrieve [DEPRECATED] A hardware server's virtual servers. func (r Hardware_SecurityModule) GetVirtualGuests() (resp []datatypes.Virtual_Guest, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule", "getVirtualGuests", nil, &r.Options, &resp) return @@ -5662,13 +5665,14 @@ func (r Hardware_SecurityModule) MassFirmwareReflash(hardwareIds []int, ipmi *bo // You can launch firmware updates by selecting from your server list. It will bring your server offline for approximately 20 minutes while the updates are in progress. // // In the event of a hardware failure during this test our datacenter engineers will be notified of the problem automatically. They will then replace any failed components to bring your server back online, and will be contacting you to ensure that impact on your server is minimal. -func (r Hardware_SecurityModule) MassFirmwareUpdate(hardwareIds []int, ipmi *bool, raidController *bool, bios *bool, harddrive *bool) (resp []datatypes.Container_Hardware_Server_Request, err error) { +func (r Hardware_SecurityModule) MassFirmwareUpdate(hardwareIds []int, ipmi *bool, raidController *bool, bios *bool, harddrive *bool, networkCard *bool) (resp []datatypes.Container_Hardware_Server_Request, err error) { params := []interface{}{ hardwareIds, ipmi, raidController, bios, harddrive, + networkCard, } err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule", "massFirmwareUpdate", params, &r.Options, &resp) return @@ -5949,7 +5953,7 @@ func (r Hardware_SecurityModule) TestRaidAlertService() (resp bool, err error) { return } -// Attempt to toggle the IPMI interface. If there is an active transaction on the server, it will throw an exception. This method creates a transaction to toggle the interface. It is not instant. +// Attempt to toggle the IPMI interface. If there is an active transaction on the server, it will throw an exception. This method creates a job to toggle the interface. It is not instant. func (r Hardware_SecurityModule) ToggleManagementInterface(enabled *bool) (resp bool, err error) { params := []interface{}{ enabled, @@ -6089,12 +6093,13 @@ func (r Hardware_SecurityModule750) CreateFirmwareReflashTransaction(ipmi *int, // You can launch firmware updates by selecting from your server list. It will bring your server offline for approximately 20 minutes while the updates are in progress. // // In the event of a hardware failure during this test our datacenter engineers will be notified of the problem automatically. They will then replace any failed components to bring your server back online, and will be contacting you to ensure that impact on your server is minimal. -func (r Hardware_SecurityModule750) CreateFirmwareUpdateTransaction(ipmi *int, raidController *int, bios *int, harddrive *int) (resp bool, err error) { +func (r Hardware_SecurityModule750) CreateFirmwareUpdateTransaction(ipmi *int, raidController *int, bios *int, harddrive *int, networkCard *int) (resp bool, err error) { params := []interface{}{ ipmi, raidController, bios, harddrive, + networkCard, } err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule750", "createFirmwareUpdateTransaction", params, &r.Options, &resp) return @@ -6613,17 +6618,6 @@ func (r Hardware_SecurityModule750) GetBackendBandwidthUsage(startDate *datatype return } -// Use this method to return an array of private bandwidth utilization records between a given date range. -// Deprecated: This function has been marked as deprecated. -func (r Hardware_SecurityModule750) GetBackendBandwidthUse(startDate *datatypes.Time, endDate *datatypes.Time) (resp []datatypes.Network_Bandwidth_Version1_Usage_Detail, err error) { - params := []interface{}{ - startDate, - endDate, - } - err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule750", "getBackendBandwidthUse", params, &r.Options, &resp) - return -} - // The ”'getBackendIncomingBandwidth”' method retrieves the amount of incoming private network traffic used between the given start date and end date parameters. When entering start and end dates, only the month, day and year are used to calculate bandwidth totals - the time (HH:MM:SS) is ignored and defaults to midnight. The amount of bandwidth retrieved is measured in gigabytes. func (r Hardware_SecurityModule750) GetBackendIncomingBandwidth(startDate *datatypes.Time, endDate *datatypes.Time) (resp datatypes.Float64, err error) { params := []interface{}{ @@ -6922,7 +6916,7 @@ func (r Hardware_SecurityModule750) GetDownstreamNetworkHardware() (resp []datat return } -// Retrieve All network hardware with monitoring warnings or errors that are downstream from the selected piece of hardware. +// Retrieve All network hardware with monitoring warnings or errors that are downstream from the selected piece of hardware. [DEPRECATED] func (r Hardware_SecurityModule750) GetDownstreamNetworkHardwareWithIncidents() (resp []datatypes.Hardware, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule750", "getDownstreamNetworkHardwareWithIncidents", nil, &r.Options, &resp) return @@ -6982,17 +6976,6 @@ func (r Hardware_SecurityModule750) GetFrontendBandwidthUsage(startDate *datatyp return } -// Use this method to return an array of public bandwidth utilization records between a given date range. -// Deprecated: This function has been marked as deprecated. -func (r Hardware_SecurityModule750) GetFrontendBandwidthUse(startDate *datatypes.Time, endDate *datatypes.Time) (resp []datatypes.Network_Bandwidth_Version1_Usage_Detail, err error) { - params := []interface{}{ - startDate, - endDate, - } - err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule750", "getFrontendBandwidthUse", params, &r.Options, &resp) - return -} - // The ”'getFrontendIncomingBandwidth”' method retrieves the amount of incoming public network traffic used by a server between the given start and end date parameters. When entering the ”dateTime” parameter, only the month, day and year of the start and end dates are required - the time (hour, minute and second) are set to midnight by default and cannot be changed. The amount of bandwidth retrieved is measured in gigabytes (GB). func (r Hardware_SecurityModule750) GetFrontendIncomingBandwidth(startDate *datatypes.Time, endDate *datatypes.Time) (resp datatypes.Float64, err error) { params := []interface{}{ @@ -7242,7 +7225,7 @@ func (r Hardware_SecurityModule750) GetMemoryCapacity() (resp uint, err error) { } // Retrieve A piece of hardware's metric tracking object. -func (r Hardware_SecurityModule750) GetMetricTrackingObject() (resp datatypes.Metric_Tracking_Object_HardwareServer, err error) { +func (r Hardware_SecurityModule750) GetMetricTrackingObject() (resp datatypes.Metric_Tracking_Object, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule750", "getMetricTrackingObject", nil, &r.Options, &resp) return } @@ -7349,13 +7332,13 @@ func (r Hardware_SecurityModule750) GetNetworkMonitors() (resp []datatypes.Netwo return } -// Retrieve The value of a hardware's network status attribute. +// Retrieve The value of a hardware's network status attribute. [DEPRECATED] func (r Hardware_SecurityModule750) GetNetworkStatus() (resp string, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule750", "getNetworkStatus", nil, &r.Options, &resp) return } -// Retrieve The hardware's related network status attribute. +// Retrieve The hardware's related network status attribute. [DEPRECATED] func (r Hardware_SecurityModule750) GetNetworkStatusAttribute() (resp datatypes.Hardware_Attribute, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule750", "getNetworkStatusAttribute", nil, &r.Options, &resp) return @@ -7773,7 +7756,7 @@ func (r Hardware_SecurityModule750) GetRouters() (resp []datatypes.Hardware, err return } -// Retrieve Collection of scale assets this hardware corresponds to. +// Retrieve [DEPRECATED] Collection of scale assets this hardware corresponds to. func (r Hardware_SecurityModule750) GetScaleAssets() (resp []datatypes.Scale_Asset, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule750", "getScaleAssets", nil, &r.Options, &resp) return @@ -7911,6 +7894,12 @@ func (r Hardware_SecurityModule750) GetUpgradeRequest() (resp datatypes.Product_ return } +// Retrieve A piece of hardware's active upgradeable physical components. +func (r Hardware_SecurityModule750) GetUpgradeableActiveComponents() (resp []datatypes.Hardware_Component, err error) { + err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule750", "getUpgradeableActiveComponents", nil, &r.Options, &resp) + return +} + // Retrieve The network device connected to a piece of hardware. func (r Hardware_SecurityModule750) GetUplinkHardware() (resp datatypes.Hardware, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule750", "getUplinkHardware", nil, &r.Options, &resp) @@ -7956,7 +7945,7 @@ func (r Hardware_SecurityModule750) GetVirtualChassisSiblings() (resp []datatype return } -// Retrieve A hardware server's virtual servers. +// Retrieve [DEPRECATED] A hardware server's virtual servers. func (r Hardware_SecurityModule750) GetVirtualGuests() (resp []datatypes.Virtual_Guest, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule750", "getVirtualGuests", nil, &r.Options, &resp) return @@ -8069,13 +8058,14 @@ func (r Hardware_SecurityModule750) MassFirmwareReflash(hardwareIds []int, ipmi // You can launch firmware updates by selecting from your server list. It will bring your server offline for approximately 20 minutes while the updates are in progress. // // In the event of a hardware failure during this test our datacenter engineers will be notified of the problem automatically. They will then replace any failed components to bring your server back online, and will be contacting you to ensure that impact on your server is minimal. -func (r Hardware_SecurityModule750) MassFirmwareUpdate(hardwareIds []int, ipmi *bool, raidController *bool, bios *bool, harddrive *bool) (resp []datatypes.Container_Hardware_Server_Request, err error) { +func (r Hardware_SecurityModule750) MassFirmwareUpdate(hardwareIds []int, ipmi *bool, raidController *bool, bios *bool, harddrive *bool, networkCard *bool) (resp []datatypes.Container_Hardware_Server_Request, err error) { params := []interface{}{ hardwareIds, ipmi, raidController, bios, harddrive, + networkCard, } err = r.Session.DoRequest("SoftLayer_Hardware_SecurityModule750", "massFirmwareUpdate", params, &r.Options, &resp) return @@ -8356,7 +8346,7 @@ func (r Hardware_SecurityModule750) TestRaidAlertService() (resp bool, err error return } -// Attempt to toggle the IPMI interface. If there is an active transaction on the server, it will throw an exception. This method creates a transaction to toggle the interface. It is not instant. +// Attempt to toggle the IPMI interface. If there is an active transaction on the server, it will throw an exception. This method creates a job to toggle the interface. It is not instant. func (r Hardware_SecurityModule750) ToggleManagementInterface(enabled *bool) (resp bool, err error) { params := []interface{}{ enabled, @@ -8496,12 +8486,13 @@ func (r Hardware_Server) CreateFirmwareReflashTransaction(ipmi *int, raidControl // You can launch firmware updates by selecting from your server list. It will bring your server offline for approximately 20 minutes while the updates are in progress. // // In the event of a hardware failure during this test our datacenter engineers will be notified of the problem automatically. They will then replace any failed components to bring your server back online, and will be contacting you to ensure that impact on your server is minimal. -func (r Hardware_Server) CreateFirmwareUpdateTransaction(ipmi *int, raidController *int, bios *int, harddrive *int) (resp bool, err error) { +func (r Hardware_Server) CreateFirmwareUpdateTransaction(ipmi *int, raidController *int, bios *int, harddrive *int, networkCard *int) (resp bool, err error) { params := []interface{}{ ipmi, raidController, bios, harddrive, + networkCard, } err = r.Session.DoRequest("SoftLayer_Hardware_Server", "createFirmwareUpdateTransaction", params, &r.Options, &resp) return @@ -9020,17 +9011,6 @@ func (r Hardware_Server) GetBackendBandwidthUsage(startDate *datatypes.Time, end return } -// Use this method to return an array of private bandwidth utilization records between a given date range. -// Deprecated: This function has been marked as deprecated. -func (r Hardware_Server) GetBackendBandwidthUse(startDate *datatypes.Time, endDate *datatypes.Time) (resp []datatypes.Network_Bandwidth_Version1_Usage_Detail, err error) { - params := []interface{}{ - startDate, - endDate, - } - err = r.Session.DoRequest("SoftLayer_Hardware_Server", "getBackendBandwidthUse", params, &r.Options, &resp) - return -} - // The ”'getBackendIncomingBandwidth”' method retrieves the amount of incoming private network traffic used between the given start date and end date parameters. When entering start and end dates, only the month, day and year are used to calculate bandwidth totals - the time (HH:MM:SS) is ignored and defaults to midnight. The amount of bandwidth retrieved is measured in gigabytes. func (r Hardware_Server) GetBackendIncomingBandwidth(startDate *datatypes.Time, endDate *datatypes.Time) (resp datatypes.Float64, err error) { params := []interface{}{ @@ -9329,7 +9309,7 @@ func (r Hardware_Server) GetDownstreamNetworkHardware() (resp []datatypes.Hardwa return } -// Retrieve All network hardware with monitoring warnings or errors that are downstream from the selected piece of hardware. +// Retrieve All network hardware with monitoring warnings or errors that are downstream from the selected piece of hardware. [DEPRECATED] func (r Hardware_Server) GetDownstreamNetworkHardwareWithIncidents() (resp []datatypes.Hardware, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_Server", "getDownstreamNetworkHardwareWithIncidents", nil, &r.Options, &resp) return @@ -9389,17 +9369,6 @@ func (r Hardware_Server) GetFrontendBandwidthUsage(startDate *datatypes.Time, en return } -// Use this method to return an array of public bandwidth utilization records between a given date range. -// Deprecated: This function has been marked as deprecated. -func (r Hardware_Server) GetFrontendBandwidthUse(startDate *datatypes.Time, endDate *datatypes.Time) (resp []datatypes.Network_Bandwidth_Version1_Usage_Detail, err error) { - params := []interface{}{ - startDate, - endDate, - } - err = r.Session.DoRequest("SoftLayer_Hardware_Server", "getFrontendBandwidthUse", params, &r.Options, &resp) - return -} - // The ”'getFrontendIncomingBandwidth”' method retrieves the amount of incoming public network traffic used by a server between the given start and end date parameters. When entering the ”dateTime” parameter, only the month, day and year of the start and end dates are required - the time (hour, minute and second) are set to midnight by default and cannot be changed. The amount of bandwidth retrieved is measured in gigabytes (GB). func (r Hardware_Server) GetFrontendIncomingBandwidth(startDate *datatypes.Time, endDate *datatypes.Time) (resp datatypes.Float64, err error) { params := []interface{}{ @@ -9649,7 +9618,7 @@ func (r Hardware_Server) GetMemoryCapacity() (resp uint, err error) { } // Retrieve A piece of hardware's metric tracking object. -func (r Hardware_Server) GetMetricTrackingObject() (resp datatypes.Metric_Tracking_Object_HardwareServer, err error) { +func (r Hardware_Server) GetMetricTrackingObject() (resp datatypes.Metric_Tracking_Object, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_Server", "getMetricTrackingObject", nil, &r.Options, &resp) return } @@ -9756,13 +9725,13 @@ func (r Hardware_Server) GetNetworkMonitors() (resp []datatypes.Network_Monitor_ return } -// Retrieve The value of a hardware's network status attribute. +// Retrieve The value of a hardware's network status attribute. [DEPRECATED] func (r Hardware_Server) GetNetworkStatus() (resp string, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_Server", "getNetworkStatus", nil, &r.Options, &resp) return } -// Retrieve The hardware's related network status attribute. +// Retrieve The hardware's related network status attribute. [DEPRECATED] func (r Hardware_Server) GetNetworkStatusAttribute() (resp datatypes.Hardware_Attribute, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_Server", "getNetworkStatusAttribute", nil, &r.Options, &resp) return @@ -10180,7 +10149,7 @@ func (r Hardware_Server) GetRouters() (resp []datatypes.Hardware, err error) { return } -// Retrieve Collection of scale assets this hardware corresponds to. +// Retrieve [DEPRECATED] Collection of scale assets this hardware corresponds to. func (r Hardware_Server) GetScaleAssets() (resp []datatypes.Scale_Asset, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_Server", "getScaleAssets", nil, &r.Options, &resp) return @@ -10318,6 +10287,12 @@ func (r Hardware_Server) GetUpgradeRequest() (resp datatypes.Product_Upgrade_Req return } +// Retrieve A piece of hardware's active upgradeable physical components. +func (r Hardware_Server) GetUpgradeableActiveComponents() (resp []datatypes.Hardware_Component, err error) { + err = r.Session.DoRequest("SoftLayer_Hardware_Server", "getUpgradeableActiveComponents", nil, &r.Options, &resp) + return +} + // Retrieve The network device connected to a piece of hardware. func (r Hardware_Server) GetUplinkHardware() (resp datatypes.Hardware, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_Server", "getUplinkHardware", nil, &r.Options, &resp) @@ -10363,7 +10338,7 @@ func (r Hardware_Server) GetVirtualChassisSiblings() (resp []datatypes.Hardware, return } -// Retrieve A hardware server's virtual servers. +// Retrieve [DEPRECATED] A hardware server's virtual servers. func (r Hardware_Server) GetVirtualGuests() (resp []datatypes.Virtual_Guest, err error) { err = r.Session.DoRequest("SoftLayer_Hardware_Server", "getVirtualGuests", nil, &r.Options, &resp) return @@ -10476,13 +10451,14 @@ func (r Hardware_Server) MassFirmwareReflash(hardwareIds []int, ipmi *bool, raid // You can launch firmware updates by selecting from your server list. It will bring your server offline for approximately 20 minutes while the updates are in progress. // // In the event of a hardware failure during this test our datacenter engineers will be notified of the problem automatically. They will then replace any failed components to bring your server back online, and will be contacting you to ensure that impact on your server is minimal. -func (r Hardware_Server) MassFirmwareUpdate(hardwareIds []int, ipmi *bool, raidController *bool, bios *bool, harddrive *bool) (resp []datatypes.Container_Hardware_Server_Request, err error) { +func (r Hardware_Server) MassFirmwareUpdate(hardwareIds []int, ipmi *bool, raidController *bool, bios *bool, harddrive *bool, networkCard *bool) (resp []datatypes.Container_Hardware_Server_Request, err error) { params := []interface{}{ hardwareIds, ipmi, raidController, bios, harddrive, + networkCard, } err = r.Session.DoRequest("SoftLayer_Hardware_Server", "massFirmwareUpdate", params, &r.Options, &resp) return @@ -10763,7 +10739,7 @@ func (r Hardware_Server) TestRaidAlertService() (resp bool, err error) { return } -// Attempt to toggle the IPMI interface. If there is an active transaction on the server, it will throw an exception. This method creates a transaction to toggle the interface. It is not instant. +// Attempt to toggle the IPMI interface. If there is an active transaction on the server, it will throw an exception. This method creates a job to toggle the interface. It is not instant. func (r Hardware_Server) ToggleManagementInterface(enabled *bool) (resp bool, err error) { params := []interface{}{ enabled, diff --git a/services/network.go b/services/network.go index c42aab4..6cc86ec 100644 --- a/services/network.go +++ b/services/network.go @@ -633,7 +633,7 @@ func (r Network_Application_Delivery_Controller_LoadBalancer_Health_Check) GetOb return } -// Retrieve Collection of scale load balancers that use this health check. +// Retrieve [DEPRECATED] Collection of scale load balancers that use this health check. func (r Network_Application_Delivery_Controller_LoadBalancer_Health_Check) GetScaleLoadBalancers() (resp []datatypes.Scale_LoadBalancer, err error) { err = r.Session.DoRequest("SoftLayer_Network_Application_Delivery_Controller_LoadBalancer_Health_Check", "getScaleLoadBalancers", nil, &r.Options, &resp) return @@ -1242,7 +1242,7 @@ func (r Network_Application_Delivery_Controller_LoadBalancer_VirtualServer) GetR return } -// Retrieve Collection of scale load balancers this virtual server applies to. +// Retrieve [DEPRECATED] Collection of scale load balancers this virtual server applies to. func (r Network_Application_Delivery_Controller_LoadBalancer_VirtualServer) GetScaleLoadBalancers() (resp []datatypes.Scale_LoadBalancer, err error) { err = r.Session.DoRequest("SoftLayer_Network_Application_Delivery_Controller_LoadBalancer_VirtualServer", "getScaleLoadBalancers", nil, &r.Options, &resp) return @@ -1515,16 +1515,6 @@ func (r Network_Bandwidth_Version1_Allotment) GetAverageDailyPublicBandwidthUsag return } -// This method recurses through all servers on a Bandwidth Pool between the given start and end dates to retrieve public bandwidth data. -func (r Network_Bandwidth_Version1_Allotment) GetBackendBandwidthUse(startDate *datatypes.Time, endDate *datatypes.Time) (resp []datatypes.Network_Bandwidth_Version1_Usage_Detail, err error) { - params := []interface{}{ - startDate, - endDate, - } - err = r.Session.DoRequest("SoftLayer_Network_Bandwidth_Version1_Allotment", "getBackendBandwidthUse", params, &r.Options, &resp) - return -} - // Retrieve The bandwidth allotment type of this virtual rack. func (r Network_Bandwidth_Version1_Allotment) GetBandwidthAllotmentType() (resp datatypes.Network_Bandwidth_Version1_Allotment_Type, err error) { err = r.Session.DoRequest("SoftLayer_Network_Bandwidth_Version1_Allotment", "getBandwidthAllotmentType", nil, &r.Options, &resp) @@ -1611,16 +1601,6 @@ func (r Network_Bandwidth_Version1_Allotment) GetDetails() (resp []datatypes.Net return } -// This method recurses through all servers on a Bandwidth Pool between the given start and end dates to retrieve private bandwidth data. -func (r Network_Bandwidth_Version1_Allotment) GetFrontendBandwidthUse(startDate *datatypes.Time, endDate *datatypes.Time) (resp []datatypes.Network_Bandwidth_Version1_Usage_Detail, err error) { - params := []interface{}{ - startDate, - endDate, - } - err = r.Session.DoRequest("SoftLayer_Network_Bandwidth_Version1_Allotment", "getFrontendBandwidthUse", params, &r.Options, &resp) - return -} - // Retrieve The hardware contained within a virtual rack. func (r Network_Bandwidth_Version1_Allotment) GetHardware() (resp []datatypes.Hardware, err error) { err = r.Session.DoRequest("SoftLayer_Network_Bandwidth_Version1_Allotment", "getHardware", nil, &r.Options, &resp) @@ -1658,7 +1638,7 @@ func (r Network_Bandwidth_Version1_Allotment) GetManagedVirtualGuests() (resp [] } // Retrieve A virtual rack's metric tracking object. This object records all periodic polled data available to this rack. -func (r Network_Bandwidth_Version1_Allotment) GetMetricTrackingObject() (resp datatypes.Metric_Tracking_Object_VirtualDedicatedRack, err error) { +func (r Network_Bandwidth_Version1_Allotment) GetMetricTrackingObject() (resp datatypes.Metric_Tracking_Object, err error) { err = r.Session.DoRequest("SoftLayer_Network_Bandwidth_Version1_Allotment", "getMetricTrackingObject", nil, &r.Options, &resp) return } @@ -3025,11 +3005,15 @@ func (r Network_Component) Offset(offset int) Network_Component { return r } -// Add VLANs as trunks to a network component. The VLANs given must be assigned to your account, and on the router to which this network component is connected. The current native VLAN (networkVlanId/networkVlan) cannot be added as a trunk. This method should be called on a network component attached directly to customer assigned hardware, though all trunking operations will occur on the uplinkComponent. A current list of VLAN trunks for a network component on a customer server can be found at 'uplinkComponent->networkVlanTrunks'. +// Add VLANs as trunks to a network component. The VLANs given must be assigned to your account and belong to the same pod in which this network component and its hardware reside. The current native VLAN cannot be added as a trunk. +// +// This method should be called on a network component of assigned hardware. A current list of VLAN trunks for a network component on a customer server can be found at 'uplinkComponent->networkVlanTrunks'. +// +// This method returns an array of SoftLayer_Network_Vlans which were added as trunks. Any requested VLANs which are already trunked will be ignored and will not be returned. // -// This method returns an array of SoftLayer_Network_Vlans which were added as trunks. Any requested trunks which are already trunked will be silently ignored, and will not be returned. +// Affected VLANs will not yet be operational as trunks on the network upon return of this call, but activation will have been scheduled and should be considered imminent. The trunking records associated with the affected VLANs will maintain an 'isUpdating' value of '1' so long as this is the case. // -// Configuration of network hardware is done asynchronously, do not depend on the return of this call as an indication that the newly trunked VLANs will be accessible. +// Note that in the event of an "internal system error" some VLANs may still have been affected and scheduled for activation. func (r Network_Component) AddNetworkVlanTrunks(networkVlans []datatypes.Network_Vlan) (resp []datatypes.Network_Vlan, err error) { params := []interface{}{ networkVlans, @@ -3038,7 +3022,15 @@ func (r Network_Component) AddNetworkVlanTrunks(networkVlans []datatypes.Network return } -// This method will remove all VLANs trunked to this network component. The native VLAN (networkVlanId/networkVlan) will remain active, and cannot be removed via the API. Returns a list of SoftLayer_Network_Vlan objects for which the trunks were removed. +// Remove all VLANs currently attached as trunks to this network component. +// +// This method should be called on a network component of assigned hardware. A current list of VLAN trunks for a network component on a customer server can be found at 'uplinkComponent->networkVlanTrunks'. +// +// This method returns an array of SoftLayer_Network_Vlans which will be removed as trunks. +// +// Affected VLANs will not yet be removed as trunks upon return of this call, but deactivation and removal will have been scheduled and should be considered imminent. The trunking records associated with the affected VLANs will maintain an 'isUpdating' value of '1' so long as this is the case. +// +// Note that in the event of a "pending API request" error some VLANs may still have been affected and scheduled for deactivation. func (r Network_Component) ClearNetworkVlanTrunks() (resp []datatypes.Network_Vlan, err error) { err = r.Session.DoRequest("SoftLayer_Network_Component", "clearNetworkVlanTrunks", nil, &r.Options, &resp) return @@ -3137,6 +3129,12 @@ func (r Network_Component) GetNetworkVlanTrunks() (resp []datatypes.Network_Comp return } +// Retrieve The viable trunking targets of this component. Viable targets include accessible VLANs in the same pod and network as this component, which are not already natively attached nor trunked to this component. +func (r Network_Component) GetNetworkVlansTrunkable() (resp []datatypes.Network_Vlan, err error) { + err = r.Session.DoRequest("SoftLayer_Network_Component", "getNetworkVlansTrunkable", nil, &r.Options, &resp) + return +} + // no documentation yet func (r Network_Component) GetObject() (resp datatypes.Network_Component, err error) { err = r.Session.DoRequest("SoftLayer_Network_Component", "getObject", nil, &r.Options, &resp) @@ -3232,11 +3230,17 @@ func (r Network_Component) GetUplinkDuplexMode() (resp datatypes.Network_Compone return } -// Remove one or more VLANs currently attached to the uplinkComponent of this networkComponent. The VLANs given must be assigned to your account, and on the router the network component is connected to. If any VLANs not currently trunked are given, they will be silently ignored. +// Remove one or more VLANs currently attached as trunks to this network component. +// +// If any VLANs are given which are not attached as trunks, they will be ignored. +// +// This method should be called on a network component of assigned hardware. A current list of VLAN trunks for a network component on a customer server can be found at 'uplinkComponent->networkVlanTrunks'. +// +// This method returns an array of SoftLayer_Network_Vlans which will be removed as trunks. Any requested VLANs which were not trunked will be ignored and will not be returned. // -// This method should be called on a network component attached directly to customer assigned hardware, though all trunking operations will occur on the uplinkComponent. A current list of VLAN trunks for a network component on a customer server can be found at 'uplinkComponent->networkVlanTrunks'. +// Affected VLANs will not yet be removed as trunks upon return of this call, but deactivation and removal will have been scheduled and should be considered imminent. The trunking records associated with the affected VLANs will maintain an 'isUpdating' value of '1' so long as this is the case. // -// Configuration of network hardware is done asynchronously, do not depend on the return of this call as an indication that the removed VLANs will be inaccessible. +// Note that in the event of a "pending API request" error some VLANs may still have been affected and scheduled for deactivation. func (r Network_Component) RemoveNetworkVlanTrunks(networkVlans []datatypes.Network_Vlan) (resp []datatypes.Network_Vlan, err error) { params := []interface{}{ networkVlans, @@ -4434,12 +4438,6 @@ func (r Network_Gateway_Member_Attribute) GetObject() (resp datatypes.Network_Ga return } -// Retrieve -func (r Network_Gateway_Member_Attribute) GetSshKey() (resp datatypes.Security_Ssh_Key, err error) { - err = r.Session.DoRequest("SoftLayer_Network_Gateway_Member_Attribute", "getSshKey", nil, &r.Options, &resp) - return -} - // no documentation yet type Network_Gateway_Precheck struct { Session *session.Session @@ -6496,6 +6494,12 @@ func (r Network_Message_Delivery) GetType() (resp datatypes.Network_Message_Deli return } +// Retrieve a list of upgradable items available for network message delivery. +func (r Network_Message_Delivery) GetUpgradeItemPrices() (resp []datatypes.Product_Item_Price, err error) { + err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery", "getUpgradeItemPrices", nil, &r.Options, &resp) + return +} + // Retrieve The vendor for a network message delivery account. func (r Network_Message_Delivery) GetVendor() (resp datatypes.Network_Message_Delivery_Vendor, err error) { err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery", "getVendor", nil, &r.Options, &resp) @@ -6562,8 +6566,11 @@ func (r Network_Message_Delivery_Email_Sendgrid) DeleteEmailListEntries(list *st } // no documentation yet -func (r Network_Message_Delivery_Email_Sendgrid) DisableSmtpAccess() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery_Email_Sendgrid", "disableSmtpAccess", nil, &r.Options, &resp) +func (r Network_Message_Delivery_Email_Sendgrid) DisableSmtpAccess(disable *bool) (resp bool, err error) { + params := []interface{}{ + disable, + } + err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery_Email_Sendgrid", "disableSmtpAccess", params, &r.Options, &resp) return } @@ -6577,8 +6584,11 @@ func (r Network_Message_Delivery_Email_Sendgrid) EditObject(templateObject *data } // no documentation yet -func (r Network_Message_Delivery_Email_Sendgrid) EnableSmtpAccess() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery_Email_Sendgrid", "enableSmtpAccess", nil, &r.Options, &resp) +func (r Network_Message_Delivery_Email_Sendgrid) EnableSmtpAccess(enable *bool) (resp bool, err error) { + params := []interface{}{ + enable, + } + err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery_Email_Sendgrid", "enableSmtpAccess", params, &r.Options, &resp) return } @@ -6589,7 +6599,7 @@ func (r Network_Message_Delivery_Email_Sendgrid) GetAccount() (resp datatypes.Ac } // no documentation yet -func (r Network_Message_Delivery_Email_Sendgrid) GetAccountOverview() (resp datatypes.Container_Network_Message_Delivery_Email_Sendgrid_Account_Overview, err error) { +func (r Network_Message_Delivery_Email_Sendgrid) GetAccountOverview() (resp datatypes.Container_Network_Message_Delivery_Email_Sendgrid_Account, err error) { err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery_Email_Sendgrid", "getAccountOverview", nil, &r.Options, &resp) return } @@ -6600,12 +6610,6 @@ func (r Network_Message_Delivery_Email_Sendgrid) GetBillingItem() (resp datatype return } -// no documentation yet -func (r Network_Message_Delivery_Email_Sendgrid) GetCategoryList() (resp []string, err error) { - err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery_Email_Sendgrid", "getCategoryList", nil, &r.Options, &resp) - return -} - // Retrieve The contact e-mail address used by SendGrid. func (r Network_Message_Delivery_Email_Sendgrid) GetEmailAddress() (resp string, err error) { err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery_Email_Sendgrid", "getEmailAddress", nil, &r.Options, &resp) @@ -6628,7 +6632,7 @@ func (r Network_Message_Delivery_Email_Sendgrid) GetObject() (resp datatypes.Net } // no documentation yet -func (r Network_Message_Delivery_Email_Sendgrid) GetOfferingsList() (resp []string, err error) { +func (r Network_Message_Delivery_Email_Sendgrid) GetOfferingsList() (resp []datatypes.Container_Network_Message_Delivery_Email_Sendgrid_Catalog_Item, err error) { err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery_Email_Sendgrid", "getOfferingsList", nil, &r.Options, &resp) return } @@ -6663,24 +6667,21 @@ func (r Network_Message_Delivery_Email_Sendgrid) GetType() (resp datatypes.Netwo return } -// Retrieve The vendor for a network message delivery account. -func (r Network_Message_Delivery_Email_Sendgrid) GetVendor() (resp datatypes.Network_Message_Delivery_Vendor, err error) { - err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery_Email_Sendgrid", "getVendor", nil, &r.Options, &resp) +// Retrieve a list of upgradable items available for network message delivery. +func (r Network_Message_Delivery_Email_Sendgrid) GetUpgradeItemPrices() (resp []datatypes.Product_Item_Price, err error) { + err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery_Email_Sendgrid", "getUpgradeItemPrices", nil, &r.Options, &resp) return } -// no documentation yet -func (r Network_Message_Delivery_Email_Sendgrid) GetVendorPortalUrl() (resp string, err error) { - err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery_Email_Sendgrid", "getVendorPortalUrl", nil, &r.Options, &resp) +// Retrieve The vendor for a network message delivery account. +func (r Network_Message_Delivery_Email_Sendgrid) GetVendor() (resp datatypes.Network_Message_Delivery_Vendor, err error) { + err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery_Email_Sendgrid", "getVendor", nil, &r.Options, &resp) return } // no documentation yet -func (r Network_Message_Delivery_Email_Sendgrid) SendEmail(emailContainer *datatypes.Container_Network_Message_Delivery_Email) (resp bool, err error) { - params := []interface{}{ - emailContainer, - } - err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery_Email_Sendgrid", "sendEmail", params, &r.Options, &resp) +func (r Network_Message_Delivery_Email_Sendgrid) SingleSignOn() (resp string, err error) { + err = r.Session.DoRequest("SoftLayer_Network_Message_Delivery_Email_Sendgrid", "singleSignOn", nil, &r.Options, &resp) return } @@ -7295,7 +7296,7 @@ func (r Network_Security_Scanner_Request) GetReport() (resp string, err error) { return } -// Retrieve Flag whether the requestor owns the hardware the scan was run on. This flag will return for hardware servers only, virtual servers will result in a null return even if you have a request out for them. +// Retrieve Flag whether the requestor owns the hardware the scan was run on. This flag will return for hardware servers only, virtual servers will result in a null return even if you have a request out for them. func (r Network_Security_Scanner_Request) GetRequestorOwnedFlag() (resp bool, err error) { err = r.Session.DoRequest("SoftLayer_Network_Security_Scanner_Request", "getRequestorOwnedFlag", nil, &r.Options, &resp) return @@ -8294,6 +8295,12 @@ func (r Network_Storage) GetOriginalSnapshotName() (resp string, err error) { return } +// Retrieve Volume id of the origin volume from which this volume is been cloned. +func (r Network_Storage) GetOriginalVolumeId() (resp int, err error) { + err = r.Session.DoRequest("SoftLayer_Network_Storage", "getOriginalVolumeId", nil, &r.Options, &resp) + return +} + // Retrieve The name of the volume that this volume was duplicated from. func (r Network_Storage) GetOriginalVolumeName() (resp string, err error) { err = r.Session.DoRequest("SoftLayer_Network_Storage", "getOriginalVolumeName", nil, &r.Options, &resp) @@ -8655,9 +8662,10 @@ func (r Network_Storage) RefreshDependentDuplicate(snapshotId *int) (resp bool, } // no documentation yet -func (r Network_Storage) RefreshDuplicate(snapshotId *int) (resp bool, err error) { +func (r Network_Storage) RefreshDuplicate(snapshotId *int, forceRefresh *bool) (resp bool, err error) { params := []interface{}{ snapshotId, + forceRefresh, } err = r.Session.DoRequest("SoftLayer_Network_Storage", "refreshDuplicate", params, &r.Options, &resp) return @@ -10560,6 +10568,12 @@ func (r Network_Storage_Backup_Evault) GetOriginalSnapshotName() (resp string, e return } +// Retrieve Volume id of the origin volume from which this volume is been cloned. +func (r Network_Storage_Backup_Evault) GetOriginalVolumeId() (resp int, err error) { + err = r.Session.DoRequest("SoftLayer_Network_Storage_Backup_Evault", "getOriginalVolumeId", nil, &r.Options, &resp) + return +} + // Retrieve The name of the volume that this volume was duplicated from. func (r Network_Storage_Backup_Evault) GetOriginalVolumeName() (resp string, err error) { err = r.Session.DoRequest("SoftLayer_Network_Storage_Backup_Evault", "getOriginalVolumeName", nil, &r.Options, &resp) @@ -10942,9 +10956,10 @@ func (r Network_Storage_Backup_Evault) RefreshDependentDuplicate(snapshotId *int } // no documentation yet -func (r Network_Storage_Backup_Evault) RefreshDuplicate(snapshotId *int) (resp bool, err error) { +func (r Network_Storage_Backup_Evault) RefreshDuplicate(snapshotId *int, forceRefresh *bool) (resp bool, err error) { params := []interface{}{ snapshotId, + forceRefresh, } err = r.Session.DoRequest("SoftLayer_Network_Storage_Backup_Evault", "refreshDuplicate", params, &r.Options, &resp) return @@ -12965,6 +12980,12 @@ func (r Network_Storage_Iscsi) GetOriginalSnapshotName() (resp string, err error return } +// Retrieve Volume id of the origin volume from which this volume is been cloned. +func (r Network_Storage_Iscsi) GetOriginalVolumeId() (resp int, err error) { + err = r.Session.DoRequest("SoftLayer_Network_Storage_Iscsi", "getOriginalVolumeId", nil, &r.Options, &resp) + return +} + // Retrieve The name of the volume that this volume was duplicated from. func (r Network_Storage_Iscsi) GetOriginalVolumeName() (resp string, err error) { err = r.Session.DoRequest("SoftLayer_Network_Storage_Iscsi", "getOriginalVolumeName", nil, &r.Options, &resp) @@ -13326,9 +13347,10 @@ func (r Network_Storage_Iscsi) RefreshDependentDuplicate(snapshotId *int) (resp } // no documentation yet -func (r Network_Storage_Iscsi) RefreshDuplicate(snapshotId *int) (resp bool, err error) { +func (r Network_Storage_Iscsi) RefreshDuplicate(snapshotId *int, forceRefresh *bool) (resp bool, err error) { params := []interface{}{ snapshotId, + forceRefresh, } err = r.Session.DoRequest("SoftLayer_Network_Storage_Iscsi", "refreshDuplicate", params, &r.Options, &resp) return @@ -15881,7 +15903,13 @@ func (r Network_Tunnel_Module_Context) RemoveServiceSubnetFromNetworkTunnel(subn return } -// The SoftLayer_Network_Vlan data type models a single VLAN within SoftLayer's public and private networks. a Virtual LAN is a structure that associates network interfaces on routers, switches, and servers in different locations to act as if they were on the same local network broadcast domain. VLANs are a central part of the SoftLayer network. They can determine how new IP subnets are routed and how individual servers communicate to each other. +// VLANs comprise the fundamental segmentation model on the network, isolating customer networks from one another. +// +// VLANs are scoped to a single network, generally public or private, and a pod. Through association to a single VLAN, assigned subnets are routed on the network to provide IP address connectivity. +// +// Compute devices are associated to a single VLAN per active network, to which the Primary IP Address and containing Primary Subnet belongs. Additional VLANs may be associated to bare metal devices using VLAN trunking. +// +// [VLAN at Wikipedia](https://en.wikipedia.org/wiki/VLAN) type Network_Vlan struct { Session *session.Session Options sl.Options @@ -15921,7 +15949,11 @@ func (r Network_Vlan) Offset(offset int) Network_Vlan { return r } -// Edit a VLAN's properties +// Updates this VLAN using the provided VLAN template. +// +// The following properties may be modified. +// +// - "name" - A description no more than 20 characters in length. func (r Network_Vlan) EditObject(templateObject *datatypes.Network_Vlan) (resp bool, err error) { params := []interface{}{ templateObject, @@ -15930,193 +15962,205 @@ func (r Network_Vlan) EditObject(templateObject *datatypes.Network_Vlan) (resp b return } -// Retrieve The SoftLayer customer account associated with a VLAN. +// Retrieve The account this VLAN is associated with. func (r Network_Vlan) GetAccount() (resp datatypes.Account, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getAccount", nil, &r.Options, &resp) return } -// Retrieve A VLAN's additional primary subnets. These are used to extend the number of servers attached to the VLAN by adding more ip addresses to the primary IP address pool. +// Retrieve The primary IPv4 subnets routed on this VLAN, excluding the primarySubnet. func (r Network_Vlan) GetAdditionalPrimarySubnets() (resp []datatypes.Network_Subnet, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getAdditionalPrimarySubnets", nil, &r.Options, &resp) return } -// Retrieve The gateway this VLAN is inside of. +// Retrieve The gateway device this VLAN is associated with for routing purposes. func (r Network_Vlan) GetAttachedNetworkGateway() (resp datatypes.Network_Gateway, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getAttachedNetworkGateway", nil, &r.Options, &resp) return } -// Retrieve Whether or not this VLAN is inside a gateway. +// Retrieve A value of '1' indicates this VLAN is associated with a gateway device for routing purposes. func (r Network_Vlan) GetAttachedNetworkGatewayFlag() (resp bool, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getAttachedNetworkGatewayFlag", nil, &r.Options, &resp) return } -// Retrieve The inside VLAN record if this VLAN is inside a network gateway. +// Retrieve The gateway device VLAN context this VLAN is associated with for routing purposes. func (r Network_Vlan) GetAttachedNetworkGatewayVlan() (resp datatypes.Network_Gateway_Vlan, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getAttachedNetworkGatewayVlan", nil, &r.Options, &resp) return } -// Retrieve The billing item for a network vlan. +// Retrieve The billing item for this VLAN. func (r Network_Vlan) GetBillingItem() (resp datatypes.Billing_Item, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getBillingItem", nil, &r.Options, &resp) return } -// Get a set of reasons why this VLAN may not be cancelled. If the result is empty, this VLAN may be cancelled. +// Evaluates this VLAN for cancellation and returns a list of descriptions why this VLAN may not be cancelled. If the result is empty, this VLAN may be cancelled. func (r Network_Vlan) GetCancelFailureReasons() (resp []string, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getCancelFailureReasons", nil, &r.Options, &resp) return } -// Retrieve A flag indicating that a network vlan is on a Hardware Firewall (Dedicated). +// Retrieve The datacenter this VLAN is associated with. +func (r Network_Vlan) GetDatacenter() (resp datatypes.Location, err error) { + err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getDatacenter", nil, &r.Options, &resp) + return +} + +// Retrieve A value of '1' indicates this VLAN is associated with a firewall device. This does not include Hardware Firewalls. func (r Network_Vlan) GetDedicatedFirewallFlag() (resp int, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getDedicatedFirewallFlag", nil, &r.Options, &resp) return } -// Retrieve [DEPRECATED] The extension router that a VLAN is associated with. +// Retrieve [DEPRECATED] The extension router that this VLAN is associated with. func (r Network_Vlan) GetExtensionRouter() (resp datatypes.Hardware_Router, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getExtensionRouter", nil, &r.Options, &resp) return } -// Retrieve A firewalled Vlan's network components. +// Retrieve The VSI network interfaces connected to this VLAN and associated with a Hardware Firewall. func (r Network_Vlan) GetFirewallGuestNetworkComponents() (resp []datatypes.Network_Component_Firewall, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getFirewallGuestNetworkComponents", nil, &r.Options, &resp) return } -// Retrieve A firewalled vlan's inbound/outbound interfaces. +// Retrieve The context for the firewall device associated with this VLAN. func (r Network_Vlan) GetFirewallInterfaces() (resp []datatypes.Network_Firewall_Module_Context_Interface, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getFirewallInterfaces", nil, &r.Options, &resp) return } -// Retrieve A firewalled Vlan's network components. +// Retrieve The uplinks of the hardware network interfaces connected natively to this VLAN and associated with a Hardware Firewall. func (r Network_Vlan) GetFirewallNetworkComponents() (resp []datatypes.Network_Component_Firewall, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getFirewallNetworkComponents", nil, &r.Options, &resp) return } -// Get the IP addresses associated with this server that are protectable by a network component firewall. Note, this may not return all values for IPv6 subnets for this VLAN. Please use getFirewallProtectableSubnets to get all protectable subnets. +// *** DEPRECATED *** +// Retrieves the IP addresses routed on this VLAN that are protectable by a Hardware Firewall. +// Deprecated: This function has been marked as deprecated. func (r Network_Vlan) GetFirewallProtectableIpAddresses() (resp []datatypes.Network_Subnet_IpAddress, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getFirewallProtectableIpAddresses", nil, &r.Options, &resp) return } -// Get the subnets associated with this server that are protectable by a network component firewall. +// *** DEPRECATED *** +// Retrieves the subnets routed on this VLAN that are protectable by a Hardware Firewall. +// Deprecated: This function has been marked as deprecated. func (r Network_Vlan) GetFirewallProtectableSubnets() (resp []datatypes.Network_Subnet, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getFirewallProtectableSubnets", nil, &r.Options, &resp) return } -// Retrieve The currently running rule set of a firewalled VLAN. +// Retrieve The access rules for the firewall device associated with this VLAN. func (r Network_Vlan) GetFirewallRules() (resp []datatypes.Network_Vlan_Firewall_Rule, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getFirewallRules", nil, &r.Options, &resp) return } -// Retrieve The networking components that are connected to a VLAN. +// Retrieve The VSI network interfaces connected to this VLAN. func (r Network_Vlan) GetGuestNetworkComponents() (resp []datatypes.Virtual_Guest_Network_Component, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getGuestNetworkComponents", nil, &r.Options, &resp) return } -// Retrieve All of the hardware that exists on a VLAN. Hardware is associated with a VLAN by its networking components. +// Retrieve The hardware with network interfaces connected natively to this VLAN. func (r Network_Vlan) GetHardware() (resp []datatypes.Hardware, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getHardware", nil, &r.Options, &resp) return } -// Retrieve +// Retrieve A value of '1' indicates this VLAN is associated with a firewall device in a high availability configuration. func (r Network_Vlan) GetHighAvailabilityFirewallFlag() (resp bool, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getHighAvailabilityFirewallFlag", nil, &r.Options, &resp) return } -// Retrieve A flag indicating that a vlan can be assigned to a host that has local disk functionality. +// Retrieve A value of '1' indicates this VLAN's pod has VSI local disk storage capability. func (r Network_Vlan) GetLocalDiskStorageCapabilityFlag() (resp bool, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getLocalDiskStorageCapabilityFlag", nil, &r.Options, &resp) return } -// Retrieve The network in which this VLAN resides. +// Retrieve [DEPRECATED] The network in which this VLAN resides. func (r Network_Vlan) GetNetwork() (resp datatypes.Network, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getNetwork", nil, &r.Options, &resp) return } -// Retrieve The network components that are connected to this VLAN through a trunk. +// Retrieve The hardware network interfaces connected via trunk to this VLAN. func (r Network_Vlan) GetNetworkComponentTrunks() (resp []datatypes.Network_Component_Network_Vlan_Trunk, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getNetworkComponentTrunks", nil, &r.Options, &resp) return } -// Retrieve The networking components that are connected to a VLAN. +// Retrieve The hardware network interfaces connected natively to this VLAN. func (r Network_Vlan) GetNetworkComponents() (resp []datatypes.Network_Component, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getNetworkComponents", nil, &r.Options, &resp) return } -// Retrieve The viable trunking targets of this VLAN. Viable targets include accessible components of assigned hardware in the same pod and network as this VLAN, which are not already natively attached nor trunked. +// Retrieve The viable hardware network interface trunking targets of this VLAN. Viable targets include accessible components of assigned hardware in the same pod and network as this VLAN, which are not already connected, either natively or trunked. func (r Network_Vlan) GetNetworkComponentsTrunkable() (resp []datatypes.Network_Component, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getNetworkComponentsTrunkable", nil, &r.Options, &resp) return } -// Retrieve Identifier to denote whether a VLAN is used for public or private connectivity. +// Retrieve The network that this VLAN is on, either PUBLIC or PRIVATE, if applicable. func (r Network_Vlan) GetNetworkSpace() (resp string, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getNetworkSpace", nil, &r.Options, &resp) return } -// Retrieve The Hardware Firewall (Dedicated) for a network vlan. +// Retrieve The firewall device associated with this VLAN. func (r Network_Vlan) GetNetworkVlanFirewall() (resp datatypes.Network_Vlan_Firewall, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getNetworkVlanFirewall", nil, &r.Options, &resp) return } -// getObject retrieves the SoftLayer_Network_Vlan object whose ID number corresponds to the ID number of the init parameter passed to the SoftLayer_Network_Vlan service. You can only retrieve VLANs that are associated with your SoftLayer customer account. +// Retrieves a VLAN by its id value. Only VLANs assigned to your account are accessible. func (r Network_Vlan) GetObject() (resp datatypes.Network_Vlan, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getObject", nil, &r.Options, &resp) return } -// Retrieve The primary router that a VLAN is associated with. Every SoftLayer VLAN is connected to more than one router for greater network redundancy. +// Retrieve The router device that this VLAN is associated with. func (r Network_Vlan) GetPrimaryRouter() (resp datatypes.Hardware_Router, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getPrimaryRouter", nil, &r.Options, &resp) return } -// Retrieve A VLAN's primary subnet. Each VLAN has at least one subnet, usually the subnet that is assigned to a server or new IP address block when it's purchased. +// Retrieve A primary IPv4 subnet routed on this VLAN, if accessible. func (r Network_Vlan) GetPrimarySubnet() (resp datatypes.Network_Subnet, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getPrimarySubnet", nil, &r.Options, &resp) return } -// Retrieve A VLAN's primary IPv6 subnet. Some VLAN's may not have a primary IPv6 subnet. +// Retrieve The primary IPv6 subnet routed on this VLAN, if IPv6 is enabled. func (r Network_Vlan) GetPrimarySubnetVersion6() (resp datatypes.Network_Subnet, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getPrimarySubnetVersion6", nil, &r.Options, &resp) return } -// Retrieve +// Retrieve All primary subnets routed on this VLAN. func (r Network_Vlan) GetPrimarySubnets() (resp []datatypes.Network_Subnet, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getPrimarySubnets", nil, &r.Options, &resp) return } -// Retrieve The gateways this VLAN is the private VLAN of. +// Retrieve The gateway devices with connectivity supported by this private VLAN. func (r Network_Vlan) GetPrivateNetworkGateways() (resp []datatypes.Network_Gateway, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getPrivateNetworkGateways", nil, &r.Options, &resp) return } -// Retrieve a VLAN's associated private network VLAN. getPrivateVlan gathers it's information by retrieving the private VLAN of a VLAN's primary hardware object. +// *** DEPRECATED *** +// Retrieves a private VLAN associated to one or more hosts also associated to this public VLAN. +// Deprecated: This function has been marked as deprecated. func (r Network_Vlan) GetPrivateVlan() (resp datatypes.Network_Vlan, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getPrivateVlan", nil, &r.Options, &resp) return @@ -16133,19 +16177,21 @@ func (r Network_Vlan) GetPrivateVlanByIpAddress(ipAddress *string) (resp datatyp return } -// Retrieve +// Retrieve IP addresses routed on this VLAN which are actively associated with network protections. func (r Network_Vlan) GetProtectedIpAddresses() (resp []datatypes.Network_Subnet_IpAddress, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getProtectedIpAddresses", nil, &r.Options, &resp) return } -// Retrieve The gateways this VLAN is the public VLAN of. +// Retrieve The gateway devices with connectivity supported by this public VLAN. func (r Network_Vlan) GetPublicNetworkGateways() (resp []datatypes.Network_Gateway, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getPublicNetworkGateways", nil, &r.Options, &resp) return } -// Retrieve the VLAN that belongs to a server's public network interface, as described by a server's fully-qualified domain name. A server's ”FQDN” is it's hostname, followed by a period then it's domain name. +// *** DEPRECATED *** +// Retrieves a public VLAN associated to the host matched by the given fully-qualified domain name. +// Deprecated: This function has been marked as deprecated. func (r Network_Vlan) GetPublicVlanByFqdn(fqdn *string) (resp datatypes.Network_Vlan, err error) { params := []interface{}{ fqdn, @@ -16154,67 +16200,69 @@ func (r Network_Vlan) GetPublicVlanByFqdn(fqdn *string) (resp datatypes.Network_ return } -// Retrieve all reverse DNS records associated with the subnets assigned to a VLAN. +// *** DEPRECATED *** +// Retrieves DNS PTR records associated with IP addresses routed on this VLAN. Results will be grouped by DNS domain with the "resourceRecords" property populated. +// Deprecated: This function has been marked as deprecated. func (r Network_Vlan) GetReverseDomainRecords() (resp []datatypes.Dns_Domain, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getReverseDomainRecords", nil, &r.Options, &resp) return } -// Retrieve A flag indicating that a vlan can be assigned to a host that has SAN disk functionality. +// Retrieve A value of '1' indicates this VLAN's pod has VSI SAN disk storage capability. func (r Network_Vlan) GetSanStorageCapabilityFlag() (resp bool, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getSanStorageCapabilityFlag", nil, &r.Options, &resp) return } -// Retrieve Collection of scale VLANs this VLAN applies to. +// Retrieve [DEPRECATED] The scale VLANs associated to this VLAN. func (r Network_Vlan) GetScaleVlans() (resp []datatypes.Scale_Network_Vlan, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getScaleVlans", nil, &r.Options, &resp) return } -// Retrieve The secondary router that a VLAN is associated with. Every SoftLayer VLAN is connected to more than one router for greater network redundancy. +// Retrieve [DEPRECATED] The secondary router device that this VLAN is associated with. func (r Network_Vlan) GetSecondaryRouter() (resp datatypes.Hardware, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getSecondaryRouter", nil, &r.Options, &resp) return } -// Retrieve The subnets that exist as secondary interfaces on a VLAN +// Retrieve All non-primary subnets routed on this VLAN. func (r Network_Vlan) GetSecondarySubnets() (resp []datatypes.Network_Subnet, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getSecondarySubnets", nil, &r.Options, &resp) return } -// Retrieve All of the subnets that exist as VLAN interfaces. +// Retrieve All subnets routed on this VLAN. func (r Network_Vlan) GetSubnets() (resp []datatypes.Network_Subnet, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getSubnets", nil, &r.Options, &resp) return } -// Retrieve References to all tags for this VLAN. +// Retrieve The tags associated to this VLAN. func (r Network_Vlan) GetTagReferences() (resp []datatypes.Tag_Reference, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getTagReferences", nil, &r.Options, &resp) return } -// Retrieve The number of primary IP addresses in a VLAN. +// Retrieve The number of primary IPv4 addresses routed on this VLAN. func (r Network_Vlan) GetTotalPrimaryIpAddressCount() (resp uint, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getTotalPrimaryIpAddressCount", nil, &r.Options, &resp) return } -// Retrieve The type of this VLAN. +// Retrieve The type for this VLAN, with the following values: STANDARD, GATEWAY, INTERCONNECT func (r Network_Vlan) GetType() (resp datatypes.Network_Vlan_Type, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getType", nil, &r.Options, &resp) return } -// Retrieve All of the Virtual Servers that are connected to a VLAN. +// Retrieve The VSIs with network interfaces connected to this VLAN. func (r Network_Vlan) GetVirtualGuests() (resp []datatypes.Virtual_Guest, err error) { err = r.Session.DoRequest("SoftLayer_Network_Vlan", "getVirtualGuests", nil, &r.Options, &resp) return } -// Retrieve the VLAN associated with an IP address via the IP's associated subnet. +// Retrieves the VLAN on which the given IP address is routed. func (r Network_Vlan) GetVlanForIpAddress(ipAddress *string) (resp datatypes.Network_Vlan, err error) { params := []interface{}{ ipAddress, @@ -16232,7 +16280,9 @@ func (r Network_Vlan) SetTags(tags *string) (resp bool, err error) { return } -// The ”'getSensorData”' method updates a VLAN's firewall to allow or disallow intra-VLAN communication. +// *** DEPRECATED *** +// Updates the firewall associated to this VLAN to allow or disallow intra-VLAN communication. +// Deprecated: This function has been marked as deprecated. func (r Network_Vlan) UpdateFirewallIntraVlanCommunication(enabled *bool) (err error) { var resp datatypes.Void params := []interface{}{ @@ -16242,7 +16292,7 @@ func (r Network_Vlan) UpdateFirewallIntraVlanCommunication(enabled *bool) (err e return } -// Convert the VLAN this operation is executed against to a paid resource. This can be done for any Automatic VLAN. This operation can only be executed on an Automatic VLAN, and will transition it to being a Premium VLAN. The VLAN will then provide the benefits of a Premium VLAN. A Premium VLAN will remain on the account until cancelled. This operation cannot be undone! Once a VLAN becomes Premium, it can only be removed through cancellation, which will result in it being reclaimed. +// Converts this VLAN to a paid resource. This can be done for any Automatic VLAN. This operation can only be executed on an Automatic VLAN, and will transition it to being a Premium VLAN. The VLAN will then provide the benefits of a Premium VLAN. A Premium VLAN will remain on the account until cancelled. This operation cannot be undone! Once a VLAN becomes Premium, it can only be removed through cancellation, which will result in it being reclaimed. // // This operation is a convenience for utilizing the SoftLayer_Product_Order.placeOrder operation. It will place an order to upgrade the VLAN it is executed against. It will take a few moments for the order to be processed and the upgrade to complete. Note that the order is placed in such a way that any account state which prevents automatic order approval will prevent the order from being placed. Thus, if no error is received, the order was placed and approved, and the VLAN will be upgraded shortly. func (r Network_Vlan) Upgrade() (resp datatypes.Container_Product_Order_Network_Vlan, err error) { diff --git a/services/product.go b/services/product.go index 92a6155..663cff8 100644 --- a/services/product.go +++ b/services/product.go @@ -1558,12 +1558,6 @@ func (r Product_Package) GetRegions() (resp []datatypes.Location_Region, err err return } -// Retrieve The resource group template that describes a multi-server solution. (Deprecated) -func (r Product_Package) GetResourceGroupTemplate() (resp datatypes.Resource_Group_Template, err error) { - err = r.Session.DoRequest("SoftLayer_Product_Package", "getResourceGroupTemplate", nil, &r.Options, &resp) - return -} - // This call is similar to [[SoftLayer_Product_Package/getCategories|getCategories]], except that it does not include account-restricted pricing. Not all accounts have restricted pricing. func (r Product_Package) GetStandardCategories() (resp []datatypes.Product_Item_Category, err error) { err = r.Session.DoRequest("SoftLayer_Product_Package", "getStandardCategories", nil, &r.Options, &resp) diff --git a/services/resource.go b/services/resource.go index 916a55b..61d63b2 100644 --- a/services/resource.go +++ b/services/resource.go @@ -245,12 +245,6 @@ func (r Resource_Group_Template) GetObject() (resp datatypes.Resource_Group_Temp return } -// Retrieve -func (r Resource_Group_Template) GetPackage() (resp datatypes.Product_Package, err error) { - err = r.Session.DoRequest("SoftLayer_Resource_Group_Template", "getPackage", nil, &r.Options, &resp) - return -} - // no documentation yet type Resource_Metadata struct { Session *session.Session diff --git a/services/scale.go b/services/scale.go index 5962ef2..a71b19f 100644 --- a/services/scale.go +++ b/services/scale.go @@ -24,7 +24,6 @@ import ( "fmt" "strings" - "github.com/softlayer/softlayer-go/datatypes" "github.com/softlayer/softlayer-go/session" "github.com/softlayer/softlayer-go/sl" ) @@ -69,24 +68,6 @@ func (r Scale_Asset) Offset(offset int) Scale_Asset { return r } -// no documentation yet -func (r Scale_Asset) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Asset", "deleteObject", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Asset) GetObject() (resp datatypes.Scale_Asset, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Asset", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The group this asset belongs to. -func (r Scale_Asset) GetScaleGroup() (resp datatypes.Scale_Group, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Asset", "getScaleGroup", nil, &r.Options, &resp) - return -} - // no documentation yet type Scale_Asset_Hardware struct { Session *session.Session @@ -127,45 +108,6 @@ func (r Scale_Asset_Hardware) Offset(offset int) Scale_Asset_Hardware { return r } -// no documentation yet -func (r Scale_Asset_Hardware) CreateObject(templateObject *datatypes.Scale_Asset_Hardware) (resp datatypes.Scale_Asset_Hardware, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Asset_Hardware", "createObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Asset_Hardware) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Asset_Hardware", "deleteObject", nil, &r.Options, &resp) - return -} - -// Retrieve The hardware for this asset. -func (r Scale_Asset_Hardware) GetHardware() (resp datatypes.Hardware, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Asset_Hardware", "getHardware", nil, &r.Options, &resp) - return -} - -// Retrieve The identifier of the hardware for this asset. -func (r Scale_Asset_Hardware) GetHardwareId() (resp int, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Asset_Hardware", "getHardwareId", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Asset_Hardware) GetObject() (resp datatypes.Scale_Asset_Hardware, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Asset_Hardware", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The group this asset belongs to. -func (r Scale_Asset_Hardware) GetScaleGroup() (resp datatypes.Scale_Group, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Asset_Hardware", "getScaleGroup", nil, &r.Options, &resp) - return -} - // no documentation yet type Scale_Asset_Virtual_Guest struct { Session *session.Session @@ -206,45 +148,6 @@ func (r Scale_Asset_Virtual_Guest) Offset(offset int) Scale_Asset_Virtual_Guest return r } -// no documentation yet -func (r Scale_Asset_Virtual_Guest) CreateObject(templateObject *datatypes.Scale_Asset_Virtual_Guest) (resp datatypes.Scale_Asset_Virtual_Guest, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Asset_Virtual_Guest", "createObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Asset_Virtual_Guest) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Asset_Virtual_Guest", "deleteObject", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Asset_Virtual_Guest) GetObject() (resp datatypes.Scale_Asset_Virtual_Guest, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Asset_Virtual_Guest", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The group this asset belongs to. -func (r Scale_Asset_Virtual_Guest) GetScaleGroup() (resp datatypes.Scale_Group, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Asset_Virtual_Guest", "getScaleGroup", nil, &r.Options, &resp) - return -} - -// Retrieve The guest for this asset. -func (r Scale_Asset_Virtual_Guest) GetVirtualGuest() (resp datatypes.Virtual_Guest, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Asset_Virtual_Guest", "getVirtualGuest", nil, &r.Options, &resp) - return -} - -// Retrieve The identifier of the guest for this asset. -func (r Scale_Asset_Virtual_Guest) GetVirtualGuestId() (resp int, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Asset_Virtual_Guest", "getVirtualGuestId", nil, &r.Options, &resp) - return -} - // no documentation yet type Scale_Group struct { Session *session.Session @@ -285,200 +188,6 @@ func (r Scale_Group) Offset(offset int) Scale_Group { return r } -// Create a scale group. If minimumMemberCount is greater than zero or desiredMemberCount is present, guest members will be created right away. -func (r Scale_Group) CreateObject(templateObject *datatypes.Scale_Group) (resp datatypes.Scale_Group, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Group", "createObject", params, &r.Options, &resp) - return -} - -// Delete this group. This can only be done on an empty, active group. This means that minimumMemberCount must be 0 since it is the only way for a group to have no group members. To delete a group and all of its members at the same time, use forceDeleteObject. -func (r Scale_Group) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "deleteObject", nil, &r.Options, &resp) - return -} - -// Edit this group. The name can be edited at any time. The minimumMemberCount and maximumMemberCount fields can also be edited at any time provided they don't force a scale up or scale down to bring the group into the proper range. Otherwise, the group's status must be active to set those fields. If the group member count is less than the new minimumMemberCount and the group is active, it will scale up the group members to reach the new minimum. Similarly if the group member count is greater than the new maximumMemberCount and the group is active, it will scale down the group members to reach the new maximum. -// -// When editing an active group, a special field can be provided: desiredMemberCount. When given, the group members are automatically scaled up or down to reach that number. -func (r Scale_Group) EditObject(templateObject *datatypes.Scale_Group) (resp bool, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Group", "editObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Group) ForceDeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "forceDeleteObject", nil, &r.Options, &resp) - return -} - -// Retrieve The account for this scaling group. -func (r Scale_Group) GetAccount() (resp datatypes.Account, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "getAccount", nil, &r.Options, &resp) - return -} - -// This returns the number of hourly instances an account can add from this point. It is essentially the same as [[SoftLayer_Account/hourlyInstanceLimit|hourlyInstanceLimit]] minus existing hourly instances and ones spoken for as part of a scaling group (as determined by the group's maximum). This number can be used to help determine a maximum member count for a new group to ensure it won't go over the account limit. This can return a negative value if the current hourly instance count combined with the unused-but-possible count (based on other scale group maximums) is over the limit. -func (r Scale_Group) GetAvailableHourlyInstanceLimit() (resp int, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "getAvailableHourlyInstanceLimit", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Group) GetAvailableRegionalGroups() (resp []datatypes.Location_Group, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "getAvailableRegionalGroups", nil, &r.Options, &resp) - return -} - -// Retrieve Collection of load balancers for this auto scale group. -func (r Scale_Group) GetLoadBalancers() (resp []datatypes.Scale_LoadBalancer, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "getLoadBalancers", nil, &r.Options, &resp) - return -} - -// Retrieve Collection of log entries for this group. -func (r Scale_Group) GetLogs() (resp []datatypes.Scale_Group_Log, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "getLogs", nil, &r.Options, &resp) - return -} - -// Retrieve Collection of VLANs for this auto scale group. VLANs are optional. This can contain a public or private VLAN or both. When a single VLAN for a public/private type is given it can be a non-purchased VLAN only if the minimumMemberCount on the group is >= 1. This can also contain any number of public/private purchased VLANs and members are staggered across them when scaled up. -func (r Scale_Group) GetNetworkVlans() (resp []datatypes.Scale_Network_Vlan, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "getNetworkVlans", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Group) GetObject() (resp datatypes.Scale_Group, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve Collection of policies for this group. This can be empty. -func (r Scale_Group) GetPolicies() (resp []datatypes.Scale_Policy, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "getPolicies", nil, &r.Options, &resp) - return -} - -// Retrieve The regional group for this scale group. -func (r Scale_Group) GetRegionalGroup() (resp datatypes.Location_Group_Regional, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "getRegionalGroup", nil, &r.Options, &resp) - return -} - -// Retrieve The status for this scale group. -func (r Scale_Group) GetStatus() (resp datatypes.Scale_Group_Status, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "getStatus", nil, &r.Options, &resp) - return -} - -// Retrieve The termination policy for this scaling group. -func (r Scale_Group) GetTerminationPolicy() (resp datatypes.Scale_Termination_Policy, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "getTerminationPolicy", nil, &r.Options, &resp) - return -} - -// Retrieve Collection of guests that have been pinned to this group. Guest assets are only used for certain trigger checks such as resource watches. They do not count towards the auto scaling guest counts of this group in anyway and are never automatically added or removed. -func (r Scale_Group) GetVirtualGuestAssets() (resp []datatypes.Scale_Asset_Virtual_Guest, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "getVirtualGuestAssets", nil, &r.Options, &resp) - return -} - -// Retrieve Collection of guests that have been scaled with the group. When this group is active, the count of guests here is guaranteed to be between minimumMemberCount and maximumMemberCount inclusively. -func (r Scale_Group) GetVirtualGuestMembers() (resp []datatypes.Scale_Member_Virtual_Guest, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group", "getVirtualGuestMembers", nil, &r.Options, &resp) - return -} - -// Resume this group. The group must be in a suspended status to do this. By doing this, the group's status will become active. -func (r Scale_Group) Resume() (err error) { - var resp datatypes.Void - err = r.Session.DoRequest("SoftLayer_Scale_Group", "resume", nil, &r.Options, &resp) - return -} - -// Scale this group up or down by the amount given. If the number is negative, the given amount of guest members are removed. Similarly, if the number is positive, the given amount of guest members are added. Note, this call will add or remove as much as asked for, but will NOT go beyond the limits set by minimumMemberCount and maximumMemberCount. The result is a collection of SoftLayer_Scale_Member instances that were either removed or added. This call can only be invoked on an active group and does not respect cooldown (i.e. even if in a cooldown period, the scaling will still occur). -func (r Scale_Group) Scale(delta *int) (resp []datatypes.Scale_Member, err error) { - params := []interface{}{ - delta, - } - err = r.Session.DoRequest("SoftLayer_Scale_Group", "scale", params, &r.Options, &resp) - return -} - -// Scale this group up or down to the number given. This call will add or remove as many guests as necessary, but will NOT go beyond the limits set by minimumMemberCount and maximumMemberCount. This call and its result are the equivalent of calling scale(number - virtualGuestMemberCount). This call can only be invoked on an active group and does not respect cooldown (i.e. even if in a cooldown period, the scaling will still occur). -func (r Scale_Group) ScaleTo(number *int) (resp []datatypes.Scale_Member, err error) { - params := []interface{}{ - number, - } - err = r.Session.DoRequest("SoftLayer_Scale_Group", "scaleTo", params, &r.Options, &resp) - return -} - -// Suspend this group. The group must be in an active status to do this. While suspended, a group cannot add or remove guest members for any reason. Changes to group settings that will cause a member to be added or deleted is also not allowed. -func (r Scale_Group) Suspend() (err error) { - var resp datatypes.Void - err = r.Session.DoRequest("SoftLayer_Scale_Group", "suspend", nil, &r.Options, &resp) - return -} - -// no documentation yet -type Scale_Group_Status struct { - Session *session.Session - Options sl.Options -} - -// GetScaleGroupStatusService returns an instance of the Scale_Group_Status SoftLayer service -func GetScaleGroupStatusService(sess *session.Session) Scale_Group_Status { - return Scale_Group_Status{Session: sess} -} - -func (r Scale_Group_Status) Id(id int) Scale_Group_Status { - r.Options.Id = &id - return r -} - -func (r Scale_Group_Status) Mask(mask string) Scale_Group_Status { - if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) { - mask = fmt.Sprintf("mask[%s]", mask) - } - - r.Options.Mask = mask - return r -} - -func (r Scale_Group_Status) Filter(filter string) Scale_Group_Status { - r.Options.Filter = filter - return r -} - -func (r Scale_Group_Status) Limit(limit int) Scale_Group_Status { - r.Options.Limit = &limit - return r -} - -func (r Scale_Group_Status) Offset(offset int) Scale_Group_Status { - r.Options.Offset = &offset - return r -} - -// no documentation yet -func (r Scale_Group_Status) GetAllObjects() (resp []datatypes.Scale_Group_Status, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group_Status", "getAllObjects", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Group_Status) GetObject() (resp datatypes.Scale_Group_Status, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Group_Status", "getObject", nil, &r.Options, &resp) - return -} - // no documentation yet type Scale_LoadBalancer struct { Session *session.Session @@ -519,86 +228,6 @@ func (r Scale_LoadBalancer) Offset(offset int) Scale_LoadBalancer { return r } -// Create a load balancer for a scale group. Once created, the configuration will be used to configure the load balancers for autoscaled members. -// -// If the given virtual server port exists for the given virtual IP address, it is reused here if all the other values match. Otherwise, the virtual server port will be created. -func (r Scale_LoadBalancer) CreateObject(templateObject *datatypes.Scale_LoadBalancer) (resp datatypes.Scale_LoadBalancer, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_LoadBalancer", "createObject", params, &r.Options, &resp) - return -} - -// Delete this load balancer configuration. Note, this does not affect existing scaled members. Once deleted however, future scaled members will not be load balanced with this configuration. -func (r Scale_LoadBalancer) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_LoadBalancer", "deleteObject", nil, &r.Options, &resp) - return -} - -// Edit this load balancer configuration. Note, this does not affect existing scaled members. Once edited however, future scaled members will be load balanced with this configuration. -func (r Scale_LoadBalancer) EditObject(templateObject *datatypes.Scale_LoadBalancer) (resp bool, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_LoadBalancer", "editObject", params, &r.Options, &resp) - return -} - -// Retrieve The percentage of connections allocated to this virtual server. -func (r Scale_LoadBalancer) GetAllocationPercent() (resp int, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_LoadBalancer", "getAllocationPercent", nil, &r.Options, &resp) - return -} - -// Retrieve The health check for this configuration. -func (r Scale_LoadBalancer) GetHealthCheck() (resp datatypes.Network_Application_Delivery_Controller_LoadBalancer_Health_Check, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_LoadBalancer", "getHealthCheck", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_LoadBalancer) GetObject() (resp datatypes.Scale_LoadBalancer, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_LoadBalancer", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The routing method. -func (r Scale_LoadBalancer) GetRoutingMethod() (resp datatypes.Network_Application_Delivery_Controller_LoadBalancer_Routing_Method, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_LoadBalancer", "getRoutingMethod", nil, &r.Options, &resp) - return -} - -// Retrieve The routing type. -func (r Scale_LoadBalancer) GetRoutingType() (resp datatypes.Network_Application_Delivery_Controller_LoadBalancer_Routing_Type, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_LoadBalancer", "getRoutingType", nil, &r.Options, &resp) - return -} - -// Retrieve The group this load balancer configuration is for. -func (r Scale_LoadBalancer) GetScaleGroup() (resp datatypes.Scale_Group, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_LoadBalancer", "getScaleGroup", nil, &r.Options, &resp) - return -} - -// Retrieve The ID of the virtual IP address. -func (r Scale_LoadBalancer) GetVirtualIpAddressId() (resp int, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_LoadBalancer", "getVirtualIpAddressId", nil, &r.Options, &resp) - return -} - -// Retrieve The virtual server for this configuration. -func (r Scale_LoadBalancer) GetVirtualServer() (resp datatypes.Network_Application_Delivery_Controller_LoadBalancer_VirtualServer, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_LoadBalancer", "getVirtualServer", nil, &r.Options, &resp) - return -} - -// Retrieve The port on the virtual server. -func (r Scale_LoadBalancer) GetVirtualServerPort() (resp int, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_LoadBalancer", "getVirtualServerPort", nil, &r.Options, &resp) - return -} - // no documentation yet type Scale_Member struct { Session *session.Session @@ -639,24 +268,6 @@ func (r Scale_Member) Offset(offset int) Scale_Member { return r } -// no documentation yet -func (r Scale_Member) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Member", "deleteObject", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Member) GetObject() (resp datatypes.Scale_Member, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Member", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The group this member belongs to. -func (r Scale_Member) GetScaleGroup() (resp datatypes.Scale_Group, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Member", "getScaleGroup", nil, &r.Options, &resp) - return -} - // no documentation yet type Scale_Member_Virtual_Guest struct { Session *session.Session @@ -697,36 +308,6 @@ func (r Scale_Member_Virtual_Guest) Offset(offset int) Scale_Member_Virtual_Gues return r } -// Delete this group member. Note, this can only be done on an active group when it wont cause the group to go below its minimumMemberCount. This is not the recommended way to delete members. Instead, users should invoke scale(-1) on SoftLayer_Scale_Group so it can choose the best guest member to remove. -func (r Scale_Member_Virtual_Guest) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Member_Virtual_Guest", "deleteObject", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Member_Virtual_Guest) GetObject() (resp datatypes.Scale_Member_Virtual_Guest, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Member_Virtual_Guest", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The group this member belongs to. -func (r Scale_Member_Virtual_Guest) GetScaleGroup() (resp datatypes.Scale_Group, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Member_Virtual_Guest", "getScaleGroup", nil, &r.Options, &resp) - return -} - -// Retrieve The guest for this member. -func (r Scale_Member_Virtual_Guest) GetVirtualGuest() (resp datatypes.Virtual_Guest, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Member_Virtual_Guest", "getVirtualGuest", nil, &r.Options, &resp) - return -} - -// Retrieve The identifier of the guest for this member. -func (r Scale_Member_Virtual_Guest) GetVirtualGuestId() (resp int, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Member_Virtual_Guest", "getVirtualGuestId", nil, &r.Options, &resp) - return -} - // no documentation yet type Scale_Network_Vlan struct { Session *session.Session @@ -766,903 +347,3 @@ func (r Scale_Network_Vlan) Offset(offset int) Scale_Network_Vlan { r.Options.Offset = &offset return r } - -// no documentation yet -func (r Scale_Network_Vlan) CreateObject(templateObject *datatypes.Scale_Network_Vlan) (resp datatypes.Scale_Network_Vlan, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Network_Vlan", "createObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Network_Vlan) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Network_Vlan", "deleteObject", nil, &r.Options, &resp) - return -} - -// Retrieve The network VLAN to scale with. -func (r Scale_Network_Vlan) GetNetworkVlan() (resp datatypes.Network_Vlan, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Network_Vlan", "getNetworkVlan", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Network_Vlan) GetObject() (resp datatypes.Scale_Network_Vlan, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Network_Vlan", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The group this network VLAN is for. -func (r Scale_Network_Vlan) GetScaleGroup() (resp datatypes.Scale_Group, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Network_Vlan", "getScaleGroup", nil, &r.Options, &resp) - return -} - -// no documentation yet -type Scale_Policy struct { - Session *session.Session - Options sl.Options -} - -// GetScalePolicyService returns an instance of the Scale_Policy SoftLayer service -func GetScalePolicyService(sess *session.Session) Scale_Policy { - return Scale_Policy{Session: sess} -} - -func (r Scale_Policy) Id(id int) Scale_Policy { - r.Options.Id = &id - return r -} - -func (r Scale_Policy) Mask(mask string) Scale_Policy { - if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) { - mask = fmt.Sprintf("mask[%s]", mask) - } - - r.Options.Mask = mask - return r -} - -func (r Scale_Policy) Filter(filter string) Scale_Policy { - r.Options.Filter = filter - return r -} - -func (r Scale_Policy) Limit(limit int) Scale_Policy { - r.Options.Limit = &limit - return r -} - -func (r Scale_Policy) Offset(offset int) Scale_Policy { - r.Options.Offset = &offset - return r -} - -// no documentation yet -func (r Scale_Policy) CreateObject(templateObject *datatypes.Scale_Policy) (resp datatypes.Scale_Policy, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy", "createObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy", "deleteObject", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy) EditObject(templateObject *datatypes.Scale_Policy) (resp bool, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy", "editObject", params, &r.Options, &resp) - return -} - -// Retrieve The actions to perform upon any trigger hit. Currently this must be a single value. -func (r Scale_Policy) GetActions() (resp []datatypes.Scale_Policy_Action, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy", "getActions", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy) GetObject() (resp datatypes.Scale_Policy, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The one-time triggers to check for this group. -func (r Scale_Policy) GetOneTimeTriggers() (resp []datatypes.Scale_Policy_Trigger_OneTime, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy", "getOneTimeTriggers", nil, &r.Options, &resp) - return -} - -// Retrieve The repeating triggers to check for this group. -func (r Scale_Policy) GetRepeatingTriggers() (resp []datatypes.Scale_Policy_Trigger_Repeating, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy", "getRepeatingTriggers", nil, &r.Options, &resp) - return -} - -// Retrieve The resource-use triggers to check for this group. -func (r Scale_Policy) GetResourceUseTriggers() (resp []datatypes.Scale_Policy_Trigger_ResourceUse, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy", "getResourceUseTriggers", nil, &r.Options, &resp) - return -} - -// Retrieve The scale actions to perform upon any trigger hit. Currently this must be a single value. -func (r Scale_Policy) GetScaleActions() (resp []datatypes.Scale_Policy_Action_Scale, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy", "getScaleActions", nil, &r.Options, &resp) - return -} - -// Retrieve The group this policy is on. -func (r Scale_Policy) GetScaleGroup() (resp datatypes.Scale_Group, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy", "getScaleGroup", nil, &r.Options, &resp) - return -} - -// Retrieve The triggers to check for this group. -func (r Scale_Policy) GetTriggers() (resp []datatypes.Scale_Policy_Trigger, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy", "getTriggers", nil, &r.Options, &resp) - return -} - -// Manually trigger the actions on this policy. Returns members if the trigger has an effect, or an empty set of members if there is no effect. Sometimes this may not have an effect if the group is not active, in cooldown, or the result would violate the group range. If this call fails, the group is suspended, the failure logged, and a ticket is created. -func (r Scale_Policy) Trigger() (resp []datatypes.Scale_Member, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy", "trigger", nil, &r.Options, &resp) - return -} - -// no documentation yet -type Scale_Policy_Action struct { - Session *session.Session - Options sl.Options -} - -// GetScalePolicyActionService returns an instance of the Scale_Policy_Action SoftLayer service -func GetScalePolicyActionService(sess *session.Session) Scale_Policy_Action { - return Scale_Policy_Action{Session: sess} -} - -func (r Scale_Policy_Action) Id(id int) Scale_Policy_Action { - r.Options.Id = &id - return r -} - -func (r Scale_Policy_Action) Mask(mask string) Scale_Policy_Action { - if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) { - mask = fmt.Sprintf("mask[%s]", mask) - } - - r.Options.Mask = mask - return r -} - -func (r Scale_Policy_Action) Filter(filter string) Scale_Policy_Action { - r.Options.Filter = filter - return r -} - -func (r Scale_Policy_Action) Limit(limit int) Scale_Policy_Action { - r.Options.Limit = &limit - return r -} - -func (r Scale_Policy_Action) Offset(offset int) Scale_Policy_Action { - r.Options.Offset = &offset - return r -} - -// no documentation yet -func (r Scale_Policy_Action) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Action", "deleteObject", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Action) EditObject(templateObject *datatypes.Scale_Policy_Action) (resp bool, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Action", "editObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Action) GetObject() (resp datatypes.Scale_Policy_Action, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Action", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The policy this action is on. -func (r Scale_Policy_Action) GetScalePolicy() (resp datatypes.Scale_Policy, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Action", "getScalePolicy", nil, &r.Options, &resp) - return -} - -// Retrieve The type of action. -func (r Scale_Policy_Action) GetType() (resp datatypes.Scale_Policy_Action_Type, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Action", "getType", nil, &r.Options, &resp) - return -} - -// no documentation yet -type Scale_Policy_Action_Scale struct { - Session *session.Session - Options sl.Options -} - -// GetScalePolicyActionScaleService returns an instance of the Scale_Policy_Action_Scale SoftLayer service -func GetScalePolicyActionScaleService(sess *session.Session) Scale_Policy_Action_Scale { - return Scale_Policy_Action_Scale{Session: sess} -} - -func (r Scale_Policy_Action_Scale) Id(id int) Scale_Policy_Action_Scale { - r.Options.Id = &id - return r -} - -func (r Scale_Policy_Action_Scale) Mask(mask string) Scale_Policy_Action_Scale { - if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) { - mask = fmt.Sprintf("mask[%s]", mask) - } - - r.Options.Mask = mask - return r -} - -func (r Scale_Policy_Action_Scale) Filter(filter string) Scale_Policy_Action_Scale { - r.Options.Filter = filter - return r -} - -func (r Scale_Policy_Action_Scale) Limit(limit int) Scale_Policy_Action_Scale { - r.Options.Limit = &limit - return r -} - -func (r Scale_Policy_Action_Scale) Offset(offset int) Scale_Policy_Action_Scale { - r.Options.Offset = &offset - return r -} - -// no documentation yet -func (r Scale_Policy_Action_Scale) CreateObject(templateObject *datatypes.Scale_Policy_Action_Scale) (resp datatypes.Scale_Policy_Action_Scale, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Action_Scale", "createObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Action_Scale) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Action_Scale", "deleteObject", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Action_Scale) EditObject(templateObject *datatypes.Scale_Policy_Action) (resp bool, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Action_Scale", "editObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Action_Scale) GetObject() (resp datatypes.Scale_Policy_Action_Scale, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Action_Scale", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The policy this action is on. -func (r Scale_Policy_Action_Scale) GetScalePolicy() (resp datatypes.Scale_Policy, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Action_Scale", "getScalePolicy", nil, &r.Options, &resp) - return -} - -// Retrieve The type of action. -func (r Scale_Policy_Action_Scale) GetType() (resp datatypes.Scale_Policy_Action_Type, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Action_Scale", "getType", nil, &r.Options, &resp) - return -} - -// no documentation yet -type Scale_Policy_Action_Type struct { - Session *session.Session - Options sl.Options -} - -// GetScalePolicyActionTypeService returns an instance of the Scale_Policy_Action_Type SoftLayer service -func GetScalePolicyActionTypeService(sess *session.Session) Scale_Policy_Action_Type { - return Scale_Policy_Action_Type{Session: sess} -} - -func (r Scale_Policy_Action_Type) Id(id int) Scale_Policy_Action_Type { - r.Options.Id = &id - return r -} - -func (r Scale_Policy_Action_Type) Mask(mask string) Scale_Policy_Action_Type { - if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) { - mask = fmt.Sprintf("mask[%s]", mask) - } - - r.Options.Mask = mask - return r -} - -func (r Scale_Policy_Action_Type) Filter(filter string) Scale_Policy_Action_Type { - r.Options.Filter = filter - return r -} - -func (r Scale_Policy_Action_Type) Limit(limit int) Scale_Policy_Action_Type { - r.Options.Limit = &limit - return r -} - -func (r Scale_Policy_Action_Type) Offset(offset int) Scale_Policy_Action_Type { - r.Options.Offset = &offset - return r -} - -// no documentation yet -func (r Scale_Policy_Action_Type) GetAllObjects() (resp []datatypes.Scale_Policy_Action_Type, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Action_Type", "getAllObjects", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Action_Type) GetObject() (resp datatypes.Scale_Policy_Action_Type, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Action_Type", "getObject", nil, &r.Options, &resp) - return -} - -// no documentation yet -type Scale_Policy_Trigger struct { - Session *session.Session - Options sl.Options -} - -// GetScalePolicyTriggerService returns an instance of the Scale_Policy_Trigger SoftLayer service -func GetScalePolicyTriggerService(sess *session.Session) Scale_Policy_Trigger { - return Scale_Policy_Trigger{Session: sess} -} - -func (r Scale_Policy_Trigger) Id(id int) Scale_Policy_Trigger { - r.Options.Id = &id - return r -} - -func (r Scale_Policy_Trigger) Mask(mask string) Scale_Policy_Trigger { - if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) { - mask = fmt.Sprintf("mask[%s]", mask) - } - - r.Options.Mask = mask - return r -} - -func (r Scale_Policy_Trigger) Filter(filter string) Scale_Policy_Trigger { - r.Options.Filter = filter - return r -} - -func (r Scale_Policy_Trigger) Limit(limit int) Scale_Policy_Trigger { - r.Options.Limit = &limit - return r -} - -func (r Scale_Policy_Trigger) Offset(offset int) Scale_Policy_Trigger { - r.Options.Offset = &offset - return r -} - -// no documentation yet -func (r Scale_Policy_Trigger) CreateObject(templateObject *datatypes.Scale_Policy_Trigger) (resp datatypes.Scale_Policy_Trigger, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger", "createObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger", "deleteObject", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger) EditObject(templateObject *datatypes.Scale_Policy_Trigger) (resp bool, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger", "editObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger) GetObject() (resp datatypes.Scale_Policy_Trigger, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The policy this trigger is on. -func (r Scale_Policy_Trigger) GetScalePolicy() (resp datatypes.Scale_Policy, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger", "getScalePolicy", nil, &r.Options, &resp) - return -} - -// Retrieve The type of trigger. -func (r Scale_Policy_Trigger) GetType() (resp datatypes.Scale_Policy_Trigger_Type, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger", "getType", nil, &r.Options, &resp) - return -} - -// no documentation yet -type Scale_Policy_Trigger_OneTime struct { - Session *session.Session - Options sl.Options -} - -// GetScalePolicyTriggerOneTimeService returns an instance of the Scale_Policy_Trigger_OneTime SoftLayer service -func GetScalePolicyTriggerOneTimeService(sess *session.Session) Scale_Policy_Trigger_OneTime { - return Scale_Policy_Trigger_OneTime{Session: sess} -} - -func (r Scale_Policy_Trigger_OneTime) Id(id int) Scale_Policy_Trigger_OneTime { - r.Options.Id = &id - return r -} - -func (r Scale_Policy_Trigger_OneTime) Mask(mask string) Scale_Policy_Trigger_OneTime { - if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) { - mask = fmt.Sprintf("mask[%s]", mask) - } - - r.Options.Mask = mask - return r -} - -func (r Scale_Policy_Trigger_OneTime) Filter(filter string) Scale_Policy_Trigger_OneTime { - r.Options.Filter = filter - return r -} - -func (r Scale_Policy_Trigger_OneTime) Limit(limit int) Scale_Policy_Trigger_OneTime { - r.Options.Limit = &limit - return r -} - -func (r Scale_Policy_Trigger_OneTime) Offset(offset int) Scale_Policy_Trigger_OneTime { - r.Options.Offset = &offset - return r -} - -// no documentation yet -func (r Scale_Policy_Trigger_OneTime) CreateObject(templateObject *datatypes.Scale_Policy_Trigger_OneTime) (resp datatypes.Scale_Policy_Trigger_OneTime, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_OneTime", "createObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_OneTime) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_OneTime", "deleteObject", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_OneTime) EditObject(templateObject *datatypes.Scale_Policy_Trigger) (resp bool, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_OneTime", "editObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_OneTime) GetObject() (resp datatypes.Scale_Policy_Trigger_OneTime, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_OneTime", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The policy this trigger is on. -func (r Scale_Policy_Trigger_OneTime) GetScalePolicy() (resp datatypes.Scale_Policy, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_OneTime", "getScalePolicy", nil, &r.Options, &resp) - return -} - -// Retrieve The type of trigger. -func (r Scale_Policy_Trigger_OneTime) GetType() (resp datatypes.Scale_Policy_Trigger_Type, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_OneTime", "getType", nil, &r.Options, &resp) - return -} - -// no documentation yet -type Scale_Policy_Trigger_Repeating struct { - Session *session.Session - Options sl.Options -} - -// GetScalePolicyTriggerRepeatingService returns an instance of the Scale_Policy_Trigger_Repeating SoftLayer service -func GetScalePolicyTriggerRepeatingService(sess *session.Session) Scale_Policy_Trigger_Repeating { - return Scale_Policy_Trigger_Repeating{Session: sess} -} - -func (r Scale_Policy_Trigger_Repeating) Id(id int) Scale_Policy_Trigger_Repeating { - r.Options.Id = &id - return r -} - -func (r Scale_Policy_Trigger_Repeating) Mask(mask string) Scale_Policy_Trigger_Repeating { - if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) { - mask = fmt.Sprintf("mask[%s]", mask) - } - - r.Options.Mask = mask - return r -} - -func (r Scale_Policy_Trigger_Repeating) Filter(filter string) Scale_Policy_Trigger_Repeating { - r.Options.Filter = filter - return r -} - -func (r Scale_Policy_Trigger_Repeating) Limit(limit int) Scale_Policy_Trigger_Repeating { - r.Options.Limit = &limit - return r -} - -func (r Scale_Policy_Trigger_Repeating) Offset(offset int) Scale_Policy_Trigger_Repeating { - r.Options.Offset = &offset - return r -} - -// no documentation yet -func (r Scale_Policy_Trigger_Repeating) CreateObject(templateObject *datatypes.Scale_Policy_Trigger_Repeating) (resp datatypes.Scale_Policy_Trigger_Repeating, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_Repeating", "createObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_Repeating) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_Repeating", "deleteObject", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_Repeating) EditObject(templateObject *datatypes.Scale_Policy_Trigger) (resp bool, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_Repeating", "editObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_Repeating) GetObject() (resp datatypes.Scale_Policy_Trigger_Repeating, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_Repeating", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The policy this trigger is on. -func (r Scale_Policy_Trigger_Repeating) GetScalePolicy() (resp datatypes.Scale_Policy, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_Repeating", "getScalePolicy", nil, &r.Options, &resp) - return -} - -// Retrieve The type of trigger. -func (r Scale_Policy_Trigger_Repeating) GetType() (resp datatypes.Scale_Policy_Trigger_Type, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_Repeating", "getType", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_Repeating) ValidateCronExpression(expression *string) (err error) { - var resp datatypes.Void - params := []interface{}{ - expression, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_Repeating", "validateCronExpression", params, &r.Options, &resp) - return -} - -// no documentation yet -type Scale_Policy_Trigger_ResourceUse struct { - Session *session.Session - Options sl.Options -} - -// GetScalePolicyTriggerResourceUseService returns an instance of the Scale_Policy_Trigger_ResourceUse SoftLayer service -func GetScalePolicyTriggerResourceUseService(sess *session.Session) Scale_Policy_Trigger_ResourceUse { - return Scale_Policy_Trigger_ResourceUse{Session: sess} -} - -func (r Scale_Policy_Trigger_ResourceUse) Id(id int) Scale_Policy_Trigger_ResourceUse { - r.Options.Id = &id - return r -} - -func (r Scale_Policy_Trigger_ResourceUse) Mask(mask string) Scale_Policy_Trigger_ResourceUse { - if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) { - mask = fmt.Sprintf("mask[%s]", mask) - } - - r.Options.Mask = mask - return r -} - -func (r Scale_Policy_Trigger_ResourceUse) Filter(filter string) Scale_Policy_Trigger_ResourceUse { - r.Options.Filter = filter - return r -} - -func (r Scale_Policy_Trigger_ResourceUse) Limit(limit int) Scale_Policy_Trigger_ResourceUse { - r.Options.Limit = &limit - return r -} - -func (r Scale_Policy_Trigger_ResourceUse) Offset(offset int) Scale_Policy_Trigger_ResourceUse { - r.Options.Offset = &offset - return r -} - -// no documentation yet -func (r Scale_Policy_Trigger_ResourceUse) CreateObject(templateObject *datatypes.Scale_Policy_Trigger_ResourceUse) (resp datatypes.Scale_Policy_Trigger_ResourceUse, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse", "createObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_ResourceUse) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse", "deleteObject", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_ResourceUse) EditObject(templateObject *datatypes.Scale_Policy_Trigger) (resp bool, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse", "editObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_ResourceUse) GetObject() (resp datatypes.Scale_Policy_Trigger_ResourceUse, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The policy this trigger is on. -func (r Scale_Policy_Trigger_ResourceUse) GetScalePolicy() (resp datatypes.Scale_Policy, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse", "getScalePolicy", nil, &r.Options, &resp) - return -} - -// Retrieve The type of trigger. -func (r Scale_Policy_Trigger_ResourceUse) GetType() (resp datatypes.Scale_Policy_Trigger_Type, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse", "getType", nil, &r.Options, &resp) - return -} - -// Retrieve The resource watches for this trigger. -func (r Scale_Policy_Trigger_ResourceUse) GetWatches() (resp []datatypes.Scale_Policy_Trigger_ResourceUse_Watch, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse", "getWatches", nil, &r.Options, &resp) - return -} - -// no documentation yet -type Scale_Policy_Trigger_ResourceUse_Watch struct { - Session *session.Session - Options sl.Options -} - -// GetScalePolicyTriggerResourceUseWatchService returns an instance of the Scale_Policy_Trigger_ResourceUse_Watch SoftLayer service -func GetScalePolicyTriggerResourceUseWatchService(sess *session.Session) Scale_Policy_Trigger_ResourceUse_Watch { - return Scale_Policy_Trigger_ResourceUse_Watch{Session: sess} -} - -func (r Scale_Policy_Trigger_ResourceUse_Watch) Id(id int) Scale_Policy_Trigger_ResourceUse_Watch { - r.Options.Id = &id - return r -} - -func (r Scale_Policy_Trigger_ResourceUse_Watch) Mask(mask string) Scale_Policy_Trigger_ResourceUse_Watch { - if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) { - mask = fmt.Sprintf("mask[%s]", mask) - } - - r.Options.Mask = mask - return r -} - -func (r Scale_Policy_Trigger_ResourceUse_Watch) Filter(filter string) Scale_Policy_Trigger_ResourceUse_Watch { - r.Options.Filter = filter - return r -} - -func (r Scale_Policy_Trigger_ResourceUse_Watch) Limit(limit int) Scale_Policy_Trigger_ResourceUse_Watch { - r.Options.Limit = &limit - return r -} - -func (r Scale_Policy_Trigger_ResourceUse_Watch) Offset(offset int) Scale_Policy_Trigger_ResourceUse_Watch { - r.Options.Offset = &offset - return r -} - -// no documentation yet -func (r Scale_Policy_Trigger_ResourceUse_Watch) CreateObject(templateObject *datatypes.Scale_Policy_Trigger_ResourceUse_Watch) (resp datatypes.Scale_Policy_Trigger_ResourceUse_Watch, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse_Watch", "createObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_ResourceUse_Watch) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse_Watch", "deleteObject", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_ResourceUse_Watch) EditObject(templateObject *datatypes.Scale_Policy_Trigger_ResourceUse_Watch) (resp bool, err error) { - params := []interface{}{ - templateObject, - } - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse_Watch", "editObject", params, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_ResourceUse_Watch) GetAllPossibleAlgorithms() (resp []string, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse_Watch", "getAllPossibleAlgorithms", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_ResourceUse_Watch) GetAllPossibleMetrics() (resp []string, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse_Watch", "getAllPossibleMetrics", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_ResourceUse_Watch) GetAllPossibleOperators() (resp []string, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse_Watch", "getAllPossibleOperators", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_ResourceUse_Watch) GetObject() (resp datatypes.Scale_Policy_Trigger_ResourceUse_Watch, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse_Watch", "getObject", nil, &r.Options, &resp) - return -} - -// Retrieve The trigger this watch is on. -func (r Scale_Policy_Trigger_ResourceUse_Watch) GetScalePolicyTrigger() (resp datatypes.Scale_Policy_Trigger_ResourceUse, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_ResourceUse_Watch", "getScalePolicyTrigger", nil, &r.Options, &resp) - return -} - -// no documentation yet -type Scale_Policy_Trigger_Type struct { - Session *session.Session - Options sl.Options -} - -// GetScalePolicyTriggerTypeService returns an instance of the Scale_Policy_Trigger_Type SoftLayer service -func GetScalePolicyTriggerTypeService(sess *session.Session) Scale_Policy_Trigger_Type { - return Scale_Policy_Trigger_Type{Session: sess} -} - -func (r Scale_Policy_Trigger_Type) Id(id int) Scale_Policy_Trigger_Type { - r.Options.Id = &id - return r -} - -func (r Scale_Policy_Trigger_Type) Mask(mask string) Scale_Policy_Trigger_Type { - if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) { - mask = fmt.Sprintf("mask[%s]", mask) - } - - r.Options.Mask = mask - return r -} - -func (r Scale_Policy_Trigger_Type) Filter(filter string) Scale_Policy_Trigger_Type { - r.Options.Filter = filter - return r -} - -func (r Scale_Policy_Trigger_Type) Limit(limit int) Scale_Policy_Trigger_Type { - r.Options.Limit = &limit - return r -} - -func (r Scale_Policy_Trigger_Type) Offset(offset int) Scale_Policy_Trigger_Type { - r.Options.Offset = &offset - return r -} - -// no documentation yet -func (r Scale_Policy_Trigger_Type) GetAllObjects() (resp []datatypes.Scale_Policy_Trigger_Type, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_Type", "getAllObjects", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Policy_Trigger_Type) GetObject() (resp datatypes.Scale_Policy_Trigger_Type, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Policy_Trigger_Type", "getObject", nil, &r.Options, &resp) - return -} - -// no documentation yet -type Scale_Termination_Policy struct { - Session *session.Session - Options sl.Options -} - -// GetScaleTerminationPolicyService returns an instance of the Scale_Termination_Policy SoftLayer service -func GetScaleTerminationPolicyService(sess *session.Session) Scale_Termination_Policy { - return Scale_Termination_Policy{Session: sess} -} - -func (r Scale_Termination_Policy) Id(id int) Scale_Termination_Policy { - r.Options.Id = &id - return r -} - -func (r Scale_Termination_Policy) Mask(mask string) Scale_Termination_Policy { - if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) { - mask = fmt.Sprintf("mask[%s]", mask) - } - - r.Options.Mask = mask - return r -} - -func (r Scale_Termination_Policy) Filter(filter string) Scale_Termination_Policy { - r.Options.Filter = filter - return r -} - -func (r Scale_Termination_Policy) Limit(limit int) Scale_Termination_Policy { - r.Options.Limit = &limit - return r -} - -func (r Scale_Termination_Policy) Offset(offset int) Scale_Termination_Policy { - r.Options.Offset = &offset - return r -} - -// no documentation yet -func (r Scale_Termination_Policy) GetAllObjects() (resp []datatypes.Scale_Termination_Policy, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Termination_Policy", "getAllObjects", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r Scale_Termination_Policy) GetObject() (resp datatypes.Scale_Termination_Policy, err error) { - err = r.Session.DoRequest("SoftLayer_Scale_Termination_Policy", "getObject", nil, &r.Options, &resp) - return -} diff --git a/services/user.go b/services/user.go index c27feeb..509a8f3 100644 --- a/services/user.go +++ b/services/user.go @@ -242,25 +242,6 @@ func (r User_Customer) ChangePreference(preferenceTypeKeyName *string, value *st return } -// This service checks the result of a previously requested external authentication. [[SoftLayer_Container_User_Customer_External_Binding_Phone|Phone external binding]] container can be used for this service. Make sure to set the [[SoftLayer_Container_User_Customer_External_Binding_Phone::authenticationToken|authenticationToken]] that is generated by [[SoftLayer_User_Customer|initiateExternalAuthentication]] service. -func (r User_Customer) CheckExternalAuthenticationStatus(authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp datatypes.Container_User_Customer_Portal_Token, err error) { - params := []interface{}{ - authenticationContainer, - } - err = r.Session.DoRequest("SoftLayer_User_Customer", "checkExternalAuthenticationStatus", params, &r.Options, &resp) - return -} - -// Add a description here -func (r User_Customer) CheckPhoneFactorAuthenticationForPasswordSet(passwordSet *datatypes.Container_User_Customer_PasswordSet, authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp bool, err error) { - params := []interface{}{ - passwordSet, - authenticationContainer, - } - err = r.Session.DoRequest("SoftLayer_User_Customer", "checkPhoneFactorAuthenticationForPasswordSet", params, &r.Options, &resp) - return -} - // Create a new subscriber for a given resource. func (r User_Customer) CreateNotificationSubscriber(keyName *string, resourceTableId *int) (resp bool, err error) { params := []interface{}{ @@ -407,7 +388,7 @@ func (r User_Customer) GetApiAuthenticationKeys() (resp []datatypes.User_Custome return } -// no documentation yet +// 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. func (r User_Customer) GetAuthenticationToken(token *datatypes.Container_User_Authentication_Token) (resp datatypes.Container_User_Authentication_Token, err error) { params := []interface{}{ token, @@ -769,17 +750,6 @@ func (r User_Customer) InTerminalStatus() (resp bool, err error) { return } -// The service initiates an external authentication with the given external authentication vendor. The authentication container and its content will be verified before an attempt is made to initiate an external authentication. [[SoftLayer_Container_User_Customer_External_Binding_Phone|Phone external binding]] container can be used for this service. -// -// This service returns a unique authentication request token. You can use [[SoftLayer_User_Customer::checkExternalAuthenticationStatus|checkExternalAuthenticationStatus]] service to check if the authentication request is complete or not. -func (r User_Customer) InitiateExternalAuthentication(authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp string, err error) { - params := []interface{}{ - authenticationContainer, - } - err = r.Session.DoRequest("SoftLayer_User_Customer", "initiateExternalAuthentication", params, &r.Options, &resp) - return -} - // 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. // // 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. @@ -839,7 +809,7 @@ func (r User_Customer) PerformExternalAuthentication(authenticationContainer *da // 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. // -// 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, Google Authentication, or Phone Factor 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. If the user has Phone Factor authentication, additional requests to SoftLayer_User_Customer::checkPhoneFactorAuthenticationForPasswordSet is required until a response other than Awaiting Response is received. +// 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. // // User portal passwords must match the following restrictions. Portal passwords must... // * ...be over eight characters long. @@ -1121,6 +1091,24 @@ func (r User_Customer) SilentlyMigrateUserOpenIdConnect(providerType *string) (r return } +// 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. +// +// 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". +func (r User_Customer) TurnOffMasterUserPermissionCheckMode() (err error) { + var resp datatypes.Void + err = r.Session.DoRequest("SoftLayer_User_Customer", "turnOffMasterUserPermissionCheckMode", nil, &r.Options, &resp) + return +} + +// 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". +// +// 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". +func (r User_Customer) TurnOnMasterUserPermissionCheckMode() (err error) { + var resp datatypes.Void + err = r.Session.DoRequest("SoftLayer_User_Customer", "turnOnMasterUserPermissionCheckMode", nil, &r.Options, &resp) + return +} + // 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. func (r User_Customer) UpdateNotificationSubscriber(notificationKeyName *string, active *int) (resp bool, err error) { params := []interface{}{ @@ -1175,7 +1163,7 @@ func (r User_Customer) UpdateVpnUser() (resp bool, err error) { return } -// no documentation yet +// 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 func (r User_Customer) ValidateAuthenticationToken(authenticationToken *datatypes.Container_User_Authentication_Token) (resp datatypes.Container_User_Customer_Portal_Token, err error) { params := []interface{}{ authenticationToken, @@ -1224,7 +1212,7 @@ func (r User_Customer_ApiAuthentication) Offset(offset int) User_Customer_ApiAut return r } -// no documentation yet +// 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. func (r User_Customer_ApiAuthentication) EditObject(templateObject *datatypes.User_Customer_ApiAuthentication) (resp datatypes.User_Customer_ApiAuthentication, err error) { params := []interface{}{ templateObject, @@ -1418,217 +1406,6 @@ func (r User_Customer_External_Binding) UpdateNote(text *string) (resp bool, err return } -// The SoftLayer_User_Customer_External_Binding_Phone data type contains information about an external binding that uses a phone call, SMS or mobile app for 2 form factor authentication. The external binding information is used when a SoftLayer customer logs into the SoftLayer customer portal or VPN to authenticate them against a trusted 3rd party, in this case using a mobile phone, mobile phone application or land-line phone. -// -// SoftLayer users with an active external binding will be prohibited from using the API for security reasons. -type User_Customer_External_Binding_Phone struct { - Session *session.Session - Options sl.Options -} - -// GetUserCustomerExternalBindingPhoneService returns an instance of the User_Customer_External_Binding_Phone SoftLayer service -func GetUserCustomerExternalBindingPhoneService(sess *session.Session) User_Customer_External_Binding_Phone { - return User_Customer_External_Binding_Phone{Session: sess} -} - -func (r User_Customer_External_Binding_Phone) Id(id int) User_Customer_External_Binding_Phone { - r.Options.Id = &id - return r -} - -func (r User_Customer_External_Binding_Phone) Mask(mask string) User_Customer_External_Binding_Phone { - if !strings.HasPrefix(mask, "mask[") && (strings.Contains(mask, "[") || strings.Contains(mask, ",")) { - mask = fmt.Sprintf("mask[%s]", mask) - } - - r.Options.Mask = mask - return r -} - -func (r User_Customer_External_Binding_Phone) Filter(filter string) User_Customer_External_Binding_Phone { - r.Options.Filter = filter - return r -} - -func (r User_Customer_External_Binding_Phone) Limit(limit int) User_Customer_External_Binding_Phone { - r.Options.Limit = &limit - return r -} - -func (r User_Customer_External_Binding_Phone) Offset(offset int) User_Customer_External_Binding_Phone { - r.Options.Offset = &offset - return r -} - -// Return a phone validation result. -func (r User_Customer_External_Binding_Phone) CheckPhoneValidationResult(token *string) (resp bool, err error) { - params := []interface{}{ - token, - } - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "checkPhoneValidationResult", params, &r.Options, &resp) - return -} - -// 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. -func (r User_Customer_External_Binding_Phone) DeleteObject() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "deleteObject", nil, &r.Options, &resp) - return -} - -// 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. -// -// You may supply one of the following reason when you disable an external binding: -// *Unspecified -// *TemporarilyUnavailable -// *Lost -// *Stolen -func (r User_Customer_External_Binding_Phone) Disable(reason *string) (resp bool, err error) { - params := []interface{}{ - reason, - } - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "disable", params, &r.Options, &resp) - return -} - -// 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. -// -// Please note that API access will be disabled for users that have an active external binding. -func (r User_Customer_External_Binding_Phone) Enable() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "enable", nil, &r.Options, &resp) - return -} - -// This service returns key names of all available authentication modes. See [[SoftLayer_Container_User_Customer_External_Binding_Phone_Mode|authentication mode]] container for details. -func (r User_Customer_External_Binding_Phone) GetAllAuthenticationModes() (resp []string, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "getAllAuthenticationModes", nil, &r.Options, &resp) - return -} - -// This service returns key names of all available authentication modes. Refer to [[SoftLayer_User_Customer_External_Binding_Phone::getAllAuthenticationModes|getAllAuthenticationModes]] to retrieve authentication mode key names. -func (r User_Customer_External_Binding_Phone) GetAllAuthenticationPinModes(authenticationModeKeyName *string) (resp []string, err error) { - params := []interface{}{ - authenticationModeKeyName, - } - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "getAllAuthenticationPinModes", params, &r.Options, &resp) - return -} - -// Retrieve Attributes of an external authentication binding. -func (r User_Customer_External_Binding_Phone) GetAttributes() (resp []datatypes.User_External_Binding_Attribute, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "getAttributes", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r User_Customer_External_Binding_Phone) GetAuthenticationMode() (resp datatypes.Container_User_Customer_External_Binding_Phone_Mode, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "getAuthenticationMode", nil, &r.Options, &resp) - return -} - -// Retrieve Information regarding the billing item for external authentication. -func (r User_Customer_External_Binding_Phone) GetBillingItem() (resp datatypes.Billing_Item, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "getBillingItem", nil, &r.Options, &resp) - return -} - -// Retrieve The current external binding status. It can be "ACTIVE" or "BLOCKED". -func (r User_Customer_External_Binding_Phone) GetBindingStatus() (resp string, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "getBindingStatus", nil, &r.Options, &resp) - return -} - -// Retrieve An optional note for identifying the external binding. -func (r User_Customer_External_Binding_Phone) GetNote() (resp string, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "getNote", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r User_Customer_External_Binding_Phone) GetObject() (resp datatypes.User_Customer_External_Binding_Phone, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "getObject", nil, &r.Options, &resp) - return -} - -// Some vendor's mobile app requires an activation code. Use this method to get an activation data. -func (r User_Customer_External_Binding_Phone) GetPhoneAppActivationCode() (resp []datatypes.User_External_Binding_Attribute, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "getPhoneAppActivationCode", nil, &r.Options, &resp) - return -} - -// no documentation yet -func (r User_Customer_External_Binding_Phone) GetPhoneData() (resp []datatypes.Container_User_Data_Phone, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "getPhoneData", nil, &r.Options, &resp) - return -} - -// Retrieve -func (r User_Customer_External_Binding_Phone) GetPinLength() (resp string, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "getPinLength", nil, &r.Options, &resp) - return -} - -// Retrieve The type of external authentication binding. -func (r User_Customer_External_Binding_Phone) GetType() (resp datatypes.User_External_Binding_Type, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "getType", nil, &r.Options, &resp) - return -} - -// Retrieve The SoftLayer user that the external authentication binding belongs to. -func (r User_Customer_External_Binding_Phone) GetUser() (resp datatypes.User_Customer, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "getUser", nil, &r.Options, &resp) - return -} - -// Retrieve The vendor of an external authentication binding. -func (r User_Customer_External_Binding_Phone) GetVendor() (resp datatypes.User_External_Binding_Vendor, err error) { - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "getVendor", nil, &r.Options, &resp) - return -} - -// Initiates a phone validation requests and returns a unique token. Use [[SoftLayer_User_Customer_External_Binding_Phone::checkPhoneValidationResult|checkPhoneValidationResult]] to find the phone validation result. -func (r User_Customer_External_Binding_Phone) RequestPhoneValidation(phoneData *datatypes.Container_User_Data_Phone) (resp string, err error) { - params := []interface{}{ - phoneData, - } - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "requestPhoneValidation", params, &r.Options, &resp) - return -} - -// This service allow you to change your phone authentication mode. See [[SoftLayer_Container_User_Customer_External_Binding_Phone_Mode|authentication mode]] container for available modes. -func (r User_Customer_External_Binding_Phone) UpdateAuthenticationMode(mode *datatypes.Container_User_Customer_External_Binding_Phone_Mode) (resp bool, err error) { - params := []interface{}{ - mode, - } - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "updateAuthenticationMode", params, &r.Options, &resp) - return -} - -// Update the note of an external binding. The note is an optional property that is used to store information about a binding. -func (r User_Customer_External_Binding_Phone) UpdateNote(text *string) (resp bool, err error) { - params := []interface{}{ - text, - } - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "updateNote", params, &r.Options, &resp) - return -} - -// Phone external binding supports a primary and a backup phone number. You can use this method to update your phone number used for the phone authentication. You can provide an array of [[SoftLayer_Container_User_Data_Phone|User Phone]] objects. You have to mark one as the primary phone number by setting "phoneType" to "PRIMARY". -// -// *countryCode: Country code number for the phone number. Default: 1 (United States & Canada +1) -// *phone: Phone number that 2 Form Factor system will call or text for user authentication. -// The phone number format must match the format selected in the Country Code. -// *extension: Specify the extension that will be dialed after the call is answered. Digits, commas, *, and # -// are allowed. Commas can be used for a one second pause to navigate phone system menus. -// *phoneType: Specify the primary and backup phone number by setting this value to "PRIMARY" or "BACKUP". -// If omitted, it will be considered to be the primary phone number. If you are passing two Phone objects, you must specify the phone type of each phone number. -func (r User_Customer_External_Binding_Phone) UpdatePhone(phoneData []datatypes.Container_User_Data_Phone) (resp bool, err error) { - params := []interface{}{ - phoneData, - } - err = r.Session.DoRequest("SoftLayer_User_Customer_External_Binding_Phone", "updatePhone", params, &r.Options, &resp) - return -} - // 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. // // The information provided by this external binding data type includes: @@ -2682,25 +2459,6 @@ func (r User_Customer_OpenIdConnect) ChangePreference(preferenceTypeKeyName *str return } -// This service checks the result of a previously requested external authentication. [[SoftLayer_Container_User_Customer_External_Binding_Phone|Phone external binding]] container can be used for this service. Make sure to set the [[SoftLayer_Container_User_Customer_External_Binding_Phone::authenticationToken|authenticationToken]] that is generated by [[SoftLayer_User_Customer|initiateExternalAuthentication]] service. -func (r User_Customer_OpenIdConnect) CheckExternalAuthenticationStatus(authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp datatypes.Container_User_Customer_Portal_Token, err error) { - params := []interface{}{ - authenticationContainer, - } - err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "checkExternalAuthenticationStatus", params, &r.Options, &resp) - return -} - -// Add a description here -func (r User_Customer_OpenIdConnect) CheckPhoneFactorAuthenticationForPasswordSet(passwordSet *datatypes.Container_User_Customer_PasswordSet, authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp bool, err error) { - params := []interface{}{ - passwordSet, - authenticationContainer, - } - err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "checkPhoneFactorAuthenticationForPasswordSet", params, &r.Options, &resp) - return -} - // no documentation yet func (r User_Customer_OpenIdConnect) CompleteInvitationAfterLogin(providerType *string, accessToken *string, emailRegistrationCode *string) (err error) { var resp datatypes.Void @@ -2883,7 +2641,7 @@ func (r User_Customer_OpenIdConnect) GetApiAuthenticationKeys() (resp []datatype return } -// no documentation yet +// 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. func (r User_Customer_OpenIdConnect) GetAuthenticationToken(token *datatypes.Container_User_Authentication_Token) (resp datatypes.Container_User_Authentication_Token, err error) { params := []interface{}{ token, @@ -3290,17 +3048,6 @@ func (r User_Customer_OpenIdConnect) InTerminalStatus() (resp bool, err error) { return } -// The service initiates an external authentication with the given external authentication vendor. The authentication container and its content will be verified before an attempt is made to initiate an external authentication. [[SoftLayer_Container_User_Customer_External_Binding_Phone|Phone external binding]] container can be used for this service. -// -// This service returns a unique authentication request token. You can use [[SoftLayer_User_Customer::checkExternalAuthenticationStatus|checkExternalAuthenticationStatus]] service to check if the authentication request is complete or not. -func (r User_Customer_OpenIdConnect) InitiateExternalAuthentication(authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp string, err error) { - params := []interface{}{ - authenticationContainer, - } - err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "initiateExternalAuthentication", params, &r.Options, &resp) - return -} - // 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. // // 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. @@ -3360,7 +3107,7 @@ func (r User_Customer_OpenIdConnect) PerformExternalAuthentication(authenticatio // 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. // -// 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, Google Authentication, or Phone Factor 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. If the user has Phone Factor authentication, additional requests to SoftLayer_User_Customer::checkPhoneFactorAuthenticationForPasswordSet is required until a response other than Awaiting Response is received. +// 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. // // User portal passwords must match the following restrictions. Portal passwords must... // * ...be over eight characters long. @@ -3642,6 +3389,24 @@ func (r User_Customer_OpenIdConnect) SilentlyMigrateUserOpenIdConnect(providerTy return } +// 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. +// +// 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". +func (r User_Customer_OpenIdConnect) TurnOffMasterUserPermissionCheckMode() (err error) { + var resp datatypes.Void + err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "turnOffMasterUserPermissionCheckMode", nil, &r.Options, &resp) + return +} + +// 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". +// +// 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". +func (r User_Customer_OpenIdConnect) TurnOnMasterUserPermissionCheckMode() (err error) { + var resp datatypes.Void + err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect", "turnOnMasterUserPermissionCheckMode", nil, &r.Options, &resp) + return +} + // 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. func (r User_Customer_OpenIdConnect) UpdateNotificationSubscriber(notificationKeyName *string, active *int) (resp bool, err error) { params := []interface{}{ @@ -3696,7 +3461,7 @@ func (r User_Customer_OpenIdConnect) UpdateVpnUser() (resp bool, err error) { return } -// no documentation yet +// 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 func (r User_Customer_OpenIdConnect) ValidateAuthenticationToken(authenticationToken *datatypes.Container_User_Authentication_Token) (resp datatypes.Container_User_Customer_Portal_Token, err error) { params := []interface{}{ authenticationToken, @@ -3930,25 +3695,6 @@ func (r User_Customer_OpenIdConnect_TrustedProfile) ChangePreference(preferenceT return } -// This service checks the result of a previously requested external authentication. [[SoftLayer_Container_User_Customer_External_Binding_Phone|Phone external binding]] container can be used for this service. Make sure to set the [[SoftLayer_Container_User_Customer_External_Binding_Phone::authenticationToken|authenticationToken]] that is generated by [[SoftLayer_User_Customer|initiateExternalAuthentication]] service. -func (r User_Customer_OpenIdConnect_TrustedProfile) CheckExternalAuthenticationStatus(authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp datatypes.Container_User_Customer_Portal_Token, err error) { - params := []interface{}{ - authenticationContainer, - } - err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "checkExternalAuthenticationStatus", params, &r.Options, &resp) - return -} - -// Add a description here -func (r User_Customer_OpenIdConnect_TrustedProfile) CheckPhoneFactorAuthenticationForPasswordSet(passwordSet *datatypes.Container_User_Customer_PasswordSet, authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp bool, err error) { - params := []interface{}{ - passwordSet, - authenticationContainer, - } - err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "checkPhoneFactorAuthenticationForPasswordSet", params, &r.Options, &resp) - return -} - // no documentation yet func (r User_Customer_OpenIdConnect_TrustedProfile) CompleteInvitationAfterLogin(providerType *string, accessToken *string, emailRegistrationCode *string) (err error) { var resp datatypes.Void @@ -4109,7 +3855,7 @@ func (r User_Customer_OpenIdConnect_TrustedProfile) GetApiAuthenticationKeys() ( return } -// no documentation yet +// 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. func (r User_Customer_OpenIdConnect_TrustedProfile) GetAuthenticationToken(token *datatypes.Container_User_Authentication_Token) (resp datatypes.Container_User_Authentication_Token, err error) { params := []interface{}{ token, @@ -4516,17 +4262,6 @@ func (r User_Customer_OpenIdConnect_TrustedProfile) InTerminalStatus() (resp boo return } -// The service initiates an external authentication with the given external authentication vendor. The authentication container and its content will be verified before an attempt is made to initiate an external authentication. [[SoftLayer_Container_User_Customer_External_Binding_Phone|Phone external binding]] container can be used for this service. -// -// This service returns a unique authentication request token. You can use [[SoftLayer_User_Customer::checkExternalAuthenticationStatus|checkExternalAuthenticationStatus]] service to check if the authentication request is complete or not. -func (r User_Customer_OpenIdConnect_TrustedProfile) InitiateExternalAuthentication(authenticationContainer *datatypes.Container_User_Customer_External_Binding) (resp string, err error) { - params := []interface{}{ - authenticationContainer, - } - err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "initiateExternalAuthentication", params, &r.Options, &resp) - return -} - // 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. // // 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. @@ -4586,7 +4321,7 @@ func (r User_Customer_OpenIdConnect_TrustedProfile) PerformExternalAuthenticatio // 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. // -// 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, Google Authentication, or Phone Factor 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. If the user has Phone Factor authentication, additional requests to SoftLayer_User_Customer::checkPhoneFactorAuthenticationForPasswordSet is required until a response other than Awaiting Response is received. +// 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. // // User portal passwords must match the following restrictions. Portal passwords must... // * ...be over eight characters long. @@ -4868,6 +4603,24 @@ func (r User_Customer_OpenIdConnect_TrustedProfile) SilentlyMigrateUserOpenIdCon return } +// 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. +// +// 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". +func (r User_Customer_OpenIdConnect_TrustedProfile) TurnOffMasterUserPermissionCheckMode() (err error) { + var resp datatypes.Void + err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "turnOffMasterUserPermissionCheckMode", nil, &r.Options, &resp) + return +} + +// 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". +// +// 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". +func (r User_Customer_OpenIdConnect_TrustedProfile) TurnOnMasterUserPermissionCheckMode() (err error) { + var resp datatypes.Void + err = r.Session.DoRequest("SoftLayer_User_Customer_OpenIdConnect_TrustedProfile", "turnOnMasterUserPermissionCheckMode", nil, &r.Options, &resp) + return +} + // 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. func (r User_Customer_OpenIdConnect_TrustedProfile) UpdateNotificationSubscriber(notificationKeyName *string, active *int) (resp bool, err error) { params := []interface{}{ @@ -4922,7 +4675,7 @@ func (r User_Customer_OpenIdConnect_TrustedProfile) UpdateVpnUser() (resp bool, return } -// no documentation yet +// 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 func (r User_Customer_OpenIdConnect_TrustedProfile) ValidateAuthenticationToken(authenticationToken *datatypes.Container_User_Authentication_Token) (resp datatypes.Container_User_Customer_Portal_Token, err error) { params := []interface{}{ authenticationToken, diff --git a/services/virtual.go b/services/virtual.go index 0ea995f..3292463 100644 --- a/services/virtual.go +++ b/services/virtual.go @@ -1745,19 +1745,19 @@ func (r Virtual_Guest) GetReverseDomainRecords() (resp []datatypes.Dns_Domain, e return } -// Retrieve Collection of scale assets this guest corresponds to. +// Retrieve [DEPRECATED] Collection of scale assets this guest corresponds to. func (r Virtual_Guest) GetScaleAssets() (resp []datatypes.Scale_Asset, err error) { err = r.Session.DoRequest("SoftLayer_Virtual_Guest", "getScaleAssets", nil, &r.Options, &resp) return } -// Retrieve The scale member for this guest, if applicable. +// Retrieve [DEPRECATED] The scale member for this guest, if applicable. func (r Virtual_Guest) GetScaleMember() (resp datatypes.Scale_Member_Virtual_Guest, err error) { err = r.Session.DoRequest("SoftLayer_Virtual_Guest", "getScaleMember", nil, &r.Options, &resp) return } -// Retrieve Whether or not this guest is a member of a scale group and was automatically created as part of a scale group action. +// Retrieve [DEPRECATED] Whether or not this guest is a member of a scale group and was automatically created as part of a scale group action. func (r Virtual_Guest) GetScaledFlag() (resp bool, err error) { err = r.Session.DoRequest("SoftLayer_Virtual_Guest", "getScaledFlag", nil, &r.Options, &resp) return @@ -2943,57 +2943,12 @@ func (r Virtual_Host) GetAccount() (resp datatypes.Account, err error) { return } -// Retrieve Boolean flag indicating whether this virtualization platform gets billed per guest rather than at a fixed rate. -func (r Virtual_Host) GetBilledPerGuestFlag() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Virtual_Host", "getBilledPerGuestFlag", nil, &r.Options, &resp) - return -} - -// Retrieve Boolean flag indicating whether this virtualization platform gets billed per memory usage rather than at a fixed rate. -func (r Virtual_Host) GetBilledPerMemoryUsageFlag() (resp bool, err error) { - err = r.Session.DoRequest("SoftLayer_Virtual_Host", "getBilledPerMemoryUsageFlag", nil, &r.Options, &resp) - return -} - -// Retrieve The guests associated with a virtual host. -func (r Virtual_Host) GetGuests() (resp []datatypes.Virtual_Guest, err error) { - err = r.Session.DoRequest("SoftLayer_Virtual_Host", "getGuests", nil, &r.Options, &resp) - return -} - // Retrieve The hardware record which a virtual host resides on. func (r Virtual_Host) GetHardware() (resp datatypes.Hardware_Server, err error) { err = r.Session.DoRequest("SoftLayer_Virtual_Host", "getHardware", nil, &r.Options, &resp) return } -// Query a virtualization platform directly to retrieve details regarding a guest. -func (r Virtual_Host) GetLiveGuestByUuid(uuid *string) (resp datatypes.Virtual_Guest, err error) { - params := []interface{}{ - uuid, - } - err = r.Session.DoRequest("SoftLayer_Virtual_Host", "getLiveGuestByUuid", params, &r.Options, &resp) - return -} - -// Query a virtualization platform directly to retrieve a list of known guests. -func (r Virtual_Host) GetLiveGuestList() (resp []datatypes.Virtual_Guest, err error) { - err = r.Session.DoRequest("SoftLayer_Virtual_Host", "getLiveGuestList", nil, &r.Options, &resp) - return -} - -// Query a virtualization platform directly to retrieve recent metric data for a guest. -func (r Virtual_Host) GetLiveGuestRecentMetricData(uuid *string, time *int, limit *int, interval *int) (resp []datatypes.Metric_Tracking_Object, err error) { - params := []interface{}{ - uuid, - time, - limit, - interval, - } - err = r.Session.DoRequest("SoftLayer_Virtual_Host", "getLiveGuestRecentMetricData", params, &r.Options, &resp) - return -} - // Retrieve The metric tracking object for this virtual host. func (r Virtual_Host) GetMetricTrackingObject() (resp datatypes.Metric_Tracking_Object, err error) { err = r.Session.DoRequest("SoftLayer_Virtual_Host", "getMetricTrackingObject", nil, &r.Options, &resp) @@ -3012,60 +2967,6 @@ func (r Virtual_Host) GetPciDevices() (resp []datatypes.Virtual_Host_PciDevice, return } -// Pause a virtual guest -func (r Virtual_Host) PauseLiveGuest(uuid *string) (resp bool, err error) { - params := []interface{}{ - uuid, - } - err = r.Session.DoRequest("SoftLayer_Virtual_Host", "pauseLiveGuest", params, &r.Options, &resp) - return -} - -// Power cycle a virtual guest -func (r Virtual_Host) PowerCycleLiveGuest(uuid *string) (resp bool, err error) { - params := []interface{}{ - uuid, - } - err = r.Session.DoRequest("SoftLayer_Virtual_Host", "powerCycleLiveGuest", params, &r.Options, &resp) - return -} - -// Power off a virtual guest -func (r Virtual_Host) PowerOffLiveGuest(uuid *string) (resp bool, err error) { - params := []interface{}{ - uuid, - } - err = r.Session.DoRequest("SoftLayer_Virtual_Host", "powerOffLiveGuest", params, &r.Options, &resp) - return -} - -// Power on a virtual guest -func (r Virtual_Host) PowerOnLiveGuest(uuid *string) (resp bool, err error) { - params := []interface{}{ - uuid, - } - err = r.Session.DoRequest("SoftLayer_Virtual_Host", "powerOnLiveGuest", params, &r.Options, &resp) - return -} - -// Attempt to complete a soft reboot of a guest by shutting down the operating system. -func (r Virtual_Host) RebootSoftLiveGuest(uuid *string) (resp bool, err error) { - params := []interface{}{ - uuid, - } - err = r.Session.DoRequest("SoftLayer_Virtual_Host", "rebootSoftLiveGuest", params, &r.Options, &resp) - return -} - -// Resume a virtual guest -func (r Virtual_Host) ResumeLiveGuest(uuid *string) (resp bool, err error) { - params := []interface{}{ - uuid, - } - err = r.Session.DoRequest("SoftLayer_Virtual_Host", "resumeLiveGuest", params, &r.Options, &resp) - return -} - // This data type presents the structure for a virtual guest placement group. The data type contains relational properties to the virtual guest placement group rule class. type Virtual_PlacementGroup struct { Session *session.Session