from fastapi import APIRouter, Depends, status from pydantic import BaseModel from sqlalchemy.orm import Session from app.db.database import get_db router = APIRouter() class HealthCheck(BaseModel): status: str api_version: str db_status: str @router.get( "/", response_model=HealthCheck, status_code=status.HTTP_200_OK, description="Health check for the API" ) def health_check(db: Session = Depends(get_db)): """ Perform a health check for the API """ db_status = "healthy" # Simple DB connection check try: # Execute a simple query to check DB connection db.execute("SELECT 1") except Exception: db_status = "unhealthy" return { "status": "healthy", "api_version": "1.0.0", "db_status": db_status }