/* * 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 RequestPhoneNumber operation. /// Request an origination phone number for use in your account. For more information /// on phone number request see /// Requesting a number in the Amazon Pinpoint User Guide. /// public partial class RequestPhoneNumberRequest : AmazonPinpointSMSVoiceV2Request { private string _clientToken; private bool? _deletionProtectionEnabled; private string _isoCountryCode; private MessageType _messageType; private List _numberCapabilities = new List(); private RequestableNumberType _numberType; private string _optOutListName; private string _poolId; private string _registrationId; 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 phone number can't be deleted. /// /// 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 two-character code, in ISO 3166-1 alpha-2 format, for the country or region. /// /// [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 NumberCapabilities. /// /// Indicates if the phone number will be used for text messages, voice messages, or both. /// /// /// [AWSProperty(Required=true, Min=1, Max=2)] public List NumberCapabilities { get { return this._numberCapabilities; } set { this._numberCapabilities = value; } } // Check to see if NumberCapabilities property is set internal bool IsSetNumberCapabilities() { return this._numberCapabilities != null && this._numberCapabilities.Count > 0; } /// /// Gets and sets the property NumberType. /// /// The type of phone number to request. /// /// [AWSProperty(Required=true)] public RequestableNumberType NumberType { get { return this._numberType; } set { this._numberType = value; } } // Check to see if NumberType property is set internal bool IsSetNumberType() { return this._numberType != null; } /// /// Gets and sets the property OptOutListName. /// /// The name of the OptOutList to associate with the phone number. You can use the OutOutListName /// or OptPutListArn. /// /// [AWSProperty(Min=1, Max=256)] public string OptOutListName { get { return this._optOutListName; } set { this._optOutListName = value; } } // Check to see if OptOutListName property is set internal bool IsSetOptOutListName() { return this._optOutListName != null; } /// /// Gets and sets the property PoolId. /// /// The pool to associated with the phone number. You can use the PoolId or PoolArn. /// /// [AWSProperty(Min=1, Max=256)] public string PoolId { get { return this._poolId; } set { this._poolId = value; } } // Check to see if PoolId property is set internal bool IsSetPoolId() { return this._poolId != null; } /// /// Gets and sets the property RegistrationId. /// /// Use this field to attach your phone number for an external registration process. /// /// [AWSProperty(Min=1, Max=64)] public string RegistrationId { get { return this._registrationId; } set { this._registrationId = value; } } // Check to see if RegistrationId property is set internal bool IsSetRegistrationId() { return this._registrationId != null; } /// /// Gets and sets the property Tags. /// /// An array of tags (key and value pairs) associate with the requested phone number. /// /// /// [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; } } }