pymite6941's picture
Deploy full Fitness AI Agents backend: auth, DB, watch sync, GPS routes, AI analysis
6cc9547 verified
Raw
History Blame Contribute Delete
1.19 kB
from pydantic import BaseModel
from typing import Optional
from datetime import datetime
class WatchReading(BaseModel):
timestamp: datetime
heart_rate: Optional[float] = None
steps: Optional[int] = None
calories_burned: Optional[float] = None
active_calories: Optional[float] = None
distance_meters: Optional[float] = None
sleep_hours: Optional[float] = None
spo2: Optional[float] = None # blood oxygen %
hrv: Optional[float] = None # heart rate variability
class WorkoutSession(BaseModel):
timestamp: datetime
workout_type: str # running, cycling, weightlifting, etc.
duration_minutes: float
avg_heart_rate: Optional[float] = None
max_heart_rate: Optional[float] = None
ending_heart_rate: Optional[float] = None # BPM at end/cool-down
calories_burned: Optional[float] = None
distance_meters: Optional[float] = None
notes: Optional[str] = None
class WatchSyncPayload(BaseModel):
readings: list[WatchReading] = []
workouts: list[WorkoutSession] = []
device: Optional[str] = None # "apple_watch", "garmin", "fitbit", etc.
app_version: Optional[str] = None