zykrix
Re-added phidata as a normal folder (final fix)
c96b98a
Raw
History Blame Contribute Delete
1.12 kB
from typing import List, Optional, Dict
from httpx import Response
from phi.api.api import api, invalid_response
from phi.api.routes import ApiRoutes
from phi.api.schemas.user import UserSchema
from phi.api.schemas.team import TeamSchema
from phi.utils.log import logger
def get_teams_for_user(user: UserSchema) -> Optional[List[TeamSchema]]:
logger.debug("--**-- Reading teams for user")
with api.AuthenticatedClient() as api_client:
try:
r: Response = api_client.post(
ApiRoutes.TEAM_READ_ALL,
json={
"user": user.model_dump(include={"id_user", "email"}),
},
timeout=2.0,
)
if invalid_response(r):
return None
response_json: Optional[List[Dict]] = r.json()
if response_json is None:
return None
teams: List[TeamSchema] = [TeamSchema.model_validate(team) for team in response_json]
return teams
except Exception as e:
logger.debug(f"Could not read teams: {e}")
return None