Skip to main content
Glama
admin.py1.35 kB
from fastapi import APIRouter, Depends from sqlalchemy import func from sqlalchemy.orm import Session from .database import get_db from .models import User, Region, AlertHistory, FloodPrediction from .schemas import RegionSummary, DashboardStats router = APIRouter() @router.get("/regions", response_model=list[RegionSummary]) def list_regions(db: Session = Depends(get_db)): regions = db.query(Region).limit(200).all() items: list[RegionSummary] = [] for r in regions: latest = db.query(FloodPrediction).filter(FloodPrediction.region_id == r.id).order_by(FloodPrediction.created_at.desc()).first() items.append(RegionSummary( id=r.id, name=r.name, state=r.state, latest_risk_level=latest.risk_level if latest else None, latest_risk_score=latest.risk_score if latest else None, )) return items @router.get("/stats", response_model=DashboardStats) def basic_stats(db: Session = Depends(get_db)): total_users = db.query(func.count(User.id)).scalar() or 0 total_regions = db.query(func.count(Region.id)).scalar() or 0 alerts_sent_24h = db.query(func.count(AlertHistory.id)).scalar() or 0 return DashboardStats( total_users=total_users, total_regions=total_regions, alerts_sent_24h=alerts_sent_24h, )

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sudhans18/AegisFlood-Flood-Prediction-Community-Alert-System'

If you have feedback or need assistance with the MCP directory API, please join our Discord server