/* * 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 pinpoint-sms-voice-v2-2022-03-31.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.PinpointSMSVoiceV2.Model { /// /// Container for the parameters to the CreatePool operation. /// Creates a new pool and associates the specified origination identity to the pool. /// A pool can include one or more phone numbers and SenderIds that are associated with /// your Amazon Web Services account. /// /// /// /// The new pool inherits its configuration from the specified origination identity. This /// includes keywords, message type, opt-out list, two-way configuration, and self-managed /// opt-out configuration. Deletion protection isn't inherited from the origination identity /// and defaults to false. /// /// /// /// If the origination identity is a phone number and is already associated with another /// pool, an Error is returned. A sender ID can be associated with multiple pools. /// /// public partial class CreatePoolRequest : AmazonPinpointSMSVoiceV2Request { private string _clientToken; private bool? _deletionProtectionEnabled; private string _isoCountryCode; private MessageType _messageType; private string _originationIdentity; private List _tags = new List(); /// /// Gets and sets the property ClientToken. /// /// Unique, case-sensitive identifier that you provide to ensure the idempotency of the /// request. If you don't specify a client token, a randomly generated token is used for /// the request to ensure idempotency. /// /// [AWSProperty(Min=1, Max=64)] public string ClientToken { get { return this._clientToken; } set { this._clientToken = value; } } // Check to see if ClientToken property is set internal bool IsSetClientToken() { return this._clientToken != null; } /// /// Gets and sets the property DeletionProtectionEnabled. /// /// By default this is set to false. When set to true the pool can't be deleted. You can /// change this value using the UpdatePool action. /// /// public bool DeletionProtectionEnabled { get { return this._deletionProtectionEnabled.GetValueOrDefault(); } set { this._deletionProtectionEnabled = value; } } // Check to see if DeletionProtectionEnabled property is set internal bool IsSetDeletionProtectionEnabled() { return this._deletionProtectionEnabled.HasValue; } /// /// Gets and sets the property IsoCountryCode. /// /// The new two-character code, in ISO 3166-1 alpha-2 format, for the country or region /// of the new pool. /// /// [AWSProperty(Required=true, Min=2, Max=2)] public string IsoCountryCode { get { return this._isoCountryCode; } set { this._isoCountryCode = value; } } // Check to see if IsoCountryCode property is set internal bool IsSetIsoCountryCode() { return this._isoCountryCode != null; } /// /// Gets and sets the property MessageType. /// /// The type of message. Valid values are TRANSACTIONAL for messages that are critical /// or time-sensitive and PROMOTIONAL for messages that aren't critical or time-sensitive. /// /// [AWSProperty(Required=true)] public MessageType MessageType { get { return this._messageType; } set { this._messageType = value; } } // Check to see if MessageType property is set internal bool IsSetMessageType() { return this._messageType != null; } /// /// Gets and sets the property OriginationIdentity. /// /// The origination identity to use such as a PhoneNumberId, PhoneNumberArn, SenderId /// or SenderIdArn. You can use DescribePhoneNumbers to find the values for PhoneNumberId /// and PhoneNumberArn while DescribeSenderIds can be used to get the values for /// SenderId and SenderIdArn. /// /// [AWSProperty(Required=true, Min=1, Max=256)] public string OriginationIdentity { get { return this._originationIdentity; } set { this._originationIdentity = value; } } // Check to see if OriginationIdentity property is set internal bool IsSetOriginationIdentity() { return this._originationIdentity != null; } /// /// Gets and sets the property Tags. /// /// An array of tags (key and value pairs) associated with the pool. /// /// [AWSProperty(Min=0, Max=200)] 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; } } }