Sets up a Cognito user pool with custom attributes and creates a user with specific attributes.

Terraform Template

resource "aws_cognito_user" "example" {

  attributes = {
    email = "no-reply@hashicorp.com"
    email_verified = "true"
    foo = "bar"
    terraform = "true"
  }
  user_pool_id = aws_cognito_user_pool.example.id
  username = "example"
}

resource "aws_cognito_user_pool" "example" {
  name = "mypool"

  schema {
    attribute_data_type = "Boolean"
    developer_only_attribute = false
    mutable = false
    name = "terraform"
    required = false
  }

  schema {
    attribute_data_type = "String"
    developer_only_attribute = false
    mutable = false
    name = "foo"
    required = false
  }
}