mirror of
https://github.com/BigBodyCobain/Shadowbroker.git
synced 2026-05-08 18:34:58 +02:00
33 lines
873 B
Python
33 lines
873 B
Python
from pydantic import BaseModel
|
|
from typing import Optional, Dict, List, Any
|
|
|
|
|
|
class HealthResponse(BaseModel):
|
|
status: str
|
|
version: str = ""
|
|
last_updated: Optional[str] = None
|
|
sources: Dict[str, int]
|
|
freshness: Dict[str, str]
|
|
uptime_seconds: int
|
|
# SLO status block — per-source red/yellow/green derived from the
|
|
# SLO registry. Keys are source names, values are status dicts
|
|
# ({status, age_s, row_count, slo, stale, empty, description}).
|
|
slo: Optional[Dict[str, Any]] = None
|
|
slo_summary: Optional[Dict[str, int]] = None
|
|
|
|
|
|
class RefreshResponse(BaseModel):
|
|
status: str
|
|
|
|
|
|
class AisFeedResponse(BaseModel):
|
|
status: str
|
|
ingested: int = 0
|
|
|
|
|
|
class RouteResponse(BaseModel):
|
|
orig_loc: Optional[list] = None
|
|
dest_loc: Optional[list] = None
|
|
origin_name: Optional[str] = None
|
|
dest_name: Optional[str] = None
|