{"ok":true,"schema_version":"2.4.0","location_name":"Syracuse, NY","location":[43.0481,-76.1474],"generated_at":"2026-08-24T18:49:29.031420Z","health":{"status":"healthy","system_initialized":true,"version":"2.0.0","modules_online":14,"modules_total":14,"integrations":{"nws":true,"grok":true,"doc_agi":true,"nasa":true,"firms":true,"noaa_climate":true,"weather_underground":true,"postgres":true},"integrations_detail":{"nws":{"online":true,"role":"primary_obs_forecast_alerts"},"grok":{"online":true,"role":"agi_narrative_doc_chat"},"doc_agi":{"online":true,"role":"conversational_meteorology"},"nasa":{"online":true,"configured":true,"status":"online","note":null},"firms":{"online":true,"role":"wildfire_hotspots"},"noaa_climate":{"online":true,"role":"climate_normals_history"},"weather_underground":{"online":true,"role":"optional_pws","note":"Secondary; NWS is authoritative for public snapshot/status."},"postgres":{"online":true,"configured":true,"status":"online","role":"doc_persistence","engine":"postgres","database":"railway","server_version":"PostgreSQL 18.6 (Debian 18.6-1.pgdg13+2) on x86_64-pc-linux-gnu","schema_ready":true,"operator_clients":{"windows":"SQLGate for PostgreSQL","macos":"TablePlus / pgAdmin / DBeaver / psql"}}}},"current":{"temperature_c":22,"temperature_f":71.6,"temperature":22,"dewpoint_c":12,"dewpoint_f":53.6,"humidity":53.1,"pressure":1012.2,"pressure_hpa":1012.2,"pressure_inhg":29.89,"wind_speed":5.66,"wind_speed_mph":12.7,"wind_direction":230,"wind_direction_compass":"SW","wind_gust_mph":null,"visibility_m":16093.44,"visibility_mi":10.0,"conditions":"Cloudy","conditions_raw":"Cloudy","sky_label":"Cloudy","sky_source":"nws_textDescription","cloud_layers_summary":["FEW@914m","BKN@1280m","OVC@2743m"],"raw_metar":null,"station_id":"KSYR","observed_at":"2026-08-24T18:30:00+00:00","observation_age_minutes":19,"observation_age_label":"19 min ago","observation_freshness":"fresh","feels_like_f":71.0,"source":"NWS","location":[43.0481,-76.1474],"quality":{"freshness":"fresh","age_minutes":19,"sky_source":"nws_textDescription","note":"Sky label uses cloudLayers/METAR when available; NWS textDescription retained as conditions_raw."},"cache_ttl_seconds":45.0,"observation_source":"NWS"},"observation_quality":{"freshness":"fresh","age_minutes":19,"sky_source":"nws_textDescription","note":"Sky label uses cloudLayers/METAR when available; NWS textDescription retained as conditions_raw."},"brief":{"headline":"Scattered Showers And Thunderstorms","summary":"Now: 71.6°F (feels like 71.0°F), Cloudy. Observation age: 19 min ago. Humidity ~53%. Wind ~12.7 mph. Next period (This Afternoon): 71°F, Scattered Showers And Thunderstorms. Tonight: 59°F, Scattered Showers And Thunderstorms then Chance Showers And Thunderstorms. No active NWS watches/warnings at this point.","current_temp_f":71.6,"feels_like_f":71.0,"humidity":53.1,"wind_mph":12.7,"conditions":"Cloudy","today_high_f":71,"today_high_period":"This Afternoon","tonight_low_f":59,"tonight_low_period":"Tonight","seven_day_high_max_f":86,"seven_day_low_min_f":57,"seven_day_high_range":[71,86],"seven_day_low_range":[57,66],"active_alerts":[],"nearby_zone_alert_titles":[],"station_id":"KSYR","observed_at":"2026-08-24T18:30:00+00:00","observation_age_minutes":19,"observation_age_label":"19 min ago"},"periods":[{"name":"This Afternoon","startTime":"2026-08-24T14:00:00-04:00","endTime":"2026-08-24T18:00:00-04:00","isDaytime":true,"temperature":71,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"SW","shortForecast":"Scattered Showers And Thunderstorms","detailedForecast":"Scattered showers and thunderstorms. Mostly cloudy, with a high near 71. Southwest wind around 9 mph. Chance of precipitation is 50%. New rainfall amounts less than a tenth of an inch possible.","probabilityOfPrecipitation":51,"relativeHumidity":null},{"name":"Tonight","startTime":"2026-08-24T18:00:00-04:00","endTime":"2026-08-25T06:00:00-04:00","isDaytime":false,"temperature":59,"temperatureUnit":"F","windSpeed":"6 to 9 mph","windDirection":"SW","shortForecast":"Scattered Showers And Thunderstorms then Chance Showers And Thunderstorms","detailedForecast":"Scattered showers and thunderstorms before 8pm, then a chance of showers and thunderstorms. Mostly cloudy, with a low around 59. Southwest wind 6 to 9 mph. Chance of precipitation is 60%. New rainfall amounts between a tenth and quarter of an inch possible.","probabilityOfPrecipitation":55,"relativeHumidity":null},{"name":"Tuesday","startTime":"2026-08-25T06:00:00-04:00","endTime":"2026-08-25T18:00:00-04:00","isDaytime":true,"temperature":74,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"W","shortForecast":"Chance Showers And Thunderstorms","detailedForecast":"A chance of rain showers before 11am, then a chance of showers and thunderstorms between 11am and 3pm, then isolated showers and thunderstorms. Mostly cloudy, with a high near 74. West wind around 9 mph. Chance of precipitation is 70%. New rainfall amounts between a tenth and quarter of an inch possible.","probabilityOfPrecipitation":66,"relativeHumidity":null},{"name":"Tuesday Night","startTime":"2026-08-25T18:00:00-04:00","endTime":"2026-08-26T06:00:00-04:00","isDaytime":false,"temperature":57,"temperatureUnit":"F","windSpeed":"2 to 8 mph","windDirection":"W","shortForecast":"Isolated Rain Showers then Mostly Cloudy","detailedForecast":"Isolated rain showers before 7pm. Mostly cloudy, with a low around 57. West wind 2 to 8 mph. Chance of precipitation is 20%. New rainfall amounts less than a tenth of an inch possible.","probabilityOfPrecipitation":15,"relativeHumidity":null},{"name":"Wednesday","startTime":"2026-08-26T06:00:00-04:00","endTime":"2026-08-26T18:00:00-04:00","isDaytime":true,"temperature":82,"temperatureUnit":"F","windSpeed":"3 mph","windDirection":"SW","shortForecast":"Mostly Sunny","detailedForecast":"Mostly sunny, with a high near 82. Southwest wind around 3 mph.","probabilityOfPrecipitation":0,"relativeHumidity":null},{"name":"Wednesday Night","startTime":"2026-08-26T18:00:00-04:00","endTime":"2026-08-27T06:00:00-04:00","isDaytime":false,"temperature":66,"temperatureUnit":"F","windSpeed":"3 to 9 mph","windDirection":"S","shortForecast":"Mostly Cloudy","detailedForecast":"Mostly cloudy, with a low around 66.","probabilityOfPrecipitation":3,"relativeHumidity":null},{"name":"Thursday","startTime":"2026-08-27T06:00:00-04:00","endTime":"2026-08-27T18:00:00-04:00","isDaytime":true,"temperature":86,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"S","shortForecast":"Slight Chance Showers And Thunderstorms","detailedForecast":"A slight chance of rain showers between 8am and 11am, then a slight chance of showers and thunderstorms between 11am and 2pm, then showers and thunderstorms likely. Mostly sunny, with a high near 86. Chance of precipitation is 70%.","probabilityOfPrecipitation":73,"relativeHumidity":null},{"name":"Thursday Night","startTime":"2026-08-27T18:00:00-04:00","endTime":"2026-08-28T06:00:00-04:00","isDaytime":false,"temperature":64,"temperatureUnit":"F","windSpeed":"2 to 6 mph","windDirection":"SW","shortForecast":"Showers And Thunderstorms Likely","detailedForecast":"Showers and thunderstorms likely. Mostly cloudy, with a low around 64. Chance of precipitation is 70%.","probabilityOfPrecipitation":73,"relativeHumidity":null},{"name":"Friday","startTime":"2026-08-28T06:00:00-04:00","endTime":"2026-08-28T18:00:00-04:00","isDaytime":true,"temperature":80,"temperatureUnit":"F","windSpeed":"2 to 8 mph","windDirection":"W","shortForecast":"Chance Rain Showers then Slight Chance Showers And Thunderstorms","detailedForecast":"A chance of rain showers before 2pm, then a slight chance of showers and thunderstorms. Mostly sunny, with a high near 80. Chance of precipitation is 30%.","probabilityOfPrecipitation":29,"relativeHumidity":null},{"name":"Friday Night","startTime":"2026-08-28T18:00:00-04:00","endTime":"2026-08-29T06:00:00-04:00","isDaytime":false,"temperature":57,"temperatureUnit":"F","windSpeed":"0 to 7 mph","windDirection":"W","shortForecast":"Slight Chance Showers And Thunderstorms then Partly Cloudy","detailedForecast":"A slight chance of showers and thunderstorms before 8pm. Partly cloudy, with a low around 57.","probabilityOfPrecipitation":22,"relativeHumidity":null},{"name":"Saturday","startTime":"2026-08-29T06:00:00-04:00","endTime":"2026-08-29T18:00:00-04:00","isDaytime":true,"temperature":78,"temperatureUnit":"F","windSpeed":"0 to 5 mph","windDirection":"W","shortForecast":"Mostly Sunny","detailedForecast":"Mostly sunny, with a high near 78.","probabilityOfPrecipitation":3,"relativeHumidity":null},{"name":"Saturday Night","startTime":"2026-08-29T18:00:00-04:00","endTime":"2026-08-30T06:00:00-04:00","isDaytime":false,"temperature":57,"temperatureUnit":"F","windSpeed":"3 mph","windDirection":"NE","shortForecast":"Partly Cloudy","detailedForecast":"Partly cloudy, with a low around 57.","probabilityOfPrecipitation":3,"relativeHumidity":null},{"name":"Sunday","startTime":"2026-08-30T06:00:00-04:00","endTime":"2026-08-30T18:00:00-04:00","isDaytime":true,"temperature":82,"temperatureUnit":"F","windSpeed":"1 to 5 mph","windDirection":"SW","shortForecast":"Mostly Sunny","detailedForecast":"Mostly sunny, with a high near 82.","probabilityOfPrecipitation":14,"relativeHumidity":null},{"name":"Sunday Night","startTime":"2026-08-30T18:00:00-04:00","endTime":"2026-08-31T06:00:00-04:00","isDaytime":false,"temperature":64,"temperatureUnit":"F","windSpeed":"3 mph","windDirection":"SW","shortForecast":"Chance Rain Showers","detailedForecast":"A chance of rain showers after 8pm. Mostly cloudy, with a low around 64.","probabilityOfPrecipitation":28,"relativeHumidity":null}],"hourly":[{"name":"","startTime":"2026-08-24T14:00:00-04:00","endTime":"2026-08-24T15:00:00-04:00","isDaytime":true,"temperature":71,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"SW","shortForecast":"Scattered Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":49,"relativeHumidity":61},{"name":"","startTime":"2026-08-24T15:00:00-04:00","endTime":"2026-08-24T16:00:00-04:00","isDaytime":true,"temperature":71,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"SW","shortForecast":"Scattered Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":51,"relativeHumidity":64},{"name":"","startTime":"2026-08-24T16:00:00-04:00","endTime":"2026-08-24T17:00:00-04:00","isDaytime":true,"temperature":70,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"SW","shortForecast":"Scattered Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":50,"relativeHumidity":68},{"name":"","startTime":"2026-08-24T17:00:00-04:00","endTime":"2026-08-24T18:00:00-04:00","isDaytime":true,"temperature":70,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"SW","shortForecast":"Scattered Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":49,"relativeHumidity":68},{"name":"","startTime":"2026-08-24T18:00:00-04:00","endTime":"2026-08-24T19:00:00-04:00","isDaytime":false,"temperature":69,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"SW","shortForecast":"Scattered Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":48,"relativeHumidity":68},{"name":"","startTime":"2026-08-24T19:00:00-04:00","endTime":"2026-08-24T20:00:00-04:00","isDaytime":false,"temperature":68,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"SW","shortForecast":"Scattered Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":43,"relativeHumidity":70},{"name":"","startTime":"2026-08-24T20:00:00-04:00","endTime":"2026-08-24T21:00:00-04:00","isDaytime":false,"temperature":65,"temperatureUnit":"F","windSpeed":"8 mph","windDirection":"SW","shortForecast":"Scattered Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":39,"relativeHumidity":78},{"name":"","startTime":"2026-08-24T21:00:00-04:00","endTime":"2026-08-24T22:00:00-04:00","isDaytime":false,"temperature":64,"temperatureUnit":"F","windSpeed":"8 mph","windDirection":"SW","shortForecast":"Scattered Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":40,"relativeHumidity":87},{"name":"","startTime":"2026-08-24T22:00:00-04:00","endTime":"2026-08-24T23:00:00-04:00","isDaytime":false,"temperature":62,"temperatureUnit":"F","windSpeed":"7 mph","windDirection":"SW","shortForecast":"Scattered Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":39,"relativeHumidity":93},{"name":"","startTime":"2026-08-24T23:00:00-04:00","endTime":"2026-08-25T00:00:00-04:00","isDaytime":false,"temperature":61,"temperatureUnit":"F","windSpeed":"7 mph","windDirection":"SW","shortForecast":"Scattered Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":43,"relativeHumidity":93},{"name":"","startTime":"2026-08-25T00:00:00-04:00","endTime":"2026-08-25T01:00:00-04:00","isDaytime":false,"temperature":60,"temperatureUnit":"F","windSpeed":"7 mph","windDirection":"SW","shortForecast":"Scattered Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":47,"relativeHumidity":100},{"name":"","startTime":"2026-08-25T01:00:00-04:00","endTime":"2026-08-25T02:00:00-04:00","isDaytime":false,"temperature":60,"temperatureUnit":"F","windSpeed":"6 mph","windDirection":"SW","shortForecast":"Scattered Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":51,"relativeHumidity":100}],"alerts":[],"alert_count":0,"nearby_zone_alerts":[],"nearby_alert_count":0,"alert_zones":{"zone_ids":["NYZ018","NYC067","NYZ201"],"forecast_office":"BGM"},"severe_context":{"method":"doc_independent","not_nws":true,"not_radiosonde":true,"not_model_grid":true,"disclaimer":"DOC independent analysis — not NWS guidance. Parameters are DOC-model estimates with hard physical caps. Not a radiosonde or official forecast. NWS is provided separately for comparison/scorekeeping only.","note":"DOC independent model with hard caps. NWS is comparison-only (see performance_vs_nws) to track if DOC outperforms official guidance.","surface_cape_jkg":825.4,"wind_shear_0_6km_ms":10.2,"supercell_composite":0.35,"significant_tornado":0.09,"tornado_probability":0.005,"severe_thunderstorm_probability":0.166,"hail_probability":0.11,"severe_risk_category":"marginal","doc_confidence":0.69,"doc_forecast":{"method":"doc_persistence_climatology_blend","next_24h_high_f":76.5,"next_24h_low_f":61.0,"precip_chance_next_24h":0.4},"performance_vs_nws":{"purpose":"Track whether DOC independent analysis outperforms NWS baseline","doc_not_derived_from_nws":true,"temperature_f":{"doc":69.0,"nws":71.6,"doc_minus_nws":-2.6,"abs_error":2.6,"doc_closer_to_nws_if_abs_lt_2":false},"today_high_f":{"doc":76.5,"nws":71,"doc_minus_nws":5.5,"abs_error":5.5},"tonight_low_f":{"doc":61.0,"nws":59,"doc_minus_nws":2.0,"abs_error":2.0},"current_temp_verdict":"doc_near_nws","note":"Lower abs_error vs NWS means DOC is closer to the official observation/forecast. This does not mean DOC *is* NWS — DOC remains independent."},"nws_comparison":{"source":"NWS","role":"comparison_baseline_only","temperature_f":71.6,"conditions":"Cloudy","station_id":"KSYR","observation_age_label":"19 min ago","observed_at":"2026-08-24T18:30:00+00:00","humidity":53.1,"wind_speed_mph":12.7,"today_high_f":71,"tonight_low_f":59,"period_count":14}},"doc_independent":{"doc":{"agent":"doc","mode":"independent","not_nws":true,"source_surface":"openweathermap","surface":{"temperature_f":69.0,"temperature_c":20.5,"dewpoint_c":14.6,"humidity":69,"wind_speed_mph":10.5,"conditions":"overcast clouds","station_id":"OWM:5140405","observed_at":"2026-08-24T18:47:22Z"},"parameters":{"surface_cape":825.4,"surface_cin":50.0,"wind_shear_0_6km":10.2,"storm_relative_helicity_0_3km":75.7,"supercell_composite":0.35,"significant_tornado":0.09,"energy_helicity_index":0.39},"probabilities":{"tornado":0.005,"severe_thunderstorm":0.166,"hail":0.11},"forecast":{"method":"doc_persistence_climatology_blend","next_24h_high_f":76.5,"next_24h_low_f":61.0,"precip_chance_next_24h":0.4},"severe_risk_category":"marginal","confidence":0.69,"bounds_enforced":{"surface_cape_max":2200.0,"surface_cape_quiet_max":900.0,"shear_0_6km_max":28.0,"scp_max":2.5,"stp_max":1.2,"tornado_prob_max":0.18,"severe_prob_max":0.4,"hail_prob_max":0.3,"temp_f_abs_min":-40.0,"temp_f_abs_max":120.0},"disclaimer":"DOC independent analysis — not NWS guidance. Parameters are DOC-model estimates with hard physical caps. Not a radiosonde or official forecast. NWS is provided separately for comparison/scorekeeping only.","timestamp":"2026-08-24T18:49:21.217247Z"},"nws_comparison":{"source":"NWS","role":"comparison_baseline_only","temperature_f":71.6,"conditions":"Cloudy","station_id":"KSYR","observation_age_label":"19 min ago","observed_at":"2026-08-24T18:30:00+00:00","humidity":53.1,"wind_speed_mph":12.7,"today_high_f":71,"tonight_low_f":59,"period_count":14},"performance":{"purpose":"Track whether DOC independent analysis outperforms NWS baseline","doc_not_derived_from_nws":true,"temperature_f":{"doc":69.0,"nws":71.6,"doc_minus_nws":-2.6,"abs_error":2.6,"doc_closer_to_nws_if_abs_lt_2":false},"today_high_f":{"doc":76.5,"nws":71,"doc_minus_nws":5.5,"abs_error":5.5},"tonight_low_f":{"doc":61.0,"nws":59,"doc_minus_nws":2.0,"abs_error":2.0},"current_temp_verdict":"doc_near_nws","note":"Lower abs_error vs NWS means DOC is closer to the official observation/forecast. This does not mean DOC *is* NWS — DOC remains independent."},"architecture":{"doc_inputs":["openweathermap"],"nws_role":"comparison_baseline_only","doc_role":"independent_analysis"}},"agi_narrative":{"available":true,"provider":"xai-grok","model":"grok-4.3","text":"Now: Syracuse stands at 72°F under cloudy skies with 53% humidity and 13 mph winds, based on an NWS observation 19 minutes ago.\n\nNext 48 hours: Scattered showers and thunderstorms continue this afternoon and tonight, dropping to 59°F. Tuesday brings a chance of storms with a high near 74°F and a low of 57°F Tuesday night under mostly cloudy skies with isolated showers.\n\nRest of week: Wednesday turns mostly sunny and warmer at 82°F before a mostly cloudy night at 66°F. Weekly highs reach up to 86°F.\n\nSevere risk: NWS proxies show low severe thunderstorm odds at about 17%. No watches or warnings are in effect.","generated_at":"2026-08-24T18:49:28.423193Z"},"media":{"location":[43.0481,-76.1474],"location_name":"Syracuse, NY","generated_at":"2026-08-24T18:49:28.481975Z","satellite":{"provider":"NOAA NESDIS GOES-16","northeast_geocolor":"https://cdn.star.nesdis.noaa.gov/GOES16/ABI/SECTOR/ne/GEOCOLOR/latest.jpg","northeast_band13_clean_ir":"https://cdn.star.nesdis.noaa.gov/GOES16/ABI/SECTOR/ne/13/latest.jpg","conus_geocolor":"https://cdn.star.nesdis.noaa.gov/GOES16/ABI/CONUS/GEOCOLOR/latest.jpg","viewer_url":"https://www.star.nesdis.noaa.gov/goes/conus.php?sat=G16"},"satellite_loops":{"northeast_geocolor":{"name":"GOES-16 Northeast GeoColor","latest":"https://cdn.star.nesdis.noaa.gov/GOES16/ABI/SECTOR/ne/GEOCOLOR/latest.jpg","loop_hint":"Use NESDIS viewer for full animation; latest.jpg refreshes ~5 min.","viewer":"https://www.star.nesdis.noaa.gov/goes/sector.php?sat=G16&sector=ne"},"northeast_band13":{"name":"GOES-16 Northeast Clean IR","latest":"https://cdn.star.nesdis.noaa.gov/GOES16/ABI/SECTOR/ne/13/latest.jpg","viewer":"https://www.star.nesdis.noaa.gov/goes/sector.php?sat=G16&sector=ne"},"conus_geocolor":{"name":"GOES-16 CONUS GeoColor","latest":"https://cdn.star.nesdis.noaa.gov/GOES16/ABI/CONUS/GEOCOLOR/latest.jpg","viewer":"https://www.star.nesdis.noaa.gov/goes/conus.php?sat=G16"}},"radar":{"provider":"Iowa State Mesonet / NWS","nearest_site":{"site_id":"KTYX","lat":43.7558,"lon":-75.68,"distance_km":87.3,"source":"nws_point_radarStation"},"us_composite_base_reflectivity":"https://mesonet.agron.iastate.edu/data/gis/images/4326/USCOMP/n0q_0.png","site_base_reflectivity":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0Q_0.png","nws_radar_viewer":"https://radar.weather.gov/station/KTYX/standard","nws_viewer":"https://radar.weather.gov/?center=43.0481,-76.1474&zoom=7","iem_nexrad_tiles":"https://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/nexrad-n0q-900913/{z}/{x}/{y}.png","products":{"reflectivity":{"id":"reflectivity","name":"Base Reflectivity (N0Q)","code":"N0Q","latest":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0Q_0.png","loop_frames":["https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0Q_0.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0Q_1.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0Q_2.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0Q_3.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0Q_4.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0Q_5.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0Q_6.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0Q_7.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0Q_8.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0Q_9.png"],"composite_latest":"https://mesonet.agron.iastate.edu/data/gis/images/4326/USCOMP/n0q_0.png","composite_loop":["https://mesonet.agron.iastate.edu/data/gis/images/4326/USCOMP/n0q_0.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/USCOMP/n0q_1.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/USCOMP/n0q_2.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/USCOMP/n0q_3.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/USCOMP/n0q_4.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/USCOMP/n0q_5.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/USCOMP/n0q_6.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/USCOMP/n0q_7.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/USCOMP/n0q_8.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/USCOMP/n0q_9.png"],"tiles":"https://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/nexrad-n0q-900913/{z}/{x}/{y}.png"},"base_velocity":{"id":"base_velocity","name":"Base Velocity (N0U)","code":"N0U","latest":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0U_0.png","loop_frames":["https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0U_0.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0U_1.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0U_2.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0U_3.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0U_4.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0U_5.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0U_6.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0U_7.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0U_8.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0U_9.png"],"note":"Site ridge product; may 404 for some sites/tilts."},"storm_relative_velocity":{"id":"storm_relative_velocity","name":"Storm-Relative Velocity (N0S)","code":"N0S","latest":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0S_0.png","loop_frames":["https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0S_0.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0S_1.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0S_2.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0S_3.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0S_4.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0S_5.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0S_6.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0S_7.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0S_8.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0S_9.png"]},"correlation_coefficient":{"id":"correlation_coefficient","name":"Correlation Coefficient (N0C)","code":"N0C","latest":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0C_0.png","loop_frames":["https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0C_0.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0C_1.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0C_2.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0C_3.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0C_4.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0C_5.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0C_6.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0C_7.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0C_8.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0C_9.png"]},"supercell_composite_radar_index":{"id":"scri","name":"Supercell Composite Radar Index (SCRI)","type":"multi_moment_diagnostic","description":"Operational diagnostic combining multi-moment radar context (reflectivity structure, velocity couplets/SRV, CC) with DOC environmental parameters (CAPE, shear, SCP/STP). Not a Level-II NEXRAD moment — a situational awareness index.","component_products":["N0Q","N0U","N0S","N0C"],"component_urls":{"reflectivity":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0Q_0.png","base_velocity":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0U_0.png","storm_relative_velocity":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0S_0.png","correlation_coefficient":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/TYX/N0C_0.png"},"endpoint":"/api/public/scri?lat=43.0481&lon=-76.1474"}},"default_product":"reflectivity","loop_enabled":true,"loop_frame_count":10,"loop_interval_ms":400},"lightning":{"provider":"Public lightning resources","note":"No proprietary strike feed is licensed; open maps for situational awareness.","blitzortung_map":"https://map.blitzortung.org/#5/43.0481/-76.1474","nssl_lightning":"https://www.nssl.noaa.gov/research/lightning/","weather_gov_radar":"https://radar.weather.gov/?center=43.0481,-76.1474&zoom=7"},"futurecast":{"name":"Short-term storm motion / futurecast","provider":"RainViewer nowcast frames + DOC motion estimate","rainviewer_nowcast":true,"rainviewer_proxy":"/api/public/rainviewer","note":"RainViewer nowcast paths (when present in weather-maps.json) provide ~30–60 min precipitation advection. DOC may add environmental storm-motion vectors.","nws_radar_future":"https://radar.weather.gov/?center=43.0481,-76.1474&zoom=7"},"open_maps":{"center":[43.0481,-76.1474],"zoom":7,"marker":{"lat":43.0481,"lon":-76.1474,"label":"KTYX"},"default_basemap":"carto_dark","basemaps":{"openstreetmap":{"name":"OpenStreetMap","url":"https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png","attribution":"© OpenStreetMap contributors","max_zoom":19,"subdomains":["a","b","c"]},"carto_dark":{"name":"Carto Dark Matter","url":"https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png","attribution":"© OpenStreetMap © CARTO","max_zoom":20,"subdomains":["a","b","c","d"]},"carto_voyager":{"name":"Carto Voyager","url":"https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png","attribution":"© OpenStreetMap © CARTO","max_zoom":20,"subdomains":["a","b","c","d"]},"opentopomap":{"name":"OpenTopoMap","url":"https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png","attribution":"© OpenStreetMap © OpenTopoMap (CC-BY-SA)","max_zoom":17,"subdomains":["a","b","c"]}},"overlays":{"iem_nexrad_base_reflectivity":{"id":"iem_nexrad","name":"NEXRAD Base Reflectivity (IEM)","category":"radar","url":"https://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/nexrad-n0q-900913/{z}/{x}/{y}.png","attribution":"Iowa Environmental Mesonet / NWS NEXRAD","opacity":0.7,"max_zoom":10,"refresh_seconds":300},"iem_nexrad_loop_hint":{"id":"iem_nexrad_q2","name":"NEXRAD Composite Q2 (IEM)","category":"radar","url":"https://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/q2-n0q-900913/{z}/{x}/{y}.png","attribution":"Iowa Environmental Mesonet","opacity":0.65,"max_zoom":10,"refresh_seconds":300},"iem_goes_east_vis":{"id":"iem_goes_vis","name":"GOES-East Visible (IEM)","category":"satellite","url":"https://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/goes-east-vis-1km-900913/{z}/{x}/{y}.png","attribution":"Iowa Environmental Mesonet / NOAA GOES","opacity":0.85,"max_zoom":8,"refresh_seconds":600},"iem_goes_east_ir":{"id":"iem_goes_ir","name":"GOES-East IR (IEM)","category":"satellite_ir","url":"https://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/goes-east-ir-4km-900913/{z}/{x}/{y}.png","attribution":"Iowa Environmental Mesonet / NOAA GOES","opacity":0.8,"max_zoom":8,"refresh_seconds":600},"iem_goes_east_wv":{"id":"iem_goes_wv","name":"GOES-East Water Vapor (IEM)","category":"satellite","url":"https://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/goes-east-wv-4km-900913/{z}/{x}/{y}.png","attribution":"Iowa Environmental Mesonet / NOAA GOES","opacity":0.8,"max_zoom":8,"refresh_seconds":600},"owm_precipitation":{"id":"owm_precipitation","name":"OWM Precipitation","category":"radar","url":"https://tile.openweathermap.org/map/precipitation_new/{z}/{x}/{y}.png?appid=6b80056780a3de5c6d35f0d73a1db083","attribution":"© OpenWeatherMap","opacity":0.65,"max_zoom":12,"refresh_seconds":600,"provider":"openweathermap"},"owm_clouds":{"id":"owm_clouds","name":"OWM Clouds","category":"satellite","url":"https://tile.openweathermap.org/map/clouds_new/{z}/{x}/{y}.png?appid=6b80056780a3de5c6d35f0d73a1db083","attribution":"© OpenWeatherMap","opacity":0.65,"max_zoom":12,"refresh_seconds":600,"provider":"openweathermap"},"owm_temp":{"id":"owm_temp","name":"OWM Temperature","category":"temperature","url":"https://tile.openweathermap.org/map/temp_new/{z}/{x}/{y}.png?appid=6b80056780a3de5c6d35f0d73a1db083","attribution":"© OpenWeatherMap","opacity":0.55,"max_zoom":12,"refresh_seconds":600,"provider":"openweathermap"},"owm_wind":{"id":"owm_wind","name":"OWM Wind","category":"wind","url":"https://tile.openweathermap.org/map/wind_new/{z}/{x}/{y}.png?appid=6b80056780a3de5c6d35f0d73a1db083","attribution":"© OpenWeatherMap","opacity":0.65,"max_zoom":12,"refresh_seconds":600,"provider":"openweathermap"},"owm_pressure":{"id":"owm_pressure","name":"OWM Pressure","category":"analysis","url":"https://tile.openweathermap.org/map/pressure_new/{z}/{x}/{y}.png?appid=6b80056780a3de5c6d35f0d73a1db083","attribution":"© OpenWeatherMap","opacity":0.65,"max_zoom":12,"refresh_seconds":600,"provider":"openweathermap"}},"rainviewer":{"enabled":true,"maps_api":"https://api.rainviewer.com/public/weather-maps.json","maps_api_proxy":"/api/public/rainviewer","tile_template":"{host}{path}/256/{z}/{x}/{y}/2/1_1.png","tile_size":256,"color_scheme":2,"smooth":1,"snow":1,"opacity":0.7,"category":"radar","name":"RainViewer Global Radar","attribution":"RainViewer","notes":["Personal free tier: past radar frames, max zoom ~7 on some plans.","Frontend builds frame tile URLs from maps_api path list."]},"openweathermap":{"configured":true,"provider":"OpenWeatherMap","layers":{"owm_precipitation":{"layer":"precipitation_new","category":"radar","name":"OWM Precipitation"},"owm_clouds":{"layer":"clouds_new","category":"satellite","name":"OWM Clouds"},"owm_temp":{"layer":"temp_new","category":"temperature","name":"OWM Temperature"},"owm_wind":{"layer":"wind_new","category":"wind","name":"OWM Wind"},"owm_pressure":{"layer":"pressure_new","category":"analysis","name":"OWM Pressure"}},"note":"OWM free tiles may 401 for ~10 min–2 h after key creation while the key activates."},"default_overlays_by_view":{"radar":["rainviewer","owm_precipitation","iem_nexrad_base_reflectivity"],"satellite":["owm_clouds","iem_goes_east_vis"],"temperature":["owm_temp","iem_goes_east_ir"]},"nearest_radar":{"site_id":"KTYX","lat":43.7558,"lon":-75.68,"distance_km":87.3,"source":"nws_point_radarStation"},"external_viewers":{"nws_radar":"https://radar.weather.gov/?center=43.0481,-76.1474&zoom=7","nws_station":"https://radar.weather.gov/station/KTYX/standard","goes_conus":"https://www.star.nesdis.noaa.gov/goes/conus.php?sat=G16","openstreetmap":"https://www.openstreetmap.org/#map=7/43.0481/-76.1474","rainviewer_web":"https://www.rainviewer.com/map.html?loc=43.0481,-76.1474,7","openweathermap":"https://openweathermap.org/weathermap"}},"notes":["Image URLs are public NOAA/Mesonet products and may lag a few minutes.","open_maps: OpenStreetMap basemap + IEM NEXRAD/GOES tiles + RainViewer animated radar.","Radar multi-moment ridge loops: reflectivity, base velocity, SRV, correlation coefficient.","SCRI is a multi-moment diagnostic index (not a native Level-II moment).","Embed static <img> tags on no-JS pages; use open_maps tile layers for interactive Leaflet maps.","Site-specific ridge imagery may 404 for some codes; US composite is the reliable fallback.","OpenWeatherMap tiles enabled (precipitation/clouds/temp/wind/pressure) via OPENWEATHERMAP_API_KEY."]},"enrichments":{"firms":{"available":true,"fire_count":2,"nearest_fire_km":135.1,"source_dataset":"VIIRS_SNPP_NRT","radius_km":150,"note":"NASA FIRMS hotspots within 150 km (may be none locally)."},"climate_normals":{"available":true,"data":{"station":{"elevation":115.5,"mindate":"2010-01-01","maxdate":"2010-01-01","latitude":43.15,"name":"BALDWINSVILLE, NY US","datacoverage":1,"id":"GHCND:USC00300379","elevationUnit":"METERS","longitude":-76.3333,"distance_km":18.87326631591644},"location":[43.0481,-76.1474],"normals":[{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00300379","attributes":"P","value":1550.0},{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00300379","attributes":"P","value":941.0},{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00300379","attributes":"P","value":271.0},{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00300379","attributes":"P","value":69.0},{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-NORMAL","station":"GHCND:USC00300379","attributes":"R","value":43.01},{"date":"2010-01-01T00:00:00","datatype":"ANN-SNOW-AVGNDS-GE001TI","station":"GHCND:USC00300379","attributes":"S","value":29.5},{"date":"2010-01-01T00:00:00","datatype":"ANN-SNOW-AVGNDS-GE010TI","station":"GHCND:USC00300379","attributes":"S","value":23.4},{"date":"2010-01-01T00:00:00","datatype":"ANN-SNOW-AVGNDS-GE030TI","station":"GHCND:USC00300379","attributes":"S","value":9.8},{"date":"2010-01-01T00:00:00","datatype":"ANN-SNOW-AVGNDS-GE050TI","station":"GHCND:USC00300379","attributes":"S","value":4.2},{"date":"2010-01-01T00:00:00","datatype":"ANN-SNOW-AVGNDS-GE100TI","station":"GHCND:USC00300379","attributes":"S","value":0.8},{"date":"2010-01-01T00:00:00","datatype":"ANN-SNOW-NORMAL","station":"GHCND:USC00300379","attributes":"P","value":72.4},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00300379","attributes":"P","value":41.8},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00300379","attributes":"P","value":24.3},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00300379","attributes":"P","value":5.4},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00300379","attributes":"P","value":10},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-NORMAL","station":"GHCND:USC00300379","attributes":"R","value":906},{"date":"2010-01-01T00:00:00","datatype":"DJF-SNOW-AVGNDS-GE001TI","station":"GHCND:USC00300379","attributes":"S","value":22.4},{"date":"2010-01-01T00:00:00","datatype":"DJF-SNOW-AVGNDS-GE010TI","station":"GHCND:USC00300379","attributes":"S","value":17.8},{"date":"2010-01-01T00:00:00","datatype":"DJF-SNOW-AVGNDS-GE030TI","station":"GHCND:USC00300379","attributes":"S","value":7.8},{"date":"2010-01-01T00:00:00","datatype":"DJF-SNOW-AVGNDS-GE050TI","station":"GHCND:USC00300379","attributes":"S","value":3.5},{"date":"2010-01-01T00:00:00","datatype":"DJF-SNOW-AVGNDS-GE100TI","station":"GHCND:USC00300379","attributes":"S","value":0.7},{"date":"2010-01-01T00:00:00","datatype":"DJF-SNOW-NORMAL","station":"GHCND:USC00300379","attributes":"P","value":56.2},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00300379","attributes":"S","value":33.6},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00300379","attributes":"S","value":21.8},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00300379","attributes":"S","value":7.5},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00300379","attributes":"S","value":25},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-NORMAL","station":"GHCND:USC00300379","attributes":"S","value":11.93},{"date":"2010-01-01T00:00:00","datatype":"JJA-SNOW-AVGNDS-GE001TI","station":"GHCND:USC00300379","attributes":"S","value":0.0},{"date":"2010-01-01T00:00:00","datatype":"JJA-SNOW-AVGNDS-GE010TI","station":"GHCND:USC00300379","attributes":"S","value":0.0},{"date":"2010-01-01T00:00:00","datatype":"JJA-SNOW-AVGNDS-GE030TI","station":"GHCND:USC00300379","attributes":"S","value":0.0},{"date":"2010-01-01T00:00:00","datatype":"JJA-SNOW-AVGNDS-GE050TI","station":"GHCND:USC00300379","attributes":"S","value":0.0},{"date":"2010-01-01T00:00:00","datatype":"JJA-SNOW-AVGNDS-GE100TI","station":"GHCND:USC00300379","attributes":"S","value":0.0},{"date":"2010-01-01T00:00:00","datatype":"JJA-SNOW-NORMAL","station":"GHCND:USC00300379","attributes":"S","value":0.0},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00300379","attributes":"S","value":37.0},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00300379","attributes":"S","value":22.2},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00300379","attributes":"S","value":6.5},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00300379","attributes":"S","value":13},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-NORMAL","station":"GHCND:USC00300379","attributes":"S","value":9.94},{"date":"2010-01-01T00:00:00","datatype":"MAM-SNOW-AVGNDS-GE001TI","station":"GHCND:USC00300379","attributes":"S","value":5.7},{"date":"2010-01-01T00:00:00","datatype":"MAM-SNOW-AVGNDS-GE010TI","station":"GHCND:USC00300379","attributes":"S","value":4.4},{"date":"2010-01-01T00:00:00","datatype":"MAM-SNOW-AVGNDS-GE030TI","station":"GHCND:USC00300379","attributes":"S","value":1.6},{"date":"2010-01-01T00:00:00","datatype":"MAM-SNOW-AVGNDS-GE050TI","station":"GHCND:USC00300379","attributes":"S","value":0.6},{"date":"2010-01-01T00:00:00","datatype":"MAM-SNOW-AVGNDS-GE100TI","station":"GHCND:USC00300379","attributes":"S","value":0.1},{"date":"2010-01-01T00:00:00","datatype":"MAM-SNOW-NORMAL","station":"GHCND:USC00300379","attributes":"P","value":13.4},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00300379","attributes":"S","value":42.6},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00300379","attributes":"S","value":25.8},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00300379","attributes":"S","value":7.7},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00300379","attributes":"S","value":21},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-NORMAL","station":"GHCND:USC00300379","attributes":"S","value":12.08},{"date":"2010-01-01T00:00:00","datatype":"SON-SNOW-AVGNDS-GE001TI","station":"GHCND:USC00300379","attributes":"S","value":1.4},{"date":"2010-01-01T00:00:00","datatype":"SON-SNOW-AVGNDS-GE010TI","station":"GHCND:USC00300379","attributes":"S","value":1.2},{"date":"2010-01-01T00:00:00","datatype":"SON-SNOW-AVGNDS-GE030TI","station":"GHCND:USC00300379","attributes":"S","value":0.4},{"date":"2010-01-01T00:00:00","datatype":"SON-SNOW-AVGNDS-GE050TI","station":"GHCND:USC00300379","attributes":"S","value":0.1},{"date":"2010-01-01T00:00:00","datatype":"SON-SNOW-AVGNDS-GE100TI","station":"GHCND:USC00300379","attributes":"S","value":0.0},{"date":"2010-01-01T00:00:00","datatype":"SON-SNOW-NORMAL","station":"GHCND:USC00300379","attributes":"S","value":2.8}],"metadata":{"resultset":{"offset":1,"count":55,"limit":1000}},"distance_km":18.9,"dataset":"NORMAL_ANN","selection":"nearest_within_extent"},"station_id":"GHCND:USC00300379","station_name":"BALDWINSVILLE, NY US","distance_km":18.9,"note":"NOAA NCEI climate normals from nearest station within 200 km."}},"upper_air":{"available":true,"ingest_status":"links_only","note":"Nearest RAOB site is identified for context. Live radiosonde levels, CAPE/shear from RAOB, and RAP/HRRR grids are not yet ingested. Severe CAPE values elsewhere remain surface proxies, not soundings.","nearest_raob":{"site_id":"ALB","name":"Albany, NY","lat":42.6919,"lon":-73.8317,"distance_km":192.8},"products":{"spc_soundings":"https://www.spc.noaa.gov/exper/soundings/","spc_500mb":"https://www.spc.noaa.gov/obswx/maps/500mb.gif","spc_850mb":"https://www.spc.noaa.gov/obswx/maps/850mb.gif","spc_300mb":"https://www.spc.noaa.gov/obswx/maps/300mb.gif","spc_maps":"https://www.spc.noaa.gov/obswx/maps/","rap_analysis":"https://mag.ncep.noaa.gov/model-guidance-model-parameter.php?group=Model%20Guidance&model=RAP"},"planned":["RAOB BUFR/ASCII parse","RAP/HRRR grid extract","local CAPE/shear from model"]},"source":"National Weather Service","architecture_note":"DOC runs independently (doc_independent). NWS is the comparison baseline for scorekeeping (performance_vs_nws) — DOC does not copy NWS as its model.","api_links":{"docs":"/api/public/docs","health":"/api/health","media":"/api/public/media?lat=43.0481&lon=-76.1474","research":"/api/public/research?q=briefing&lat=43.0481&lon=-76.1474","chat":"/api/public/chat","threat_shield":"/api/public/threat-shield?lat=43.0481&lon=-76.1474","weekly_regression":"/api/public/weekly-regression?lat=43.0481&lon=-76.1474","weekly_regression_suite":"/api/public/weekly-regression?multi=true","upper_air":"/api/public/upper-air?lat=43.0481&lon=-76.1474","current":"/api/current?lat=43.0481&lon=-76.1474","everyday":"/api/forecast/everyday?lat=43.0481&lon=-76.1474&include_agi=true","alerts":"/api/alerts?lat=43.0481&lon=-76.1474","html_status":"/status?lat=43.0481&lon=-76.1474&location_name=Syracuse, NY"}}