1/** 2 * Copyright 2016 IBM Corp. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17/** 18 * AUTOMATICALLY GENERATED CODE - DO NOT MODIFY 19 */ 20 21package datatypes 22 23// A Catalog is defined as a set of prices for products that SoftLayer offers for sale. These prices are organized into packages which represent the different servers and services that SoftLayer offers. 24type Product_Catalog struct { 25 Entity 26 27 // A count of brands using this Catalog 28 BrandCount *uint `json:"brandCount,omitempty" xmlrpc:"brandCount,omitempty"` 29 30 // Brands using this Catalog 31 Brands []Brand `json:"brands,omitempty" xmlrpc:"brands,omitempty"` 32 33 // A count of packages available in this catalog 34 PackageCount *uint `json:"packageCount,omitempty" xmlrpc:"packageCount,omitempty"` 35 36 // Packages available in this catalog 37 Packages []Product_Package `json:"packages,omitempty" xmlrpc:"packages,omitempty"` 38 39 // A count of prices available in this catalog 40 PriceCount *uint `json:"priceCount,omitempty" xmlrpc:"priceCount,omitempty"` 41 42 // Prices available in this catalog 43 Prices []Product_Item_Price `json:"prices,omitempty" xmlrpc:"prices,omitempty"` 44 45 // A count of products available in catalog 46 ProductCount *uint `json:"productCount,omitempty" xmlrpc:"productCount,omitempty"` 47 48 // Products available in catalog 49 Products []Product_Item `json:"products,omitempty" xmlrpc:"products,omitempty"` 50} 51 52// The SoftLayer_Product_Catalog_Item_Price type assigns an Item Price to a Catalog. This relation defines the composition of Item Prices in a Catalog. 53type Product_Catalog_Item_Price struct { 54 Entity 55 56 // Catalog being assigned 57 Catalog *Product_Catalog `json:"catalog,omitempty" xmlrpc:"catalog,omitempty"` 58 59 // The id of the Catalog the Item Price is part of. 60 CatalogId *int `json:"catalogId,omitempty" xmlrpc:"catalogId,omitempty"` 61 62 // The time the Item Price was defined in the Catalog 63 CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` 64 65 // The time the Item Price was changed for the Catalog 66 ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` 67 68 // Price being assigned 69 Price *Product_Item_Price `json:"price,omitempty" xmlrpc:"price,omitempty"` 70 71 // The id of the Item Price that is part of the Catalog. 72 PriceId *int `json:"priceId,omitempty" xmlrpc:"priceId,omitempty"` 73} 74 75// The SoftLayer_Product_Group data type contains product group relationship. 76type Product_Group struct { 77 Entity 78 79 // The name of the product group. 80 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 81} 82 83// The SoftLayer_Product_Item data type contains general information relating to a single SoftLayer product. 84type Product_Item struct { 85 Entity 86 87 // A count of 88 ActivePresaleEventCount *uint `json:"activePresaleEventCount,omitempty" xmlrpc:"activePresaleEventCount,omitempty"` 89 90 // no documentation yet 91 ActivePresaleEvents []Sales_Presale_Event `json:"activePresaleEvents,omitempty" xmlrpc:"activePresaleEvents,omitempty"` 92 93 // A count of active usage based prices. 94 ActiveUsagePriceCount *uint `json:"activeUsagePriceCount,omitempty" xmlrpc:"activeUsagePriceCount,omitempty"` 95 96 // Active usage based prices. 97 ActiveUsagePrices []Product_Item_Price `json:"activeUsagePrices,omitempty" xmlrpc:"activeUsagePrices,omitempty"` 98 99 // A count of the attribute values for a product item. These are additional properties that give extra information about the product being sold. 100 AttributeCount *uint `json:"attributeCount,omitempty" xmlrpc:"attributeCount,omitempty"` 101 102 // The attribute values for a product item. These are additional properties that give extra information about the product being sold. 103 Attributes []Product_Item_Attribute `json:"attributes,omitempty" xmlrpc:"attributes,omitempty"` 104 105 // A count of attributes that govern when an item may no longer be available. 106 AvailabilityAttributeCount *uint `json:"availabilityAttributeCount,omitempty" xmlrpc:"availabilityAttributeCount,omitempty"` 107 108 // Attributes that govern when an item may no longer be available. 109 AvailabilityAttributes []Product_Item_Attribute `json:"availabilityAttributes,omitempty" xmlrpc:"availabilityAttributes,omitempty"` 110 111 // An item's special billing type, if applicable. 112 BillingType *string `json:"billingType,omitempty" xmlrpc:"billingType,omitempty"` 113 114 // An item's included product item references. Some items have other items included in them that we specifically detail. They are here called Bundled Items. An example is Plesk unlimited. It as a bundled item labeled 'SiteBuilder'. These are the SoftLayer_Product_Item_Bundles objects. See the SoftLayer_Product_Item::bundleItems property for bundle of SoftLayer_Product_Item of objects. 115 Bundle []Product_Item_Bundles `json:"bundle,omitempty" xmlrpc:"bundle,omitempty"` 116 117 // A count of an item's included product item references. Some items have other items included in them that we specifically detail. They are here called Bundled Items. An example is Plesk unlimited. It as a bundled item labeled 'SiteBuilder'. These are the SoftLayer_Product_Item_Bundles objects. See the SoftLayer_Product_Item::bundleItems property for bundle of SoftLayer_Product_Item of objects. 118 BundleCount *uint `json:"bundleCount,omitempty" xmlrpc:"bundleCount,omitempty"` 119 120 // A count of an item's included products. Some items have other items included in them that we specifically detail. They are here called Bundled Items. An example is Plesk unlimited. It as a bundled item labeled 'SiteBuilder'. These are the SoftLayer_Product_Item objects. 121 BundleItemCount *uint `json:"bundleItemCount,omitempty" xmlrpc:"bundleItemCount,omitempty"` 122 123 // An item's included products. Some items have other items included in them that we specifically detail. They are here called Bundled Items. An example is Plesk unlimited. It as a bundled item labeled 'SiteBuilder'. These are the SoftLayer_Product_Item objects. 124 BundleItems []Product_Item `json:"bundleItems,omitempty" xmlrpc:"bundleItems,omitempty"` 125 126 // Some Product Items have capacity information such as RAM and bandwidth, and others. This provides the numerical representation of the capacity given in the description of this product item. 127 Capacity *Float64 `json:"capacity,omitempty" xmlrpc:"capacity,omitempty"` 128 129 // When the product capacity is best described as a range, this holds the ceiling of the range. 130 CapacityMaximum *string `json:"capacityMaximum,omitempty" xmlrpc:"capacityMaximum,omitempty"` 131 132 // When the product capacity is best described as a range, this holds the floor of the range. 133 CapacityMinimum *string `json:"capacityMinimum,omitempty" xmlrpc:"capacityMinimum,omitempty"` 134 135 // This flag indicates that this product is restricted by a capacity on a related product. 136 CapacityRestrictedProductFlag *bool `json:"capacityRestrictedProductFlag,omitempty" xmlrpc:"capacityRestrictedProductFlag,omitempty"` 137 138 // An item's associated item categories. 139 Categories []Product_Item_Category `json:"categories,omitempty" xmlrpc:"categories,omitempty"` 140 141 // A count of an item's associated item categories. 142 CategoryCount *uint `json:"categoryCount,omitempty" xmlrpc:"categoryCount,omitempty"` 143 144 // A count of some product items have configuration templates which can be used to during provisioning of that product. 145 ConfigurationTemplateCount *uint `json:"configurationTemplateCount,omitempty" xmlrpc:"configurationTemplateCount,omitempty"` 146 147 // Some product items have configuration templates which can be used to during provisioning of that product. 148 ConfigurationTemplates []Configuration_Template `json:"configurationTemplates,omitempty" xmlrpc:"configurationTemplates,omitempty"` 149 150 // An item's conflicts. For example, McAfee LinuxShield cannot be ordered with Windows. It was not meant for that operating system and as such is a conflict. 151 Conflicts []Product_Item_Resource_Conflict `json:"conflicts,omitempty" xmlrpc:"conflicts,omitempty"` 152 153 // This flag indicates that this product is restricted by the number of cores on the compute instance. This is deprecated. Use [[SoftLayer_Product_Item/getCapacityRestrictedProductFlag|getCapacityRestrictedProductFlag]] 154 CoreRestrictedItemFlag *bool `json:"coreRestrictedItemFlag,omitempty" xmlrpc:"coreRestrictedItemFlag,omitempty"` 155 156 // A product's description 157 Description *string `json:"description,omitempty" xmlrpc:"description,omitempty"` 158 159 // Some product items have a downgrade path. This is the first product item in the downgrade path. 160 DowngradeItem *Product_Item `json:"downgradeItem,omitempty" xmlrpc:"downgradeItem,omitempty"` 161 162 // A count of some product items have a downgrade path. These are those product items. 163 DowngradeItemCount *uint `json:"downgradeItemCount,omitempty" xmlrpc:"downgradeItemCount,omitempty"` 164 165 // Some product items have a downgrade path. These are those product items. 166 DowngradeItems []Product_Item `json:"downgradeItems,omitempty" xmlrpc:"downgradeItems,omitempty"` 167 168 // An item's category conflicts. For example, 10 Gbps redundant network functionality cannot be ordered with a secondary GPU and as such is a conflict. 169 GlobalCategoryConflicts []Product_Item_Resource_Conflict `json:"globalCategoryConflicts,omitempty" xmlrpc:"globalCategoryConflicts,omitempty"` 170 171 // The generic hardware component that this item represents. 172 HardwareGenericComponentModel *Hardware_Component_Model_Generic `json:"hardwareGenericComponentModel,omitempty" xmlrpc:"hardwareGenericComponentModel,omitempty"` 173 174 // no documentation yet 175 HideFromPortalFlag *bool `json:"hideFromPortalFlag,omitempty" xmlrpc:"hideFromPortalFlag,omitempty"` 176 177 // A product's internal identification number 178 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 179 180 // DEPRECATED. An item's inventory status per datacenter. 181 Inventory []Product_Package_Inventory `json:"inventory,omitempty" xmlrpc:"inventory,omitempty"` 182 183 // A count of dEPRECATED. An item's inventory status per datacenter. 184 InventoryCount *uint `json:"inventoryCount,omitempty" xmlrpc:"inventoryCount,omitempty"` 185 186 // Flag to indicate the server product is engineered for a multi-server solution. (Deprecated) 187 IsEngineeredServerProduct *bool `json:"isEngineeredServerProduct,omitempty" xmlrpc:"isEngineeredServerProduct,omitempty"` 188 189 // An item's primary item category. 190 ItemCategory *Product_Item_Category `json:"itemCategory,omitempty" xmlrpc:"itemCategory,omitempty"` 191 192 // A products tax category internal identification number 193 ItemTaxCategoryId *int `json:"itemTaxCategoryId,omitempty" xmlrpc:"itemTaxCategoryId,omitempty"` 194 195 // A unique key name for the product. 196 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 197 198 // no documentation yet 199 LocalDiskFlag *bool `json:"localDiskFlag,omitempty" xmlrpc:"localDiskFlag,omitempty"` 200 201 // An item's location conflicts. For example, Dual Path network functionality cannot be ordered in WDC and as such is a conflict. 202 LocationConflicts []Product_Item_Resource_Conflict `json:"locationConflicts,omitempty" xmlrpc:"locationConflicts,omitempty"` 203 204 // Detailed product description 205 LongDescription *string `json:"longDescription,omitempty" xmlrpc:"longDescription,omitempty"` 206 207 // no documentation yet 208 ObjectStorageClusterGeolocationType *string `json:"objectStorageClusterGeolocationType,omitempty" xmlrpc:"objectStorageClusterGeolocationType,omitempty"` 209 210 // no documentation yet 211 ObjectStorageItemFlag *bool `json:"objectStorageItemFlag,omitempty" xmlrpc:"objectStorageItemFlag,omitempty"` 212 213 // no documentation yet 214 ObjectStorageServiceClass *string `json:"objectStorageServiceClass,omitempty" xmlrpc:"objectStorageServiceClass,omitempty"` 215 216 // A count of a collection of all the SoftLayer_Product_Package(s) in which this item exists. 217 PackageCount *uint `json:"packageCount,omitempty" xmlrpc:"packageCount,omitempty"` 218 219 // A collection of all the SoftLayer_Product_Package(s) in which this item exists. 220 Packages []Product_Package `json:"packages,omitempty" xmlrpc:"packages,omitempty"` 221 222 // The number of cores that a processor has. 223 PhysicalCoreCapacity *string `json:"physicalCoreCapacity,omitempty" xmlrpc:"physicalCoreCapacity,omitempty"` 224 225 // A count of 226 PresaleEventCount *uint `json:"presaleEventCount,omitempty" xmlrpc:"presaleEventCount,omitempty"` 227 228 // no documentation yet 229 PresaleEvents []Sales_Presale_Event `json:"presaleEvents,omitempty" xmlrpc:"presaleEvents,omitempty"` 230 231 // A count of a product item's prices. 232 PriceCount *uint `json:"priceCount,omitempty" xmlrpc:"priceCount,omitempty"` 233 234 // A product item's prices. 235 Prices []Product_Item_Price `json:"prices,omitempty" xmlrpc:"prices,omitempty"` 236 237 // If an item must be ordered with another item, it will have a requirement item here. 238 Requirements []Product_Item_Requirement `json:"requirements,omitempty" xmlrpc:"requirements,omitempty"` 239 240 // A count of an item's rules. This includes the requirements and conflicts to resources that an item has. 241 RuleCount *uint `json:"ruleCount,omitempty" xmlrpc:"ruleCount,omitempty"` 242 243 // An item's rules. This includes the requirements and conflicts to resources that an item has. 244 Rules []Product_Item_Rule `json:"rules,omitempty" xmlrpc:"rules,omitempty"` 245 246 // The SoftLayer_Software_Description tied to this item. This will only be populated for software items. 247 SoftwareDescription *Software_Description `json:"softwareDescription,omitempty" xmlrpc:"softwareDescription,omitempty"` 248 249 // The unique identifier of the SoftLayer_Software_Description tied to this item. 250 SoftwareDescriptionId *int `json:"softwareDescriptionId,omitempty" xmlrpc:"softwareDescriptionId,omitempty"` 251 252 // An item's tax category, if applicable. 253 TaxCategory *Product_Item_Tax_Category `json:"taxCategory,omitempty" xmlrpc:"taxCategory,omitempty"` 254 255 // A count of third-party policy assignments for this product. 256 ThirdPartyPolicyAssignmentCount *uint `json:"thirdPartyPolicyAssignmentCount,omitempty" xmlrpc:"thirdPartyPolicyAssignmentCount,omitempty"` 257 258 // Third-party policy assignments for this product. 259 ThirdPartyPolicyAssignments []Product_Item_Policy_Assignment `json:"thirdPartyPolicyAssignments,omitempty" xmlrpc:"thirdPartyPolicyAssignments,omitempty"` 260 261 // The 3rd party vendor for a support subscription item. (Deprecated) 262 ThirdPartySupportVendor *string `json:"thirdPartySupportVendor,omitempty" xmlrpc:"thirdPartySupportVendor,omitempty"` 263 264 // The total number of physical processing cores (excluding virtual cores / hyperthreads) for this server. 265 TotalPhysicalCoreCapacity *int `json:"totalPhysicalCoreCapacity,omitempty" xmlrpc:"totalPhysicalCoreCapacity,omitempty"` 266 267 // Shows the total number of cores. This is deprecated. Use [[SoftLayer_Product_Item/getCapacity|getCapacity]] for guest_core products and [[SoftLayer_Product_Item/getTotalPhysicalCoreCapacity|getTotalPhysicalCoreCapacity]] for server products 268 TotalPhysicalCoreCount *int `json:"totalPhysicalCoreCount,omitempty" xmlrpc:"totalPhysicalCoreCount,omitempty"` 269 270 // The total number of processors for this server. 271 TotalProcessorCapacity *int `json:"totalProcessorCapacity,omitempty" xmlrpc:"totalProcessorCapacity,omitempty"` 272 273 // The unit of measurement that a product item is measured in. 274 Units *string `json:"units,omitempty" xmlrpc:"units,omitempty"` 275 276 // Some product items have an upgrade path. This is the next product item in the upgrade path. 277 UpgradeItem *Product_Item `json:"upgradeItem,omitempty" xmlrpc:"upgradeItem,omitempty"` 278 279 // A count of some product items have an upgrade path. These are those upgrade product items. 280 UpgradeItemCount *uint `json:"upgradeItemCount,omitempty" xmlrpc:"upgradeItemCount,omitempty"` 281 282 // A products upgrade item's internal identification number 283 UpgradeItemId *int `json:"upgradeItemId,omitempty" xmlrpc:"upgradeItemId,omitempty"` 284 285 // Some product items have an upgrade path. These are those upgrade product items. 286 UpgradeItems []Product_Item `json:"upgradeItems,omitempty" xmlrpc:"upgradeItems,omitempty"` 287} 288 289// The [[SoftLayer_Product_Item_Attribute]] data type allows us to describe a [[SoftLayer_Product_Item]] by attaching specific attributes, which may dictate how it interacts with other products and services. Most, if not all, of these attributes are geared towards internal usage, so customers should rarely be concerned with them. 290type Product_Item_Attribute struct { 291 Entity 292 293 // This represents the attribute type of this product attribute. 294 AttributeType *Product_Item_Attribute_Type `json:"attributeType,omitempty" xmlrpc:"attributeType,omitempty"` 295 296 // This represents the attribute type's key name of this product attribute. 297 AttributeTypeKeyName *string `json:"attributeTypeKeyName,omitempty" xmlrpc:"attributeTypeKeyName,omitempty"` 298 299 // This is the primary key value for the product attribute. 300 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 301 302 // This represents the product that an attribute is tied to. 303 Item *Product_Item `json:"item,omitempty" xmlrpc:"item,omitempty"` 304 305 // This is a foreign key value for the [[SoftLayer_Product_Item_Attribute_Type]]. 306 ItemAttributeTypeId *int `json:"itemAttributeTypeId,omitempty" xmlrpc:"itemAttributeTypeId,omitempty"` 307 308 // This is a foreign key value for the [[SoftLayer_Product_Item]]. 309 ItemId *int `json:"itemId,omitempty" xmlrpc:"itemId,omitempty"` 310 311 // This is the value for the attribute. 312 Value *string `json:"value,omitempty" xmlrpc:"value,omitempty"` 313} 314 315// The [[SoftLayer_Product_Item_Attribute_Type]] data type defines the available type of product attributes that are available. This allows for convenient reference to a [[SoftLayer_Product_Item_Attribute|product attribute]] by a unique key name value. 316type Product_Item_Attribute_Type struct { 317 Entity 318 319 // This is the unique identifier of the attribute type. 320 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 321 322 // This is the user-friendly readable name of the attribute type. 323 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 324} 325 326// The SoftLayer_Product_Item_Billing_Type data type models special billing types for non-monthly billed items in the SoftLayer product catalog. 327type Product_Item_Billing_Type struct { 328 Entity 329 330 // A keyword describing a SoftLayer product item billing type. 331 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 332} 333 334// The SoftLayer_Product_Item_Bundles contains item to price cross references Relates a category, price and item to a bundle. Match bundle ids to see all items and prices in a particular bundle. 335type Product_Item_Bundles struct { 336 Entity 337 338 // Item in bundle. 339 BundleItem *Product_Item `json:"bundleItem,omitempty" xmlrpc:"bundleItem,omitempty"` 340 341 // Identifier for bundle. 342 BundleItemId *int `json:"bundleItemId,omitempty" xmlrpc:"bundleItemId,omitempty"` 343 344 // Category bundle falls in. 345 Category *Product_Item_Category `json:"category,omitempty" xmlrpc:"category,omitempty"` 346 347 // Identifier for record. 348 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 349 350 // Price of item in bundle 351 ItemPrice *Product_Item_Price `json:"itemPrice,omitempty" xmlrpc:"itemPrice,omitempty"` 352 353 // Identifier for price. 354 ItemPriceId *int `json:"itemPriceId,omitempty" xmlrpc:"itemPriceId,omitempty"` 355} 356 357// The SoftLayer_Product_Item_Category data type contains general category information for prices. 358type Product_Item_Category struct { 359 Entity 360 361 // A count of the billing items associated with an account that share a category code with an item category's category code. 362 BillingItemCount *uint `json:"billingItemCount,omitempty" xmlrpc:"billingItemCount,omitempty"` 363 364 // The billing items associated with an account that share a category code with an item category's category code. 365 BillingItems []Billing_Item `json:"billingItems,omitempty" xmlrpc:"billingItems,omitempty"` 366 367 // The code used to identify this category. 368 CategoryCode *string `json:"categoryCode,omitempty" xmlrpc:"categoryCode,omitempty"` 369 370 // This invoice item's "item category group". 371 Group *Product_Item_Category_Group `json:"group,omitempty" xmlrpc:"group,omitempty"` 372 373 // A count of a collection of service offering category groups. Each group contains a collection of items associated with this category. 374 GroupCount *uint `json:"groupCount,omitempty" xmlrpc:"groupCount,omitempty"` 375 376 // A collection of service offering category groups. Each group contains a collection of items associated with this category. 377 Groups []Product_Package_Item_Category_Group `json:"groups,omitempty" xmlrpc:"groups,omitempty"` 378 379 // identifier for category. 380 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 381 382 // The friendly, descriptive name of the category as seen on the order forms and on invoices. 383 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 384 385 // A count of any unique options associated with an item category. 386 OrderOptionCount *uint `json:"orderOptionCount,omitempty" xmlrpc:"orderOptionCount,omitempty"` 387 388 // Any unique options associated with an item category. 389 OrderOptions []Product_Item_Category_Order_Option_Type `json:"orderOptions,omitempty" xmlrpc:"orderOptions,omitempty"` 390 391 // A count of a list of configuration available in this category.' 392 PackageConfigurationCount *uint `json:"packageConfigurationCount,omitempty" xmlrpc:"packageConfigurationCount,omitempty"` 393 394 // A list of configuration available in this category.' 395 PackageConfigurations []Product_Package_Order_Configuration `json:"packageConfigurations,omitempty" xmlrpc:"packageConfigurations,omitempty"` 396 397 // A count of a list of preset configurations this category is used in.' 398 PresetConfigurationCount *uint `json:"presetConfigurationCount,omitempty" xmlrpc:"presetConfigurationCount,omitempty"` 399 400 // A list of preset configurations this category is used in.' 401 PresetConfigurations []Product_Package_Preset_Configuration `json:"presetConfigurations,omitempty" xmlrpc:"presetConfigurations,omitempty"` 402 403 // Quantity that can be ordered. If 0, it will inherit the quantity from the server quantity ordered. Otherwise it can be specified with the order separately 404 QuantityLimit *int `json:"quantityLimit,omitempty" xmlrpc:"quantityLimit,omitempty"` 405 406 // A count of the questions that are associated with an item category. 407 QuestionCount *uint `json:"questionCount,omitempty" xmlrpc:"questionCount,omitempty"` 408 409 // A count of the question references that are associated with an item category. 410 QuestionReferenceCount *uint `json:"questionReferenceCount,omitempty" xmlrpc:"questionReferenceCount,omitempty"` 411 412 // The question references that are associated with an item category. 413 QuestionReferences []Product_Item_Category_Question_Xref `json:"questionReferences,omitempty" xmlrpc:"questionReferences,omitempty"` 414 415 // The questions that are associated with an item category. 416 Questions []Product_Item_Category_Question `json:"questions,omitempty" xmlrpc:"questions,omitempty"` 417 418 // The sort order of the category. It may be used to affect the order in which the category may appear in lists (on order forms and invoices). 419 SortOrder *int `json:"sortOrder,omitempty" xmlrpc:"sortOrder,omitempty"` 420} 421 422// The SoftLayer_Product_Item_Category_Group data type contains general category group information. 423type Product_Item_Category_Group struct { 424 Entity 425 426 // identifier for category group. 427 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 428 429 // The friendly, descriptive name of the category group as seen on the order forms and on invoices. 430 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 431} 432 433// The SoftLayer_Product_Item_Category_Order_Option_Type data type contains options that can be applied to orders for prices. 434type Product_Item_Category_Order_Option_Type struct { 435 Entity 436 437 // An item category order type's description. 438 Description *string `json:"description,omitempty" xmlrpc:"description,omitempty"` 439 440 // An item category order type's unique identifier. 441 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 442 443 // A simple description for an item category order type. 444 Keyname *string `json:"keyname,omitempty" xmlrpc:"keyname,omitempty"` 445 446 // An item category order type's name. 447 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 448 449 // The value of the item category type's option. 450 Value *string `json:"value,omitempty" xmlrpc:"value,omitempty"` 451} 452 453// The SoftLayer_Product_Item_Category_Question data type represents a single question to be answered by an end user. The question may or may not be required which can be located by looking at the 'required' property on the item category references. The answerValueExpression property is a regular expression that is used to validate the answer to the question. The description and valueExample properties can be used to get an idea of the type of answer that should be provided. 454type Product_Item_Category_Question struct { 455 Entity 456 457 // The type of answer expected. 458 AnswerValueExpression *string `json:"answerValueExpression,omitempty" xmlrpc:"answerValueExpression,omitempty"` 459 460 // The description for the question. 461 Description *string `json:"description,omitempty" xmlrpc:"description,omitempty"` 462 463 // The type of field that should be used in an HTML form to accept an answer from an end user. 464 FieldType *Product_Item_Category_Question_Field_Type `json:"fieldType,omitempty" xmlrpc:"fieldType,omitempty"` 465 466 // The type of field to use. 467 FieldTypeId *int `json:"fieldTypeId,omitempty" xmlrpc:"fieldTypeId,omitempty"` 468 469 // identifier for category. 470 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 471 472 // A count of the link between an item category and an item category question. 473 ItemCategoryReferenceCount *uint `json:"itemCategoryReferenceCount,omitempty" xmlrpc:"itemCategoryReferenceCount,omitempty"` 474 475 // The link between an item category and an item category question. 476 ItemCategoryReferences []Product_Item_Category_Question_Xref `json:"itemCategoryReferences,omitempty" xmlrpc:"itemCategoryReferences,omitempty"` 477 478 // The keyname for the question. 479 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 480 481 // The question for the category. 482 Question *string `json:"question,omitempty" xmlrpc:"question,omitempty"` 483 484 // An example and/or explanation of what the answer for the question is expected to look like. 485 ValueExample *string `json:"valueExample,omitempty" xmlrpc:"valueExample,omitempty"` 486} 487 488// The SoftLayer_Product_Item_Category_Question_Field_Type data type represents the recommended type of field that should be rendered on an HTML form. 489type Product_Item_Category_Question_Field_Type struct { 490 Entity 491 492 // Identifier for the question type. 493 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 494 495 // Keyname for the question field type. 496 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 497 498 // Short name for the question field type. 499 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 500} 501 502// The SoftLayer_Product_Item_Category_Question_Xref data type represents a link between an item category and an item category question. It also contains a 'required' field that designates if the question is required to be answered for the given item category. 503type Product_Item_Category_Question_Xref struct { 504 Entity 505 506 // Identifier for category question xref record. 507 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 508 509 // The product item category that this reference points to. 510 ItemCategory *Product_Item_Category `json:"itemCategory,omitempty" xmlrpc:"itemCategory,omitempty"` 511 512 // Identifier for item category. 513 ItemCategoryId *int `json:"itemCategoryId,omitempty" xmlrpc:"itemCategoryId,omitempty"` 514 515 // Identifier for the question. 516 LocationId *int `json:"locationId,omitempty" xmlrpc:"locationId,omitempty"` 517 518 // The item category question that this reference points to. 519 Question *Product_Item_Category_Question `json:"question,omitempty" xmlrpc:"question,omitempty"` 520 521 // Identifier for the question. 522 QuestionId *int `json:"questionId,omitempty" xmlrpc:"questionId,omitempty"` 523 524 // Flag to indicate whether an answer is required for the question.. 525 Required *bool `json:"required,omitempty" xmlrpc:"required,omitempty"` 526} 527 528// no documentation yet 529type Product_Item_Link_ThePlanet struct { 530 Entity 531 532 // no documentation yet 533 Item *Product_Item `json:"item,omitempty" xmlrpc:"item,omitempty"` 534 535 // no documentation yet 536 ServiceProvider *Service_Provider `json:"serviceProvider,omitempty" xmlrpc:"serviceProvider,omitempty"` 537} 538 539// no documentation yet 540type Product_Item_Overage_Price struct { 541 Entity 542 543 // no documentation yet 544 DefaultOverageItem *Product_Item `json:"defaultOverageItem,omitempty" xmlrpc:"defaultOverageItem,omitempty"` 545 546 // no documentation yet 547 Item *Product_Item `json:"item,omitempty" xmlrpc:"item,omitempty"` 548} 549 550// Represents the assignment of a policy to a product. The existence of a record means that the associated product is subject to the terms defined in the document content of the policy. 551type Product_Item_Policy_Assignment struct { 552 Entity 553 554 // no documentation yet 555 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 556 557 // The name of the assigned policy. 558 PolicyName *string `json:"policyName,omitempty" xmlrpc:"policyName,omitempty"` 559 560 // The [[SoftLayer_Product_Item]] for this policy assignment. 561 Product *Product_Item `json:"product,omitempty" xmlrpc:"product,omitempty"` 562 563 // no documentation yet 564 ProductId *int `json:"productId,omitempty" xmlrpc:"productId,omitempty"` 565} 566 567// The SoftLayer_Product_Item_Price data type contains general information relating to a single SoftLayer product item price. You can find out what packages each price is in as well as which category under which this price is sold. All prices are returned in floating point values measured in US Dollars ($USD). 568type Product_Item_Price struct { 569 Entity 570 571 // A count of the account that the item price is restricted to. 572 AccountRestrictionCount *uint `json:"accountRestrictionCount,omitempty" xmlrpc:"accountRestrictionCount,omitempty"` 573 574 // The account that the item price is restricted to. 575 AccountRestrictions []Product_Item_Price_Account_Restriction `json:"accountRestrictions,omitempty" xmlrpc:"accountRestrictions,omitempty"` 576 577 // A count of 578 AttributeCount *uint `json:"attributeCount,omitempty" xmlrpc:"attributeCount,omitempty"` 579 580 // no documentation yet 581 Attributes []Product_Item_Price_Attribute `json:"attributes,omitempty" xmlrpc:"attributes,omitempty"` 582 583 // Whether the price is for Big Data OS/Journal disks only. (Deprecated) 584 BigDataOsJournalDiskFlag *bool `json:"bigDataOsJournalDiskFlag,omitempty" xmlrpc:"bigDataOsJournalDiskFlag,omitempty"` 585 586 // A count of cross reference for bundles 587 BundleReferenceCount *uint `json:"bundleReferenceCount,omitempty" xmlrpc:"bundleReferenceCount,omitempty"` 588 589 // cross reference for bundles 590 BundleReferences []Product_Item_Bundles `json:"bundleReferences,omitempty" xmlrpc:"bundleReferences,omitempty"` 591 592 // The maximum capacity value for which this price is suitable. 593 CapacityRestrictionMaximum *string `json:"capacityRestrictionMaximum,omitempty" xmlrpc:"capacityRestrictionMaximum,omitempty"` 594 595 // The minimum capacity value for which this price is suitable. 596 CapacityRestrictionMinimum *string `json:"capacityRestrictionMinimum,omitempty" xmlrpc:"capacityRestrictionMinimum,omitempty"` 597 598 // The type of capacity restriction by which this price must abide. 599 CapacityRestrictionType *string `json:"capacityRestrictionType,omitempty" xmlrpc:"capacityRestrictionType,omitempty"` 600 601 // All categories which this item is a member. 602 Categories []Product_Item_Category `json:"categories,omitempty" xmlrpc:"categories,omitempty"` 603 604 // A count of all categories which this item is a member. 605 CategoryCount *uint `json:"categoryCount,omitempty" xmlrpc:"categoryCount,omitempty"` 606 607 // This flag is used by the [[SoftLayer_Hardware::getUpgradeItems|getUpgradeItems]] method to indicate if a product price is used for the current billing item. 608 CurrentPriceFlag *bool `json:"currentPriceFlag,omitempty" xmlrpc:"currentPriceFlag,omitempty"` 609 610 // Signifies pricing that is only available on a dedicated host virtual server order. 611 DedicatedHostInstanceFlag *bool `json:"dedicatedHostInstanceFlag,omitempty" xmlrpc:"dedicatedHostInstanceFlag,omitempty"` 612 613 // Whether this price defines a software license for its product item. 614 DefinedSoftwareLicenseFlag *bool `json:"definedSoftwareLicenseFlag,omitempty" xmlrpc:"definedSoftwareLicenseFlag,omitempty"` 615 616 // The hourly price for this item, should this item be part of an hourly pricing package. 617 HourlyRecurringFee *Float64 `json:"hourlyRecurringFee,omitempty" xmlrpc:"hourlyRecurringFee,omitempty"` 618 619 // The unique identifier of a Product Item Price. 620 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 621 622 // The product item a price is tied to. 623 Item *Product_Item `json:"item,omitempty" xmlrpc:"item,omitempty"` 624 625 // The unique identifier for a product Item 626 ItemId *int `json:"itemId,omitempty" xmlrpc:"itemId,omitempty"` 627 628 // The labor fee for a product item price. 629 LaborFee *Float64 `json:"laborFee,omitempty" xmlrpc:"laborFee,omitempty"` 630 631 // The id of the [[SoftLayer_Location_Group_Pricing]] that this price is part of. If set to null, the price is considered a standard price, which can be used with any location when ordering. 632 // 633 // During order [[SoftLayer_Product_Order/verifyOrder|verification]] and [[SoftLayer_Product_Order/placeOrder|placement]], if a standard price is used, that price may be replaced with a location based price, which does not have this property set to null. The location based price must be part of a [[SoftLayer_Location_Group_Pricing]] that has the location being ordered in order for this to happen. 634 LocationGroupId *int `json:"locationGroupId,omitempty" xmlrpc:"locationGroupId,omitempty"` 635 636 // On sale flag. 637 OnSaleFlag *bool `json:"onSaleFlag,omitempty" xmlrpc:"onSaleFlag,omitempty"` 638 639 // The one time fee for a product item price. 640 OneTimeFee *Float64 `json:"oneTimeFee,omitempty" xmlrpc:"oneTimeFee,omitempty"` 641 642 // A price's total tax amount of the one time fees (oneTimeFee, laborFee, and setupFee). This is only populated after the order is verified via SoftLayer_Product_Order::verifyOrder() 643 OneTimeFeeTax *Float64 `json:"oneTimeFeeTax,omitempty" xmlrpc:"oneTimeFeeTax,omitempty"` 644 645 // Order options for the category that this price is associated with. 646 OrderOptions []Product_Item_Category_Order_Option_Type `json:"orderOptions,omitempty" xmlrpc:"orderOptions,omitempty"` 647 648 // A count of 649 OrderPremiumCount *uint `json:"orderPremiumCount,omitempty" xmlrpc:"orderPremiumCount,omitempty"` 650 651 // no documentation yet 652 OrderPremiums []Product_Item_Price_Premium `json:"orderPremiums,omitempty" xmlrpc:"orderPremiums,omitempty"` 653 654 // A count of a price's packages under which this item is sold. 655 PackageCount *uint `json:"packageCount,omitempty" xmlrpc:"packageCount,omitempty"` 656 657 // A count of cross reference for packages 658 PackageReferenceCount *uint `json:"packageReferenceCount,omitempty" xmlrpc:"packageReferenceCount,omitempty"` 659 660 // cross reference for packages 661 PackageReferences []Product_Package_Item_Prices `json:"packageReferences,omitempty" xmlrpc:"packageReferences,omitempty"` 662 663 // A price's packages under which this item is sold. 664 Packages []Product_Package `json:"packages,omitempty" xmlrpc:"packages,omitempty"` 665 666 // A count of a list of preset configurations this price is used in.' 667 PresetConfigurationCount *uint `json:"presetConfigurationCount,omitempty" xmlrpc:"presetConfigurationCount,omitempty"` 668 669 // A list of preset configurations this price is used in.' 670 PresetConfigurations []Product_Package_Preset_Configuration `json:"presetConfigurations,omitempty" xmlrpc:"presetConfigurations,omitempty"` 671 672 // The type keyname of this price which can be STANDARD or TIERED. 673 PriceType *string `json:"priceType,omitempty" xmlrpc:"priceType,omitempty"` 674 675 // The pricing location group that this price is applicable for. Prices that have a pricing location group will only be available for ordering with the locations specified on the location group. 676 PricingLocationGroup *Location_Group_Pricing `json:"pricingLocationGroup,omitempty" xmlrpc:"pricingLocationGroup,omitempty"` 677 678 // A recurring fee is a fee that happens every billing period. This fee is represented as a floating point decimal in US dollars ($USD). 679 ProratedRecurringFee *Float64 `json:"proratedRecurringFee,omitempty" xmlrpc:"proratedRecurringFee,omitempty"` 680 681 // A price's tax amount of the recurring fee. This is only populated after the order is verified via SoftLayer_Product_Order::verifyOrder() 682 ProratedRecurringFeeTax *Float64 `json:"proratedRecurringFeeTax,omitempty" xmlrpc:"proratedRecurringFeeTax,omitempty"` 683 684 // no documentation yet 685 Quantity *int `json:"quantity,omitempty" xmlrpc:"quantity,omitempty"` 686 687 // A recurring fee is a fee that happens every billing period. This fee is represented as a floating point decimal in US dollars ($USD). 688 RecurringFee *Float64 `json:"recurringFee,omitempty" xmlrpc:"recurringFee,omitempty"` 689 690 // A price's tax amount of the recurring fee. This is only populated after the order is verified via SoftLayer_Product_Order::verifyOrder() 691 RecurringFeeTax *Float64 `json:"recurringFeeTax,omitempty" xmlrpc:"recurringFeeTax,omitempty"` 692 693 // The number of server cores required to order this item. This is deprecated. Use [[SoftLayer_Product_Item_Price/getCapacityRestrictionMinimum|getCapacityRestrictionMinimum]] and [[SoftLayer_Product_Item_Price/getCapacityRestrictionMaximum|getCapacityRestrictionMaximum]] 694 RequiredCoreCount *int `json:"requiredCoreCount,omitempty" xmlrpc:"requiredCoreCount,omitempty"` 695 696 // The setup fee associated with a product item price. 697 SetupFee *Float64 `json:"setupFee,omitempty" xmlrpc:"setupFee,omitempty"` 698 699 // Used for ordering items on sales orders. 700 Sort *int `json:"sort,omitempty" xmlrpc:"sort,omitempty"` 701 702 // The minimum threshold for which this tiered usage price begins to apply. The unit for the price is defined by the item to which this belongs, see [[SoftLayer_Product_Item::$units]]. 703 TierMinimumThreshold *int `json:"tierMinimumThreshold,omitempty" xmlrpc:"tierMinimumThreshold,omitempty"` 704 705 // The rate for a usage based item 706 UsageRate *Float64 `json:"usageRate,omitempty" xmlrpc:"usageRate,omitempty"` 707} 708 709// The SoftLayer_Product_Item_Price data type gives more information about the item price restrictions. An item price may be restricted to one or more accounts. If the item price is restricted to an account, only that account will see the restriction details. 710type Product_Item_Price_Account_Restriction struct { 711 Entity 712 713 // The account the item price is restricted to. 714 Account *Account `json:"account,omitempty" xmlrpc:"account,omitempty"` 715 716 // The account id for the item price account restriction. 717 AccountId *int `json:"accountId,omitempty" xmlrpc:"accountId,omitempty"` 718 719 // The unique identifier for the item price account restriction. 720 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 721 722 // The item price that has the account restriction. 723 ItemPrice *Product_Item_Price `json:"itemPrice,omitempty" xmlrpc:"itemPrice,omitempty"` 724 725 // The item price id for the item price account restriction. 726 ItemPriceId *int `json:"itemPriceId,omitempty" xmlrpc:"itemPriceId,omitempty"` 727} 728 729// no documentation yet 730type Product_Item_Price_Attribute struct { 731 Entity 732 733 // no documentation yet 734 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 735 736 // no documentation yet 737 ItemPrice *Product_Item_Price `json:"itemPrice,omitempty" xmlrpc:"itemPrice,omitempty"` 738 739 // no documentation yet 740 ItemPriceAttributeType *Product_Item_Price_Attribute_Type `json:"itemPriceAttributeType,omitempty" xmlrpc:"itemPriceAttributeType,omitempty"` 741 742 // no documentation yet 743 ItemPriceAttributeTypeId *int `json:"itemPriceAttributeTypeId,omitempty" xmlrpc:"itemPriceAttributeTypeId,omitempty"` 744 745 // no documentation yet 746 ItemPriceId *int `json:"itemPriceId,omitempty" xmlrpc:"itemPriceId,omitempty"` 747 748 // no documentation yet 749 Value *string `json:"value,omitempty" xmlrpc:"value,omitempty"` 750} 751 752// no documentation yet 753type Product_Item_Price_Attribute_Type struct { 754 Entity 755 756 // no documentation yet 757 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 758 759 // no documentation yet 760 Keyname *string `json:"keyname,omitempty" xmlrpc:"keyname,omitempty"` 761} 762 763// no documentation yet 764type Product_Item_Price_Premium struct { 765 Entity 766 767 // no documentation yet 768 HourlyModifier *Float64 `json:"hourlyModifier,omitempty" xmlrpc:"hourlyModifier,omitempty"` 769 770 // no documentation yet 771 ItemPrice *Product_Item_Price `json:"itemPrice,omitempty" xmlrpc:"itemPrice,omitempty"` 772 773 // no documentation yet 774 ItemPriceId *int `json:"itemPriceId,omitempty" xmlrpc:"itemPriceId,omitempty"` 775 776 // no documentation yet 777 Location *Location `json:"location,omitempty" xmlrpc:"location,omitempty"` 778 779 // no documentation yet 780 LocationId *int `json:"locationId,omitempty" xmlrpc:"locationId,omitempty"` 781 782 // no documentation yet 783 MonthlyModifier *Float64 `json:"monthlyModifier,omitempty" xmlrpc:"monthlyModifier,omitempty"` 784 785 // no documentation yet 786 Package *Product_Package `json:"package,omitempty" xmlrpc:"package,omitempty"` 787 788 // no documentation yet 789 PackageId *int `json:"packageId,omitempty" xmlrpc:"packageId,omitempty"` 790} 791 792// The SoftLayer_Product_Item_Requirement data type contains information relating to what requirements, if any, exist for an item. The requiredItemId local property is the item id that is required. 793type Product_Item_Requirement struct { 794 Entity 795 796 // Identifier for this record. 797 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 798 799 // Item requirement applies to. 800 Item *Product_Item `json:"item,omitempty" xmlrpc:"item,omitempty"` 801 802 // This is the id of the item affected by the requirement. 803 ItemId *int `json:"itemId,omitempty" xmlrpc:"itemId,omitempty"` 804 805 // This is a custom message to display to the user when this requirement shortfall arises. 806 Message *string `json:"message,omitempty" xmlrpc:"message,omitempty"` 807 808 // The product containing the requirement. 809 Product *Product_Item `json:"product,omitempty" xmlrpc:"product,omitempty"` 810 811 // This is the id of the item required. 812 RequiredItemId *int `json:"requiredItemId,omitempty" xmlrpc:"requiredItemId,omitempty"` 813} 814 815// no documentation yet 816type Product_Item_Resource_Conflict struct { 817 Entity 818 819 // no documentation yet 820 Item *Product_Item `json:"item,omitempty" xmlrpc:"item,omitempty"` 821 822 // The unique identifier of the item that contains the conflict. 823 ItemId *int `json:"itemId,omitempty" xmlrpc:"itemId,omitempty"` 824 825 // An optional conflict message. 826 Message *string `json:"message,omitempty" xmlrpc:"message,omitempty"` 827 828 // no documentation yet 829 Package *Product_Package `json:"package,omitempty" xmlrpc:"package,omitempty"` 830 831 // The unique identifier of the service offering that is associated with the conflict. 832 PackageId *int `json:"packageId,omitempty" xmlrpc:"packageId,omitempty"` 833 834 // The unique identifier of the conflicting type. 835 ResourceTableId *int `json:"resourceTableId,omitempty" xmlrpc:"resourceTableId,omitempty"` 836} 837 838// no documentation yet 839type Product_Item_Resource_Conflict_Item struct { 840 Product_Item_Resource_Conflict 841 842 // A product item that conflicts with another product item. 843 Resource *Product_Item `json:"resource,omitempty" xmlrpc:"resource,omitempty"` 844} 845 846// no documentation yet 847type Product_Item_Resource_Conflict_Item_Category struct { 848 Product_Item_Resource_Conflict 849 850 // An item category that conflicts with a product item. 851 Resource *Product_Item_Category `json:"resource,omitempty" xmlrpc:"resource,omitempty"` 852} 853 854// no documentation yet 855type Product_Item_Resource_Conflict_Location struct { 856 Product_Item_Resource_Conflict 857 858 // A location that conflicts with a product item. 859 Resource *Location `json:"resource,omitempty" xmlrpc:"resource,omitempty"` 860} 861 862// The item rule data type represents a rule that must be followed when the item assigned to the rule is ordered. The type and operation applied to the resources of the rule will affect how the rule is checked during ordering. 863type Product_Item_Rule struct { 864 Entity 865 866 // The product item that a rule applies to. 867 Item *Product_Item `json:"item,omitempty" xmlrpc:"item,omitempty"` 868 869 // A count of 870 ItemCategoryResourceCount *uint `json:"itemCategoryResourceCount,omitempty" xmlrpc:"itemCategoryResourceCount,omitempty"` 871 872 // no documentation yet 873 ItemCategoryResources []Product_Item_Rule_Resource_Item_Category `json:"itemCategoryResources,omitempty" xmlrpc:"itemCategoryResources,omitempty"` 874 875 // The unique identifier of the item that the rule applies to. 876 ItemId *int `json:"itemId,omitempty" xmlrpc:"itemId,omitempty"` 877 878 // A count of 879 ItemResourceCount *uint `json:"itemResourceCount,omitempty" xmlrpc:"itemResourceCount,omitempty"` 880 881 // no documentation yet 882 ItemResources []Product_Item_Rule_Resource_Item `json:"itemResources,omitempty" xmlrpc:"itemResources,omitempty"` 883 884 // A count of 885 LocationResourceCount *uint `json:"locationResourceCount,omitempty" xmlrpc:"locationResourceCount,omitempty"` 886 887 // no documentation yet 888 LocationResources []Product_Item_Rule_Resource_Location `json:"locationResources,omitempty" xmlrpc:"locationResources,omitempty"` 889 890 // An optional message shown for when the rule is found to be invalid when ordering. 891 Message *string `json:"message,omitempty" xmlrpc:"message,omitempty"` 892 893 // no documentation yet 894 Operation *string `json:"operation,omitempty" xmlrpc:"operation,omitempty"` 895 896 // The package that a rule is applicable to when ordering. If no package exists, the rule applies to any package. 897 Package *Product_Package `json:"package,omitempty" xmlrpc:"package,omitempty"` 898 899 // The unique identifier of the service offering that is associated with the rule. 900 PackageId *int `json:"packageId,omitempty" xmlrpc:"packageId,omitempty"` 901 902 // A count of 903 PermissionResourceCount *uint `json:"permissionResourceCount,omitempty" xmlrpc:"permissionResourceCount,omitempty"` 904 905 // no documentation yet 906 PermissionResources []Product_Item_Rule_Resource_Permission `json:"permissionResources,omitempty" xmlrpc:"permissionResources,omitempty"` 907 908 // A count of resources for this rule that are validated when ordering. 909 ResourceCount *uint `json:"resourceCount,omitempty" xmlrpc:"resourceCount,omitempty"` 910 911 // Resources for this rule that are validated when ordering. 912 Resources []Product_Item_Rule_Resource `json:"resources,omitempty" xmlrpc:"resources,omitempty"` 913 914 // The type a rule is. The type affects how the rule is validated when ordering. 915 Type *Product_Item_Rule_Type `json:"type,omitempty" xmlrpc:"type,omitempty"` 916 917 // The unique identifier of the type of resource rule. 918 TypeId *int `json:"typeId,omitempty" xmlrpc:"typeId,omitempty"` 919} 920 921// The item rule resource data type represents a resource that is part of an item rule. The item rule resource is used when its item rule is checked on an order. 922type Product_Item_Rule_Resource struct { 923 Entity 924 925 // no documentation yet 926 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 927 928 // The unique identifier of the resource. 929 ResourceTableId *int `json:"resourceTableId,omitempty" xmlrpc:"resourceTableId,omitempty"` 930 931 // no documentation yet 932 Rule *Product_Item_Rule `json:"rule,omitempty" xmlrpc:"rule,omitempty"` 933 934 // The unique identifier of the rule this resource is included in. 935 RuleId *int `json:"ruleId,omitempty" xmlrpc:"ruleId,omitempty"` 936} 937 938// no documentation yet 939type Product_Item_Rule_Resource_Item struct { 940 Product_Item_Rule_Resource 941 942 // A product item that the associated rule applies to. 943 Resource *Product_Item `json:"resource,omitempty" xmlrpc:"resource,omitempty"` 944} 945 946// no documentation yet 947type Product_Item_Rule_Resource_Item_Category struct { 948 Product_Item_Rule_Resource 949 950 // An item category that the associated rule applies to. 951 Resource *Product_Item_Category `json:"resource,omitempty" xmlrpc:"resource,omitempty"` 952} 953 954// no documentation yet 955type Product_Item_Rule_Resource_Location struct { 956 Product_Item_Rule_Resource 957 958 // A location that the associated rule applies to. 959 Resource *Location `json:"resource,omitempty" xmlrpc:"resource,omitempty"` 960} 961 962// no documentation yet 963type Product_Item_Rule_Resource_Permission struct { 964 Product_Item_Rule_Resource 965 966 // A user permission that the associated rule applies to. 967 Resource *User_Customer_CustomerPermission_Permission `json:"resource,omitempty" xmlrpc:"resource,omitempty"` 968} 969 970// The item rule type data type represents the type of an item rule. 971type Product_Item_Rule_Type struct { 972 Entity 973 974 // The identifier for the item rule type. 975 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 976} 977 978// The SoftLayer_Product_Item_Server_Group data type details the type of compute service a [[SoftLayer_Product_Item (type)|SoftLayer_Product_Item]] or [[SoftLayer_Product_Package_Preset (type)|SoftLayer_Product_Package_Preset]] belongs to. 979type Product_Item_Server_Group struct { 980 Entity 981 982 // The server group's string identifier 983 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 984 985 // The server group's friendly name 986 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 987} 988 989// The SoftLayer_Product_Item_Tax_Category data type contains the tax categories that are associated with products. 990type Product_Item_Tax_Category struct { 991 Entity 992 993 // An internal identifier for each tax category. 994 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 995 996 // A count of 997 ItemCount *uint `json:"itemCount,omitempty" xmlrpc:"itemCount,omitempty"` 998 999 // no documentation yet 1000 Items []Product_Item `json:"items,omitempty" xmlrpc:"items,omitempty"` 1001 1002 // The key name of the tax category. 1003 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 1004 1005 // The name of the tax category. 1006 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 1007 1008 // The status of the tax category. 1009 StatusFlag *int `json:"statusFlag,omitempty" xmlrpc:"statusFlag,omitempty"` 1010} 1011 1012// no documentation yet 1013type Product_Order struct { 1014 Entity 1015} 1016 1017// The SoftLayer_Product_Package data type contains information about packages from which orders can be generated. Packages contain general information regarding what is in them, where they are currently sold, availability, and pricing. 1018type Product_Package struct { 1019 Entity 1020 1021 // A count of the preset configurations available only for the authenticated account and this package. 1022 AccountRestrictedActivePresetCount *uint `json:"accountRestrictedActivePresetCount,omitempty" xmlrpc:"accountRestrictedActivePresetCount,omitempty"` 1023 1024 // The preset configurations available only for the authenticated account and this package. 1025 AccountRestrictedActivePresets []Product_Package_Preset `json:"accountRestrictedActivePresets,omitempty" xmlrpc:"accountRestrictedActivePresets,omitempty"` 1026 1027 // The results from this call are similar to [[SoftLayer_Product_Package/getCategories|getCategories]], but these ONLY include account-restricted prices. Not all accounts have restricted pricing. 1028 AccountRestrictedCategories []Product_Item_Category `json:"accountRestrictedCategories,omitempty" xmlrpc:"accountRestrictedCategories,omitempty"` 1029 1030 // A count of the results from this call are similar to [[SoftLayer_Product_Package/getCategories|getCategories]], but these ONLY include account-restricted prices. Not all accounts have restricted pricing. 1031 AccountRestrictedCategoryCount *uint `json:"accountRestrictedCategoryCount,omitempty" xmlrpc:"accountRestrictedCategoryCount,omitempty"` 1032 1033 // The flag to indicate if there are any restricted prices in a package for the currently-active account. 1034 AccountRestrictedPricesFlag *bool `json:"accountRestrictedPricesFlag,omitempty" xmlrpc:"accountRestrictedPricesFlag,omitempty"` 1035 1036 // A count of the available preset configurations for this package. 1037 ActivePresetCount *uint `json:"activePresetCount,omitempty" xmlrpc:"activePresetCount,omitempty"` 1038 1039 // The available preset configurations for this package. 1040 ActivePresets []Product_Package_Preset `json:"activePresets,omitempty" xmlrpc:"activePresets,omitempty"` 1041 1042 // A count of a collection of valid RAM items available for purchase in this package. 1043 ActiveRamItemCount *uint `json:"activeRamItemCount,omitempty" xmlrpc:"activeRamItemCount,omitempty"` 1044 1045 // A collection of valid RAM items available for purchase in this package. 1046 ActiveRamItems []Product_Item `json:"activeRamItems,omitempty" xmlrpc:"activeRamItems,omitempty"` 1047 1048 // A count of a collection of valid server items available for purchase in this package. 1049 ActiveServerItemCount *uint `json:"activeServerItemCount,omitempty" xmlrpc:"activeServerItemCount,omitempty"` 1050 1051 // A collection of valid server items available for purchase in this package. 1052 ActiveServerItems []Product_Item `json:"activeServerItems,omitempty" xmlrpc:"activeServerItems,omitempty"` 1053 1054 // A count of a collection of valid software items available for purchase in this package. 1055 ActiveSoftwareItemCount *uint `json:"activeSoftwareItemCount,omitempty" xmlrpc:"activeSoftwareItemCount,omitempty"` 1056 1057 // A collection of valid software items available for purchase in this package. 1058 ActiveSoftwareItems []Product_Item `json:"activeSoftwareItems,omitempty" xmlrpc:"activeSoftwareItems,omitempty"` 1059 1060 // A count of a collection of [[SoftLayer_Product_Item_Price]] objects for pay-as-you-go usage. 1061 ActiveUsagePriceCount *uint `json:"activeUsagePriceCount,omitempty" xmlrpc:"activeUsagePriceCount,omitempty"` 1062 1063 // A collection of [[SoftLayer_Product_Item_Price]] objects for pay-as-you-go usage. 1064 ActiveUsagePrices []Product_Item_Price `json:"activeUsagePrices,omitempty" xmlrpc:"activeUsagePrices,omitempty"` 1065 1066 // This flag indicates that the package is an additional service. 1067 AdditionalServiceFlag *bool `json:"additionalServiceFlag,omitempty" xmlrpc:"additionalServiceFlag,omitempty"` 1068 1069 // A count of 1070 AttributeCount *uint `json:"attributeCount,omitempty" xmlrpc:"attributeCount,omitempty"` 1071 1072 // no documentation yet 1073 Attributes []Product_Package_Attribute `json:"attributes,omitempty" xmlrpc:"attributes,omitempty"` 1074 1075 // A count of a collection of valid locations for this package. (Deprecated - Use [[SoftLayer_Product_Package/getRegions|getRegions]]) 1076 AvailableLocationCount *uint `json:"availableLocationCount,omitempty" xmlrpc:"availableLocationCount,omitempty"` 1077 1078 // A collection of valid locations for this package. (Deprecated - Use [[SoftLayer_Product_Package/getRegions|getRegions]]) 1079 AvailableLocations []Product_Package_Locations `json:"availableLocations,omitempty" xmlrpc:"availableLocations,omitempty"` 1080 1081 // The maximum number of available disk storage units associated with the servers in a package. 1082 AvailableStorageUnits *uint `json:"availableStorageUnits,omitempty" xmlrpc:"availableStorageUnits,omitempty"` 1083 1084 // This is a collection of categories ([[SoftLayer_Product_Item_Category]]) associated with a package which can be used for ordering. These categories have several objects prepopulated which are useful when determining the available products for purchase. The categories contain groups ([[SoftLayer_Product_Package_Item_Category_Group]]) that organize the products and prices by similar features. For example, operating systems will be grouped by their manufacturer and virtual server disks will be grouped by their disk type (SAN vs. local). Each group will contain prices ([[SoftLayer_Product_Item_Price]]) which you can use determine the cost of each product. Each price has a product ([[SoftLayer_Product_Item]]) which provides the name and other useful information about the server, service or software you may purchase. 1085 Categories []Product_Item_Category `json:"categories,omitempty" xmlrpc:"categories,omitempty"` 1086 1087 // The item categories associated with a package, including information detailing which item categories are required as part of a SoftLayer product order. 1088 Configuration []Product_Package_Order_Configuration `json:"configuration,omitempty" xmlrpc:"configuration,omitempty"` 1089 1090 // A count of the item categories associated with a package, including information detailing which item categories are required as part of a SoftLayer product order. 1091 ConfigurationCount *uint `json:"configurationCount,omitempty" xmlrpc:"configurationCount,omitempty"` 1092 1093 // A count of a collection of valid RAM items available for purchase in this package. 1094 DefaultRamItemCount *uint `json:"defaultRamItemCount,omitempty" xmlrpc:"defaultRamItemCount,omitempty"` 1095 1096 // A collection of valid RAM items available for purchase in this package. 1097 DefaultRamItems []Product_Item `json:"defaultRamItems,omitempty" xmlrpc:"defaultRamItems,omitempty"` 1098 1099 // A count of the package that represents a multi-server solution. (Deprecated) 1100 DeploymentCount *uint `json:"deploymentCount,omitempty" xmlrpc:"deploymentCount,omitempty"` 1101 1102 // The node type for a package in a solution deployment. 1103 DeploymentNodeType *string `json:"deploymentNodeType,omitempty" xmlrpc:"deploymentNodeType,omitempty"` 1104 1105 // A count of the packages that are allowed in a multi-server solution. (Deprecated) 1106 DeploymentPackageCount *uint `json:"deploymentPackageCount,omitempty" xmlrpc:"deploymentPackageCount,omitempty"` 1107 1108 // The packages that are allowed in a multi-server solution. (Deprecated) 1109 DeploymentPackages []Product_Package `json:"deploymentPackages,omitempty" xmlrpc:"deploymentPackages,omitempty"` 1110 1111 // The solution deployment type. 1112 DeploymentType *string `json:"deploymentType,omitempty" xmlrpc:"deploymentType,omitempty"` 1113 1114 // The package that represents a multi-server solution. (Deprecated) 1115 Deployments []Product_Package `json:"deployments,omitempty" xmlrpc:"deployments,omitempty"` 1116 1117 // A generic description of the processor type and count. This includes HTML, so you may want to strip these tags if you plan to use it. 1118 Description *string `json:"description,omitempty" xmlrpc:"description,omitempty"` 1119 1120 // This flag indicates the package does not allow custom disk partitions. 1121 DisallowCustomDiskPartitions *bool `json:"disallowCustomDiskPartitions,omitempty" xmlrpc:"disallowCustomDiskPartitions,omitempty"` 1122 1123 // The Softlayer order step is optionally step-based. This returns the first SoftLayer_Product_Package_Order_Step in the step-based order process. 1124 FirstOrderStep *Product_Package_Order_Step `json:"firstOrderStep,omitempty" xmlrpc:"firstOrderStep,omitempty"` 1125 1126 // This is only needed for step-based order verification. We use this for the order forms, but it is not required. This step is the first SoftLayer_Product_Package_Step for this package. Use this for for filtering which item categories are returned as a part of SoftLayer_Product_Package_Order_Configuration. 1127 FirstOrderStepId *int `json:"firstOrderStepId,omitempty" xmlrpc:"firstOrderStepId,omitempty"` 1128 1129 // Whether the package is a specialized network gateway appliance package. 1130 GatewayApplianceFlag *bool `json:"gatewayApplianceFlag,omitempty" xmlrpc:"gatewayApplianceFlag,omitempty"` 1131 1132 // This flag indicates that the package supports GPUs. 1133 GpuFlag *bool `json:"gpuFlag,omitempty" xmlrpc:"gpuFlag,omitempty"` 1134 1135 // Determines whether the package contains prices that can be ordered hourly. 1136 HourlyBillingAvailableFlag *bool `json:"hourlyBillingAvailableFlag,omitempty" xmlrpc:"hourlyBillingAvailableFlag,omitempty"` 1137 1138 // Packages with this flag do not allow monthly orders. 1139 HourlyOnlyOrders *bool `json:"hourlyOnlyOrders,omitempty" xmlrpc:"hourlyOnlyOrders,omitempty"` 1140 1141 // A package's internal identifier. Everything regarding a SoftLayer_Product_Package is tied back to this id. 1142 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 1143 1144 // no documentation yet 1145 IsActive *int `json:"isActive,omitempty" xmlrpc:"isActive,omitempty"` 1146 1147 // The item-item conflicts associated with a package. 1148 ItemConflicts []Product_Item_Resource_Conflict `json:"itemConflicts,omitempty" xmlrpc:"itemConflicts,omitempty"` 1149 1150 // A count of a collection of valid items available for purchase in this package. 1151 ItemCount *uint `json:"itemCount,omitempty" xmlrpc:"itemCount,omitempty"` 1152 1153 // The item-location conflicts associated with a package. 1154 ItemLocationConflicts []Product_Item_Resource_Conflict `json:"itemLocationConflicts,omitempty" xmlrpc:"itemLocationConflicts,omitempty"` 1155 1156 // A count of a collection of SoftLayer_Product_Item_Prices that are valid for this package. 1157 ItemPriceCount *uint `json:"itemPriceCount,omitempty" xmlrpc:"itemPriceCount,omitempty"` 1158 1159 // A count of cross reference for item prices 1160 ItemPriceReferenceCount *uint `json:"itemPriceReferenceCount,omitempty" xmlrpc:"itemPriceReferenceCount,omitempty"` 1161 1162 // cross reference for item prices 1163 ItemPriceReferences []Product_Package_Item_Prices `json:"itemPriceReferences,omitempty" xmlrpc:"itemPriceReferences,omitempty"` 1164 1165 // A collection of SoftLayer_Product_Item_Prices that are valid for this package. 1166 ItemPrices []Product_Item_Price `json:"itemPrices,omitempty" xmlrpc:"itemPrices,omitempty"` 1167 1168 // A collection of valid items available for purchase in this package. 1169 Items []Product_Item `json:"items,omitempty" xmlrpc:"items,omitempty"` 1170 1171 // A unique key name for the package. 1172 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 1173 1174 // A count of a collection of valid locations for this package. (Deprecated - Use [[SoftLayer_Product_Package/getRegions|getRegions]]) 1175 LocationCount *uint `json:"locationCount,omitempty" xmlrpc:"locationCount,omitempty"` 1176 1177 // A collection of valid locations for this package. (Deprecated - Use [[SoftLayer_Product_Package/getRegions|getRegions]]) 1178 Locations []Location `json:"locations,omitempty" xmlrpc:"locations,omitempty"` 1179 1180 // The lowest server [[SoftLayer_Product_Item_Price]] related to this package. 1181 LowestServerPrice *Product_Item_Price `json:"lowestServerPrice,omitempty" xmlrpc:"lowestServerPrice,omitempty"` 1182 1183 // The maximum available network speed associated with the package. 1184 MaximumPortSpeed *uint `json:"maximumPortSpeed,omitempty" xmlrpc:"maximumPortSpeed,omitempty"` 1185 1186 // The minimum available network speed associated with the package. 1187 MinimumPortSpeed *uint `json:"minimumPortSpeed,omitempty" xmlrpc:"minimumPortSpeed,omitempty"` 1188 1189 // This flag indicates that this is a MongoDB engineered package. (Deprecated) 1190 MongoDbEngineeredFlag *bool `json:"mongoDbEngineeredFlag,omitempty" xmlrpc:"mongoDbEngineeredFlag,omitempty"` 1191 1192 // The description of the package. For server packages, this is usually a detailed description of processor type and count. 1193 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 1194 1195 // Whether the package is not in compliance with EU support. 1196 NonEuCompliantFlag *bool `json:"nonEuCompliantFlag,omitempty" xmlrpc:"nonEuCompliantFlag,omitempty"` 1197 1198 // A count of the premium price modifiers associated with the [[SoftLayer_Product_Item_Price]] and [[SoftLayer_Location]] objects in a package. 1199 OrderPremiumCount *uint `json:"orderPremiumCount,omitempty" xmlrpc:"orderPremiumCount,omitempty"` 1200 1201 // The premium price modifiers associated with the [[SoftLayer_Product_Item_Price]] and [[SoftLayer_Location]] objects in a package. 1202 OrderPremiums []Product_Item_Price_Premium `json:"orderPremiums,omitempty" xmlrpc:"orderPremiums,omitempty"` 1203 1204 // This flag indicates if the package may be available in PoP locations in addition to Datacenters. 1205 PopLocationAvailabilityFlag *bool `json:"popLocationAvailabilityFlag,omitempty" xmlrpc:"popLocationAvailabilityFlag,omitempty"` 1206 1207 // This flag indicates the package is pre-configured. (Deprecated) 1208 PreconfiguredFlag *bool `json:"preconfiguredFlag,omitempty" xmlrpc:"preconfiguredFlag,omitempty"` 1209 1210 // Whether the package requires the user to define a preset configuration. 1211 PresetConfigurationRequiredFlag *bool `json:"presetConfigurationRequiredFlag,omitempty" xmlrpc:"presetConfigurationRequiredFlag,omitempty"` 1212 1213 // Whether the package prevents the user from specifying a Vlan. 1214 PreventVlanSelectionFlag *bool `json:"preventVlanSelectionFlag,omitempty" xmlrpc:"preventVlanSelectionFlag,omitempty"` 1215 1216 // This flag indicates the package is for a private hosted cloud deployment. (Deprecated) 1217 PrivateHostedCloudPackageFlag *bool `json:"privateHostedCloudPackageFlag,omitempty" xmlrpc:"privateHostedCloudPackageFlag,omitempty"` 1218 1219 // The server role of the private hosted cloud deployment. (Deprecated) 1220 PrivateHostedCloudPackageType *string `json:"privateHostedCloudPackageType,omitempty" xmlrpc:"privateHostedCloudPackageType,omitempty"` 1221 1222 // Whether the package only has access to the private network. 1223 PrivateNetworkOnlyFlag *bool `json:"privateNetworkOnlyFlag,omitempty" xmlrpc:"privateNetworkOnlyFlag,omitempty"` 1224 1225 // Whether the package is a specialized mass storage QuantaStor package. (Deprecated) 1226 QuantaStorPackageFlag *bool `json:"quantaStorPackageFlag,omitempty" xmlrpc:"quantaStorPackageFlag,omitempty"` 1227 1228 // This flag indicates the package does not allow different disks with RAID. 1229 RaidDiskRestrictionFlag *bool `json:"raidDiskRestrictionFlag,omitempty" xmlrpc:"raidDiskRestrictionFlag,omitempty"` 1230 1231 // This flag determines if the package contains a redundant power supply product. 1232 RedundantPowerFlag *bool `json:"redundantPowerFlag,omitempty" xmlrpc:"redundantPowerFlag,omitempty"` 1233 1234 // A count of the regional locations that a package is available in. 1235 RegionCount *uint `json:"regionCount,omitempty" xmlrpc:"regionCount,omitempty"` 1236 1237 // The regional locations that a package is available in. 1238 Regions []Location_Region `json:"regions,omitempty" xmlrpc:"regions,omitempty"` 1239 1240 // The resource group template that describes a multi-server solution. (Deprecated) 1241 ResourceGroupTemplate *Resource_Group_Template `json:"resourceGroupTemplate,omitempty" xmlrpc:"resourceGroupTemplate,omitempty"` 1242 1243 // This currently contains no information but is here for future use. 1244 SubDescription *string `json:"subDescription,omitempty" xmlrpc:"subDescription,omitempty"` 1245 1246 // The top level category code for this service offering. 1247 TopLevelItemCategoryCode *string `json:"topLevelItemCategoryCode,omitempty" xmlrpc:"topLevelItemCategoryCode,omitempty"` 1248 1249 // The type of service offering. This property can be used to help filter packages. 1250 Type *Product_Package_Type `json:"type,omitempty" xmlrpc:"type,omitempty"` 1251 1252 // The server unit size this package will match to. 1253 UnitSize *int `json:"unitSize,omitempty" xmlrpc:"unitSize,omitempty"` 1254} 1255 1256// no documentation yet 1257type Product_Package_Attribute struct { 1258 Entity 1259 1260 // no documentation yet 1261 AttributeType *Product_Package_Attribute_Type `json:"attributeType,omitempty" xmlrpc:"attributeType,omitempty"` 1262 1263 // no documentation yet 1264 Package *Product_Package `json:"package,omitempty" xmlrpc:"package,omitempty"` 1265 1266 // no documentation yet 1267 Value *string `json:"value,omitempty" xmlrpc:"value,omitempty"` 1268} 1269 1270// no documentation yet 1271type Product_Package_Attribute_Type struct { 1272 Entity 1273 1274 // no documentation yet 1275 Description *string `json:"description,omitempty" xmlrpc:"description,omitempty"` 1276 1277 // no documentation yet 1278 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 1279 1280 // no documentation yet 1281 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 1282} 1283 1284// This is deprecated. 1285type Product_Package_Inventory struct { 1286 Entity 1287 1288 // DEPRECATED. The number of units available for purchase in inventory for a single item in a single datacenter. 1289 AvailableInventoryCount *int `json:"availableInventoryCount,omitempty" xmlrpc:"availableInventoryCount,omitempty"` 1290 1291 // The product package item that is associated with an inventory record. 1292 Item *Product_Item `json:"item,omitempty" xmlrpc:"item,omitempty"` 1293 1294 // DEPRECATED. The unique identifier of the product item that an inventory record is associated with. 1295 ItemId *int `json:"itemId,omitempty" xmlrpc:"itemId,omitempty"` 1296 1297 // The datacenter that an inventory record is located in. 1298 Location *Location `json:"location,omitempty" xmlrpc:"location,omitempty"` 1299 1300 // DEPRECATED. The unique identifier of the datacenter that an inventory record is located in. 1301 LocationId *int `json:"locationId,omitempty" xmlrpc:"locationId,omitempty"` 1302 1303 // DEPRECATED. The date that an inventory record was last updated. 1304 ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` 1305 1306 // DEPRECATED. Whether an inventory record is marked as "overstock". 1307 OverstockFlag *int `json:"overstockFlag,omitempty" xmlrpc:"overstockFlag,omitempty"` 1308 1309 // The product package that is associated with an inventory record. 1310 Package *Product_Package `json:"package,omitempty" xmlrpc:"package,omitempty"` 1311 1312 // DEPRECATED. The unique identifier of the product package that an inventory record is associated with. 1313 PackageId *int `json:"packageId,omitempty" xmlrpc:"packageId,omitempty"` 1314} 1315 1316// This class is used to organize categories for a service offering. A service offering (usually) contains multiple categories (e.g., server, os, disk0, ram). This class allows us to organize the prices into related item category groups. 1317type Product_Package_Item_Category_Group struct { 1318 Entity 1319 1320 // no documentation yet 1321 Category *Product_Item_Category `json:"category,omitempty" xmlrpc:"category,omitempty"` 1322 1323 // The item category id associated with this group. 1324 ItemCategoryId *int `json:"itemCategoryId,omitempty" xmlrpc:"itemCategoryId,omitempty"` 1325 1326 // no documentation yet 1327 Package *Product_Package `json:"package,omitempty" xmlrpc:"package,omitempty"` 1328 1329 // The service offering id associated with this group. 1330 PackageId *int `json:"packageId,omitempty" xmlrpc:"packageId,omitempty"` 1331 1332 // A count of 1333 PriceCount *uint `json:"priceCount,omitempty" xmlrpc:"priceCount,omitempty"` 1334 1335 // no documentation yet 1336 Prices []Product_Item_Price `json:"prices,omitempty" xmlrpc:"prices,omitempty"` 1337 1338 // The sort value for this group. 1339 Sort *int `json:"sort,omitempty" xmlrpc:"sort,omitempty"` 1340 1341 // An optional title associated with this group. E.g., for operating systems, this will be the manufacturer. 1342 Title *string `json:"title,omitempty" xmlrpc:"title,omitempty"` 1343} 1344 1345// The SoftLayer_Product_Package_Item_Prices contains price to package cross references Relates a category, price and item to a bundle. Match bundle ids to see all items and prices in a particular bundle. 1346type Product_Package_Item_Prices struct { 1347 Entity 1348 1349 // The unique identifier for SoftLayer_Product_Package_Item_Price. This is only needed as a reference. The important data is the itemPriceId property. 1350 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 1351 1352 // The item price to which this object belongs. The item price has details regarding cost for the item it belongs to. 1353 ItemPrice *Product_Item_Price `json:"itemPrice,omitempty" xmlrpc:"itemPrice,omitempty"` 1354 1355 // The SoftLayer_Product_Item_Price id. This value is to be used when placing orders. To get more information about this item price, go from the item price to the item description 1356 ItemPriceId *int `json:"itemPriceId,omitempty" xmlrpc:"itemPriceId,omitempty"` 1357 1358 // The package to which this object belongs. 1359 Package *Product_Package `json:"package,omitempty" xmlrpc:"package,omitempty"` 1360 1361 // The Package ID to which this price reference belongs 1362 PackageId *int `json:"packageId,omitempty" xmlrpc:"packageId,omitempty"` 1363} 1364 1365// This data type is a cross-reference between the SoftLayer_Product_Package and the SoftLayer_Product_Item(s) that belong in the SoftLayer_Product_Package. 1366type Product_Package_Items struct { 1367 Entity 1368 1369 // The unique identifier for this object. It is not used anywhere but in this object. 1370 Id *string `json:"id,omitempty" xmlrpc:"id,omitempty"` 1371 1372 // The item to which this object belongs. 1373 Item *Product_Item `json:"item,omitempty" xmlrpc:"item,omitempty"` 1374 1375 // The SoftLayer_Product_Item id to which this instance of the object belongs. 1376 ItemId *int `json:"itemId,omitempty" xmlrpc:"itemId,omitempty"` 1377 1378 // The package to which this object belongs. 1379 Package *Product_Package `json:"package,omitempty" xmlrpc:"package,omitempty"` 1380 1381 // The SoftLayer_Product_Package id to which this instance of the object belongs. 1382 PackageId *int `json:"packageId,omitempty" xmlrpc:"packageId,omitempty"` 1383} 1384 1385// Most packages are available in many locations. This object describes that availability for each package. 1386type Product_Package_Locations struct { 1387 Entity 1388 1389 // This describes the availability of the package tied to this location. 1390 DeliveryTimeInformation *string `json:"deliveryTimeInformation,omitempty" xmlrpc:"deliveryTimeInformation,omitempty"` 1391 1392 // A simple flag which describes whether or not this location is available for this package. 1393 IsAvailable *int `json:"isAvailable,omitempty" xmlrpc:"isAvailable,omitempty"` 1394 1395 // The location to which this object belongs. 1396 Location *Location `json:"location,omitempty" xmlrpc:"location,omitempty"` 1397 1398 // The location id tied to this object. 1399 LocationId *int `json:"locationId,omitempty" xmlrpc:"locationId,omitempty"` 1400 1401 // The package to which this object belongs. 1402 Package *Product_Package `json:"package,omitempty" xmlrpc:"package,omitempty"` 1403 1404 // The SoftLayer_Product_Package ID tied to this object. 1405 PackageId *int `json:"packageId,omitempty" xmlrpc:"packageId,omitempty"` 1406} 1407 1408// This datatype describes the item categories that are required for each package to be ordered. For instance, for package 2, there will be many required categories. When submitting an order for a server, there must be at most 1 price for each category whose "isRequired" is set. Examples of required categories: - server - ram - bandwidth - disk0 1409// 1410// There are others, but these are the main ones. For each required category, a SoftLayer_Product_Item_Price must be chosen that is valid for the package. 1411// 1412// 1413type Product_Package_Order_Configuration struct { 1414 Entity 1415 1416 // The error message displayed if the submitted order does not contain this item category, if it is required. 1417 ErrorMessage *string `json:"errorMessage,omitempty" xmlrpc:"errorMessage,omitempty"` 1418 1419 // The unique identifier for this object. 1420 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 1421 1422 // This is a flag which tells SoftLayer_Product_Order::verifyOrder() whether or not this category is required. If this is set, then the order submitted must contain a SoftLayer_Product_Item_Price with this category as part of the order. 1423 IsRequired *int `json:"isRequired,omitempty" xmlrpc:"isRequired,omitempty"` 1424 1425 // The item category for this configuration instance. 1426 ItemCategory *Product_Item_Category `json:"itemCategory,omitempty" xmlrpc:"itemCategory,omitempty"` 1427 1428 // The SoftLayer_Product_Item_Category. 1429 ItemCategoryId *int `json:"itemCategoryId,omitempty" xmlrpc:"itemCategoryId,omitempty"` 1430 1431 // The order step ID for this particular option in the package. 1432 OrderStepId *int `json:"orderStepId,omitempty" xmlrpc:"orderStepId,omitempty"` 1433 1434 // The package to which this instance belongs. 1435 Package *Product_Package `json:"package,omitempty" xmlrpc:"package,omitempty"` 1436 1437 // The PackageId tied to this instance. 1438 PackageId *int `json:"packageId,omitempty" xmlrpc:"packageId,omitempty"` 1439 1440 // This is an integer used to show the order in which each item Category should be displayed. This is merely the suggested order. 1441 Sort *int `json:"sort,omitempty" xmlrpc:"sort,omitempty"` 1442 1443 // The step to which this instance belongs. 1444 Step *Product_Package_Order_Step `json:"step,omitempty" xmlrpc:"step,omitempty"` 1445} 1446 1447// Each package has at least 1 step to the ordering process. For server orders, there are many. Each step has certain item categories which are displayed. This type describes the steps for each package. 1448type Product_Package_Order_Step struct { 1449 Entity 1450 1451 // The unique identifier for this object. It is not used anywhere but in this object. 1452 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 1453 1454 // A count of the next steps in the ordering process for the package tied to this object, including this step. 1455 InclusivePreviousStepCount *uint `json:"inclusivePreviousStepCount,omitempty" xmlrpc:"inclusivePreviousStepCount,omitempty"` 1456 1457 // The next steps in the ordering process for the package tied to this object, including this step. 1458 InclusivePreviousSteps []Product_Package_Order_Step_Next `json:"inclusivePreviousSteps,omitempty" xmlrpc:"inclusivePreviousSteps,omitempty"` 1459 1460 // A count of the next steps in the ordering process for the package tied to this object. 1461 NextStepCount *uint `json:"nextStepCount,omitempty" xmlrpc:"nextStepCount,omitempty"` 1462 1463 // The next steps in the ordering process for the package tied to this object. 1464 NextSteps []Product_Package_Order_Step_Next `json:"nextSteps,omitempty" xmlrpc:"nextSteps,omitempty"` 1465 1466 // A count of the item to which this object belongs. 1467 PreviousStepCount *uint `json:"previousStepCount,omitempty" xmlrpc:"previousStepCount,omitempty"` 1468 1469 // The item to which this object belongs. 1470 PreviousSteps []Product_Package_Order_Step_Next `json:"previousSteps,omitempty" xmlrpc:"previousSteps,omitempty"` 1471 1472 // The number of the step in the order process for this package. These are sequential and only needed for step-based ordering. 1473 Step *string `json:"step,omitempty" xmlrpc:"step,omitempty"` 1474} 1475 1476// This datatype simply describes which steps are next in line for ordering. 1477type Product_Package_Order_Step_Next struct { 1478 Entity 1479 1480 // The unique identifier for this object. 1481 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 1482 1483 // The unique identifier for SoftLayer_Product_Package_Order_Step for the next step in the process. 1484 NextOrderStepId *int `json:"nextOrderStepId,omitempty" xmlrpc:"nextOrderStepId,omitempty"` 1485 1486 // The unique identifier for SoftLayer_Product_Package_Order_Step for the current step. 1487 OrderStepId *int `json:"orderStepId,omitempty" xmlrpc:"orderStepId,omitempty"` 1488 1489 // The SoftLayer_Product_Package_Order_Step to which this object belongs. 1490 Step *Product_Package_Order_Step `json:"step,omitempty" xmlrpc:"step,omitempty"` 1491} 1492 1493// Package presets are used to simplify ordering by eliminating the need for price ids when submitting orders. 1494// 1495// Orders submitted with a preset id defined will use the prices included in the package preset. Prices submitted on an order with a preset id will replace the prices included in the package preset for that prices category. If the package preset has a fixed configuration flag <em>(fixedConfigurationFlag)</em> set then the prices included in the preset configuration cannot be replaced by prices submitted on the order. The only exception to the fixed configuration flag would be if a price submitted on the order is an account-restricted price for the same product item. 1496type Product_Package_Preset struct { 1497 Entity 1498 1499 // no documentation yet 1500 AvailableStorageUnits *uint `json:"availableStorageUnits,omitempty" xmlrpc:"availableStorageUnits,omitempty"` 1501 1502 // The item categories that are included in this package preset configuration. 1503 Categories []Product_Item_Category `json:"categories,omitempty" xmlrpc:"categories,omitempty"` 1504 1505 // A count of the item categories that are included in this package preset configuration. 1506 CategoryCount *uint `json:"categoryCount,omitempty" xmlrpc:"categoryCount,omitempty"` 1507 1508 // The compute family this configuration belongs to. 1509 ComputeGroup *Product_Item_Server_Group `json:"computeGroup,omitempty" xmlrpc:"computeGroup,omitempty"` 1510 1511 // The preset configuration (category and price). 1512 Configuration []Product_Package_Preset_Configuration `json:"configuration,omitempty" xmlrpc:"configuration,omitempty"` 1513 1514 // A count of the preset configuration (category and price). 1515 ConfigurationCount *uint `json:"configurationCount,omitempty" xmlrpc:"configurationCount,omitempty"` 1516 1517 // A description of the package preset. 1518 Description *string `json:"description,omitempty" xmlrpc:"description,omitempty"` 1519 1520 // When true this preset is only allowed to upgrade/downgrade to other presets in the same compute family. 1521 DisallowedComputeGroupUpgradeFlag *bool `json:"disallowedComputeGroupUpgradeFlag,omitempty" xmlrpc:"disallowedComputeGroupUpgradeFlag,omitempty"` 1522 1523 // A package preset with this flag set will not allow the price's defined in the preset configuration to be overriden during order placement. 1524 FixedConfigurationFlag *bool `json:"fixedConfigurationFlag,omitempty" xmlrpc:"fixedConfigurationFlag,omitempty"` 1525 1526 // A preset's internal identifier. Everything regarding a SoftLayer_Product_Package_Preset is tied back to this id. 1527 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 1528 1529 // The status of the package preset. 1530 IsActive *string `json:"isActive,omitempty" xmlrpc:"isActive,omitempty"` 1531 1532 // The key name of the package preset. For the base configuration of a package the preset key name is "DEFAULT". 1533 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 1534 1535 // A count of the locations this preset configuration is available in. If empty the preset is available in all locations the package is available in. 1536 LocationCount *uint `json:"locationCount,omitempty" xmlrpc:"locationCount,omitempty"` 1537 1538 // The locations this preset configuration is available in. If empty the preset is available in all locations the package is available in. 1539 Locations []Location `json:"locations,omitempty" xmlrpc:"locations,omitempty"` 1540 1541 // The lowest server prices related to this package preset. 1542 LowestPresetServerPrice *Product_Item_Price `json:"lowestPresetServerPrice,omitempty" xmlrpc:"lowestPresetServerPrice,omitempty"` 1543 1544 // The name of the package preset. 1545 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 1546 1547 // The package this preset belongs to. 1548 Package *Product_Package `json:"package,omitempty" xmlrpc:"package,omitempty"` 1549 1550 // The item categories associated with a package preset, including information detailing which item categories are required as part of a SoftLayer product order. 1551 PackageConfiguration []Product_Package_Order_Configuration `json:"packageConfiguration,omitempty" xmlrpc:"packageConfiguration,omitempty"` 1552 1553 // A count of the item categories associated with a package preset, including information detailing which item categories are required as part of a SoftLayer product order. 1554 PackageConfigurationCount *uint `json:"packageConfigurationCount,omitempty" xmlrpc:"packageConfigurationCount,omitempty"` 1555 1556 // The package id for the package this preset belongs to. 1557 PackageId *int `json:"packageId,omitempty" xmlrpc:"packageId,omitempty"` 1558 1559 // A count of the item prices that are included in this package preset configuration. 1560 PriceCount *uint `json:"priceCount,omitempty" xmlrpc:"priceCount,omitempty"` 1561 1562 // The item prices that are included in this package preset configuration. 1563 Prices []Product_Item_Price `json:"prices,omitempty" xmlrpc:"prices,omitempty"` 1564 1565 // A count of describes how all disks in this preset will be configured. 1566 StorageGroupTemplateArrayCount *uint `json:"storageGroupTemplateArrayCount,omitempty" xmlrpc:"storageGroupTemplateArrayCount,omitempty"` 1567 1568 // Describes how all disks in this preset will be configured. 1569 StorageGroupTemplateArrays []Configuration_Storage_Group_Template_Group `json:"storageGroupTemplateArrays,omitempty" xmlrpc:"storageGroupTemplateArrays,omitempty"` 1570 1571 // The starting hourly price for this configuration. Additional options not defined in the preset may increase the cost. 1572 TotalMinimumHourlyFee *Float64 `json:"totalMinimumHourlyFee,omitempty" xmlrpc:"totalMinimumHourlyFee,omitempty"` 1573 1574 // The starting monthly price for this configuration. Additional options not defined in the preset may increase the cost. 1575 TotalMinimumRecurringFee *Float64 `json:"totalMinimumRecurringFee,omitempty" xmlrpc:"totalMinimumRecurringFee,omitempty"` 1576} 1577 1578// Package preset attributes contain supplementary information for a package preset. 1579type Product_Package_Preset_Attribute struct { 1580 Entity 1581 1582 // no documentation yet 1583 AttributeType *Product_Package_Preset_Attribute_Type `json:"attributeType,omitempty" xmlrpc:"attributeType,omitempty"` 1584 1585 // The internal identifier of the type of attribute that a pacakge preset attribute belongs to. 1586 AttributeTypeId *int `json:"attributeTypeId,omitempty" xmlrpc:"attributeTypeId,omitempty"` 1587 1588 // A package preset attribute's internal identifier. 1589 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 1590 1591 // no documentation yet 1592 Preset *Product_Package_Preset `json:"preset,omitempty" xmlrpc:"preset,omitempty"` 1593 1594 // The internal identifier of the package preset an attribute belongs to. 1595 PresetId *int `json:"presetId,omitempty" xmlrpc:"presetId,omitempty"` 1596 1597 // A package preset's attribute value. 1598 Value *string `json:"value,omitempty" xmlrpc:"value,omitempty"` 1599} 1600 1601// SoftLayer_Product_Package_Preset_Attribute_Type models the type of attribute that can be assigned to a package preset. 1602type Product_Package_Preset_Attribute_Type struct { 1603 Entity 1604 1605 // A brief description of a package preset attribute type. 1606 Description *string `json:"description,omitempty" xmlrpc:"description,omitempty"` 1607 1608 // A package preset attribute type's internal identifier. 1609 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 1610 1611 // A package preset attribute type's key name. This is typically a shorter version of an attribute type's name. 1612 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 1613 1614 // A package preset attribute type's name. 1615 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 1616} 1617 1618// no documentation yet 1619type Product_Package_Preset_Configuration struct { 1620 Entity 1621 1622 // no documentation yet 1623 Category *Product_Item_Category `json:"category,omitempty" xmlrpc:"category,omitempty"` 1624 1625 // no documentation yet 1626 PackagePreset *Product_Package_Preset `json:"packagePreset,omitempty" xmlrpc:"packagePreset,omitempty"` 1627 1628 // no documentation yet 1629 Price *Product_Item_Price `json:"price,omitempty" xmlrpc:"price,omitempty"` 1630} 1631 1632// The SoftLayer_Product_Package_Server data type contains summarized information for bare metal servers regarding pricing, processor stats, and feature sets. 1633type Product_Package_Server struct { 1634 Entity 1635 1636 // no documentation yet 1637 Catalog *Product_Catalog `json:"catalog,omitempty" xmlrpc:"catalog,omitempty"` 1638 1639 // The unique identifier of a [[SoftLayer_Product_Catalog]]. 1640 CatalogId *int `json:"catalogId,omitempty" xmlrpc:"catalogId,omitempty"` 1641 1642 // Comma-separated list of datacenter names this server is available in 1643 Datacenters *string `json:"datacenters,omitempty" xmlrpc:"datacenters,omitempty"` 1644 1645 // The minimum amount of RAM the server is configured with. 1646 DefaultRamCapacity *Float64 `json:"defaultRamCapacity,omitempty" xmlrpc:"defaultRamCapacity,omitempty"` 1647 1648 // Flag to indicate if the server configuration supports dual path network routing. 1649 DualPathNetworkFlag *bool `json:"dualPathNetworkFlag,omitempty" xmlrpc:"dualPathNetworkFlag,omitempty"` 1650 1651 // no documentation yet 1652 FlexCoreServerFlag *bool `json:"flexCoreServerFlag,omitempty" xmlrpc:"flexCoreServerFlag,omitempty"` 1653 1654 // Indicates whether or not the server contains a GPU. 1655 GpuFlag *bool `json:"gpuFlag,omitempty" xmlrpc:"gpuFlag,omitempty"` 1656 1657 // Flag to determine if a server is available for hourly billing. 1658 HourlyBillingFlag *bool `json:"hourlyBillingFlag,omitempty" xmlrpc:"hourlyBillingFlag,omitempty"` 1659 1660 // The unique identifier of a [[SoftLayer_Product_Package_Server]]. 1661 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 1662 1663 // no documentation yet 1664 Item *Product_Item `json:"item,omitempty" xmlrpc:"item,omitempty"` 1665 1666 // The unique identifier of a [[SoftLayer_Product_Item]]. 1667 ItemId *int `json:"itemId,omitempty" xmlrpc:"itemId,omitempty"` 1668 1669 // no documentation yet 1670 ItemPrice *Product_Item_Price `json:"itemPrice,omitempty" xmlrpc:"itemPrice,omitempty"` 1671 1672 // The unique identifier of a [[SoftLayer_Product_Item_Price]]. 1673 ItemPriceId *int `json:"itemPriceId,omitempty" xmlrpc:"itemPriceId,omitempty"` 1674 1675 // The maximum number of hard drives the server can support. 1676 MaximumDriveCount *int `json:"maximumDriveCount,omitempty" xmlrpc:"maximumDriveCount,omitempty"` 1677 1678 // The maximum available network speed for the server. 1679 MaximumPortSpeed *Float64 `json:"maximumPortSpeed,omitempty" xmlrpc:"maximumPortSpeed,omitempty"` 1680 1681 // The maximum amount of RAM the server can support. 1682 MaximumRamCapacity *Float64 `json:"maximumRamCapacity,omitempty" xmlrpc:"maximumRamCapacity,omitempty"` 1683 1684 // The minimum available network speed for the server. 1685 MinimumPortSpeed *Float64 `json:"minimumPortSpeed,omitempty" xmlrpc:"minimumPortSpeed,omitempty"` 1686 1687 // no documentation yet 1688 NetworkGatewayApplianceRoleFlag *bool `json:"networkGatewayApplianceRoleFlag,omitempty" xmlrpc:"networkGatewayApplianceRoleFlag,omitempty"` 1689 1690 // DEPRECATED. Indicates whether or not the server is being sold as part of an outlet package. 1691 OutletFlag *bool `json:"outletFlag,omitempty" xmlrpc:"outletFlag,omitempty"` 1692 1693 // no documentation yet 1694 Package *Product_Package `json:"package,omitempty" xmlrpc:"package,omitempty"` 1695 1696 // The unique identifier of a [[SoftLayer_Product_Package]]. 1697 PackageId *int `json:"packageId,omitempty" xmlrpc:"packageId,omitempty"` 1698 1699 // The type of service offering/package. 1700 PackageType *string `json:"packageType,omitempty" xmlrpc:"packageType,omitempty"` 1701 1702 // Flag to indicate if the server is an IBM Power server. 1703 PowerServerFlag *bool `json:"powerServerFlag,omitempty" xmlrpc:"powerServerFlag,omitempty"` 1704 1705 // no documentation yet 1706 Preset *Product_Package_Preset `json:"preset,omitempty" xmlrpc:"preset,omitempty"` 1707 1708 // The unique identifier of a [[SoftLayer_Product_Package_Preset]]. 1709 PresetId *int `json:"presetId,omitempty" xmlrpc:"presetId,omitempty"` 1710 1711 // Indicates whether or not the server can only be configured with a private network. 1712 PrivateNetworkOnlyFlag *bool `json:"privateNetworkOnlyFlag,omitempty" xmlrpc:"privateNetworkOnlyFlag,omitempty"` 1713 1714 // The processor's bus speed. 1715 ProcessorBusSpeed *string `json:"processorBusSpeed,omitempty" xmlrpc:"processorBusSpeed,omitempty"` 1716 1717 // The amount of cache the processor has. 1718 ProcessorCache *string `json:"processorCache,omitempty" xmlrpc:"processorCache,omitempty"` 1719 1720 // The number of cores in each processor. 1721 ProcessorCores *int `json:"processorCores,omitempty" xmlrpc:"processorCores,omitempty"` 1722 1723 // The number of processors the server has. 1724 ProcessorCount *int `json:"processorCount,omitempty" xmlrpc:"processorCount,omitempty"` 1725 1726 // The manufacturer of the server's processor. 1727 ProcessorManufacturer *string `json:"processorManufacturer,omitempty" xmlrpc:"processorManufacturer,omitempty"` 1728 1729 // The model of the server's processor. 1730 ProcessorModel *string `json:"processorModel,omitempty" xmlrpc:"processorModel,omitempty"` 1731 1732 // The name of the server's processor. 1733 ProcessorName *string `json:"processorName,omitempty" xmlrpc:"processorName,omitempty"` 1734 1735 // The processor speed. 1736 ProcessorSpeed *string `json:"processorSpeed,omitempty" xmlrpc:"processorSpeed,omitempty"` 1737 1738 // The name of the server product. 1739 ProductName *string `json:"productName,omitempty" xmlrpc:"productName,omitempty"` 1740 1741 // Indicates whether or not the server has the capability to support a redundant power supply. 1742 RedundantPowerFlag *bool `json:"redundantPowerFlag,omitempty" xmlrpc:"redundantPowerFlag,omitempty"` 1743 1744 // Flag to indicate if the server is SAP certified. 1745 SapCertifiedServerFlag *bool `json:"sapCertifiedServerFlag,omitempty" xmlrpc:"sapCertifiedServerFlag,omitempty"` 1746 1747 // The hourly starting price for the server. This includes a sum of all the minimum required items, including RAM and hard drives. Not all servers are available hourly. 1748 StartingHourlyPrice *Float64 `json:"startingHourlyPrice,omitempty" xmlrpc:"startingHourlyPrice,omitempty"` 1749 1750 // The monthly starting price for the server. This includes a sum of all the minimum required items, including RAM and hard drives. 1751 StartingMonthlyPrice *Float64 `json:"startingMonthlyPrice,omitempty" xmlrpc:"startingMonthlyPrice,omitempty"` 1752 1753 // The total number of processor cores available for the server. 1754 TotalCoreCount *int `json:"totalCoreCount,omitempty" xmlrpc:"totalCoreCount,omitempty"` 1755 1756 // Flag to indicate if the server configuration supports TXT/TPM. 1757 TxtTpmFlag *bool `json:"txtTpmFlag,omitempty" xmlrpc:"txtTpmFlag,omitempty"` 1758 1759 // The size of the server. 1760 UnitSize *int `json:"unitSize,omitempty" xmlrpc:"unitSize,omitempty"` 1761 1762 // Flag to indicate if the server is a VMware vSAN Node configuration. 1763 VmwareVsanNodeFlag *bool `json:"vmwareVsanNodeFlag,omitempty" xmlrpc:"vmwareVsanNodeFlag,omitempty"` 1764} 1765 1766// The [[SoftLayer_Product_Package_Server_Option]] data type contains various data points associated with package servers that can be used in selection criteria. 1767type Product_Package_Server_Option struct { 1768 Entity 1769 1770 // The unique identifier of a Catalog. 1771 CatalogId *int `json:"catalogId,omitempty" xmlrpc:"catalogId,omitempty"` 1772 1773 // A description of the option. 1774 Description *string `json:"description,omitempty" xmlrpc:"description,omitempty"` 1775 1776 // The unique identifier of a Package Server Option. 1777 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 1778 1779 // The type of option. 1780 Type *string `json:"type,omitempty" xmlrpc:"type,omitempty"` 1781 1782 // The value of the the option. 1783 Value *string `json:"value,omitempty" xmlrpc:"value,omitempty"` 1784} 1785 1786// The [[SoftLayer_Product_Package_Type]] object indicates the type for a service offering (package). The type can be used to filter packages. For example, if you are looking for the package representing virtual servers, you can filter on the type's key name of '''VIRTUAL_SERVER_INSTANCE'''. For bare metal servers by core or CPU, filter on '''BARE_METAL_CORE''' or '''BARE_METAL_CPU''', respectively. 1787type Product_Package_Type struct { 1788 Entity 1789 1790 // The package type's unique identifier. 1791 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 1792 1793 // The unique key name of the package type. Use this value when filtering. 1794 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 1795 1796 // The name of the package type. 1797 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 1798 1799 // A count of all the packages associated with the given package type. 1800 PackageCount *uint `json:"packageCount,omitempty" xmlrpc:"packageCount,omitempty"` 1801 1802 // All the packages associated with the given package type. 1803 Packages []Product_Package `json:"packages,omitempty" xmlrpc:"packages,omitempty"` 1804} 1805 1806// The SoftLayer_Product_Upgrade_Request data type contains general information relating to a hardware, virtual server, or service upgrade. It also relates a [[SoftLayer_Billing_Order]] to a [[SoftLayer_Ticket]]. 1807type Product_Upgrade_Request struct { 1808 Entity 1809 1810 // The account that an order belongs to 1811 Account *Account `json:"account,omitempty" xmlrpc:"account,omitempty"` 1812 1813 // The unique internal id of a SoftLayer account 1814 AccountId *int `json:"accountId,omitempty" xmlrpc:"accountId,omitempty"` 1815 1816 // Indicates that the upgrade request has completed or has been cancelled. 1817 CompletedFlag *bool `json:"completedFlag,omitempty" xmlrpc:"completedFlag,omitempty"` 1818 1819 // The date an upgrade request was created. 1820 CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` 1821 1822 // The unique internal id of the last modified user 1823 EmployeeId *int `json:"employeeId,omitempty" xmlrpc:"employeeId,omitempty"` 1824 1825 // The unique internal id of the virtual server that an upgrade will be done 1826 GuestId *int `json:"guestId,omitempty" xmlrpc:"guestId,omitempty"` 1827 1828 // The unique internal id of the hardware that an upgrade will be done 1829 HardwareId *int `json:"hardwareId,omitempty" xmlrpc:"hardwareId,omitempty"` 1830 1831 // An upgrade request's internal identifier. 1832 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 1833 1834 // This is the invoice associated with the upgrade request. For hourly servers or services, an invoice will not be available. 1835 Invoice *Billing_Invoice `json:"invoice,omitempty" xmlrpc:"invoice,omitempty"` 1836 1837 // The time that system admin starts working on the order item. This is used for upgrade orders. 1838 MaintenanceStartTimeUtc *Time `json:"maintenanceStartTimeUtc,omitempty" xmlrpc:"maintenanceStartTimeUtc,omitempty"` 1839 1840 // The date an upgrade request was last modified. 1841 ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` 1842 1843 // An order record associated to the upgrade request 1844 Order *Billing_Order `json:"order,omitempty" xmlrpc:"order,omitempty"` 1845 1846 // The unique internal id of the order that an upgrade request is related to 1847 OrderId *int `json:"orderId,omitempty" xmlrpc:"orderId,omitempty"` 1848 1849 // The total amount of fees 1850 OrderTotal *Float64 `json:"orderTotal,omitempty" xmlrpc:"orderTotal,omitempty"` 1851 1852 // The prorated total amount of recurring fees 1853 ProratedTotal *Float64 `json:"proratedTotal,omitempty" xmlrpc:"proratedTotal,omitempty"` 1854 1855 // A server object associated with the upgrade request if any. 1856 Server *Hardware `json:"server,omitempty" xmlrpc:"server,omitempty"` 1857 1858 // The current status of the upgrade request. 1859 Status *Product_Upgrade_Request_Status `json:"status,omitempty" xmlrpc:"status,omitempty"` 1860 1861 // The unique internal id of an upgrade status 1862 StatusId *int `json:"statusId,omitempty" xmlrpc:"statusId,omitempty"` 1863 1864 // The ticket that is used to coordinate the upgrade process. 1865 Ticket *Ticket `json:"ticket,omitempty" xmlrpc:"ticket,omitempty"` 1866 1867 // The unique internal id of the ticket related to an upgrade request 1868 TicketId *int `json:"ticketId,omitempty" xmlrpc:"ticketId,omitempty"` 1869 1870 // The user that placed the order. 1871 User *User_Customer `json:"user,omitempty" xmlrpc:"user,omitempty"` 1872 1873 // The unique internal id of the customer who place the order 1874 UserId *int `json:"userId,omitempty" xmlrpc:"userId,omitempty"` 1875 1876 // A virtual server object associated with the upgrade request if any. 1877 VirtualGuest *Virtual_Guest `json:"virtualGuest,omitempty" xmlrpc:"virtualGuest,omitempty"` 1878} 1879 1880// The SoftLayer_Product_Upgrade_Request_Status data type contains detailed information relating to an hardware or software upgrade request. 1881type Product_Upgrade_Request_Status struct { 1882 Entity 1883 1884 // The detailed description of an upgrade request status. 1885 Description *string `json:"description,omitempty" xmlrpc:"description,omitempty"` 1886 1887 // An internal identifier of an upgrade request status. 1888 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 1889 1890 // The name of an upgrade request status. 1891 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 1892 1893 // The status code of an upgrade request status. 1894 StatusCode *string `json:"statusCode,omitempty" xmlrpc:"statusCode,omitempty"` 1895} 1896