Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 23 additions & 14 deletions propelauth_fastapi/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
from propelauth_py.api import (
OrgQueryOrderBy,
UserQueryOrderBy,
SsoTrustLevel,
)

_security = HTTPBearer(auto_error=False)
Expand Down Expand Up @@ -169,11 +170,11 @@ def validate_access_token_and_get_user(self, authorization_header: str) -> User:
def fetch_user_metadata_by_user_id(self, user_id: str, include_orgs: bool = False):
return self.auth.fetch_user_metadata_by_user_id(user_id, include_orgs)

def fetch_user_metadata_by_email(self, email: str, include_orgs: bool = False):
return self.auth.fetch_user_metadata_by_email(email, include_orgs)
def fetch_user_metadata_by_email(self, email: str, include_orgs: bool = False, isolated_org_id: Optional[str] = None):
return self.auth.fetch_user_metadata_by_email(email, include_orgs, isolated_org_id)

def fetch_user_metadata_by_username(self, username: str, include_orgs: bool = False):
return self.auth.fetch_user_metadata_by_username(username, include_orgs)
def fetch_user_metadata_by_username(self, username: str, include_orgs: bool = False, isolated_org_id: Optional[str] = None):
return self.auth.fetch_user_metadata_by_username(username, include_orgs, isolated_org_id)

def fetch_user_signup_query_params_by_user_id(self, user_id: str):
return self.auth.fetch_user_signup_query_params_by_user_id(user_id)
Expand Down Expand Up @@ -204,9 +205,9 @@ def fetch_pending_invites(self, page_number: int = 0, page_size: int = 10, org_i

def fetch_users_by_query(
self, page_size: int = 10, page_number: int = 0, order_by: UserQueryOrderBy = UserQueryOrderBy.CREATED_AT_ASC,
email_or_username: Optional[str] = None, include_orgs: bool = False, legacy_user_id: Optional[str] = None
email_or_username: Optional[str] = None, include_orgs: bool = False, legacy_user_id: Optional[str] = None, isolated_org_id: Optional[str] = None
):
return self.auth.fetch_users_by_query(page_size, page_number, order_by, email_or_username, include_orgs, legacy_user_id)
return self.auth.fetch_users_by_query(page_size, page_number, order_by, email_or_username, include_orgs, legacy_user_id, isolated_org_id)

def fetch_users_in_org(
self, org_id: str, page_size: int = 10, page_number: int = 0, include_orgs: bool = False, role: Optional[str] = None
Expand Down Expand Up @@ -328,10 +329,11 @@ def update_org_metadata(
domain: Optional[str] = None,
require_2fa_by: Optional[str] = None,
extra_domains: Optional[List[str]] = None,
sso_trust_level: Optional[SsoTrustLevel] = None
):
return self.auth.update_org_metadata(
org_id, name, can_setup_saml, metadata, max_users,
can_join_on_email_domain_match, members_must_have_email_domain_match, domain, require_2fa_by, extra_domains
can_join_on_email_domain_match, members_must_have_email_domain_match, domain, require_2fa_by, extra_domains, sso_trust_level
)

def subscribe_org_to_role_mapping(self, org_id: str, custom_role_mapping_name: str):
Expand Down Expand Up @@ -530,6 +532,9 @@ def verify_sms_challenge(
def fetch_employee_by_id(self, employee_id: str):
return self.auth.fetch_employee_by_id(employee_id)

def migrate_org_to_isolated(self, org_id: str):
return self.auth.migrate_org_to_isolated(org_id)

class FastAPIAuthAsync():
def __init__(
self,
Expand Down Expand Up @@ -619,11 +624,11 @@ def validate_access_token_and_get_user(self, authorization_header: str) -> User:
async def fetch_user_metadata_by_user_id(self, user_id: str, include_orgs: bool = False):
return await self.auth.fetch_user_metadata_by_user_id(user_id, include_orgs)

async def fetch_user_metadata_by_email(self, email: str, include_orgs: bool = False):
return await self.auth.fetch_user_metadata_by_email(email, include_orgs)
async def fetch_user_metadata_by_email(self, email: str, include_orgs: bool = False, isolated_org_id: Optional[str] = None):
return await self.auth.fetch_user_metadata_by_email(email, include_orgs, isolated_org_id)

async def fetch_user_metadata_by_username(self, username: str, include_orgs: bool = False):
return await self.auth.fetch_user_metadata_by_username(username, include_orgs)
async def fetch_user_metadata_by_username(self, username: str, include_orgs: bool = False, isolated_org_id: Optional[str] = None):
return await self.auth.fetch_user_metadata_by_username(username, include_orgs, isolated_org_id)

async def fetch_user_signup_query_params_by_user_id(self, user_id: str):
return await self.auth.fetch_user_signup_query_params_by_user_id(user_id)
Expand Down Expand Up @@ -654,9 +659,9 @@ async def fetch_pending_invites(self, page_number: int = 0, page_size: int = 10,

async def fetch_users_by_query(
self, page_size: int = 10, page_number: int = 0, order_by: UserQueryOrderBy = UserQueryOrderBy.CREATED_AT_ASC,
email_or_username: Optional[str] = None, include_orgs: bool = False, legacy_user_id: Optional[str] = None
email_or_username: Optional[str] = None, include_orgs: bool = False, legacy_user_id: Optional[str] = None, isolated_org_id: Optional[str] = None
):
return await self.auth.fetch_users_by_query(page_size, page_number, order_by, email_or_username, include_orgs, legacy_user_id)
return await self.auth.fetch_users_by_query(page_size, page_number, order_by, email_or_username, include_orgs, legacy_user_id, isolated_org_id)

async def fetch_users_in_org(
self, org_id: str, page_size: int = 10, page_number: int = 0, include_orgs: bool = False, role: Optional[str] = None
Expand Down Expand Up @@ -778,10 +783,11 @@ async def update_org_metadata(
domain: Optional[str] = None,
require_2fa_by: Optional[str] = None,
extra_domains: Optional[List[str]] = None,
sso_trust_level: Optional[SsoTrustLevel] = None
):
return await self.auth.update_org_metadata(
org_id, name, can_setup_saml, metadata, max_users,
can_join_on_email_domain_match, members_must_have_email_domain_match, domain, require_2fa_by, extra_domains
can_join_on_email_domain_match, members_must_have_email_domain_match, domain, require_2fa_by, extra_domains, sso_trust_level
)

async def subscribe_org_to_role_mapping(self, org_id: str, custom_role_mapping_name: str):
Expand Down Expand Up @@ -992,6 +998,9 @@ async def fetch_employee_by_id(self, employee_id: str):
return await self.auth.fetch_employee_by_id(
employee_id
)

async def migrate_org_to_isolated(self, org_id: str):
return await self.auth.migrate_org_to_isolated(org_id)


def init_auth(
Expand Down
Loading