/* * 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 cognito-idp-2016-04-18.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.CognitoIdentityProvider.Model { /// /// Container for the parameters to the AdminUpdateUserAttributes operation. /// Updates the specified user's attributes, including developer attributes, as an administrator. /// Works on any user. /// /// /// /// For custom attributes, you must prepend the custom: prefix to the attribute /// name. /// /// /// /// In addition to updating user attributes, this API can also be used to mark phone and /// email as verified. /// /// /// /// This action might generate an SMS text message. Starting June 1, 2021, US telecom /// carriers require you to register an origination phone number before you can send SMS /// messages to US phone numbers. If you use SMS text messages in Amazon Cognito, you /// must register a phone number with Amazon /// Pinpoint. Amazon Cognito uses the registered number automatically. Otherwise, /// Amazon Cognito users who must receive SMS messages might not be able to sign up, activate /// their accounts, or sign in. /// /// /// /// If you have never used SMS text messages with Amazon Cognito or any other Amazon Web /// Service, Amazon Simple Notification Service might place your account in the SMS sandbox. /// In sandbox /// mode , you can send messages only to verified phone numbers. After you test /// your app while in the sandbox environment, you can move out of the sandbox and into /// production. For more information, see /// SMS message settings for Amazon Cognito user pools in the Amazon Cognito Developer /// Guide. /// /// /// /// Calling this action requires developer credentials. /// /// public partial class AdminUpdateUserAttributesRequest : AmazonCognitoIdentityProviderRequest { private Dictionary _clientMetadata = new Dictionary(); private List _userAttributes = new List(); private string _username; private string _userPoolId; /// /// Gets and sets the property ClientMetadata. /// /// A map of custom key-value pairs that you can provide as input for any custom workflows /// that this action triggers. /// /// /// /// You create custom workflows by assigning Lambda functions to user pool triggers. When /// you use the AdminUpdateUserAttributes API action, Amazon Cognito invokes the function /// that is assigned to the custom message trigger. When Amazon Cognito invokes /// this function, it passes a JSON payload, which the function receives as input. This /// payload contains a clientMetadata attribute, which provides the data /// that you assigned to the ClientMetadata parameter in your AdminUpdateUserAttributes /// request. In your function code in Lambda, you can process the clientMetadata /// value to enhance your workflow for your specific needs. /// /// /// /// For more information, see /// Customizing user pool Workflows with Lambda Triggers in the Amazon Cognito /// Developer Guide. /// /// /// /// When you use the ClientMetadata parameter, remember that Amazon Cognito won't do the /// following: /// ///
  • /// /// Store the ClientMetadata value. This data is available only to Lambda triggers that /// are assigned to a user pool to support custom workflows. If your user pool configuration /// doesn't include triggers, the ClientMetadata parameter serves no purpose. /// ///
  • /// /// Validate the ClientMetadata value. /// ///
  • /// /// Encrypt the ClientMetadata value. Don't use Amazon Cognito to provide sensitive information. /// ///
///
public Dictionary ClientMetadata { get { return this._clientMetadata; } set { this._clientMetadata = value; } } // Check to see if ClientMetadata property is set internal bool IsSetClientMetadata() { return this._clientMetadata != null && this._clientMetadata.Count > 0; } /// /// Gets and sets the property UserAttributes. /// /// An array of name-value pairs representing user attributes. /// /// /// /// For custom attributes, you must prepend the custom: prefix to the attribute /// name. /// /// /// /// If your user pool requires verification before Amazon Cognito updates an attribute /// value that you specify in this request, Amazon Cognito doesn’t immediately update /// the value of that attribute. After your user receives and responds to a verification /// message to verify the new value, Amazon Cognito updates the attribute value. Your /// user can sign in and receive messages with the original attribute value until they /// verify the new value. /// /// /// /// To update the value of an attribute that requires verification in the same API request, /// include the email_verified or phone_number_verified attribute, /// with a value of true. If you set the email_verified or phone_number_verified /// value for an email or phone_number attribute that requires /// verification to true, Amazon Cognito doesn’t send a verification message /// to your user. /// /// [AWSProperty(Required=true)] public List UserAttributes { get { return this._userAttributes; } set { this._userAttributes = value; } } // Check to see if UserAttributes property is set internal bool IsSetUserAttributes() { return this._userAttributes != null && this._userAttributes.Count > 0; } /// /// Gets and sets the property Username. /// /// The user name of the user for whom you want to update user attributes. /// /// [AWSProperty(Required=true, Sensitive=true, Min=1, Max=128)] public string Username { get { return this._username; } set { this._username = value; } } // Check to see if Username property is set internal bool IsSetUsername() { return this._username != null; } /// /// Gets and sets the property UserPoolId. /// /// The user pool ID for the user pool where you want to update user attributes. /// /// [AWSProperty(Required=true, Min=1, Max=55)] public string UserPoolId { get { return this._userPoolId; } set { this._userPoolId = value; } } // Check to see if UserPoolId property is set internal bool IsSetUserPoolId() { return this._userPoolId != null; } } }