38 lines
814 B
Python
38 lines
814 B
Python
from pydantic import BaseModel
|
|
|
|
from app.schemas.organizations import OrganizationSummary
|
|
|
|
|
|
class MemberCreateRequest(BaseModel):
|
|
authentik_sub: str
|
|
email: str | None = None
|
|
display_name: str | None = None
|
|
is_active: bool = True
|
|
|
|
|
|
class MemberUpdateRequest(BaseModel):
|
|
email: str | None = None
|
|
display_name: str | None = None
|
|
is_active: bool | None = None
|
|
|
|
|
|
class MemberSummary(BaseModel):
|
|
id: str
|
|
authentik_sub: str
|
|
authentik_user_id: int | None = None
|
|
email: str | None = None
|
|
display_name: str | None = None
|
|
is_active: bool
|
|
|
|
|
|
class MemberListResponse(BaseModel):
|
|
items: list[MemberSummary]
|
|
total: int
|
|
limit: int
|
|
offset: int
|
|
|
|
|
|
class MemberOrganizationsResponse(BaseModel):
|
|
member: MemberSummary
|
|
organizations: list[OrganizationSummary]
|