diff --git a/api/services/account_service.py b/api/services/account_service.py index 3bd7b802341752..58c315c4249b55 100644 --- a/api/services/account_service.py +++ b/api/services/account_service.py @@ -6,7 +6,7 @@ import uuid from datetime import datetime, timedelta from hashlib import sha256 -from typing import Optional +from typing import Optional, Dict, Any from werkzeug.exceptions import Forbidden, Unauthorized from flask import session, current_app @@ -24,7 +24,8 @@ from models.account import * from tasks.mail_invite_member_task import send_invite_member_mail_task -def _create_tenant_for_account(account): + +def _create_tenant_for_account(account) -> Tenant: tenant = TenantService.create_tenant(f"{account.name}'s Workspace") TenantService.create_tenant_member(tenant, account, role='owner') @@ -505,7 +506,7 @@ def revoke_token(cls, workspace_id: str, email: str, token: str): redis_client.delete(cls._get_invitation_token_key(token)) @classmethod - def get_invitation_if_token_valid(cls, workspace_id: str, email: str, token: str) -> Optional[Account]: + def get_invitation_if_token_valid(cls, workspace_id: str, email: str, token: str) -> Optional[Dict[str, Any]]: invitation_data = cls._get_invitation_by_token(token, workspace_id, email) if not invitation_data: return None @@ -539,7 +540,7 @@ def get_invitation_if_token_valid(cls, workspace_id: str, email: str, token: str } @classmethod - def _get_invitation_by_token(cls, token: str, workspace_id: str, email: str) -> Optional[str]: + def _get_invitation_by_token(cls, token: str, workspace_id: str, email: str) -> Optional[Dict[str, str]]: if workspace_id is not None and email is not None: email_hash = sha256(email.encode()).hexdigest() cache_key = f'member_invite_token:{workspace_id}, {email_hash}:{token}'