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// Details provided for the notification are basic. Details such as the related preferences, name and keyname for the notification can be retrieved. The keyname property for the notification can be used to refer to a notification when integrating into the SoftLayer Notification system. The name property can used more for display purposes. 24type Notification struct { 25 Entity 26 27 // Unique identifier for the notification. 28 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 29 30 // Name that can be used by external systems to refer to a notification. 31 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 32 33 // Friendly name for the notification. 34 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 35 36 // A count of the preferences related to the notification. These are preferences are configurable and optional for subscribers to use. 37 PreferenceCount *uint `json:"preferenceCount,omitempty" xmlrpc:"preferenceCount,omitempty"` 38 39 // The preferences related to the notification. These are preferences are configurable and optional for subscribers to use. 40 Preferences []Notification_Preference `json:"preferences,omitempty" xmlrpc:"preferences,omitempty"` 41 42 // A count of the required preferences related to the notification. While configurable, the subscriber does not have the option whether to use the preference. 43 RequiredPreferenceCount *uint `json:"requiredPreferenceCount,omitempty" xmlrpc:"requiredPreferenceCount,omitempty"` 44 45 // The required preferences related to the notification. While configurable, the subscriber does not have the option whether to use the preference. 46 RequiredPreferences []Notification_Preference `json:"requiredPreferences,omitempty" xmlrpc:"requiredPreferences,omitempty"` 47} 48 49// Provides details for the delivery methods available. 50type Notification_Delivery_Method struct { 51 Entity 52 53 // Determines if the delivery method is still used by the system. 54 Active *int `json:"active,omitempty" xmlrpc:"active,omitempty"` 55 56 // Description used for the delivery method. 57 Description *string `json:"description,omitempty" xmlrpc:"description,omitempty"` 58 59 // Unique identifier for the various notification delivery methods. 60 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 61 62 // Name that can be used by external systems to refer to delivery method. 63 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 64 65 // Friendly name used for the delivery method. 66 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 67} 68 69// This is an extension of the SoftLayer_Notification class. These are implementation details specific to those notifications which can be subscribed to and received on a mobile device. 70type Notification_Mobile struct { 71 Notification 72} 73 74// no documentation yet 75type Notification_Occurrence_Account struct { 76 Entity 77 78 // no documentation yet 79 Account *Account `json:"account,omitempty" xmlrpc:"account,omitempty"` 80 81 // no documentation yet 82 Active *int `json:"active,omitempty" xmlrpc:"active,omitempty"` 83 84 // no documentation yet 85 LastNotificationUpdate *Notification_Occurrence_Update `json:"lastNotificationUpdate,omitempty" xmlrpc:"lastNotificationUpdate,omitempty"` 86 87 // no documentation yet 88 NotificationOccurrenceEvent *Notification_Occurrence_Event `json:"notificationOccurrenceEvent,omitempty" xmlrpc:"notificationOccurrenceEvent,omitempty"` 89} 90 91// no documentation yet 92type Notification_Occurrence_Event struct { 93 Entity 94 95 // Indicates whether or not this event has been acknowledged by the user. 96 AcknowledgedFlag *bool `json:"acknowledgedFlag,omitempty" xmlrpc:"acknowledgedFlag,omitempty"` 97 98 // A count of a collection of attachments for this event which provide supplementary information to impacted users some examples are RFO (Reason For Outage) and root cause analysis documents. 99 AttachmentCount *uint `json:"attachmentCount,omitempty" xmlrpc:"attachmentCount,omitempty"` 100 101 // A collection of attachments for this event which provide supplementary information to impacted users some examples are RFO (Reason For Outage) and root cause analysis documents. 102 Attachments []Notification_Occurrence_Event_Attachment `json:"attachments,omitempty" xmlrpc:"attachments,omitempty"` 103 104 // When this event will end. 105 EndDate *Time `json:"endDate,omitempty" xmlrpc:"endDate,omitempty"` 106 107 // The first update for this event. 108 FirstUpdate *Notification_Occurrence_Update `json:"firstUpdate,omitempty" xmlrpc:"firstUpdate,omitempty"` 109 110 // Unique identifier for this event. 111 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 112 113 // A count of a collection of accounts impacted by this event. Each impacted account record relates directly to a [[SoftLayer_Account]]. 114 ImpactedAccountCount *uint `json:"impactedAccountCount,omitempty" xmlrpc:"impactedAccountCount,omitempty"` 115 116 // A collection of accounts impacted by this event. Each impacted account record relates directly to a [[SoftLayer_Account]]. 117 ImpactedAccounts []Notification_Occurrence_Account `json:"impactedAccounts,omitempty" xmlrpc:"impactedAccounts,omitempty"` 118 119 // A count of a collection of resources impacted by this event. Each record will relate to some physical resource that the user has access to such as [[SoftLayer_Hardware]] or [[SoftLayer_Virtual_Guest]]. 120 ImpactedResourceCount *uint `json:"impactedResourceCount,omitempty" xmlrpc:"impactedResourceCount,omitempty"` 121 122 // A collection of resources impacted by this event. Each record will relate to some physical resource that the user has access to such as [[SoftLayer_Hardware]] or [[SoftLayer_Virtual_Guest]]. 123 ImpactedResources []Notification_Occurrence_Resource `json:"impactedResources,omitempty" xmlrpc:"impactedResources,omitempty"` 124 125 // A count of a collection of users impacted by this event. Each impacted user record relates directly to a [[SoftLayer_User_Customer]]. 126 ImpactedUserCount *uint `json:"impactedUserCount,omitempty" xmlrpc:"impactedUserCount,omitempty"` 127 128 // A collection of users impacted by this event. Each impacted user record relates directly to a [[SoftLayer_User_Customer]]. 129 ImpactedUsers []Notification_Occurrence_User `json:"impactedUsers,omitempty" xmlrpc:"impactedUsers,omitempty"` 130 131 // Latest count of users impacted by this event. 132 LastImpactedUserCount *int `json:"lastImpactedUserCount,omitempty" xmlrpc:"lastImpactedUserCount,omitempty"` 133 134 // The last update for this event. 135 LastUpdate *Notification_Occurrence_Update `json:"lastUpdate,omitempty" xmlrpc:"lastUpdate,omitempty"` 136 137 // When this event was last updated. 138 ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` 139 140 // The type of event such as planned or unplanned maintenance. 141 NotificationOccurrenceEventType *Notification_Occurrence_Event_Type `json:"notificationOccurrenceEventType,omitempty" xmlrpc:"notificationOccurrenceEventType,omitempty"` 142 143 // no documentation yet 144 RecoveryTime *int `json:"recoveryTime,omitempty" xmlrpc:"recoveryTime,omitempty"` 145 146 // When this event started. 147 StartDate *Time `json:"startDate,omitempty" xmlrpc:"startDate,omitempty"` 148 149 // no documentation yet 150 StatusCode *Notification_Occurrence_Status_Code `json:"statusCode,omitempty" xmlrpc:"statusCode,omitempty"` 151 152 // Brief description of this event. 153 Subject *string `json:"subject,omitempty" xmlrpc:"subject,omitempty"` 154 155 // Details of this event. 156 Summary *string `json:"summary,omitempty" xmlrpc:"summary,omitempty"` 157 158 // Unique identifier for the [[SoftLayer_Ticket]] associated with this event. 159 SystemTicketId *int `json:"systemTicketId,omitempty" xmlrpc:"systemTicketId,omitempty"` 160 161 // A count of all updates for this event. 162 UpdateCount *uint `json:"updateCount,omitempty" xmlrpc:"updateCount,omitempty"` 163 164 // All updates for this event. 165 Updates []Notification_Occurrence_Update `json:"updates,omitempty" xmlrpc:"updates,omitempty"` 166} 167 168// SoftLayer events can have have files attached to them by a SoftLayer employee. Attaching a file to a event is a way to provide supplementary information such as a RFO (reason for outage) document or root cause analysis. The SoftLayer_Notification_Occurrence_Event_Attachment data type models a single file attached to a event. 169type Notification_Occurrence_Event_Attachment struct { 170 Entity 171 172 // The date the file was attached to the event. 173 CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` 174 175 // The name of the file attached to the event. 176 FileName *string `json:"fileName,omitempty" xmlrpc:"fileName,omitempty"` 177 178 // The size of the file, measured in bytes. 179 FileSize *string `json:"fileSize,omitempty" xmlrpc:"fileSize,omitempty"` 180 181 // A event attachments' unique identifier. 182 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 183 184 // no documentation yet 185 NotificationOccurrenceEvent *Notification_Occurrence_Event `json:"notificationOccurrenceEvent,omitempty" xmlrpc:"notificationOccurrenceEvent,omitempty"` 186 187 // The unique event identifier that the file is attached to. 188 NotificationOccurrenceEventId *int `json:"notificationOccurrenceEventId,omitempty" xmlrpc:"notificationOccurrenceEventId,omitempty"` 189} 190 191// This represents the type of SoftLayer_Notification_Occurrence_Event. 192type Notification_Occurrence_Event_Type struct { 193 Entity 194 195 // The friendly unique identifier for this event type. 196 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 197} 198 199// This type contains general information relating to any hardware or services that may be impacted by a SoftLayer_Notification_Occurrence_Event. 200type Notification_Occurrence_Resource struct { 201 Entity 202 203 // no documentation yet 204 Active *int `json:"active,omitempty" xmlrpc:"active,omitempty"` 205 206 // <<< EOT A label which gives some background as to what piece of 207 FilterLabel *string `json:"filterLabel,omitempty" xmlrpc:"filterLabel,omitempty"` 208 209 // The associated event. 210 NotificationOccurrenceEvent *Notification_Occurrence_Event `json:"notificationOccurrenceEvent,omitempty" xmlrpc:"notificationOccurrenceEvent,omitempty"` 211 212 // <<< EOT The unique identifier for the associated 213 NotificationOccurrenceEventId *int `json:"notificationOccurrenceEventId,omitempty" xmlrpc:"notificationOccurrenceEventId,omitempty"` 214 215 // The physical resource. 216 Resource *Entity `json:"resource,omitempty" xmlrpc:"resource,omitempty"` 217 218 // <<< EOT The unique identifier for the [[SoftLayer_Account]] associated with 219 ResourceAccountId *int `json:"resourceAccountId,omitempty" xmlrpc:"resourceAccountId,omitempty"` 220 221 // no documentation yet 222 ResourceName *string `json:"resourceName,omitempty" xmlrpc:"resourceName,omitempty"` 223 224 // <<< EOT The unique identifier for the physical resource that is associated 225 ResourceTableId *int `json:"resourceTableId,omitempty" xmlrpc:"resourceTableId,omitempty"` 226} 227 228// This type contains general information related to a [[SoftLayer_Hardware]] resource that is impacted by a [[SoftLayer_Notification_Occurrence_Event]]. 229type Notification_Occurrence_Resource_Hardware struct { 230 Notification_Occurrence_Resource 231 232 // no documentation yet 233 Hostname *string `json:"hostname,omitempty" xmlrpc:"hostname,omitempty"` 234 235 // no documentation yet 236 PrivateIp *string `json:"privateIp,omitempty" xmlrpc:"privateIp,omitempty"` 237 238 // no documentation yet 239 PublicIp *string `json:"publicIp,omitempty" xmlrpc:"publicIp,omitempty"` 240 241 // no documentation yet 242 ResourceType *string `json:"resourceType,omitempty" xmlrpc:"resourceType,omitempty"` 243} 244 245// This type contains general information related to a [[SoftLayer_Network_Application_Delivery_Controller]] resource that is impacted by a [[SoftLayer_Notification_Occurrence_Event]]. 246type Notification_Occurrence_Resource_Network_Application_Delivery_Controller struct { 247 Notification_Occurrence_Resource 248 249 // no documentation yet 250 Hostname *string `json:"hostname,omitempty" xmlrpc:"hostname,omitempty"` 251 252 // no documentation yet 253 PrivateIp *string `json:"privateIp,omitempty" xmlrpc:"privateIp,omitempty"` 254 255 // no documentation yet 256 PublicIp *string `json:"publicIp,omitempty" xmlrpc:"publicIp,omitempty"` 257 258 // no documentation yet 259 ResourceType *string `json:"resourceType,omitempty" xmlrpc:"resourceType,omitempty"` 260} 261 262// This type contains general information related to a [[SoftLayer_Network_Application_Delivery_Controller_LoadBalancer_VirtualIpAddress]] resource that is impacted by a [[SoftLayer_Notification_Occurrence_Event]]. 263type Notification_Occurrence_Resource_Network_Application_Delivery_Controller_LoadBalancer_VirtualIpAddress struct { 264 Notification_Occurrence_Resource 265 266 // no documentation yet 267 Hostname *string `json:"hostname,omitempty" xmlrpc:"hostname,omitempty"` 268 269 // no documentation yet 270 PublicIp *string `json:"publicIp,omitempty" xmlrpc:"publicIp,omitempty"` 271 272 // no documentation yet 273 ResourceType *string `json:"resourceType,omitempty" xmlrpc:"resourceType,omitempty"` 274} 275 276// This type contains general information related to a [[SoftLayer_Network_Storage_Iscsi_EqualLogic]] resource that is impacted by a [[SoftLayer_Notification_Occurrence_Event]]. 277type Notification_Occurrence_Resource_Network_Storage_Iscsi_EqualLogic struct { 278 Notification_Occurrence_Resource 279 280 // no documentation yet 281 Hostname *string `json:"hostname,omitempty" xmlrpc:"hostname,omitempty"` 282 283 // no documentation yet 284 PrivateIp *string `json:"privateIp,omitempty" xmlrpc:"privateIp,omitempty"` 285 286 // no documentation yet 287 ResourceType *string `json:"resourceType,omitempty" xmlrpc:"resourceType,omitempty"` 288} 289 290// This type contains general information related to a [[SoftLayer_Network_Storage_Iscsi_NetApp]] resource that is impacted by a [[SoftLayer_Notification_Occurrence_Event]]. 291type Notification_Occurrence_Resource_Network_Storage_Iscsi_NetApp struct { 292 Notification_Occurrence_Resource 293 294 // no documentation yet 295 Hostname *string `json:"hostname,omitempty" xmlrpc:"hostname,omitempty"` 296 297 // no documentation yet 298 PrivateIp *string `json:"privateIp,omitempty" xmlrpc:"privateIp,omitempty"` 299 300 // no documentation yet 301 ResourceType *string `json:"resourceType,omitempty" xmlrpc:"resourceType,omitempty"` 302} 303 304// This type contains general information related to a [[SoftLayer_Network_Storage_Lockbox]] resource that is impacted by a [[SoftLayer_Notification_Occurrence_Event]]. 305type Notification_Occurrence_Resource_Network_Storage_Lockbox struct { 306 Notification_Occurrence_Resource 307 308 // no documentation yet 309 Hostname *string `json:"hostname,omitempty" xmlrpc:"hostname,omitempty"` 310 311 // no documentation yet 312 PrivateIp *string `json:"privateIp,omitempty" xmlrpc:"privateIp,omitempty"` 313 314 // no documentation yet 315 ResourceType *string `json:"resourceType,omitempty" xmlrpc:"resourceType,omitempty"` 316} 317 318// This type contains general information related to a [[SoftLayer_Network_Storage_Nas]] resource that is impacted by a [[SoftLayer_Notification_Occurrence_Event]]. 319type Notification_Occurrence_Resource_Network_Storage_Nas struct { 320 Notification_Occurrence_Resource 321 322 // no documentation yet 323 Hostname *string `json:"hostname,omitempty" xmlrpc:"hostname,omitempty"` 324 325 // no documentation yet 326 PrivateIp *string `json:"privateIp,omitempty" xmlrpc:"privateIp,omitempty"` 327 328 // no documentation yet 329 ResourceType *string `json:"resourceType,omitempty" xmlrpc:"resourceType,omitempty"` 330} 331 332// This type contains general information related to a [[SoftLayer_Network_Storage_NetApp_Volume]] resource that is impacted by a [[SoftLayer_Notification_Occurrence_Event]]. 333type Notification_Occurrence_Resource_Network_Storage_NetApp_Volume struct { 334 Notification_Occurrence_Resource 335 336 // no documentation yet 337 Hostname *string `json:"hostname,omitempty" xmlrpc:"hostname,omitempty"` 338 339 // no documentation yet 340 PrivateIp *string `json:"privateIp,omitempty" xmlrpc:"privateIp,omitempty"` 341 342 // no documentation yet 343 ResourceType *string `json:"resourceType,omitempty" xmlrpc:"resourceType,omitempty"` 344} 345 346// This type contains general information related to a [[SoftLayer_Network_Storage_NetApp_Volume_Replicant_Iscsi]] resource that is impacted by a [[SoftLayer_Notification_Occurrence_Event]]. 347type Notification_Occurrence_Resource_Network_Storage_NetApp_Volume_Replicant_Iscsi struct { 348 Notification_Occurrence_Resource 349 350 // no documentation yet 351 Hostname *string `json:"hostname,omitempty" xmlrpc:"hostname,omitempty"` 352 353 // no documentation yet 354 PrivateIp *string `json:"privateIp,omitempty" xmlrpc:"privateIp,omitempty"` 355 356 // no documentation yet 357 ResourceType *string `json:"resourceType,omitempty" xmlrpc:"resourceType,omitempty"` 358} 359 360// This type contains general information related to a [[SoftLayer_Network_Storage_NetApp_Volume_Replicant_Nas]] resource that is impacted by a [[SoftLayer_Notification_Occurrence_Event]]. 361type Notification_Occurrence_Resource_Network_Storage_NetApp_Volume_Replicant_Nas struct { 362 Notification_Occurrence_Resource 363 364 // no documentation yet 365 Hostname *string `json:"hostname,omitempty" xmlrpc:"hostname,omitempty"` 366 367 // no documentation yet 368 PrivateIp *string `json:"privateIp,omitempty" xmlrpc:"privateIp,omitempty"` 369 370 // no documentation yet 371 ResourceType *string `json:"resourceType,omitempty" xmlrpc:"resourceType,omitempty"` 372} 373 374// This type contains general information related to a [[SoftLayer_Virtual_Guest]] resource that is impacted by a [[SoftLayer_Notification_Occurrence_Event]]. 375type Notification_Occurrence_Resource_Virtual struct { 376 Notification_Occurrence_Resource 377 378 // no documentation yet 379 Hostname *string `json:"hostname,omitempty" xmlrpc:"hostname,omitempty"` 380 381 // no documentation yet 382 PrivateIp *string `json:"privateIp,omitempty" xmlrpc:"privateIp,omitempty"` 383 384 // no documentation yet 385 PublicIp *string `json:"publicIp,omitempty" xmlrpc:"publicIp,omitempty"` 386 387 // no documentation yet 388 ResourceType *string `json:"resourceType,omitempty" xmlrpc:"resourceType,omitempty"` 389} 390 391// no documentation yet 392type Notification_Occurrence_Status_Code struct { 393 Entity 394 395 // no documentation yet 396 Description *string `json:"description,omitempty" xmlrpc:"description,omitempty"` 397 398 // no documentation yet 399 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 400 401 // no documentation yet 402 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 403} 404 405// no documentation yet 406type Notification_Occurrence_Update struct { 407 Entity 408 409 // no documentation yet 410 Contents *string `json:"contents,omitempty" xmlrpc:"contents,omitempty"` 411 412 // no documentation yet 413 CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` 414 415 // no documentation yet 416 Employee *User_Employee `json:"employee,omitempty" xmlrpc:"employee,omitempty"` 417 418 // no documentation yet 419 EndDate *Time `json:"endDate,omitempty" xmlrpc:"endDate,omitempty"` 420 421 // no documentation yet 422 NotificationOccurrenceEvent *Notification_Occurrence_Event `json:"notificationOccurrenceEvent,omitempty" xmlrpc:"notificationOccurrenceEvent,omitempty"` 423 424 // no documentation yet 425 StartDate *Time `json:"startDate,omitempty" xmlrpc:"startDate,omitempty"` 426} 427 428// This type contains general information relating to a user that may be impacted by a [[SoftLayer_Notification_Occurrence_Event]]. 429type Notification_Occurrence_User struct { 430 Entity 431 432 // no documentation yet 433 AcknowledgedFlag *int `json:"acknowledgedFlag,omitempty" xmlrpc:"acknowledgedFlag,omitempty"` 434 435 // no documentation yet 436 Active *int `json:"active,omitempty" xmlrpc:"active,omitempty"` 437 438 // no documentation yet 439 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 440 441 // A count of a collection of resources impacted by the associated event. 442 ImpactedResourceCount *uint `json:"impactedResourceCount,omitempty" xmlrpc:"impactedResourceCount,omitempty"` 443 444 // A collection of resources impacted by the associated event. 445 ImpactedResources []Notification_Occurrence_Resource `json:"impactedResources,omitempty" xmlrpc:"impactedResources,omitempty"` 446 447 // The associated event. 448 NotificationOccurrenceEvent *Notification_Occurrence_Event `json:"notificationOccurrenceEvent,omitempty" xmlrpc:"notificationOccurrenceEvent,omitempty"` 449 450 // The impacted user. 451 User *User_Customer `json:"user,omitempty" xmlrpc:"user,omitempty"` 452 453 // no documentation yet 454 UsrRecordId *int `json:"usrRecordId,omitempty" xmlrpc:"usrRecordId,omitempty"` 455} 456 457// Retrieve details for preferences. Preferences are used to allow the subscriber to modify their subscription in various ways. Details such as friendly name, keyname maximum and minimum values can be retrieved. These provide details to help configure subscriber preferences correctly. 458type Notification_Preference struct { 459 Entity 460 461 // A description of what the preference is used for. 462 Description *string `json:"description,omitempty" xmlrpc:"description,omitempty"` 463 464 // Unique identifier for the notification preference. 465 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 466 467 // Name that can be used by external systems to refer to preference. 468 KeyName *string `json:"keyName,omitempty" xmlrpc:"keyName,omitempty"` 469 470 // Largest value allowed for the preference. 471 MaximumValue *string `json:"maximumValue,omitempty" xmlrpc:"maximumValue,omitempty"` 472 473 // Smallest value allowed for the preference. 474 MinimumValue *string `json:"minimumValue,omitempty" xmlrpc:"minimumValue,omitempty"` 475 476 // Friendly name for the notification. 477 Name *string `json:"name,omitempty" xmlrpc:"name,omitempty"` 478 479 // The unit of measure used for the preference's value, minimum and maximum as well. 480 Units *string `json:"units,omitempty" xmlrpc:"units,omitempty"` 481 482 // Default value used when setting up preferences for a new subscriber. 483 Value *string `json:"value,omitempty" xmlrpc:"value,omitempty"` 484} 485 486// no documentation yet 487type Notification_Subscriber struct { 488 Entity 489 490 // no documentation yet 491 Active *int `json:"active,omitempty" xmlrpc:"active,omitempty"` 492 493 // no documentation yet 494 CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` 495 496 // A count of 497 DeliveryMethodCount *uint `json:"deliveryMethodCount,omitempty" xmlrpc:"deliveryMethodCount,omitempty"` 498 499 // no documentation yet 500 DeliveryMethods []Notification_Subscriber_Delivery_Method `json:"deliveryMethods,omitempty" xmlrpc:"deliveryMethods,omitempty"` 501 502 // no documentation yet 503 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 504 505 // no documentation yet 506 ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` 507 508 // no documentation yet 509 Notification *Notification `json:"notification,omitempty" xmlrpc:"notification,omitempty"` 510 511 // no documentation yet 512 NotificationId *int `json:"notificationId,omitempty" xmlrpc:"notificationId,omitempty"` 513 514 // no documentation yet 515 NotificationSubscriberTypeId *int `json:"notificationSubscriberTypeId,omitempty" xmlrpc:"notificationSubscriberTypeId,omitempty"` 516 517 // no documentation yet 518 NotificationSubscriberTypeResourceId *int `json:"notificationSubscriberTypeResourceId,omitempty" xmlrpc:"notificationSubscriberTypeResourceId,omitempty"` 519} 520 521// no documentation yet 522type Notification_Subscriber_Customer struct { 523 Notification_Subscriber 524 525 // no documentation yet 526 SubscriberRecord *User_Customer `json:"subscriberRecord,omitempty" xmlrpc:"subscriberRecord,omitempty"` 527} 528 529// Provides details for the subscriber's delivery methods. 530type Notification_Subscriber_Delivery_Method struct { 531 Entity 532 533 // Indicates the subscriber's delivery method availability for notifications. 534 Active *int `json:"active,omitempty" xmlrpc:"active,omitempty"` 535 536 // Date the subscriber's delivery method was created. 537 CreateDate *Time `json:"createDate,omitempty" xmlrpc:"createDate,omitempty"` 538 539 // Date the subscriber's delivery method was last modified. 540 ModifyDate *Time `json:"modifyDate,omitempty" xmlrpc:"modifyDate,omitempty"` 541 542 // no documentation yet 543 NotificationDeliveryMethod *Notification_Delivery_Method `json:"notificationDeliveryMethod,omitempty" xmlrpc:"notificationDeliveryMethod,omitempty"` 544 545 // Identifier for the notification delivery method. 546 NotificationDeliveryMethodId *int `json:"notificationDeliveryMethodId,omitempty" xmlrpc:"notificationDeliveryMethodId,omitempty"` 547 548 // no documentation yet 549 NotificationSubscriber *Notification_Subscriber `json:"notificationSubscriber,omitempty" xmlrpc:"notificationSubscriber,omitempty"` 550 551 // Identifier for the subscriber. 552 NotificationSubscriberId *int `json:"notificationSubscriberId,omitempty" xmlrpc:"notificationSubscriberId,omitempty"` 553} 554 555// A notification subscriber will have details pertaining to the subscriber's notification subscription. You can receive details such as preferences, details of the preferences, delivery methods and the delivery methods for the subscriber. 556// 557// NOTE: There are preferences and delivery methods that cannot be modified. Also, there are some subscriptions that are required. 558type Notification_User_Subscriber struct { 559 Entity 560 561 // The current status of the subscription. 562 Active *int `json:"active,omitempty" xmlrpc:"active,omitempty"` 563 564 // A count of the delivery methods used to send the subscribed notification. 565 DeliveryMethodCount *uint `json:"deliveryMethodCount,omitempty" xmlrpc:"deliveryMethodCount,omitempty"` 566 567 // The delivery methods used to send the subscribed notification. 568 DeliveryMethods []Notification_Delivery_Method `json:"deliveryMethods,omitempty" xmlrpc:"deliveryMethods,omitempty"` 569 570 // Unique identifier of the subscriber that will receive the alerts. 571 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 572 573 // Notification subscribed to. 574 Notification *Notification `json:"notification,omitempty" xmlrpc:"notification,omitempty"` 575 576 // Unique identifier of the notification subscribed to. 577 NotificationId *int `json:"notificationId,omitempty" xmlrpc:"notificationId,omitempty"` 578 579 // A count of associated subscriber preferences used for the notification subscription. For example, preferences include number of deliveries (limit) and threshold. 580 PreferenceCount *uint `json:"preferenceCount,omitempty" xmlrpc:"preferenceCount,omitempty"` 581 582 // Associated subscriber preferences used for the notification subscription. For example, preferences include number of deliveries (limit) and threshold. 583 Preferences []Notification_User_Subscriber_Preference `json:"preferences,omitempty" xmlrpc:"preferences,omitempty"` 584 585 // A count of preference details such as description, minimum and maximum limits, default value and unit of measure. 586 PreferencesDetailCount *uint `json:"preferencesDetailCount,omitempty" xmlrpc:"preferencesDetailCount,omitempty"` 587 588 // Preference details such as description, minimum and maximum limits, default value and unit of measure. 589 PreferencesDetails []Notification_Preference `json:"preferencesDetails,omitempty" xmlrpc:"preferencesDetails,omitempty"` 590 591 // The subscriber id to resource id mapping. 592 ResourceRecord *Notification_User_Subscriber_Resource `json:"resourceRecord,omitempty" xmlrpc:"resourceRecord,omitempty"` 593 594 // User record for the subscription. 595 UserRecord *User_Customer `json:"userRecord,omitempty" xmlrpc:"userRecord,omitempty"` 596 597 // Unique identifier of the user the subscription is for. 598 UserRecordId *int `json:"userRecordId,omitempty" xmlrpc:"userRecordId,omitempty"` 599} 600 601// A notification subscriber will have details pertaining to the subscriber's notification subscription. You can receive details such as preferences, details of the preferences, delivery methods and the delivery methods for the subscriber. 602// 603// NOTE: There are preferences and delivery methods that cannot be modified. Also, there are some subscriptions that are required. 604type Notification_User_Subscriber_Billing struct { 605 Notification_User_Subscriber 606} 607 608// Provides mapping details of how the subscriber's notification will be delivered. This maps the subscriber's id with all the delivery method ids used to delivery the notification. 609type Notification_User_Subscriber_Delivery_Method struct { 610 Entity 611 612 // Determines if the delivery method is active for the user. 613 Active *int `json:"active,omitempty" xmlrpc:"active,omitempty"` 614 615 // Provides details for the method used to deliver the notification (email, sms, ticket). 616 DeliveryMethod *Notification_Delivery_Method `json:"deliveryMethod,omitempty" xmlrpc:"deliveryMethod,omitempty"` 617 618 // Unique identifier of the method used to deliver notification. 619 NotificationMethodId *int `json:"notificationMethodId,omitempty" xmlrpc:"notificationMethodId,omitempty"` 620 621 // The Subscriber information tied to the delivery method. 622 NotificationUserSubscriber *Notification_User_Subscriber `json:"notificationUserSubscriber,omitempty" xmlrpc:"notificationUserSubscriber,omitempty"` 623 624 // Unique identifier of the subscriber tied to the delivery method. 625 NotificationUserSubscriberId *int `json:"notificationUserSubscriberId,omitempty" xmlrpc:"notificationUserSubscriberId,omitempty"` 626} 627 628// A notification subscriber will have details pertaining to the subscriber's notification subscription. You can receive details such as preferences, details of the preferences, delivery methods and the delivery methods for the subscriber. 629// 630// NOTE: There are preferences and delivery methods that cannot be modified. Also, there are some subscriptions that are required. 631type Notification_User_Subscriber_Mobile struct { 632 Notification_User_Subscriber 633} 634 635// Preferences are settings that can be modified to change the behavior of the subscription. For example, modify the limit preference to only receive notifications 10 times instead of 1 during a billing cycle. 636// 637// NOTE: Some preferences have certain restrictions on values that can be set. 638type Notification_User_Subscriber_Preference struct { 639 Entity 640 641 // Details such name, keyname, minimum and maximum values for the preference. 642 DefaultPreference *Notification_Preference `json:"defaultPreference,omitempty" xmlrpc:"defaultPreference,omitempty"` 643 644 // Unique identifier for the subscriber's preferences. 645 Id *int `json:"id,omitempty" xmlrpc:"id,omitempty"` 646 647 // Unique identifier of the default preference for which the subscriber preference is based on. For example, if no preferences are supplied during the creation of a subscriber. The default values are pulled using this property. 648 NotificationPreferenceId *int `json:"notificationPreferenceId,omitempty" xmlrpc:"notificationPreferenceId,omitempty"` 649 650 // Details of the subscriber tied to the preference. 651 NotificationUserSubscriber *Notification_User_Subscriber `json:"notificationUserSubscriber,omitempty" xmlrpc:"notificationUserSubscriber,omitempty"` 652 653 // Unique identifier of the subscriber tied to the subscriber preference. 654 NotificationUserSubscriberId *int `json:"notificationUserSubscriberId,omitempty" xmlrpc:"notificationUserSubscriberId,omitempty"` 655 656 // The user supplied value to "override" the "default" preference's value. 657 Value *string `json:"value,omitempty" xmlrpc:"value,omitempty"` 658} 659 660// Retrieve identifier cross-reference information. SoftLayer_Notification_User_Subscriber_Resource provides the resource table id and subscriber id relation. The resource table id is the id of the service the subscriber receives alerts for. This resource table id could be the unique identifier for a Storage Evault service, Global Load Balancer or CDN service. 661type Notification_User_Subscriber_Resource struct { 662 Entity 663 664 // The Subscriber information tied to the resource service. 665 NotificationUserSubscriber *Notification_User_Subscriber `json:"notificationUserSubscriber,omitempty" xmlrpc:"notificationUserSubscriber,omitempty"` 666 667 // Unique identifier of the subscriber that will receive the alerts for the resource subscribed to a notification. 668 NotificationUserSubscriberId *int `json:"notificationUserSubscriberId,omitempty" xmlrpc:"notificationUserSubscriberId,omitempty"` 669 670 // Unique identifier for a SoftLayer service that is subscribed to a notification. Currently, the SoftLayer services that can be subscribed to notifications are: 671 // 672 // Storage EVault CDN Global Load Balancer 673 // 674 // 675 ResourceTableId *int `json:"resourceTableId,omitempty" xmlrpc:"resourceTableId,omitempty"` 676} 677