You are viewing documentation for version 2 of the AWS SDK for Ruby. Version 3 documentation can be found here.

Class: Aws::CognitoIdentityProvider::Types::CreateUserPoolRequest

Inherits:
Struct
  • Object
show all
Defined in:
(unknown)

Overview

Note:

When passing CreateUserPoolRequest as input to an Aws::Client method, you can use a vanilla Hash:

{
  pool_name: "UserPoolNameType", # required
  policies: {
    password_policy: {
      minimum_length: 1,
      require_uppercase: false,
      require_lowercase: false,
      require_numbers: false,
      require_symbols: false,
    },
  },
  lambda_config: {
    pre_sign_up: "ArnType",
    custom_message: "ArnType",
    post_confirmation: "ArnType",
    pre_authentication: "ArnType",
    post_authentication: "ArnType",
    define_auth_challenge: "ArnType",
    create_auth_challenge: "ArnType",
    verify_auth_challenge_response: "ArnType",
    pre_token_generation: "ArnType",
    user_migration: "ArnType",
  },
  auto_verified_attributes: ["phone_number"], # accepts phone_number, email
  alias_attributes: ["phone_number"], # accepts phone_number, email, preferred_username
  username_attributes: ["phone_number"], # accepts phone_number, email
  sms_verification_message: "SmsVerificationMessageType",
  email_verification_message: "EmailVerificationMessageType",
  email_verification_subject: "EmailVerificationSubjectType",
  verification_message_template: {
    sms_message: "SmsVerificationMessageType",
    email_message: "EmailVerificationMessageType",
    email_subject: "EmailVerificationSubjectType",
    email_message_by_link: "EmailVerificationMessageByLinkType",
    email_subject_by_link: "EmailVerificationSubjectByLinkType",
    default_email_option: "CONFIRM_WITH_LINK", # accepts CONFIRM_WITH_LINK, CONFIRM_WITH_CODE
  },
  sms_authentication_message: "SmsVerificationMessageType",
  mfa_configuration: "OFF", # accepts OFF, ON, OPTIONAL
  device_configuration: {
    challenge_required_on_new_device: false,
    device_only_remembered_on_user_prompt: false,
  },
  email_configuration: {
    source_arn: "ArnType",
    reply_to_email_address: "EmailAddressType",
  },
  sms_configuration: {
    sns_caller_arn: "ArnType", # required
    external_id: "StringType",
  },
  user_pool_tags: {
    "StringType" => "StringType",
  },
  admin_create_user_config: {
    allow_admin_create_user_only: false,
    unused_account_validity_days: 1,
    invite_message_template: {
      sms_message: "SmsVerificationMessageType",
      email_message: "EmailVerificationMessageType",
      email_subject: "EmailVerificationSubjectType",
    },
  },
  schema: [
    {
      name: "CustomAttributeNameType",
      attribute_data_type: "String", # accepts String, Number, DateTime, Boolean
      developer_only_attribute: false,
      mutable: false,
      required: false,
      number_attribute_constraints: {
        min_value: "StringType",
        max_value: "StringType",
      },
      string_attribute_constraints: {
        min_length: "StringType",
        max_length: "StringType",
      },
    },
  ],
  user_pool_add_ons: {
    advanced_security_mode: "OFF", # required, accepts OFF, AUDIT, ENFORCED
  },
}

Represents the request to create a user pool.

Instance Attribute Summary collapse

Instance Attribute Details

#admin_create_user_configTypes::AdminCreateUserConfigType

The configuration for AdminCreateUser requests.

Returns:

#alias_attributesArray<String>

Attributes supported as an alias for this user pool. Possible values: phone_number, email, or preferred_username.

Returns:

  • (Array<String>)

    Attributes supported as an alias for this user pool.

#auto_verified_attributesArray<String>

The attributes to be auto-verified. Possible values: email, phone_number.

Returns:

  • (Array<String>)

    The attributes to be auto-verified.

#device_configurationTypes::DeviceConfigurationType

The device configuration.

Returns:

#email_configurationTypes::EmailConfigurationType

The email configuration.

Returns:

#email_verification_messageString

A string representing the email verification message.

Returns:

  • (String)

    A string representing the email verification message.

#email_verification_subjectString

A string representing the email verification subject.

Returns:

  • (String)

    A string representing the email verification subject.

#lambda_configTypes::LambdaConfigType

The Lambda trigger configuration information for the new user pool.

In a push model, event sources (such as Amazon S3 and custom applications) need permission to invoke a function. So you will need to make an extra call to add permission for these event sources to invoke your Lambda function.

For more information on using the Lambda API to add permission, see AddPermission .

For adding permission using the AWS CLI, see add-permission .

Returns:

#mfa_configurationString

Specifies MFA configuration details.

Possible values:

  • OFF
  • ON
  • OPTIONAL

Returns:

  • (String)

    Specifies MFA configuration details.

#policiesTypes::UserPoolPolicyType

The policies associated with the new user pool.

Returns:

#pool_nameString

A string used to name the user pool.

Returns:

  • (String)

    A string used to name the user pool.

#schemaArray<Types::SchemaAttributeType>

An array of schema attributes for the new user pool. These attributes can be standard or custom attributes.

Returns:

#sms_authentication_messageString

A string representing the SMS authentication message.

Returns:

  • (String)

    A string representing the SMS authentication message.

#sms_configurationTypes::SmsConfigurationType

The SMS configuration.

Returns:

#sms_verification_messageString

A string representing the SMS verification message.

Returns:

  • (String)

    A string representing the SMS verification message.

#user_pool_add_onsTypes::UserPoolAddOnsType

Used to enable advanced security risk detection. Set the key AdvancedSecurityMode to the value \"AUDIT\".

Returns:

#user_pool_tagsHash<String,String>

The cost allocation tags for the user pool. For more information, see Adding Cost Allocation Tags to Your User Pool

Returns:

  • (Hash<String,String>)

    The cost allocation tags for the user pool.

#username_attributesArray<String>

Specifies whether email addresses or phone numbers can be specified as usernames when a user signs up.

Returns:

  • (Array<String>)

    Specifies whether email addresses or phone numbers can be specified as usernames when a user signs up.

#verification_message_templateTypes::VerificationMessageTemplateType

The template for the verification message that the user sees when the app requests permission to access the user\'s information.

Returns: