docsendpointsaccuracy-summary
Accuracy Summary
GET
/api/v1/accuracy/summaryAggregate accuracy stats: MAE, bias, std dev, RMSE, and sample count. Filter by station_id or city. Supports rolling window (days) or explicit date range (date_from/date_to). CSV export available. For metric=low, the database must have non-null forecast_low_f in weather_forecasts and running/final low in weather_daily_highs—otherwise responses are empty.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
station_id | string | optional | ICAO station identifier (e.g., KLAX) |
city | string | optional | Filter by city name (e.g., Chicago maps to KMDW) |
days | integer | optional | Rolling window in days (max 365) Default: 90 |
date_from | YYYY-MM-DD | optional | Start of data window (overrides days when used with date_to) |
date_to | YYYY-MM-DD | optional | End of data window |
format | string | optional | json or csv Default: json |
metric | string | optional | high (default) or low — daily high vs daily low verification Default: high |
Response Fields
| Field | Type | Description |
|---|---|---|
verification_pairs | integer | Number of forecast-actual pairs |
unique_days | integer | Distinct calendar days with data |
mean_error | float | Mean error in °F (negative = under-predicted) |
std_dev | float | Standard deviation of forecast errors |
mae | float | Mean Absolute Error in °F |
rmse | float | Root Mean Square Error in °F |
abs_error_p50 | float | Median absolute error (50th percentile) °F |
abs_error_p90 | float | 90th percentile absolute error °F |
abs_error_p95 | float | 95th percentile absolute error °F |
cURL
# Daily high (default)curl -s -H "Authorization: Bearer $API_KEY" "https://api.deltadaemon.com/api/v1/accuracy/summary?station_id=KMDW&days=30"# Daily low (forecast_low vs observed low)curl -s -H "Authorization: Bearer $API_KEY" "https://api.deltadaemon.com/api/v1/accuracy/summary?station_id=KMDW&days=30&metric=low"
JSON
{"success": true,"data": {"verification_pairs": 872,"unique_days": 5,"mean_error": 1.43,"std_dev": 8.13,"mae": 5.77,"rmse": 8.25,"abs_error_p50": 3.6,"abs_error_p90": 13.2,"abs_error_p95": 18.09},"metadata": {"generated_at": "2026-02-22T07:53:22.547425467Z","days_analyzed": 30,"period_start": "2026-01-23","period_end": "2026-02-22","total_records": 872,"query_time_ms": 5,"accuracy_metric": "high","error_convention": "forecast_minus_actual","verification_coverage": {"verified_days": 82,"preliminary_days": 8,"verified_pct": 0.9111}}}