Account Handler

class aioaccount.AccountHandler(engine: Union[aioaccount._engines.MongoEngine, aioaccount._engines.SQLEngine], password_policy: aioaccount._pass_policy.PasswordPolicy = <aioaccount._pass_policy.PasswordPolicy object>, smtp: Optional[aioaccount._smtp.SmtpClient] = None, password_reset_expires: datetime.timedelta = datetime.timedelta(days=1))
await close() None

Closes any closed sessions.

await confirm_email(email: str, given_code: str) aioaccount._user.User

Used to confirm email from given code.

Parameters
  • email (str) – User’s email

  • given_code (str) – Code the user provided.

Returns

Return type

User

Raises

UnableToConfirmEmail

await create_account(password: str, email: Optional[str] = None, name: Optional[str] = None) Tuple[aioaccount._models.UserModel, aioaccount._user.User]

Used to create a user account.

Parameters
  • name (str, optional) – Unique name of user, max length 128

  • password (str) – Password of user

  • email (str, optional) – by default None

Returns

  • UserModel – Holds info on user.

  • User – Used to interact with user.

Raises
await login(password: str, name: Optional[str] = None, email: Optional[str] = None, require_email_confirmed: bool = True) Tuple[aioaccount._models.UserModel, aioaccount._user.User]

Used to validate user’s login.

Parameters
  • password (str) –

  • name (str, optional) – by default None

  • email (str, optional) – by default None

  • require_email_confirmed (bool, optional) – If true email must be confirmed, by default True

Returns

  • UserModel – Holds info on user.

  • User – Used to interact with user.

Raises
await start() None

Opens needed sessions.

await to_user(email: Optional[str] = None, name: Optional[str] = None) Tuple[aioaccount._models.UserModel, aioaccount._user.User]

Used to convert email or user to user object.

Parameters
  • email (str, optional) – by default None

  • name (str, optional) – by default None

Returns

  • UserModel

  • User

Raises

AccountDetailsError

user(user_id: str) aioaccount._user.User

Used to interact with user.

Parameters

user_id (str) –

Returns

Return type

User

async for ... in users(email_confirmed: Optional[bool] = None) AsyncGenerator[Tuple[aioaccount._models.UserModel, aioaccount._user.User], None]

Used to list users.

Parameters

email_confirmed (bool, optional) – by default None

Yields
  • UserModel

  • User