{
  "version":"2.0",
  "metadata":{
    "apiVersion":"2016-04-18",
    "endpointPrefix":"cognito-idp",
    "jsonVersion":"1.1",
    "protocol":"json",
    "serviceFullName":"Amazon Cognito Identity Provider",
    "signatureVersion":"v4",
    "targetPrefix":"AWSCognitoIdentityProviderService"
  },
  "operations":{
    "AddCustomAttributes":{
      "name":"AddCustomAttributes",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AddCustomAttributesRequest"},
      "output":{"shape":"AddCustomAttributesResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UserImportInProgressException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "AdminConfirmSignUp":{
      "name":"AdminConfirmSignUp",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminConfirmSignUpRequest"},
      "output":{"shape":"AdminConfirmSignUpResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"TooManyFailedAttemptsException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"LimitExceededException"},
        {"shape":"UserNotFoundException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "AdminCreateUser":{
      "name":"AdminCreateUser",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminCreateUserRequest"},
      "output":{"shape":"AdminCreateUserResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UsernameExistsException"},
        {"shape":"InvalidPasswordException"},
        {"shape":"CodeDeliveryFailureException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"PreconditionNotMetException"},
        {"shape":"InvalidSmsRoleAccessPolicyException"},
        {"shape":"InvalidSmsRoleTrustRelationshipException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UnsupportedUserStateException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "AdminDeleteUser":{
      "name":"AdminDeleteUser",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminDeleteUserRequest"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UserNotFoundException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "AdminDeleteUserAttributes":{
      "name":"AdminDeleteUserAttributes",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminDeleteUserAttributesRequest"},
      "output":{"shape":"AdminDeleteUserAttributesResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UserNotFoundException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "AdminDisableUser":{
      "name":"AdminDisableUser",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminDisableUserRequest"},
      "output":{"shape":"AdminDisableUserResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UserNotFoundException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "AdminEnableUser":{
      "name":"AdminEnableUser",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminEnableUserRequest"},
      "output":{"shape":"AdminEnableUserResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UserNotFoundException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "AdminForgetDevice":{
      "name":"AdminForgetDevice",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminForgetDeviceRequest"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"InvalidUserPoolConfigurationException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UserNotFoundException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "AdminGetDevice":{
      "name":"AdminGetDevice",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminGetDeviceRequest"},
      "output":{"shape":"AdminGetDeviceResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"InvalidUserPoolConfigurationException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"InternalErrorException"},
        {"shape":"NotAuthorizedException"}
      ]
    },
    "AdminGetUser":{
      "name":"AdminGetUser",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminGetUserRequest"},
      "output":{"shape":"AdminGetUserResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UserNotFoundException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "AdminInitiateAuth":{
      "name":"AdminInitiateAuth",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminInitiateAuthRequest"},
      "output":{"shape":"AdminInitiateAuthResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"InternalErrorException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"InvalidUserPoolConfigurationException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"MFAMethodNotFoundException"},
        {"shape":"InvalidSmsRoleAccessPolicyException"},
        {"shape":"InvalidSmsRoleTrustRelationshipException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"}
      ]
    },
    "AdminListDevices":{
      "name":"AdminListDevices",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminListDevicesRequest"},
      "output":{"shape":"AdminListDevicesResponse"},
      "errors":[
        {"shape":"InvalidParameterException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidUserPoolConfigurationException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"InternalErrorException"},
        {"shape":"NotAuthorizedException"}
      ]
    },
    "AdminResetUserPassword":{
      "name":"AdminResetUserPassword",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminResetUserPasswordRequest"},
      "output":{"shape":"AdminResetUserPasswordResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"LimitExceededException"},
        {"shape":"UserNotFoundException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "AdminRespondToAuthChallenge":{
      "name":"AdminRespondToAuthChallenge",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminRespondToAuthChallengeRequest"},
      "output":{"shape":"AdminRespondToAuthChallengeResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"CodeMismatchException"},
        {"shape":"ExpiredCodeException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"InvalidPasswordException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"InvalidUserPoolConfigurationException"},
        {"shape":"InternalErrorException"},
        {"shape":"MFAMethodNotFoundException"},
        {"shape":"InvalidSmsRoleAccessPolicyException"},
        {"shape":"InvalidSmsRoleTrustRelationshipException"},
        {"shape":"AliasExistsException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"}
      ]
    },
    "AdminSetUserSettings":{
      "name":"AdminSetUserSettings",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminSetUserSettingsRequest"},
      "output":{"shape":"AdminSetUserSettingsResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UserNotFoundException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "AdminUpdateDeviceStatus":{
      "name":"AdminUpdateDeviceStatus",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminUpdateDeviceStatusRequest"},
      "output":{"shape":"AdminUpdateDeviceStatusResponse"},
      "errors":[
        {"shape":"InvalidParameterException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidUserPoolConfigurationException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UserNotFoundException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "AdminUpdateUserAttributes":{
      "name":"AdminUpdateUserAttributes",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminUpdateUserAttributesRequest"},
      "output":{"shape":"AdminUpdateUserAttributesResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"AliasExistsException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UserNotFoundException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "AdminUserGlobalSignOut":{
      "name":"AdminUserGlobalSignOut",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"AdminUserGlobalSignOutRequest"},
      "output":{"shape":"AdminUserGlobalSignOutResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UserNotFoundException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "ChangePassword":{
      "name":"ChangePassword",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ChangePasswordRequest"},
      "output":{"shape":"ChangePasswordResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"InvalidPasswordException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"LimitExceededException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ],
      "authtype":"none"
    },
    "ConfirmDevice":{
      "name":"ConfirmDevice",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ConfirmDeviceRequest"},
      "output":{"shape":"ConfirmDeviceResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InvalidPasswordException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"UsernameExistsException"},
        {"shape":"InvalidUserPoolConfigurationException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "ConfirmForgotPassword":{
      "name":"ConfirmForgotPassword",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ConfirmForgotPasswordRequest"},
      "output":{"shape":"ConfirmForgotPasswordResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"InvalidParameterException"},
        {"shape":"InvalidPasswordException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"CodeMismatchException"},
        {"shape":"ExpiredCodeException"},
        {"shape":"TooManyFailedAttemptsException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"LimitExceededException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ],
      "authtype":"none"
    },
    "ConfirmSignUp":{
      "name":"ConfirmSignUp",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ConfirmSignUpRequest"},
      "output":{"shape":"ConfirmSignUpResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"TooManyFailedAttemptsException"},
        {"shape":"CodeMismatchException"},
        {"shape":"ExpiredCodeException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"AliasExistsException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"LimitExceededException"},
        {"shape":"UserNotFoundException"},
        {"shape":"InternalErrorException"}
      ],
      "authtype":"none"
    },
    "CreateUserImportJob":{
      "name":"CreateUserImportJob",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"CreateUserImportJobRequest"},
      "output":{"shape":"CreateUserImportJobResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"PreconditionNotMetException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"LimitExceededException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "CreateUserPool":{
      "name":"CreateUserPool",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"CreateUserPoolRequest"},
      "output":{"shape":"CreateUserPoolResponse"},
      "errors":[
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"LimitExceededException"},
        {"shape":"InvalidSmsRoleAccessPolicyException"},
        {"shape":"InvalidSmsRoleTrustRelationshipException"},
        {"shape":"InvalidEmailRoleAccessPolicyException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "CreateUserPoolClient":{
      "name":"CreateUserPoolClient",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"CreateUserPoolClientRequest"},
      "output":{"shape":"CreateUserPoolClientResponse"},
      "errors":[
        {"shape":"InvalidParameterException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"LimitExceededException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "DeleteUser":{
      "name":"DeleteUser",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DeleteUserRequest"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ],
      "authtype":"none"
    },
    "DeleteUserAttributes":{
      "name":"DeleteUserAttributes",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DeleteUserAttributesRequest"},
      "output":{"shape":"DeleteUserAttributesResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ],
      "authtype":"none"
    },
    "DeleteUserPool":{
      "name":"DeleteUserPool",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DeleteUserPoolRequest"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UserImportInProgressException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "DeleteUserPoolClient":{
      "name":"DeleteUserPoolClient",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DeleteUserPoolClientRequest"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "DescribeUserImportJob":{
      "name":"DescribeUserImportJob",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DescribeUserImportJobRequest"},
      "output":{"shape":"DescribeUserImportJobResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "DescribeUserPool":{
      "name":"DescribeUserPool",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DescribeUserPoolRequest"},
      "output":{"shape":"DescribeUserPoolResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "DescribeUserPoolClient":{
      "name":"DescribeUserPoolClient",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"DescribeUserPoolClientRequest"},
      "output":{"shape":"DescribeUserPoolClientResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "ForgetDevice":{
      "name":"ForgetDevice",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ForgetDeviceRequest"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"InvalidUserPoolConfigurationException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "ForgotPassword":{
      "name":"ForgotPassword",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ForgotPasswordRequest"},
      "output":{"shape":"ForgotPasswordResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"LimitExceededException"},
        {"shape":"InvalidSmsRoleAccessPolicyException"},
        {"shape":"InvalidSmsRoleTrustRelationshipException"},
        {"shape":"InvalidEmailRoleAccessPolicyException"},
        {"shape":"CodeDeliveryFailureException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ],
      "authtype":"none"
    },
    "GetCSVHeader":{
      "name":"GetCSVHeader",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"GetCSVHeaderRequest"},
      "output":{"shape":"GetCSVHeaderResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "GetDevice":{
      "name":"GetDevice",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"GetDeviceRequest"},
      "output":{"shape":"GetDeviceResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"InvalidUserPoolConfigurationException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "GetUser":{
      "name":"GetUser",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"GetUserRequest"},
      "output":{"shape":"GetUserResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ],
      "authtype":"none"
    },
    "GetUserAttributeVerificationCode":{
      "name":"GetUserAttributeVerificationCode",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"GetUserAttributeVerificationCodeRequest"},
      "output":{"shape":"GetUserAttributeVerificationCodeResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"InvalidSmsRoleAccessPolicyException"},
        {"shape":"InvalidSmsRoleTrustRelationshipException"},
        {"shape":"InvalidEmailRoleAccessPolicyException"},
        {"shape":"CodeDeliveryFailureException"},
        {"shape":"LimitExceededException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ],
      "authtype":"none"
    },
    "GlobalSignOut":{
      "name":"GlobalSignOut",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"GlobalSignOutRequest"},
      "output":{"shape":"GlobalSignOutResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "InitiateAuth":{
      "name":"InitiateAuth",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"InitiateAuthRequest"},
      "output":{"shape":"InitiateAuthResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"InvalidUserPoolConfigurationException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "ListDevices":{
      "name":"ListDevices",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListDevicesRequest"},
      "output":{"shape":"ListDevicesResponse"},
      "errors":[
        {"shape":"InvalidParameterException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InvalidUserPoolConfigurationException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "ListUserImportJobs":{
      "name":"ListUserImportJobs",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListUserImportJobsRequest"},
      "output":{"shape":"ListUserImportJobsResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "ListUserPoolClients":{
      "name":"ListUserPoolClients",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListUserPoolClientsRequest"},
      "output":{"shape":"ListUserPoolClientsResponse"},
      "errors":[
        {"shape":"InvalidParameterException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "ListUserPools":{
      "name":"ListUserPools",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListUserPoolsRequest"},
      "output":{"shape":"ListUserPoolsResponse"},
      "errors":[
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "ListUsers":{
      "name":"ListUsers",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListUsersRequest"},
      "output":{"shape":"ListUsersResponse"},
      "errors":[
        {"shape":"InvalidParameterException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "ResendConfirmationCode":{
      "name":"ResendConfirmationCode",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ResendConfirmationCodeRequest"},
      "output":{"shape":"ResendConfirmationCodeResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"LimitExceededException"},
        {"shape":"InvalidSmsRoleAccessPolicyException"},
        {"shape":"InvalidSmsRoleTrustRelationshipException"},
        {"shape":"InvalidEmailRoleAccessPolicyException"},
        {"shape":"CodeDeliveryFailureException"},
        {"shape":"UserNotFoundException"},
        {"shape":"InternalErrorException"}
      ],
      "authtype":"none"
    },
    "RespondToAuthChallenge":{
      "name":"RespondToAuthChallenge",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"RespondToAuthChallengeRequest"},
      "output":{"shape":"RespondToAuthChallengeResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"CodeMismatchException"},
        {"shape":"ExpiredCodeException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"InvalidPasswordException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"InvalidUserPoolConfigurationException"},
        {"shape":"MFAMethodNotFoundException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InvalidSmsRoleAccessPolicyException"},
        {"shape":"InvalidSmsRoleTrustRelationshipException"},
        {"shape":"AliasExistsException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "SetUserSettings":{
      "name":"SetUserSettings",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"SetUserSettingsRequest"},
      "output":{"shape":"SetUserSettingsResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ],
      "authtype":"none"
    },
    "SignUp":{
      "name":"SignUp",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"SignUpRequest"},
      "output":{"shape":"SignUpResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InvalidPasswordException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"UsernameExistsException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"InternalErrorException"},
        {"shape":"InvalidSmsRoleAccessPolicyException"},
        {"shape":"InvalidSmsRoleTrustRelationshipException"},
        {"shape":"InvalidEmailRoleAccessPolicyException"},
        {"shape":"CodeDeliveryFailureException"}
      ],
      "authtype":"none"
    },
    "StartUserImportJob":{
      "name":"StartUserImportJob",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"StartUserImportJobRequest"},
      "output":{"shape":"StartUserImportJobResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"InternalErrorException"},
        {"shape":"PreconditionNotMetException"},
        {"shape":"NotAuthorizedException"}
      ]
    },
    "StopUserImportJob":{
      "name":"StopUserImportJob",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"StopUserImportJobRequest"},
      "output":{"shape":"StopUserImportJobResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"InternalErrorException"},
        {"shape":"PreconditionNotMetException"},
        {"shape":"NotAuthorizedException"}
      ]
    },
    "UpdateDeviceStatus":{
      "name":"UpdateDeviceStatus",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UpdateDeviceStatusRequest"},
      "output":{"shape":"UpdateDeviceStatusResponse"},
      "errors":[
        {"shape":"InvalidParameterException"},
        {"shape":"ResourceNotFoundException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InvalidUserPoolConfigurationException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "UpdateUserAttributes":{
      "name":"UpdateUserAttributes",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UpdateUserAttributesRequest"},
      "output":{"shape":"UpdateUserAttributesResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"CodeMismatchException"},
        {"shape":"ExpiredCodeException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UnexpectedLambdaException"},
        {"shape":"UserLambdaValidationException"},
        {"shape":"InvalidLambdaResponseException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"AliasExistsException"},
        {"shape":"InvalidSmsRoleAccessPolicyException"},
        {"shape":"InvalidSmsRoleTrustRelationshipException"},
        {"shape":"InvalidEmailRoleAccessPolicyException"},
        {"shape":"CodeDeliveryFailureException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ],
      "authtype":"none"
    },
    "UpdateUserPool":{
      "name":"UpdateUserPool",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UpdateUserPoolRequest"},
      "output":{"shape":"UpdateUserPoolResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"ConcurrentModificationException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"UserImportInProgressException"},
        {"shape":"InternalErrorException"},
        {"shape":"InvalidSmsRoleAccessPolicyException"},
        {"shape":"InvalidSmsRoleTrustRelationshipException"},
        {"shape":"InvalidEmailRoleAccessPolicyException"}
      ]
    },
    "UpdateUserPoolClient":{
      "name":"UpdateUserPoolClient",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"UpdateUserPoolClientRequest"},
      "output":{"shape":"UpdateUserPoolClientResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"InternalErrorException"}
      ]
    },
    "VerifyUserAttribute":{
      "name":"VerifyUserAttribute",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"VerifyUserAttributeRequest"},
      "output":{"shape":"VerifyUserAttributeResponse"},
      "errors":[
        {"shape":"ResourceNotFoundException"},
        {"shape":"InvalidParameterException"},
        {"shape":"CodeMismatchException"},
        {"shape":"ExpiredCodeException"},
        {"shape":"NotAuthorizedException"},
        {"shape":"TooManyRequestsException"},
        {"shape":"LimitExceededException"},
        {"shape":"PasswordResetRequiredException"},
        {"shape":"UserNotFoundException"},
        {"shape":"UserNotConfirmedException"},
        {"shape":"InternalErrorException"}
      ],
      "authtype":"none"
    }
  },
  "shapes":{
    "AddCustomAttributesRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "CustomAttributes"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "CustomAttributes":{"shape":"CustomAttributesListType"}
      }
    },
    "AddCustomAttributesResponse":{
      "type":"structure",
      "members":{
      }
    },
    "AdminConfirmSignUpRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "Username"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"}
      }
    },
    "AdminConfirmSignUpResponse":{
      "type":"structure",
      "members":{
      }
    },
    "AdminCreateUserConfigType":{
      "type":"structure",
      "members":{
        "AllowAdminCreateUserOnly":{"shape":"BooleanType"},
        "UnusedAccountValidityDays":{"shape":"AdminCreateUserUnusedAccountValidityDaysType"},
        "InviteMessageTemplate":{"shape":"MessageTemplateType"}
      }
    },
    "AdminCreateUserRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "Username"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"},
        "UserAttributes":{"shape":"AttributeListType"},
        "ValidationData":{"shape":"AttributeListType"},
        "TemporaryPassword":{"shape":"PasswordType"},
        "ForceAliasCreation":{"shape":"ForceAliasCreation"},
        "MessageAction":{"shape":"MessageActionType"},
        "DesiredDeliveryMediums":{"shape":"DeliveryMediumListType"}
      }
    },
    "AdminCreateUserResponse":{
      "type":"structure",
      "members":{
        "User":{"shape":"UserType"}
      }
    },
    "AdminCreateUserUnusedAccountValidityDaysType":{
      "type":"integer",
      "max":90,
      "min":0
    },
    "AdminDeleteUserAttributesRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "Username",
        "UserAttributeNames"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"},
        "UserAttributeNames":{"shape":"AttributeNameListType"}
      }
    },
    "AdminDeleteUserAttributesResponse":{
      "type":"structure",
      "members":{
      }
    },
    "AdminDeleteUserRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "Username"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"}
      }
    },
    "AdminDisableUserRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "Username"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"}
      }
    },
    "AdminDisableUserResponse":{
      "type":"structure",
      "members":{
      }
    },
    "AdminEnableUserRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "Username"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"}
      }
    },
    "AdminEnableUserResponse":{
      "type":"structure",
      "members":{
      }
    },
    "AdminForgetDeviceRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "Username",
        "DeviceKey"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"},
        "DeviceKey":{"shape":"DeviceKeyType"}
      }
    },
    "AdminGetDeviceRequest":{
      "type":"structure",
      "required":[
        "DeviceKey",
        "UserPoolId",
        "Username"
      ],
      "members":{
        "DeviceKey":{"shape":"DeviceKeyType"},
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"}
      }
    },
    "AdminGetDeviceResponse":{
      "type":"structure",
      "required":["Device"],
      "members":{
        "Device":{"shape":"DeviceType"}
      }
    },
    "AdminGetUserRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "Username"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"}
      }
    },
    "AdminGetUserResponse":{
      "type":"structure",
      "required":["Username"],
      "members":{
        "Username":{"shape":"UsernameType"},
        "UserAttributes":{"shape":"AttributeListType"},
        "UserCreateDate":{"shape":"DateType"},
        "UserLastModifiedDate":{"shape":"DateType"},
        "Enabled":{"shape":"BooleanType"},
        "UserStatus":{"shape":"UserStatusType"},
        "MFAOptions":{"shape":"MFAOptionListType"}
      }
    },
    "AdminInitiateAuthRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "ClientId",
        "AuthFlow"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "ClientId":{"shape":"ClientIdType"},
        "AuthFlow":{"shape":"AuthFlowType"},
        "AuthParameters":{"shape":"AuthParametersType"},
        "ClientMetadata":{"shape":"ClientMetadataType"}
      }
    },
    "AdminInitiateAuthResponse":{
      "type":"structure",
      "members":{
        "ChallengeName":{"shape":"ChallengeNameType"},
        "Session":{"shape":"SessionType"},
        "ChallengeParameters":{"shape":"ChallengeParametersType"},
        "AuthenticationResult":{"shape":"AuthenticationResultType"}
      }
    },
    "AdminListDevicesRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "Username"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"},
        "Limit":{"shape":"QueryLimitType"},
        "PaginationToken":{"shape":"SearchPaginationTokenType"}
      }
    },
    "AdminListDevicesResponse":{
      "type":"structure",
      "members":{
        "Devices":{"shape":"DeviceListType"},
        "PaginationToken":{"shape":"SearchPaginationTokenType"}
      }
    },
    "AdminResetUserPasswordRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "Username"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"}
      }
    },
    "AdminResetUserPasswordResponse":{
      "type":"structure",
      "members":{
      }
    },
    "AdminRespondToAuthChallengeRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "ClientId",
        "ChallengeName"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "ClientId":{"shape":"ClientIdType"},
        "ChallengeName":{"shape":"ChallengeNameType"},
        "ChallengeResponses":{"shape":"ChallengeResponsesType"},
        "Session":{"shape":"SessionType"}
      }
    },
    "AdminRespondToAuthChallengeResponse":{
      "type":"structure",
      "members":{
        "ChallengeName":{"shape":"ChallengeNameType"},
        "Session":{"shape":"SessionType"},
        "ChallengeParameters":{"shape":"ChallengeParametersType"},
        "AuthenticationResult":{"shape":"AuthenticationResultType"}
      }
    },
    "AdminSetUserSettingsRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "Username",
        "MFAOptions"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"},
        "MFAOptions":{"shape":"MFAOptionListType"}
      }
    },
    "AdminSetUserSettingsResponse":{
      "type":"structure",
      "members":{
      }
    },
    "AdminUpdateDeviceStatusRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "Username",
        "DeviceKey"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"},
        "DeviceKey":{"shape":"DeviceKeyType"},
        "DeviceRememberedStatus":{"shape":"DeviceRememberedStatusType"}
      }
    },
    "AdminUpdateDeviceStatusResponse":{
      "type":"structure",
      "members":{
      }
    },
    "AdminUpdateUserAttributesRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "Username",
        "UserAttributes"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"},
        "UserAttributes":{"shape":"AttributeListType"}
      }
    },
    "AdminUpdateUserAttributesResponse":{
      "type":"structure",
      "members":{
      }
    },
    "AdminUserGlobalSignOutRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "Username"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Username":{"shape":"UsernameType"}
      }
    },
    "AdminUserGlobalSignOutResponse":{
      "type":"structure",
      "members":{
      }
    },
    "AliasAttributeType":{
      "type":"string",
      "enum":[
        "phone_number",
        "email",
        "preferred_username"
      ]
    },
    "AliasAttributesListType":{
      "type":"list",
      "member":{"shape":"AliasAttributeType"}
    },
    "AliasExistsException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "ArnType":{
      "type":"string",
      "max":2048,
      "min":20,
      "pattern":"arn:[\\w+=/,.@-]+:[\\w+=/,.@-]+:([\\w+=/,.@-]*)?:[0-9]+:[\\w+=/,.@-]+(:[\\w+=/,.@-]+)?(:[\\w+=/,.@-]+)?"
    },
    "AttributeDataType":{
      "type":"string",
      "enum":[
        "String",
        "Number",
        "DateTime",
        "Boolean"
      ]
    },
    "AttributeListType":{
      "type":"list",
      "member":{"shape":"AttributeType"}
    },
    "AttributeNameListType":{
      "type":"list",
      "member":{"shape":"AttributeNameType"}
    },
    "AttributeNameType":{
      "type":"string",
      "max":32,
      "min":1,
      "pattern":"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]+"
    },
    "AttributeType":{
      "type":"structure",
      "required":["Name"],
      "members":{
        "Name":{"shape":"AttributeNameType"},
        "Value":{"shape":"AttributeValueType"}
      }
    },
    "AttributeValueType":{
      "type":"string",
      "max":2048,
      "sensitive":true
    },
    "AuthFlowType":{
      "type":"string",
      "enum":[
        "USER_SRP_AUTH",
        "REFRESH_TOKEN_AUTH",
        "REFRESH_TOKEN",
        "CUSTOM_AUTH",
        "ADMIN_NO_SRP_AUTH"
      ]
    },
    "AuthParametersType":{
      "type":"map",
      "key":{"shape":"StringType"},
      "value":{"shape":"StringType"}
    },
    "AuthenticationResultType":{
      "type":"structure",
      "members":{
        "AccessToken":{"shape":"TokenModelType"},
        "ExpiresIn":{"shape":"IntegerType"},
        "TokenType":{"shape":"StringType"},
        "RefreshToken":{"shape":"TokenModelType"},
        "IdToken":{"shape":"TokenModelType"},
        "NewDeviceMetadata":{"shape":"NewDeviceMetadataType"}
      }
    },
    "BooleanType":{"type":"boolean"},
    "ChallengeNameType":{
      "type":"string",
      "enum":[
        "SMS_MFA",
        "PASSWORD_VERIFIER",
        "CUSTOM_CHALLENGE",
        "DEVICE_SRP_AUTH",
        "DEVICE_PASSWORD_VERIFIER",
        "ADMIN_NO_SRP_AUTH",
        "NEW_PASSWORD_REQUIRED"
      ]
    },
    "ChallengeParametersType":{
      "type":"map",
      "key":{"shape":"StringType"},
      "value":{"shape":"StringType"}
    },
    "ChallengeResponsesType":{
      "type":"map",
      "key":{"shape":"StringType"},
      "value":{"shape":"StringType"}
    },
    "ChangePasswordRequest":{
      "type":"structure",
      "required":[
        "PreviousPassword",
        "ProposedPassword"
      ],
      "members":{
        "PreviousPassword":{"shape":"PasswordType"},
        "ProposedPassword":{"shape":"PasswordType"},
        "AccessToken":{"shape":"TokenModelType"}
      }
    },
    "ChangePasswordResponse":{
      "type":"structure",
      "members":{
      }
    },
    "ClientIdType":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"[\\w+]+",
      "sensitive":true
    },
    "ClientMetadataType":{
      "type":"map",
      "key":{"shape":"StringType"},
      "value":{"shape":"StringType"}
    },
    "ClientNameType":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"[\\w\\s+=,.@-]+"
    },
    "ClientPermissionListType":{
      "type":"list",
      "member":{"shape":"ClientPermissionType"}
    },
    "ClientPermissionType":{
      "type":"string",
      "max":2048,
      "min":1
    },
    "ClientSecretType":{
      "type":"string",
      "max":64,
      "min":1,
      "pattern":"[\\w+]+",
      "sensitive":true
    },
    "CodeDeliveryDetailsListType":{
      "type":"list",
      "member":{"shape":"CodeDeliveryDetailsType"}
    },
    "CodeDeliveryDetailsType":{
      "type":"structure",
      "members":{
        "Destination":{"shape":"StringType"},
        "DeliveryMedium":{"shape":"DeliveryMediumType"},
        "AttributeName":{"shape":"AttributeNameType"}
      }
    },
    "CodeDeliveryFailureException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "CodeMismatchException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "CompletionMessageType":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"[\\w]+"
    },
    "ConcurrentModificationException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "ConfirmDeviceRequest":{
      "type":"structure",
      "required":[
        "AccessToken",
        "DeviceKey"
      ],
      "members":{
        "AccessToken":{"shape":"TokenModelType"},
        "DeviceKey":{"shape":"DeviceKeyType"},
        "DeviceSecretVerifierConfig":{"shape":"DeviceSecretVerifierConfigType"},
        "DeviceName":{"shape":"DeviceNameType"}
      }
    },
    "ConfirmDeviceResponse":{
      "type":"structure",
      "members":{
        "UserConfirmationNecessary":{"shape":"BooleanType"}
      }
    },
    "ConfirmForgotPasswordRequest":{
      "type":"structure",
      "required":[
        "ClientId",
        "Username",
        "ConfirmationCode",
        "Password"
      ],
      "members":{
        "ClientId":{"shape":"ClientIdType"},
        "SecretHash":{"shape":"SecretHashType"},
        "Username":{"shape":"UsernameType"},
        "ConfirmationCode":{"shape":"ConfirmationCodeType"},
        "Password":{"shape":"PasswordType"}
      }
    },
    "ConfirmForgotPasswordResponse":{
      "type":"structure",
      "members":{
      }
    },
    "ConfirmSignUpRequest":{
      "type":"structure",
      "required":[
        "ClientId",
        "Username",
        "ConfirmationCode"
      ],
      "members":{
        "ClientId":{"shape":"ClientIdType"},
        "SecretHash":{"shape":"SecretHashType"},
        "Username":{"shape":"UsernameType"},
        "ConfirmationCode":{"shape":"ConfirmationCodeType"},
        "ForceAliasCreation":{"shape":"ForceAliasCreation"}
      }
    },
    "ConfirmSignUpResponse":{
      "type":"structure",
      "members":{
      }
    },
    "ConfirmationCodeType":{
      "type":"string",
      "max":2048,
      "min":1,
      "pattern":"[\\S]+"
    },
    "CreateUserImportJobRequest":{
      "type":"structure",
      "required":[
        "JobName",
        "UserPoolId",
        "CloudWatchLogsRoleArn"
      ],
      "members":{
        "JobName":{"shape":"UserImportJobNameType"},
        "UserPoolId":{"shape":"UserPoolIdType"},
        "CloudWatchLogsRoleArn":{"shape":"ArnType"}
      }
    },
    "CreateUserImportJobResponse":{
      "type":"structure",
      "members":{
        "UserImportJob":{"shape":"UserImportJobType"}
      }
    },
    "CreateUserPoolClientRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "ClientName"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "ClientName":{"shape":"ClientNameType"},
        "GenerateSecret":{"shape":"GenerateSecret"},
        "RefreshTokenValidity":{"shape":"RefreshTokenValidityType"},
        "ReadAttributes":{"shape":"ClientPermissionListType"},
        "WriteAttributes":{"shape":"ClientPermissionListType"},
        "ExplicitAuthFlows":{"shape":"ExplicitAuthFlowsListType"}
      }
    },
    "CreateUserPoolClientResponse":{
      "type":"structure",
      "members":{
        "UserPoolClient":{"shape":"UserPoolClientType"}
      }
    },
    "CreateUserPoolRequest":{
      "type":"structure",
      "required":["PoolName"],
      "members":{
        "PoolName":{"shape":"UserPoolNameType"},
        "Policies":{"shape":"UserPoolPolicyType"},
        "LambdaConfig":{"shape":"LambdaConfigType"},
        "AutoVerifiedAttributes":{"shape":"VerifiedAttributesListType"},
        "AliasAttributes":{"shape":"AliasAttributesListType"},
        "SmsVerificationMessage":{"shape":"SmsVerificationMessageType"},
        "EmailVerificationMessage":{"shape":"EmailVerificationMessageType"},
        "EmailVerificationSubject":{"shape":"EmailVerificationSubjectType"},
        "SmsAuthenticationMessage":{"shape":"SmsVerificationMessageType"},
        "MfaConfiguration":{"shape":"UserPoolMfaType"},
        "DeviceConfiguration":{"shape":"DeviceConfigurationType"},
        "EmailConfiguration":{"shape":"EmailConfigurationType"},
        "SmsConfiguration":{"shape":"SmsConfigurationType"},
        "AdminCreateUserConfig":{"shape":"AdminCreateUserConfigType"}
      }
    },
    "CreateUserPoolResponse":{
      "type":"structure",
      "members":{
        "UserPool":{"shape":"UserPoolType"}
      }
    },
    "CustomAttributeNameType":{
      "type":"string",
      "max":20,
      "min":1,
      "pattern":"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]+"
    },
    "CustomAttributesListType":{
      "type":"list",
      "member":{"shape":"SchemaAttributeType"},
      "max":25,
      "min":1
    },
    "DateType":{"type":"timestamp"},
    "DeleteUserAttributesRequest":{
      "type":"structure",
      "required":["UserAttributeNames"],
      "members":{
        "UserAttributeNames":{"shape":"AttributeNameListType"},
        "AccessToken":{"shape":"TokenModelType"}
      }
    },
    "DeleteUserAttributesResponse":{
      "type":"structure",
      "members":{
      }
    },
    "DeleteUserPoolClientRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "ClientId"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "ClientId":{"shape":"ClientIdType"}
      }
    },
    "DeleteUserPoolRequest":{
      "type":"structure",
      "required":["UserPoolId"],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"}
      }
    },
    "DeleteUserRequest":{
      "type":"structure",
      "members":{
        "AccessToken":{"shape":"TokenModelType"}
      }
    },
    "DeliveryMediumListType":{
      "type":"list",
      "member":{"shape":"DeliveryMediumType"}
    },
    "DeliveryMediumType":{
      "type":"string",
      "enum":[
        "SMS",
        "EMAIL"
      ]
    },
    "DescribeUserImportJobRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "JobId"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "JobId":{"shape":"UserImportJobIdType"}
      }
    },
    "DescribeUserImportJobResponse":{
      "type":"structure",
      "members":{
        "UserImportJob":{"shape":"UserImportJobType"}
      }
    },
    "DescribeUserPoolClientRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "ClientId"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "ClientId":{"shape":"ClientIdType"}
      }
    },
    "DescribeUserPoolClientResponse":{
      "type":"structure",
      "members":{
        "UserPoolClient":{"shape":"UserPoolClientType"}
      }
    },
    "DescribeUserPoolRequest":{
      "type":"structure",
      "required":["UserPoolId"],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"}
      }
    },
    "DescribeUserPoolResponse":{
      "type":"structure",
      "members":{
        "UserPool":{"shape":"UserPoolType"}
      }
    },
    "DeviceConfigurationType":{
      "type":"structure",
      "members":{
        "ChallengeRequiredOnNewDevice":{"shape":"BooleanType"},
        "DeviceOnlyRememberedOnUserPrompt":{"shape":"BooleanType"}
      }
    },
    "DeviceKeyType":{
      "type":"string",
      "max":55,
      "min":1,
      "pattern":"[\\w-]+_[0-9a-f-]+"
    },
    "DeviceListType":{
      "type":"list",
      "member":{"shape":"DeviceType"}
    },
    "DeviceNameType":{
      "type":"string",
      "max":1024,
      "min":1
    },
    "DeviceRememberedStatusType":{
      "type":"string",
      "enum":[
        "remembered",
        "not_remembered"
      ]
    },
    "DeviceSecretVerifierConfigType":{
      "type":"structure",
      "members":{
        "PasswordVerifier":{"shape":"StringType"},
        "Salt":{"shape":"StringType"}
      }
    },
    "DeviceType":{
      "type":"structure",
      "members":{
        "DeviceKey":{"shape":"DeviceKeyType"},
        "DeviceAttributes":{"shape":"AttributeListType"},
        "DeviceCreateDate":{"shape":"DateType"},
        "DeviceLastModifiedDate":{"shape":"DateType"},
        "DeviceLastAuthenticatedDate":{"shape":"DateType"}
      }
    },
    "EmailAddressType":{
      "type":"string",
      "pattern":"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]+@[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]+"
    },
    "EmailConfigurationType":{
      "type":"structure",
      "members":{
        "SourceArn":{"shape":"ArnType"},
        "ReplyToEmailAddress":{"shape":"EmailAddressType"}
      }
    },
    "EmailVerificationMessageType":{
      "type":"string",
      "max":2048,
      "min":6,
      "pattern":"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}\\s*]*\\{####\\}[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}\\s*]*"
    },
    "EmailVerificationSubjectType":{
      "type":"string",
      "max":140,
      "min":1,
      "pattern":"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}\\s]+"
    },
    "ExpiredCodeException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "ExplicitAuthFlowsListType":{
      "type":"list",
      "member":{"shape":"ExplicitAuthFlowsType"}
    },
    "ExplicitAuthFlowsType":{
      "type":"string",
      "enum":[
        "ADMIN_NO_SRP_AUTH",
        "CUSTOM_AUTH_FLOW_ONLY"
      ]
    },
    "ForceAliasCreation":{"type":"boolean"},
    "ForgetDeviceRequest":{
      "type":"structure",
      "required":["DeviceKey"],
      "members":{
        "AccessToken":{"shape":"TokenModelType"},
        "DeviceKey":{"shape":"DeviceKeyType"}
      }
    },
    "ForgotPasswordRequest":{
      "type":"structure",
      "required":[
        "ClientId",
        "Username"
      ],
      "members":{
        "ClientId":{"shape":"ClientIdType"},
        "SecretHash":{"shape":"SecretHashType"},
        "Username":{"shape":"UsernameType"}
      }
    },
    "ForgotPasswordResponse":{
      "type":"structure",
      "members":{
        "CodeDeliveryDetails":{"shape":"CodeDeliveryDetailsType"}
      }
    },
    "GenerateSecret":{"type":"boolean"},
    "GetCSVHeaderRequest":{
      "type":"structure",
      "required":["UserPoolId"],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"}
      }
    },
    "GetCSVHeaderResponse":{
      "type":"structure",
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "CSVHeader":{"shape":"ListOfStringTypes"}
      }
    },
    "GetDeviceRequest":{
      "type":"structure",
      "required":["DeviceKey"],
      "members":{
        "DeviceKey":{"shape":"DeviceKeyType"},
        "AccessToken":{"shape":"TokenModelType"}
      }
    },
    "GetDeviceResponse":{
      "type":"structure",
      "required":["Device"],
      "members":{
        "Device":{"shape":"DeviceType"}
      }
    },
    "GetUserAttributeVerificationCodeRequest":{
      "type":"structure",
      "required":["AttributeName"],
      "members":{
        "AccessToken":{"shape":"TokenModelType"},
        "AttributeName":{"shape":"AttributeNameType"}
      }
    },
    "GetUserAttributeVerificationCodeResponse":{
      "type":"structure",
      "members":{
        "CodeDeliveryDetails":{"shape":"CodeDeliveryDetailsType"}
      }
    },
    "GetUserRequest":{
      "type":"structure",
      "members":{
        "AccessToken":{"shape":"TokenModelType"}
      }
    },
    "GetUserResponse":{
      "type":"structure",
      "required":[
        "Username",
        "UserAttributes"
      ],
      "members":{
        "Username":{"shape":"UsernameType"},
        "UserAttributes":{"shape":"AttributeListType"},
        "MFAOptions":{"shape":"MFAOptionListType"}
      }
    },
    "GlobalSignOutRequest":{
      "type":"structure",
      "members":{
        "AccessToken":{"shape":"TokenModelType"}
      }
    },
    "GlobalSignOutResponse":{
      "type":"structure",
      "members":{
      }
    },
    "InitiateAuthRequest":{
      "type":"structure",
      "required":[
        "AuthFlow",
        "ClientId"
      ],
      "members":{
        "AuthFlow":{"shape":"AuthFlowType"},
        "AuthParameters":{"shape":"AuthParametersType"},
        "ClientMetadata":{"shape":"ClientMetadataType"},
        "ClientId":{"shape":"ClientIdType"}
      }
    },
    "InitiateAuthResponse":{
      "type":"structure",
      "members":{
        "ChallengeName":{"shape":"ChallengeNameType"},
        "Session":{"shape":"SessionType"},
        "ChallengeParameters":{"shape":"ChallengeParametersType"},
        "AuthenticationResult":{"shape":"AuthenticationResultType"}
      }
    },
    "IntegerType":{"type":"integer"},
    "InternalErrorException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true,
      "fault":true
    },
    "InvalidEmailRoleAccessPolicyException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "InvalidLambdaResponseException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "InvalidParameterException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "InvalidPasswordException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "InvalidSmsRoleAccessPolicyException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "InvalidSmsRoleTrustRelationshipException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "InvalidUserPoolConfigurationException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "LambdaConfigType":{
      "type":"structure",
      "members":{
        "PreSignUp":{"shape":"ArnType"},
        "CustomMessage":{"shape":"ArnType"},
        "PostConfirmation":{"shape":"ArnType"},
        "PreAuthentication":{"shape":"ArnType"},
        "PostAuthentication":{"shape":"ArnType"},
        "DefineAuthChallenge":{"shape":"ArnType"},
        "CreateAuthChallenge":{"shape":"ArnType"},
        "VerifyAuthChallengeResponse":{"shape":"ArnType"}
      }
    },
    "LimitExceededException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "ListDevicesRequest":{
      "type":"structure",
      "required":["AccessToken"],
      "members":{
        "AccessToken":{"shape":"TokenModelType"},
        "Limit":{"shape":"QueryLimitType"},
        "PaginationToken":{"shape":"SearchPaginationTokenType"}
      }
    },
    "ListDevicesResponse":{
      "type":"structure",
      "members":{
        "Devices":{"shape":"DeviceListType"},
        "PaginationToken":{"shape":"SearchPaginationTokenType"}
      }
    },
    "ListOfStringTypes":{
      "type":"list",
      "member":{"shape":"StringType"}
    },
    "ListUserImportJobsRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "MaxResults"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "MaxResults":{"shape":"PoolQueryLimitType"},
        "PaginationToken":{"shape":"PaginationKeyType"}
      }
    },
    "ListUserImportJobsResponse":{
      "type":"structure",
      "members":{
        "UserImportJobs":{"shape":"UserImportJobsListType"},
        "PaginationToken":{"shape":"PaginationKeyType"}
      }
    },
    "ListUserPoolClientsRequest":{
      "type":"structure",
      "required":["UserPoolId"],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "MaxResults":{"shape":"QueryLimit"},
        "NextToken":{"shape":"PaginationKey"}
      }
    },
    "ListUserPoolClientsResponse":{
      "type":"structure",
      "members":{
        "UserPoolClients":{"shape":"UserPoolClientListType"},
        "NextToken":{"shape":"PaginationKey"}
      }
    },
    "ListUserPoolsRequest":{
      "type":"structure",
      "required":["MaxResults"],
      "members":{
        "NextToken":{"shape":"PaginationKeyType"},
        "MaxResults":{"shape":"PoolQueryLimitType"}
      }
    },
    "ListUserPoolsResponse":{
      "type":"structure",
      "members":{
        "UserPools":{"shape":"UserPoolListType"},
        "NextToken":{"shape":"PaginationKeyType"}
      }
    },
    "ListUsersRequest":{
      "type":"structure",
      "required":["UserPoolId"],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "AttributesToGet":{"shape":"SearchedAttributeNamesListType"},
        "Limit":{"shape":"QueryLimitType"},
        "PaginationToken":{"shape":"SearchPaginationTokenType"},
        "Filter":{"shape":"UserFilterType"}
      }
    },
    "ListUsersResponse":{
      "type":"structure",
      "members":{
        "Users":{"shape":"UsersListType"},
        "PaginationToken":{"shape":"SearchPaginationTokenType"}
      }
    },
    "LongType":{"type":"long"},
    "MFAMethodNotFoundException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "MFAOptionListType":{
      "type":"list",
      "member":{"shape":"MFAOptionType"}
    },
    "MFAOptionType":{
      "type":"structure",
      "members":{
        "DeliveryMedium":{"shape":"DeliveryMediumType"},
        "AttributeName":{"shape":"AttributeNameType"}
      }
    },
    "MessageActionType":{
      "type":"string",
      "enum":[
        "RESEND",
        "SUPPRESS"
      ]
    },
    "MessageTemplateType":{
      "type":"structure",
      "members":{
        "SMSMessage":{"shape":"SmsVerificationMessageType"},
        "EmailMessage":{"shape":"EmailVerificationMessageType"},
        "EmailSubject":{"shape":"EmailVerificationSubjectType"}
      }
    },
    "MessageType":{"type":"string"},
    "NewDeviceMetadataType":{
      "type":"structure",
      "members":{
        "DeviceKey":{"shape":"DeviceKeyType"},
        "DeviceGroupKey":{"shape":"StringType"}
      }
    },
    "NotAuthorizedException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "NumberAttributeConstraintsType":{
      "type":"structure",
      "members":{
        "MinValue":{"shape":"StringType"},
        "MaxValue":{"shape":"StringType"}
      }
    },
    "PaginationKey":{
      "type":"string",
      "min":1,
      "pattern":"[\\S]+"
    },
    "PaginationKeyType":{
      "type":"string",
      "min":1,
      "pattern":"[\\S]+"
    },
    "PasswordPolicyMinLengthType":{
      "type":"integer",
      "max":99,
      "min":6
    },
    "PasswordPolicyType":{
      "type":"structure",
      "members":{
        "MinimumLength":{"shape":"PasswordPolicyMinLengthType"},
        "RequireUppercase":{"shape":"BooleanType"},
        "RequireLowercase":{"shape":"BooleanType"},
        "RequireNumbers":{"shape":"BooleanType"},
        "RequireSymbols":{"shape":"BooleanType"}
      }
    },
    "PasswordResetRequiredException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "PasswordType":{
      "type":"string",
      "max":256,
      "min":6,
      "pattern":"[\\S]+",
      "sensitive":true
    },
    "PoolQueryLimitType":{
      "type":"integer",
      "max":60,
      "min":1
    },
    "PreSignedUrlType":{
      "type":"string",
      "max":2048,
      "min":0
    },
    "PreconditionNotMetException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "QueryLimit":{
      "type":"integer",
      "max":60,
      "min":1
    },
    "QueryLimitType":{
      "type":"integer",
      "max":60,
      "min":0
    },
    "RefreshTokenValidityType":{
      "type":"integer",
      "max":3650,
      "min":0
    },
    "ResendConfirmationCodeRequest":{
      "type":"structure",
      "required":[
        "ClientId",
        "Username"
      ],
      "members":{
        "ClientId":{"shape":"ClientIdType"},
        "SecretHash":{"shape":"SecretHashType"},
        "Username":{"shape":"UsernameType"}
      }
    },
    "ResendConfirmationCodeResponse":{
      "type":"structure",
      "members":{
        "CodeDeliveryDetails":{"shape":"CodeDeliveryDetailsType"}
      }
    },
    "ResourceNotFoundException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "RespondToAuthChallengeRequest":{
      "type":"structure",
      "required":[
        "ClientId",
        "ChallengeName"
      ],
      "members":{
        "ClientId":{"shape":"ClientIdType"},
        "ChallengeName":{"shape":"ChallengeNameType"},
        "Session":{"shape":"SessionType"},
        "ChallengeResponses":{"shape":"ChallengeResponsesType"}
      }
    },
    "RespondToAuthChallengeResponse":{
      "type":"structure",
      "members":{
        "ChallengeName":{"shape":"ChallengeNameType"},
        "Session":{"shape":"SessionType"},
        "ChallengeParameters":{"shape":"ChallengeParametersType"},
        "AuthenticationResult":{"shape":"AuthenticationResultType"}
      }
    },
    "SchemaAttributeType":{
      "type":"structure",
      "members":{
        "Name":{"shape":"CustomAttributeNameType"},
        "AttributeDataType":{"shape":"AttributeDataType"},
        "DeveloperOnlyAttribute":{"shape":"BooleanType"},
        "Mutable":{"shape":"BooleanType"},
        "Required":{"shape":"BooleanType"},
        "NumberAttributeConstraints":{"shape":"NumberAttributeConstraintsType"},
        "StringAttributeConstraints":{"shape":"StringAttributeConstraintsType"}
      }
    },
    "SchemaAttributesListType":{
      "type":"list",
      "member":{"shape":"SchemaAttributeType"},
      "max":50,
      "min":1
    },
    "SearchPaginationTokenType":{
      "type":"string",
      "min":1,
      "pattern":"[\\S]+"
    },
    "SearchedAttributeNamesListType":{
      "type":"list",
      "member":{"shape":"AttributeNameType"}
    },
    "SecretHashType":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"[\\w+=/]+",
      "sensitive":true
    },
    "SessionType":{
      "type":"string",
      "max":2048,
      "min":20
    },
    "SetUserSettingsRequest":{
      "type":"structure",
      "required":[
        "AccessToken",
        "MFAOptions"
      ],
      "members":{
        "AccessToken":{"shape":"TokenModelType"},
        "MFAOptions":{"shape":"MFAOptionListType"}
      }
    },
    "SetUserSettingsResponse":{
      "type":"structure",
      "members":{
      }
    },
    "SignUpRequest":{
      "type":"structure",
      "required":[
        "ClientId",
        "Username",
        "Password"
      ],
      "members":{
        "ClientId":{"shape":"ClientIdType"},
        "SecretHash":{"shape":"SecretHashType"},
        "Username":{"shape":"UsernameType"},
        "Password":{"shape":"PasswordType"},
        "UserAttributes":{"shape":"AttributeListType"},
        "ValidationData":{"shape":"AttributeListType"}
      }
    },
    "SignUpResponse":{
      "type":"structure",
      "members":{
        "UserConfirmed":{"shape":"BooleanType"},
        "CodeDeliveryDetails":{"shape":"CodeDeliveryDetailsType"}
      }
    },
    "SmsConfigurationType":{
      "type":"structure",
      "members":{
        "SnsCallerArn":{"shape":"ArnType"},
        "ExternalId":{"shape":"StringType"}
      }
    },
    "SmsVerificationMessageType":{
      "type":"string",
      "max":140,
      "min":6,
      "pattern":".*\\{####\\}.*"
    },
    "StartUserImportJobRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "JobId"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "JobId":{"shape":"UserImportJobIdType"}
      }
    },
    "StartUserImportJobResponse":{
      "type":"structure",
      "members":{
        "UserImportJob":{"shape":"UserImportJobType"}
      }
    },
    "StatusType":{
      "type":"string",
      "enum":[
        "Enabled",
        "Disabled"
      ]
    },
    "StopUserImportJobRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "JobId"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "JobId":{"shape":"UserImportJobIdType"}
      }
    },
    "StopUserImportJobResponse":{
      "type":"structure",
      "members":{
        "UserImportJob":{"shape":"UserImportJobType"}
      }
    },
    "StringAttributeConstraintsType":{
      "type":"structure",
      "members":{
        "MinLength":{"shape":"StringType"},
        "MaxLength":{"shape":"StringType"}
      }
    },
    "StringType":{"type":"string"},
    "TokenModelType":{
      "type":"string",
      "pattern":"[A-Za-z0-9-_=.]+",
      "sensitive":true
    },
    "TooManyFailedAttemptsException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "TooManyRequestsException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "UnexpectedLambdaException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "UnsupportedUserStateException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "UpdateDeviceStatusRequest":{
      "type":"structure",
      "required":[
        "AccessToken",
        "DeviceKey"
      ],
      "members":{
        "AccessToken":{"shape":"TokenModelType"},
        "DeviceKey":{"shape":"DeviceKeyType"},
        "DeviceRememberedStatus":{"shape":"DeviceRememberedStatusType"}
      }
    },
    "UpdateDeviceStatusResponse":{
      "type":"structure",
      "members":{
      }
    },
    "UpdateUserAttributesRequest":{
      "type":"structure",
      "required":["UserAttributes"],
      "members":{
        "UserAttributes":{"shape":"AttributeListType"},
        "AccessToken":{"shape":"TokenModelType"}
      }
    },
    "UpdateUserAttributesResponse":{
      "type":"structure",
      "members":{
        "CodeDeliveryDetailsList":{"shape":"CodeDeliveryDetailsListType"}
      }
    },
    "UpdateUserPoolClientRequest":{
      "type":"structure",
      "required":[
        "UserPoolId",
        "ClientId"
      ],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "ClientId":{"shape":"ClientIdType"},
        "ClientName":{"shape":"ClientNameType"},
        "RefreshTokenValidity":{"shape":"RefreshTokenValidityType"},
        "ReadAttributes":{"shape":"ClientPermissionListType"},
        "WriteAttributes":{"shape":"ClientPermissionListType"},
        "ExplicitAuthFlows":{"shape":"ExplicitAuthFlowsListType"}
      }
    },
    "UpdateUserPoolClientResponse":{
      "type":"structure",
      "members":{
        "UserPoolClient":{"shape":"UserPoolClientType"}
      }
    },
    "UpdateUserPoolRequest":{
      "type":"structure",
      "required":["UserPoolId"],
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "Policies":{"shape":"UserPoolPolicyType"},
        "LambdaConfig":{"shape":"LambdaConfigType"},
        "AutoVerifiedAttributes":{"shape":"VerifiedAttributesListType"},
        "SmsVerificationMessage":{"shape":"SmsVerificationMessageType"},
        "EmailVerificationMessage":{"shape":"EmailVerificationMessageType"},
        "EmailVerificationSubject":{"shape":"EmailVerificationSubjectType"},
        "SmsAuthenticationMessage":{"shape":"SmsVerificationMessageType"},
        "MfaConfiguration":{"shape":"UserPoolMfaType"},
        "DeviceConfiguration":{"shape":"DeviceConfigurationType"},
        "EmailConfiguration":{"shape":"EmailConfigurationType"},
        "SmsConfiguration":{"shape":"SmsConfigurationType"},
        "AdminCreateUserConfig":{"shape":"AdminCreateUserConfigType"}
      }
    },
    "UpdateUserPoolResponse":{
      "type":"structure",
      "members":{
      }
    },
    "UserFilterType":{
      "type":"string",
      "max":256
    },
    "UserImportInProgressException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "UserImportJobIdType":{
      "type":"string",
      "max":55,
      "min":1,
      "pattern":"import-[0-9a-zA-Z-]+"
    },
    "UserImportJobNameType":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"[\\w\\s+=,.@-]+"
    },
    "UserImportJobStatusType":{
      "type":"string",
      "enum":[
        "Created",
        "Pending",
        "InProgress",
        "Stopping",
        "Expired",
        "Stopped",
        "Failed",
        "Succeeded"
      ]
    },
    "UserImportJobType":{
      "type":"structure",
      "members":{
        "JobName":{"shape":"UserImportJobNameType"},
        "JobId":{"shape":"UserImportJobIdType"},
        "UserPoolId":{"shape":"UserPoolIdType"},
        "PreSignedUrl":{"shape":"PreSignedUrlType"},
        "CreationDate":{"shape":"DateType"},
        "StartDate":{"shape":"DateType"},
        "CompletionDate":{"shape":"DateType"},
        "Status":{"shape":"UserImportJobStatusType"},
        "CloudWatchLogsRoleArn":{"shape":"ArnType"},
        "ImportedUsers":{"shape":"LongType"},
        "SkippedUsers":{"shape":"LongType"},
        "FailedUsers":{"shape":"LongType"},
        "CompletionMessage":{"shape":"CompletionMessageType"}
      }
    },
    "UserImportJobsListType":{
      "type":"list",
      "member":{"shape":"UserImportJobType"},
      "max":50,
      "min":1
    },
    "UserLambdaValidationException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "UserNotConfirmedException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "UserNotFoundException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "UserPoolClientDescription":{
      "type":"structure",
      "members":{
        "ClientId":{"shape":"ClientIdType"},
        "UserPoolId":{"shape":"UserPoolIdType"},
        "ClientName":{"shape":"ClientNameType"}
      }
    },
    "UserPoolClientListType":{
      "type":"list",
      "member":{"shape":"UserPoolClientDescription"}
    },
    "UserPoolClientType":{
      "type":"structure",
      "members":{
        "UserPoolId":{"shape":"UserPoolIdType"},
        "ClientName":{"shape":"ClientNameType"},
        "ClientId":{"shape":"ClientIdType"},
        "ClientSecret":{"shape":"ClientSecretType"},
        "LastModifiedDate":{"shape":"DateType"},
        "CreationDate":{"shape":"DateType"},
        "RefreshTokenValidity":{"shape":"RefreshTokenValidityType"},
        "ReadAttributes":{"shape":"ClientPermissionListType"},
        "WriteAttributes":{"shape":"ClientPermissionListType"},
        "ExplicitAuthFlows":{"shape":"ExplicitAuthFlowsListType"}
      }
    },
    "UserPoolDescriptionType":{
      "type":"structure",
      "members":{
        "Id":{"shape":"UserPoolIdType"},
        "Name":{"shape":"UserPoolNameType"},
        "LambdaConfig":{"shape":"LambdaConfigType"},
        "Status":{"shape":"StatusType"},
        "LastModifiedDate":{"shape":"DateType"},
        "CreationDate":{"shape":"DateType"}
      }
    },
    "UserPoolIdType":{
      "type":"string",
      "max":55,
      "min":1,
      "pattern":"[\\w-]+_[0-9a-zA-Z]+"
    },
    "UserPoolListType":{
      "type":"list",
      "member":{"shape":"UserPoolDescriptionType"}
    },
    "UserPoolMfaType":{
      "type":"string",
      "enum":[
        "OFF",
        "ON",
        "OPTIONAL"
      ]
    },
    "UserPoolNameType":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"[\\w\\s+=,.@-]+"
    },
    "UserPoolPolicyType":{
      "type":"structure",
      "members":{
        "PasswordPolicy":{"shape":"PasswordPolicyType"}
      }
    },
    "UserPoolType":{
      "type":"structure",
      "members":{
        "Id":{"shape":"UserPoolIdType"},
        "Name":{"shape":"UserPoolNameType"},
        "Policies":{"shape":"UserPoolPolicyType"},
        "LambdaConfig":{"shape":"LambdaConfigType"},
        "Status":{"shape":"StatusType"},
        "LastModifiedDate":{"shape":"DateType"},
        "CreationDate":{"shape":"DateType"},
        "SchemaAttributes":{"shape":"SchemaAttributesListType"},
        "AutoVerifiedAttributes":{"shape":"VerifiedAttributesListType"},
        "AliasAttributes":{"shape":"AliasAttributesListType"},
        "SmsVerificationMessage":{"shape":"SmsVerificationMessageType"},
        "EmailVerificationMessage":{"shape":"EmailVerificationMessageType"},
        "EmailVerificationSubject":{"shape":"EmailVerificationSubjectType"},
        "SmsAuthenticationMessage":{"shape":"SmsVerificationMessageType"},
        "MfaConfiguration":{"shape":"UserPoolMfaType"},
        "DeviceConfiguration":{"shape":"DeviceConfigurationType"},
        "EstimatedNumberOfUsers":{"shape":"IntegerType"},
        "EmailConfiguration":{"shape":"EmailConfigurationType"},
        "SmsConfiguration":{"shape":"SmsConfigurationType"},
        "SmsConfigurationFailure":{"shape":"StringType"},
        "EmailConfigurationFailure":{"shape":"StringType"},
        "AdminCreateUserConfig":{"shape":"AdminCreateUserConfigType"}
      }
    },
    "UserStatusType":{
      "type":"string",
      "enum":[
        "UNCONFIRMED",
        "CONFIRMED",
        "ARCHIVED",
        "COMPROMISED",
        "UNKNOWN",
        "RESET_REQUIRED",
        "FORCE_CHANGE_PASSWORD"
      ]
    },
    "UserType":{
      "type":"structure",
      "members":{
        "Username":{"shape":"UsernameType"},
        "Attributes":{"shape":"AttributeListType"},
        "UserCreateDate":{"shape":"DateType"},
        "UserLastModifiedDate":{"shape":"DateType"},
        "Enabled":{"shape":"BooleanType"},
        "UserStatus":{"shape":"UserStatusType"},
        "MFAOptions":{"shape":"MFAOptionListType"}
      }
    },
    "UsernameExistsException":{
      "type":"structure",
      "members":{
        "message":{"shape":"MessageType"}
      },
      "exception":true
    },
    "UsernameType":{
      "type":"string",
      "max":128,
      "min":1,
      "pattern":"[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}]+",
      "sensitive":true
    },
    "UsersListType":{
      "type":"list",
      "member":{"shape":"UserType"}
    },
    "VerifiedAttributeType":{
      "type":"string",
      "enum":[
        "phone_number",
        "email"
      ]
    },
    "VerifiedAttributesListType":{
      "type":"list",
      "member":{"shape":"VerifiedAttributeType"}
    },
    "VerifyUserAttributeRequest":{
      "type":"structure",
      "required":[
        "AttributeName",
        "Code"
      ],
      "members":{
        "AccessToken":{"shape":"TokenModelType"},
        "AttributeName":{"shape":"AttributeNameType"},
        "Code":{"shape":"ConfirmationCodeType"}
      }
    },
    "VerifyUserAttributeResponse":{
      "type":"structure",
      "members":{
      }
    }
  }
}
