{"location":[43.1566,-77.6088],"location_name":"Selected location","timestamp":"2026-08-24T16:26:49.966684Z","source":"National Weather Service","mode":"everyday","current":{"temperature_c":19,"temperature_f":66.2,"temperature":19,"dewpoint_c":14,"dewpoint_f":57.2,"humidity":72.8,"pressure":1011.9,"pressure_hpa":1011.9,"pressure_inhg":29.88,"wind_speed":null,"wind_speed_mph":null,"wind_direction":null,"wind_direction_compass":null,"wind_gust_mph":25.3,"visibility_m":16093.44,"visibility_mi":10.0,"conditions":"Mostly Cloudy","conditions_raw":"Mostly Cloudy","sky_label":"Mostly Cloudy","sky_source":"nws_textDescription","cloud_layers_summary":["FEW@731m","FEW@853m","BKN@3352m"],"raw_metar":null,"station_id":"KROC","observed_at":"2026-08-24T16:05:00+00:00","observation_age_minutes":22,"observation_age_label":"22 min ago","observation_freshness":"acceptable","feels_like_f":66.2,"source":"NWS","location":[43.1566,-77.6088],"quality":{"freshness":"acceptable","age_minutes":22,"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"},"brief":{"headline":"Showers And Thunderstorms Likely","summary":"Now: 66.2°F, Mostly Cloudy. Observation age: 22 min ago. Humidity ~73%. Next period (Today): 69°F, Showers And Thunderstorms Likely. Tonight: 58°F, Showers And Thunderstorms Likely. Active alerts: Beach Hazards Statement.","current_temp_f":66.2,"feels_like_f":66.2,"humidity":72.8,"wind_mph":null,"conditions":"Mostly Cloudy","today_high_f":69,"today_high_period":"Today","tonight_low_f":58,"tonight_low_period":"Tonight","seven_day_high_max_f":83,"seven_day_low_min_f":57,"seven_day_high_range":[69,83],"seven_day_low_range":[57,63],"active_alerts":["Beach Hazards Statement"],"nearby_zone_alert_titles":[],"station_id":"KROC","observed_at":"2026-08-24T16:05:00+00:00","observation_age_minutes":22,"observation_age_label":"22 min ago"},"periods":[{"name":"Today","startTime":"2026-08-24T11:00:00-04:00","endTime":"2026-08-24T18:00:00-04:00","isDaytime":true,"temperature":69,"temperatureUnit":"F","windSpeed":"12 to 15 mph","windDirection":"SW","shortForecast":"Showers And Thunderstorms Likely","detailedForecast":"A chance of rain showers before 2pm, then showers and thunderstorms likely. Mostly cloudy, with a high near 69. Southwest wind 12 to 15 mph. Chance of precipitation is 60%. New rainfall amounts less than a tenth of an inch possible.","probabilityOfPrecipitation":61,"relativeHumidity":null},{"name":"Tonight","startTime":"2026-08-24T18:00:00-04:00","endTime":"2026-08-25T06:00:00-04:00","isDaytime":false,"temperature":58,"temperatureUnit":"F","windSpeed":"8 to 14 mph","windDirection":"W","shortForecast":"Showers And Thunderstorms Likely","detailedForecast":"Showers and thunderstorms likely. Mostly cloudy, with a low around 58. West wind 8 to 14 mph. Chance of precipitation is 60%. New rainfall amounts less than a tenth of an inch possible.","probabilityOfPrecipitation":61,"relativeHumidity":null},{"name":"Tuesday","startTime":"2026-08-25T06:00:00-04:00","endTime":"2026-08-25T18:00:00-04:00","isDaytime":true,"temperature":73,"temperatureUnit":"F","windSpeed":"12 mph","windDirection":"W","shortForecast":"Rain Showers Likely","detailedForecast":"Rain showers likely before 2pm. Partly sunny, with a high near 73. West wind around 12 mph. Chance of precipitation is 60%. New rainfall amounts less than a tenth of an inch possible.","probabilityOfPrecipitation":57,"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":"5 to 9 mph","windDirection":"W","shortForecast":"Mostly Clear","detailedForecast":"Mostly clear, with a low around 57. West wind 5 to 9 mph.","probabilityOfPrecipitation":10,"relativeHumidity":null},{"name":"Wednesday","startTime":"2026-08-26T06:00:00-04:00","endTime":"2026-08-26T18:00:00-04:00","isDaytime":true,"temperature":80,"temperatureUnit":"F","windSpeed":"5 mph","windDirection":"S","shortForecast":"Mostly Sunny","detailedForecast":"Mostly sunny, with a high near 80. South wind around 5 mph.","probabilityOfPrecipitation":1,"relativeHumidity":null},{"name":"Wednesday Night","startTime":"2026-08-26T18:00:00-04:00","endTime":"2026-08-27T06:00:00-04:00","isDaytime":false,"temperature":63,"temperatureUnit":"F","windSpeed":"5 to 8 mph","windDirection":"SE","shortForecast":"Partly Cloudy","detailedForecast":"Partly cloudy, with a low around 63. Southeast wind 5 to 8 mph.","probabilityOfPrecipitation":6,"relativeHumidity":null},{"name":"Thursday","startTime":"2026-08-27T06:00:00-04:00","endTime":"2026-08-27T18:00:00-04:00","isDaytime":true,"temperature":83,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"SW","shortForecast":"Chance Showers And Thunderstorms","detailedForecast":"A chance of showers and thunderstorms after 8am. Partly sunny, with a high near 83. Southwest wind around 9 mph. Chance of precipitation is 50%.","probabilityOfPrecipitation":53,"relativeHumidity":null},{"name":"Thursday Night","startTime":"2026-08-27T18:00:00-04:00","endTime":"2026-08-28T06:00:00-04:00","isDaytime":false,"temperature":62,"temperatureUnit":"F","windSpeed":"7 mph","windDirection":"SW","shortForecast":"Chance Showers And Thunderstorms","detailedForecast":"A chance of showers and thunderstorms before 2am. Partly cloudy, with a low around 62. Southwest wind around 7 mph. Chance of precipitation is 50%.","probabilityOfPrecipitation":53,"relativeHumidity":null},{"name":"Friday","startTime":"2026-08-28T06:00:00-04:00","endTime":"2026-08-28T18:00:00-04:00","isDaytime":true,"temperature":77,"temperatureUnit":"F","windSpeed":"5 to 9 mph","windDirection":"W","shortForecast":"Slight Chance Rain Showers then Slight Chance Showers And Thunderstorms","detailedForecast":"A slight chance of rain showers between 8am and 2pm, then a slight chance of showers and thunderstorms. Mostly sunny, with a high near 77.","probabilityOfPrecipitation":21,"relativeHumidity":null},{"name":"Friday Night","startTime":"2026-08-28T18:00:00-04:00","endTime":"2026-08-29T06:00:00-04:00","isDaytime":false,"temperature":58,"temperatureUnit":"F","windSpeed":"3 to 8 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 58.","probabilityOfPrecipitation":17,"relativeHumidity":null},{"name":"Saturday","startTime":"2026-08-29T06:00:00-04:00","endTime":"2026-08-29T18:00:00-04:00","isDaytime":true,"temperature":76,"temperatureUnit":"F","windSpeed":"6 mph","windDirection":"W","shortForecast":"Mostly Sunny","detailedForecast":"Mostly sunny, with a high near 76.","probabilityOfPrecipitation":2,"relativeHumidity":null},{"name":"Saturday Night","startTime":"2026-08-29T18:00:00-04:00","endTime":"2026-08-30T06:00:00-04:00","isDaytime":false,"temperature":59,"temperatureUnit":"F","windSpeed":"5 mph","windDirection":"SW","shortForecast":"Partly Cloudy","detailedForecast":"Partly cloudy, with a low around 59.","probabilityOfPrecipitation":7,"relativeHumidity":null},{"name":"Sunday","startTime":"2026-08-30T06:00:00-04:00","endTime":"2026-08-30T18:00:00-04:00","isDaytime":true,"temperature":80,"temperatureUnit":"F","windSpeed":"7 mph","windDirection":"SW","shortForecast":"Mostly Sunny then Slight Chance Showers And Thunderstorms","detailedForecast":"A slight chance of showers and thunderstorms after 2pm. Mostly sunny, with a high near 80.","probabilityOfPrecipitation":16,"relativeHumidity":null},{"name":"Sunday Night","startTime":"2026-08-30T18:00:00-04:00","endTime":"2026-08-31T06:00:00-04:00","isDaytime":false,"temperature":63,"temperatureUnit":"F","windSpeed":"7 mph","windDirection":"SW","shortForecast":"Chance Showers And Thunderstorms","detailedForecast":"A chance of showers and thunderstorms. Mostly cloudy, with a low around 63.","probabilityOfPrecipitation":36,"relativeHumidity":null}],"hourly":[{"name":"","startTime":"2026-08-24T12:00:00-04:00","endTime":"2026-08-24T13:00:00-04:00","isDaytime":true,"temperature":64,"temperatureUnit":"F","windSpeed":"14 mph","windDirection":"SW","shortForecast":"Slight Chance Rain Showers","detailedForecast":"","probabilityOfPrecipitation":24,"relativeHumidity":89},{"name":"","startTime":"2026-08-24T13:00:00-04:00","endTime":"2026-08-24T14:00:00-04:00","isDaytime":true,"temperature":65,"temperatureUnit":"F","windSpeed":"13 mph","windDirection":"SW","shortForecast":"Chance Rain Showers","detailedForecast":"","probabilityOfPrecipitation":32,"relativeHumidity":85},{"name":"","startTime":"2026-08-24T14:00:00-04:00","endTime":"2026-08-24T15:00:00-04:00","isDaytime":true,"temperature":66,"temperatureUnit":"F","windSpeed":"15 mph","windDirection":"SW","shortForecast":"Chance Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":39,"relativeHumidity":80},{"name":"","startTime":"2026-08-24T15:00:00-04:00","endTime":"2026-08-24T16:00:00-04:00","isDaytime":true,"temperature":68,"temperatureUnit":"F","windSpeed":"14 mph","windDirection":"SW","shortForecast":"Chance Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":46,"relativeHumidity":77},{"name":"","startTime":"2026-08-24T16:00:00-04:00","endTime":"2026-08-24T17:00:00-04:00","isDaytime":true,"temperature":68,"temperatureUnit":"F","windSpeed":"14 mph","windDirection":"SW","shortForecast":"Chance Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":53,"relativeHumidity":76},{"name":"","startTime":"2026-08-24T17:00:00-04:00","endTime":"2026-08-24T18:00:00-04:00","isDaytime":true,"temperature":68,"temperatureUnit":"F","windSpeed":"14 mph","windDirection":"W","shortForecast":"Showers And Thunderstorms Likely","detailedForecast":"","probabilityOfPrecipitation":61,"relativeHumidity":78},{"name":"","startTime":"2026-08-24T18:00:00-04:00","endTime":"2026-08-24T19:00:00-04:00","isDaytime":false,"temperature":67,"temperatureUnit":"F","windSpeed":"14 mph","windDirection":"W","shortForecast":"Showers And Thunderstorms Likely","detailedForecast":"","probabilityOfPrecipitation":61,"relativeHumidity":81},{"name":"","startTime":"2026-08-24T19:00:00-04:00","endTime":"2026-08-24T20:00:00-04:00","isDaytime":false,"temperature":66,"temperatureUnit":"F","windSpeed":"13 mph","windDirection":"W","shortForecast":"Showers And Thunderstorms Likely","detailedForecast":"","probabilityOfPrecipitation":61,"relativeHumidity":83},{"name":"","startTime":"2026-08-24T20:00:00-04:00","endTime":"2026-08-24T21:00:00-04:00","isDaytime":false,"temperature":64,"temperatureUnit":"F","windSpeed":"12 mph","windDirection":"W","shortForecast":"Showers And Thunderstorms Likely","detailedForecast":"","probabilityOfPrecipitation":60,"relativeHumidity":92},{"name":"","startTime":"2026-08-24T21:00:00-04:00","endTime":"2026-08-24T22:00:00-04:00","isDaytime":false,"temperature":62,"temperatureUnit":"F","windSpeed":"10 mph","windDirection":"W","shortForecast":"Chance Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":51,"relativeHumidity":94},{"name":"","startTime":"2026-08-24T22:00:00-04:00","endTime":"2026-08-24T23:00:00-04:00","isDaytime":false,"temperature":61,"temperatureUnit":"F","windSpeed":"10 mph","windDirection":"W","shortForecast":"Chance Showers And Thunderstorms","detailedForecast":"","probabilityOfPrecipitation":43,"relativeHumidity":100},{"name":"","startTime":"2026-08-24T23:00:00-04:00","endTime":"2026-08-25T00:00:00-04:00","isDaytime":false,"temperature":61,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"W","shortForecast":"Chance Rain Showers","detailedForecast":"","probabilityOfPrecipitation":35,"relativeHumidity":100},{"name":"","startTime":"2026-08-25T00:00:00-04:00","endTime":"2026-08-25T01:00:00-04:00","isDaytime":false,"temperature":60,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"W","shortForecast":"Chance Rain Showers","detailedForecast":"","probabilityOfPrecipitation":37,"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":"9 mph","windDirection":"W","shortForecast":"Chance Rain Showers","detailedForecast":"","probabilityOfPrecipitation":40,"relativeHumidity":100},{"name":"","startTime":"2026-08-25T02:00:00-04:00","endTime":"2026-08-25T03:00:00-04:00","isDaytime":false,"temperature":60,"temperatureUnit":"F","windSpeed":"8 mph","windDirection":"W","shortForecast":"Chance Rain Showers","detailedForecast":"","probabilityOfPrecipitation":42,"relativeHumidity":100},{"name":"","startTime":"2026-08-25T03:00:00-04:00","endTime":"2026-08-25T04:00:00-04:00","isDaytime":false,"temperature":60,"temperatureUnit":"F","windSpeed":"8 mph","windDirection":"W","shortForecast":"Chance Rain Showers","detailedForecast":"","probabilityOfPrecipitation":48,"relativeHumidity":99},{"name":"","startTime":"2026-08-25T04:00:00-04:00","endTime":"2026-08-25T05:00:00-04:00","isDaytime":false,"temperature":59,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"W","shortForecast":"Chance Rain Showers","detailedForecast":"","probabilityOfPrecipitation":54,"relativeHumidity":100},{"name":"","startTime":"2026-08-25T05:00:00-04:00","endTime":"2026-08-25T06:00:00-04:00","isDaytime":false,"temperature":59,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"W","shortForecast":"Rain Showers Likely","detailedForecast":"","probabilityOfPrecipitation":60,"relativeHumidity":100},{"name":"","startTime":"2026-08-25T06:00:00-04:00","endTime":"2026-08-25T07:00:00-04:00","isDaytime":true,"temperature":59,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"W","shortForecast":"Rain Showers Likely","detailedForecast":"","probabilityOfPrecipitation":57,"relativeHumidity":100},{"name":"","startTime":"2026-08-25T07:00:00-04:00","endTime":"2026-08-25T08:00:00-04:00","isDaytime":true,"temperature":59,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"W","shortForecast":"Chance Rain Showers","detailedForecast":"","probabilityOfPrecipitation":52,"relativeHumidity":100},{"name":"","startTime":"2026-08-25T08:00:00-04:00","endTime":"2026-08-25T09:00:00-04:00","isDaytime":true,"temperature":60,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"W","shortForecast":"Chance Rain Showers","detailedForecast":"","probabilityOfPrecipitation":49,"relativeHumidity":100},{"name":"","startTime":"2026-08-25T09:00:00-04:00","endTime":"2026-08-25T10:00:00-04:00","isDaytime":true,"temperature":61,"temperatureUnit":"F","windSpeed":"10 mph","windDirection":"W","shortForecast":"Chance Rain Showers","detailedForecast":"","probabilityOfPrecipitation":49,"relativeHumidity":100},{"name":"","startTime":"2026-08-25T10:00:00-04:00","endTime":"2026-08-25T11:00:00-04:00","isDaytime":true,"temperature":63,"temperatureUnit":"F","windSpeed":"10 mph","windDirection":"W","shortForecast":"Chance Rain Showers","detailedForecast":"","probabilityOfPrecipitation":49,"relativeHumidity":100},{"name":"","startTime":"2026-08-25T11:00:00-04:00","endTime":"2026-08-25T12:00:00-04:00","isDaytime":true,"temperature":65,"temperatureUnit":"F","windSpeed":"10 mph","windDirection":"W","shortForecast":"Chance Rain Showers","detailedForecast":"","probabilityOfPrecipitation":36,"relativeHumidity":96}],"alerts":[{"id":"urn:oid:2.49.0.1.840.0.01b6be4513eba342b4e5e9f622c5ee238d62ffd9.001.1","type":"general","severity":"watch","urgency":"expected","certainty":"likely","title":"Beach Hazards Statement issued August 24 at 12:05AM EDT until August 25 at 8:00PM EDT by NWS Buffalo NY","description":"* WHAT...Strong currents and dangerous swimming conditions.\n\n* WHERE...Beaches of Niagara, Orleans, Monroe, Wayne, Northern\nCayuga, Oswego, and Jefferson counties.\n\n* WHEN...Through Tuesday evening.\n\n* IMPACTS...Strong currents and dangerous swimming conditions.","instruction":"Stay out of the water to avoid dangerous swimming conditions.","area":"Niagara; Orleans; Monroe; Wayne; Northern Cayuga; Oswego; Jefferson","effective":"2026-08-24T00:05:00-04:00","expires":"2026-08-24T16:00:00-04:00","sent":"2026-08-24T00:05:00-04:00","event":"Beach Hazards Statement","sender":"NWS Buffalo NY","zones":["NYZ001","NYZ002","NYZ003","NYZ004","NYZ005","NYZ006","NYZ007"],"scope":"point"}],"alert_count":1,"nearby_zone_alerts":[],"nearby_alert_count":0,"alert_zones":{"zone_ids":["NYZ003","NYC055","NYZ201"],"forecast_office":"BUF"},"doc_independent":{"doc":{"agent":"doc","mode":"independent","not_nws":true,"source_surface":"openweathermap","surface":{"temperature_f":66.4,"temperature_c":19.1,"dewpoint_c":15.2,"humidity":78,"wind_speed_mph":16.1,"conditions":"broken clouds","station_id":"OWM:5134086","observed_at":"2026-08-24T16:18:58Z"},"parameters":{"surface_cape":811.3,"surface_cin":50.0,"wind_shear_0_6km":12.9,"storm_relative_helicity_0_3km":88.1,"supercell_composite":0.44,"significant_tornado":0.13,"energy_helicity_index":0.45},"probabilities":{"tornado":0.008,"severe_thunderstorm":0.178,"hail":0.108},"forecast":{"method":"doc_persistence_climatology_blend","next_24h_high_f":73.6,"next_24h_low_f":58.4,"precip_chance_next_24h":0.5},"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-24T16:26:50.022990Z"},"nws_comparison":{"source":"NWS","role":"comparison_baseline_only","temperature_f":66.2,"conditions":"Mostly Cloudy","station_id":"KROC","observation_age_label":"22 min ago","observed_at":"2026-08-24T16:05:00+00:00","humidity":72.8,"wind_speed_mph":null,"today_high_f":69,"tonight_low_f":58,"period_count":14},"performance":{"purpose":"Track whether DOC independent analysis outperforms NWS baseline","doc_not_derived_from_nws":true,"temperature_f":{"doc":66.4,"nws":66.2,"doc_minus_nws":0.2,"abs_error":0.2,"doc_closer_to_nws_if_abs_lt_2":true},"today_high_f":{"doc":73.6,"nws":69,"doc_minus_nws":4.6,"abs_error":4.6},"tonight_low_f":{"doc":58.4,"nws":58,"doc_minus_nws":0.4,"abs_error":0.4},"current_temp_verdict":"doc_tracks_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"}},"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":811.3,"wind_shear_0_6km_ms":12.9,"supercell_composite":0.44,"significant_tornado":0.13,"tornado_probability":0.008,"severe_thunderstorm_probability":0.178,"hail_probability":0.108,"severe_risk_category":"marginal","doc_confidence":0.69,"doc_forecast":{"method":"doc_persistence_climatology_blend","next_24h_high_f":73.6,"next_24h_low_f":58.4,"precip_chance_next_24h":0.5},"performance_vs_nws":{"purpose":"Track whether DOC independent analysis outperforms NWS baseline","doc_not_derived_from_nws":true,"temperature_f":{"doc":66.4,"nws":66.2,"doc_minus_nws":0.2,"abs_error":0.2,"doc_closer_to_nws_if_abs_lt_2":true},"today_high_f":{"doc":73.6,"nws":69,"doc_minus_nws":4.6,"abs_error":4.6},"tonight_low_f":{"doc":58.4,"nws":58,"doc_minus_nws":0.4,"abs_error":0.4},"current_temp_verdict":"doc_tracks_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":66.2,"conditions":"Mostly Cloudy","station_id":"KROC","observation_age_label":"22 min ago","observed_at":"2026-08-24T16:05:00+00:00","humidity":72.8,"wind_speed_mph":null,"today_high_f":69,"tonight_low_f":58,"period_count":14}},"media":{"location":[43.1566,-77.6088],"location_name":"Selected location","generated_at":"2026-08-24T16:26:50.043216Z","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":"KBUF","lat":42.9489,"lon":-78.7369,"distance_km":94.5,"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/BUF/N0Q_0.png","nws_radar_viewer":"https://radar.weather.gov/station/KBUF/standard","nws_viewer":"https://radar.weather.gov/?center=43.1566,-77.6088&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/BUF/N0Q_0.png","loop_frames":["https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0Q_0.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0Q_1.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0Q_2.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0Q_3.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0Q_4.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0Q_5.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0Q_6.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0Q_7.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0Q_8.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/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/BUF/N0U_0.png","loop_frames":["https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0U_0.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0U_1.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0U_2.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0U_3.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0U_4.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0U_5.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0U_6.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0U_7.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0U_8.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/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/BUF/N0S_0.png","loop_frames":["https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0S_0.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0S_1.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0S_2.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0S_3.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0S_4.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0S_5.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0S_6.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0S_7.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0S_8.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/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/BUF/N0C_0.png","loop_frames":["https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0C_0.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0C_1.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0C_2.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0C_3.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0C_4.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0C_5.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0C_6.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0C_7.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0C_8.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/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/BUF/N0Q_0.png","base_velocity":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0U_0.png","storm_relative_velocity":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0S_0.png","correlation_coefficient":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/BUF/N0C_0.png"},"endpoint":"/api/public/scri?lat=43.1566&lon=-77.6088"}},"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.1566/-77.6088","nssl_lightning":"https://www.nssl.noaa.gov/research/lightning/","weather_gov_radar":"https://radar.weather.gov/?center=43.1566,-77.6088&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.1566,-77.6088&zoom=7"},"open_maps":{"center":[43.1566,-77.6088],"zoom":7,"marker":{"lat":43.1566,"lon":-77.6088,"label":"KBUF"},"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":"KBUF","lat":42.9489,"lon":-78.7369,"distance_km":94.5,"source":"nws_point_radarStation"},"external_viewers":{"nws_radar":"https://radar.weather.gov/?center=43.1566,-77.6088&zoom=7","nws_station":"https://radar.weather.gov/station/KBUF/standard","goes_conus":"https://www.star.nesdis.noaa.gov/goes/conus.php?sat=G16","openstreetmap":"https://www.openstreetmap.org/#map=7/43.1566/-77.6088","rainviewer_web":"https://www.rainviewer.com/map.html?loc=43.1566,-77.6088,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":3,"nearest_fire_km":107.4,"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":199.3,"mindate":"2010-01-01","maxdate":"2010-01-01","latitude":43.00299,"name":"VICTOR 2 NW, NY US","datacoverage":1,"id":"GHCND:USC00308839","elevationUnit":"METERS","longitude":-77.4484,"distance_km":21.481548585777606},"location":[43.1566,-77.6088],"normals":[{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00308839","attributes":"P","value":1339.0},{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00308839","attributes":"P","value":777.0},{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00308839","attributes":"P","value":213.0},{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00308839","attributes":"P","value":44.0},{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-NORMAL","station":"GHCND:USC00308839","attributes":"R","value":33.64},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00308839","attributes":"P","value":37.5},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00308839","attributes":"P","value":17.5},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00308839","attributes":"P","value":3.2},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00308839","attributes":"P","value":5},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-NORMAL","station":"GHCND:USC00308839","attributes":"R","value":619},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00308839","attributes":"P","value":30.1},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00308839","attributes":"P","value":20.0},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00308839","attributes":"P","value":6.2},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00308839","attributes":"P","value":17},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-NORMAL","station":"GHCND:USC00308839","attributes":"R","value":9.81},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00308839","attributes":"P","value":33.0},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00308839","attributes":"P","value":19.2},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00308839","attributes":"P","value":6.3},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00308839","attributes":"P","value":8},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-NORMAL","station":"GHCND:USC00308839","attributes":"R","value":8.56},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00308839","attributes":"P","value":33.3},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00308839","attributes":"P","value":21.0},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00308839","attributes":"P","value":5.6},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00308839","attributes":"P","value":14},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-NORMAL","station":"GHCND:USC00308839","attributes":"R","value":9.08}],"metadata":{"resultset":{"offset":1,"count":25,"limit":1000}},"distance_km":21.5,"dataset":"NORMAL_ANN","selection":"nearest_within_extent"},"station_id":"GHCND:USC00308839","station_name":"VICTOR 2 NW, NY US","distance_km":21.5,"note":"NOAA NCEI climate normals from nearest station within 200 km."}}}