/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the ssm-2014-11-06.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.SimpleSystemsManagement.Model { /// /// Container for the parameters to the CreateOpsItem operation. /// Creates a new OpsItem. You must have permission in Identity and Access Management /// (IAM) to create a new OpsItem. For more information, see Set /// up OpsCenter in the Amazon Web Services Systems Manager User Guide. /// /// /// /// Operations engineers and IT professionals use Amazon Web Services Systems Manager /// OpsCenter to view, investigate, and remediate operational issues impacting the performance /// and health of their Amazon Web Services resources. For more information, see Amazon /// Web Services Systems Manager OpsCenter in the Amazon Web Services Systems Manager /// User Guide. /// /// public partial class CreateOpsItemRequest : AmazonSimpleSystemsManagementRequest { private string _accountId; private DateTime? _actualEndTime; private DateTime? _actualStartTime; private string _category; private string _description; private List _notifications = new List(); private Dictionary _operationalData = new Dictionary(); private string _opsItemType; private DateTime? _plannedEndTime; private DateTime? _plannedStartTime; private int? _priority; private List _relatedOpsItems = new List(); private string _severity; private string _source; private List _tags = new List(); private string _title; /// /// Gets and sets the property AccountId. /// /// The target Amazon Web Services account where you want to create an OpsItem. To make /// this call, your account must be configured to work with OpsItems across accounts. /// For more information, see Set /// up OpsCenter in the Amazon Web Services Systems Manager User Guide. /// /// public string AccountId { get { return this._accountId; } set { this._accountId = value; } } // Check to see if AccountId property is set internal bool IsSetAccountId() { return this._accountId != null; } /// /// Gets and sets the property ActualEndTime. /// /// The time a runbook workflow ended. Currently reported only for the OpsItem type /aws/changerequest. /// /// public DateTime ActualEndTime { get { return this._actualEndTime.GetValueOrDefault(); } set { this._actualEndTime = value; } } // Check to see if ActualEndTime property is set internal bool IsSetActualEndTime() { return this._actualEndTime.HasValue; } /// /// Gets and sets the property ActualStartTime. /// /// The time a runbook workflow started. Currently reported only for the OpsItem type /// /aws/changerequest. /// /// public DateTime ActualStartTime { get { return this._actualStartTime.GetValueOrDefault(); } set { this._actualStartTime = value; } } // Check to see if ActualStartTime property is set internal bool IsSetActualStartTime() { return this._actualStartTime.HasValue; } /// /// Gets and sets the property Category. /// /// Specify a category to assign to an OpsItem. /// /// [AWSProperty(Min=1, Max=64)] public string Category { get { return this._category; } set { this._category = value; } } // Check to see if Category property is set internal bool IsSetCategory() { return this._category != null; } /// /// Gets and sets the property Description. /// /// Information about the OpsItem. /// /// [AWSProperty(Required=true, Min=1, Max=2048)] public string Description { get { return this._description; } set { this._description = value; } } // Check to see if Description property is set internal bool IsSetDescription() { return this._description != null; } /// /// Gets and sets the property Notifications. /// /// The Amazon Resource Name (ARN) of an SNS topic where notifications are sent when this /// OpsItem is edited or changed. /// /// public List Notifications { get { return this._notifications; } set { this._notifications = value; } } // Check to see if Notifications property is set internal bool IsSetNotifications() { return this._notifications != null && this._notifications.Count > 0; } /// /// Gets and sets the property OperationalData. /// /// Operational data is custom data that provides useful reference details about the OpsItem. /// For example, you can specify log files, error strings, license keys, troubleshooting /// tips, or other relevant data. You enter operational data as key-value pairs. The key /// has a maximum length of 128 characters. The value has a maximum size of 20 KB. /// /// /// /// Operational data keys can't begin with the following: amazon, /// aws, amzn, ssm, /amazon, /aws, /// /amzn, /ssm. /// /// /// /// You can choose to make the data searchable by other users in the account or you can /// restrict search access. Searchable data means that all users with access to the OpsItem /// Overview page (as provided by the DescribeOpsItems API operation) can view /// and search on the specified data. Operational data that isn't searchable is only viewable /// by users who have access to the OpsItem (as provided by the GetOpsItem API /// operation). /// /// /// /// Use the /aws/resources key in OperationalData to specify a related resource /// in the request. Use the /aws/automations key in OperationalData to associate /// an Automation runbook with the OpsItem. To view Amazon Web Services CLI example commands /// that use these keys, see Creating /// OpsItems manually in the Amazon Web Services Systems Manager User Guide. /// /// public Dictionary OperationalData { get { return this._operationalData; } set { this._operationalData = value; } } // Check to see if OperationalData property is set internal bool IsSetOperationalData() { return this._operationalData != null && this._operationalData.Count > 0; } /// /// Gets and sets the property OpsItemType. /// /// The type of OpsItem to create. Systems Manager supports the following types of OpsItems: /// ///
  • /// /// /aws/issue /// /// /// /// This type of OpsItem is used for default OpsItems created by OpsCenter. /// ///
  • /// /// /aws/changerequest /// /// /// /// This type of OpsItem is used by Change Manager for reviewing and approving or rejecting /// change requests. /// ///
  • /// /// /aws/insights /// /// /// /// This type of OpsItem is used by OpsCenter for aggregating and reporting on duplicate /// OpsItems. /// ///
///
public string OpsItemType { get { return this._opsItemType; } set { this._opsItemType = value; } } // Check to see if OpsItemType property is set internal bool IsSetOpsItemType() { return this._opsItemType != null; } /// /// Gets and sets the property PlannedEndTime. /// /// The time specified in a change request for a runbook workflow to end. Currently supported /// only for the OpsItem type /aws/changerequest. /// /// public DateTime PlannedEndTime { get { return this._plannedEndTime.GetValueOrDefault(); } set { this._plannedEndTime = value; } } // Check to see if PlannedEndTime property is set internal bool IsSetPlannedEndTime() { return this._plannedEndTime.HasValue; } /// /// Gets and sets the property PlannedStartTime. /// /// The time specified in a change request for a runbook workflow to start. Currently /// supported only for the OpsItem type /aws/changerequest. /// /// public DateTime PlannedStartTime { get { return this._plannedStartTime.GetValueOrDefault(); } set { this._plannedStartTime = value; } } // Check to see if PlannedStartTime property is set internal bool IsSetPlannedStartTime() { return this._plannedStartTime.HasValue; } /// /// Gets and sets the property Priority. /// /// The importance of this OpsItem in relation to other OpsItems in the system. /// /// [AWSProperty(Min=1, Max=5)] public int Priority { get { return this._priority.GetValueOrDefault(); } set { this._priority = value; } } // Check to see if Priority property is set internal bool IsSetPriority() { return this._priority.HasValue; } /// /// Gets and sets the property RelatedOpsItems. /// /// One or more OpsItems that share something in common with the current OpsItems. For /// example, related OpsItems can include OpsItems with similar error messages, impacted /// resources, or statuses for the impacted resource. /// /// public List RelatedOpsItems { get { return this._relatedOpsItems; } set { this._relatedOpsItems = value; } } // Check to see if RelatedOpsItems property is set internal bool IsSetRelatedOpsItems() { return this._relatedOpsItems != null && this._relatedOpsItems.Count > 0; } /// /// Gets and sets the property Severity. /// /// Specify a severity to assign to an OpsItem. /// /// [AWSProperty(Min=1, Max=64)] public string Severity { get { return this._severity; } set { this._severity = value; } } // Check to see if Severity property is set internal bool IsSetSeverity() { return this._severity != null; } /// /// Gets and sets the property Source. /// /// The origin of the OpsItem, such as Amazon EC2 or Systems Manager. /// /// /// /// The source name can't contain the following strings: aws, amazon, /// and amzn. /// /// /// [AWSProperty(Required=true, Min=1, Max=128)] public string Source { get { return this._source; } set { this._source = value; } } // Check to see if Source property is set internal bool IsSetSource() { return this._source != null; } /// /// Gets and sets the property Tags. /// /// Optional metadata that you assign to a resource. /// /// /// /// Tags use a key-value pair. For example: /// /// /// /// Key=Department,Value=Finance /// /// /// /// To add tags to a new OpsItem, a user must have IAM permissions for both the ssm:CreateOpsItems /// operation and the ssm:AddTagsToResource operation. To add tags to an /// existing OpsItem, use the AddTagsToResource operation. /// /// /// [AWSProperty(Max=1000)] public List Tags { get { return this._tags; } set { this._tags = value; } } // Check to see if Tags property is set internal bool IsSetTags() { return this._tags != null && this._tags.Count > 0; } /// /// Gets and sets the property Title. /// /// A short heading that describes the nature of the OpsItem and the impacted resource. /// /// [AWSProperty(Required=true, Min=1, Max=1024)] public string Title { get { return this._title; } set { this._title = value; } } // Check to see if Title property is set internal bool IsSetTitle() { return this._title != null; } } }