From 2db4de6d8f66d80bce4389729a7038243d22dc69 Mon Sep 17 00:00:00 2001 From: pyr0ball Date: Sat, 4 Apr 2026 22:40:30 -0700 Subject: [PATCH] feat: add household Pydantic schemas --- app/models/schemas/household.py | 44 +++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 app/models/schemas/household.py diff --git a/app/models/schemas/household.py b/app/models/schemas/household.py new file mode 100644 index 0000000..11c0675 --- /dev/null +++ b/app/models/schemas/household.py @@ -0,0 +1,44 @@ +"""Pydantic schemas for household management endpoints.""" +from __future__ import annotations + +from typing import Optional +from pydantic import BaseModel + + +class HouseholdCreateResponse(BaseModel): + household_id: str + message: str + + +class HouseholdMember(BaseModel): + user_id: str + joined_at: str + is_owner: bool + + +class HouseholdStatusResponse(BaseModel): + in_household: bool + household_id: Optional[str] = None + is_owner: bool = False + members: list[HouseholdMember] = [] + max_seats: int = 4 + + +class HouseholdInviteResponse(BaseModel): + invite_url: str + token: str + expires_at: str + + +class HouseholdAcceptRequest(BaseModel): + household_id: str + token: str + + +class HouseholdAcceptResponse(BaseModel): + message: str + household_id: str + + +class HouseholdRemoveMemberRequest(BaseModel): + user_id: str