{"ok":true,"schema_version":"2.4.1","location_name":"New York, NY","location":[40.7128,-74.006],"generated_at":"2026-08-26T01:48:52.581584Z","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.8,"temperature_f":73.0,"temperature":22.8,"dewpoint_c":15,"dewpoint_f":59.0,"humidity":61.4,"pressure":1016.4,"pressure_hpa":1016.4,"pressure_inhg":30.01,"wind_speed":0.0,"wind_speed_mph":0.0,"wind_direction":0,"wind_direction_compass":"N","wind_gust_mph":null,"visibility_m":16090,"visibility_mi":10.0,"conditions":"Unknown","conditions_raw":"Unknown","sky_label":"Unknown","sky_source":"nws_textDescription","cloud_layers_summary":[],"raw_metar":null,"station_id":"KNYC","observed_at":"2026-08-26T00:51:00+00:00","observation_age_minutes":58,"observation_age_label":"58 min ago","observation_freshness":"aging","feels_like_f":72.9,"source":"NWS","location":[40.7128,-74.006],"quality":{"freshness":"aging","age_minutes":58,"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":"aging","age_minutes":58,"sky_source":"nws_textDescription","note":"Sky label uses cloudLayers/METAR when available; NWS textDescription retained as conditions_raw."},"brief":{"headline":"Sunny","summary":"Now: 73.0°F (feels like 72.9°F), Unknown. Observation age: 58 min ago. Humidity ~61%. Wind ~0.0 mph. Next period (Wednesday): 81°F, Sunny. Tonight: 68°F, Mostly Clear. No active NWS watches/warnings at this point.","current_temp_f":73.0,"feels_like_f":72.9,"humidity":61.4,"wind_mph":0.0,"conditions":"Unknown","today_high_f":81,"today_high_period":"Wednesday","tonight_low_f":68,"tonight_low_period":"Tonight","seven_day_high_max_f":85,"seven_day_low_min_f":68,"seven_day_high_range":[81,85],"seven_day_low_range":[68,73],"active_alerts":[],"nearby_zone_alert_titles":[],"station_id":"KNYC","observed_at":"2026-08-26T00:51:00+00:00","observation_age_minutes":58,"observation_age_label":"58 min ago"},"periods":[{"name":"Tonight","startTime":"2026-08-25T21:00:00-04:00","endTime":"2026-08-26T06:00:00-04:00","isDaytime":false,"temperature":68,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"NW","shortForecast":"Mostly Clear","detailedForecast":"Mostly clear, with a low around 68. Northwest wind around 9 mph.","probabilityOfPrecipitation":12,"relativeHumidity":null},{"name":"Wednesday","startTime":"2026-08-26T06:00:00-04:00","endTime":"2026-08-26T18:00:00-04:00","isDaytime":true,"temperature":81,"temperatureUnit":"F","windSpeed":"6 to 10 mph","windDirection":"W","shortForecast":"Sunny","detailedForecast":"Sunny, with a high near 81. West wind 6 to 10 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":71,"temperatureUnit":"F","windSpeed":"7 to 10 mph","windDirection":"S","shortForecast":"Partly Cloudy","detailedForecast":"Partly cloudy. Low around 71, with temperatures rising to around 73 overnight. South wind 7 to 10 mph.","probabilityOfPrecipitation":4,"relativeHumidity":null},{"name":"Thursday","startTime":"2026-08-27T06:00:00-04:00","endTime":"2026-08-27T18:00:00-04:00","isDaytime":true,"temperature":81,"temperatureUnit":"F","windSpeed":"7 to 16 mph","windDirection":"S","shortForecast":"Showers And Thunderstorms","detailedForecast":"Showers and thunderstorms after 8am. Partly sunny. High near 81, with temperatures falling to around 79 in the afternoon. South wind 7 to 16 mph. Chance of precipitation is 80%. New rainfall amounts between a tenth and quarter of an inch possible.","probabilityOfPrecipitation":80,"relativeHumidity":null},{"name":"Thursday Night","startTime":"2026-08-27T18:00:00-04:00","endTime":"2026-08-28T06:00:00-04:00","isDaytime":false,"temperature":71,"temperatureUnit":"F","windSpeed":"3 to 15 mph","windDirection":"S","shortForecast":"Showers And Thunderstorms","detailedForecast":"Showers and thunderstorms. Mostly cloudy. Low around 71, with temperatures rising to around 73 overnight. South wind 3 to 15 mph. Chance of precipitation is 80%. New rainfall amounts between a tenth and quarter of an inch possible.","probabilityOfPrecipitation":80,"relativeHumidity":null},{"name":"Friday","startTime":"2026-08-28T06:00:00-04:00","endTime":"2026-08-28T18:00:00-04:00","isDaytime":true,"temperature":81,"temperatureUnit":"F","windSpeed":"3 to 7 mph","windDirection":"W","shortForecast":"Showers And Thunderstorms Likely then Chance Showers And Thunderstorms","detailedForecast":"Showers and thunderstorms likely before 8am, then a chance of showers and thunderstorms between 8am and 2pm, then showers and thunderstorms likely. Mostly cloudy. High near 81, with temperatures falling to around 79 in the afternoon. Chance of precipitation is 60%. New rainfall amounts between a tenth and quarter of an inch possible.","probabilityOfPrecipitation":62,"relativeHumidity":null},{"name":"Friday Night","startTime":"2026-08-28T18:00:00-04:00","endTime":"2026-08-29T06:00:00-04:00","isDaytime":false,"temperature":69,"temperatureUnit":"F","windSpeed":"3 to 8 mph","windDirection":"NW","shortForecast":"Showers And Thunderstorms Likely then Mostly Cloudy","detailedForecast":"Showers and thunderstorms likely before 8pm. Mostly cloudy, with a low around 69. Chance of precipitation is 60%.","probabilityOfPrecipitation":57,"relativeHumidity":null},{"name":"Saturday","startTime":"2026-08-29T06:00:00-04:00","endTime":"2026-08-29T18:00:00-04:00","isDaytime":true,"temperature":81,"temperatureUnit":"F","windSpeed":"5 to 8 mph","windDirection":"NE","shortForecast":"Partly Sunny","detailedForecast":"Partly sunny, with a high near 81.","probabilityOfPrecipitation":10,"relativeHumidity":null},{"name":"Saturday Night","startTime":"2026-08-29T18:00:00-04:00","endTime":"2026-08-30T06:00:00-04:00","isDaytime":false,"temperature":68,"temperatureUnit":"F","windSpeed":"5 mph","windDirection":"S","shortForecast":"Partly Cloudy","detailedForecast":"Partly cloudy, with a low around 68.","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":82,"temperatureUnit":"F","windSpeed":"3 to 9 mph","windDirection":"E","shortForecast":"Sunny","detailedForecast":"Sunny, with a high near 82.","probabilityOfPrecipitation":6,"relativeHumidity":null},{"name":"Sunday Night","startTime":"2026-08-30T18:00:00-04:00","endTime":"2026-08-31T06:00:00-04:00","isDaytime":false,"temperature":70,"temperatureUnit":"F","windSpeed":"6 to 9 mph","windDirection":"S","shortForecast":"Partly Cloudy","detailedForecast":"Partly cloudy, with a low around 70.","probabilityOfPrecipitation":6,"relativeHumidity":null},{"name":"Monday","startTime":"2026-08-31T06:00:00-04:00","endTime":"2026-08-31T18:00:00-04:00","isDaytime":true,"temperature":85,"temperatureUnit":"F","windSpeed":"6 to 10 mph","windDirection":"SW","shortForecast":"Mostly Sunny","detailedForecast":"Mostly sunny, with a high near 85.","probabilityOfPrecipitation":8,"relativeHumidity":null},{"name":"Monday Night","startTime":"2026-08-31T18:00:00-04:00","endTime":"2026-09-01T06:00:00-04:00","isDaytime":false,"temperature":73,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"SW","shortForecast":"Slight Chance Rain Showers","detailedForecast":"A slight chance of rain showers between 8pm and 2am. Partly cloudy, with a low around 73.","probabilityOfPrecipitation":16,"relativeHumidity":null},{"name":"Tuesday","startTime":"2026-09-01T06:00:00-04:00","endTime":"2026-09-01T18:00:00-04:00","isDaytime":true,"temperature":85,"temperatureUnit":"F","windSpeed":"7 to 10 mph","windDirection":"W","shortForecast":"Mostly Sunny then Slight Chance Rain Showers","detailedForecast":"A slight chance of rain showers after 2pm. Mostly sunny, with a high near 85.","probabilityOfPrecipitation":16,"relativeHumidity":null}],"hourly":[{"name":"","startTime":"2026-08-25T21:00:00-04:00","endTime":"2026-08-25T22:00:00-04:00","isDaytime":false,"temperature":75,"temperatureUnit":"F","windSpeed":"9 mph","windDirection":"W","shortForecast":"Mostly Clear","detailedForecast":"","probabilityOfPrecipitation":12,"relativeHumidity":62},{"name":"","startTime":"2026-08-25T22:00:00-04:00","endTime":"2026-08-25T23:00:00-04:00","isDaytime":false,"temperature":74,"temperatureUnit":"F","windSpeed":"8 mph","windDirection":"NW","shortForecast":"Mostly Clear","detailedForecast":"","probabilityOfPrecipitation":12,"relativeHumidity":64},{"name":"","startTime":"2026-08-25T23:00:00-04:00","endTime":"2026-08-26T00:00:00-04:00","isDaytime":false,"temperature":73,"temperatureUnit":"F","windSpeed":"8 mph","windDirection":"NW","shortForecast":"Mostly Clear","detailedForecast":"","probabilityOfPrecipitation":0,"relativeHumidity":66},{"name":"","startTime":"2026-08-26T00:00:00-04:00","endTime":"2026-08-26T01:00:00-04:00","isDaytime":false,"temperature":72,"temperatureUnit":"F","windSpeed":"8 mph","windDirection":"NW","shortForecast":"Mostly Clear","detailedForecast":"","probabilityOfPrecipitation":0,"relativeHumidity":68},{"name":"","startTime":"2026-08-26T01:00:00-04:00","endTime":"2026-08-26T02:00:00-04:00","isDaytime":false,"temperature":72,"temperatureUnit":"F","windSpeed":"8 mph","windDirection":"NW","shortForecast":"Mostly Clear","detailedForecast":"","probabilityOfPrecipitation":0,"relativeHumidity":68},{"name":"","startTime":"2026-08-26T02:00:00-04:00","endTime":"2026-08-26T03:00:00-04:00","isDaytime":false,"temperature":71,"temperatureUnit":"F","windSpeed":"8 mph","windDirection":"NW","shortForecast":"Mostly Clear","detailedForecast":"","probabilityOfPrecipitation":0,"relativeHumidity":71},{"name":"","startTime":"2026-08-26T03:00:00-04:00","endTime":"2026-08-26T04:00:00-04:00","isDaytime":false,"temperature":70,"temperatureUnit":"F","windSpeed":"8 mph","windDirection":"NW","shortForecast":"Mostly Clear","detailedForecast":"","probabilityOfPrecipitation":0,"relativeHumidity":73},{"name":"","startTime":"2026-08-26T04:00:00-04:00","endTime":"2026-08-26T05:00:00-04:00","isDaytime":false,"temperature":68,"temperatureUnit":"F","windSpeed":"8 mph","windDirection":"NW","shortForecast":"Clear","detailedForecast":"","probabilityOfPrecipitation":0,"relativeHumidity":78},{"name":"","startTime":"2026-08-26T05:00:00-04:00","endTime":"2026-08-26T06:00:00-04:00","isDaytime":false,"temperature":68,"temperatureUnit":"F","windSpeed":"7 mph","windDirection":"NW","shortForecast":"Clear","detailedForecast":"","probabilityOfPrecipitation":0,"relativeHumidity":78},{"name":"","startTime":"2026-08-26T06:00:00-04:00","endTime":"2026-08-26T07:00:00-04:00","isDaytime":true,"temperature":68,"temperatureUnit":"F","windSpeed":"7 mph","windDirection":"NW","shortForecast":"Sunny","detailedForecast":"","probabilityOfPrecipitation":0,"relativeHumidity":78},{"name":"","startTime":"2026-08-26T07:00:00-04:00","endTime":"2026-08-26T08:00:00-04:00","isDaytime":true,"temperature":69,"temperatureUnit":"F","windSpeed":"6 mph","windDirection":"NW","shortForecast":"Sunny","detailedForecast":"","probabilityOfPrecipitation":0,"relativeHumidity":76},{"name":"","startTime":"2026-08-26T08:00:00-04:00","endTime":"2026-08-26T09:00:00-04:00","isDaytime":true,"temperature":71,"temperatureUnit":"F","windSpeed":"6 mph","windDirection":"NW","shortForecast":"Sunny","detailedForecast":"","probabilityOfPrecipitation":0,"relativeHumidity":71}],"alerts":[],"alert_count":0,"nearby_zone_alerts":[],"nearby_alert_count":0,"alert_zones":{"zone_ids":["NYZ072","NYC061","NYZ212"],"forecast_office":"OKX"},"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":377.6,"wind_shear_0_6km_ms":9.0,"supercell_composite":0.14,"significant_tornado":0.03,"tornado_probability":0.001,"severe_thunderstorm_probability":0.08,"hail_probability":0.05,"severe_risk_category":"low","doc_confidence":0.69,"doc_forecast":{"method":"doc_persistence_climatology_blend","next_24h_high_f":84.5,"next_24h_low_f":59.8,"precip_chance_next_24h":0.15},"performance_vs_nws":{"purpose":"Track whether DOC independent analysis outperforms NWS baseline","doc_not_derived_from_nws":true,"temperature_f":{"doc":74.5,"nws":73.0,"doc_minus_nws":1.5,"abs_error":1.5,"doc_closer_to_nws_if_abs_lt_2":true},"today_high_f":{"doc":84.5,"nws":81,"doc_minus_nws":3.5,"abs_error":3.5},"tonight_low_f":{"doc":59.8,"nws":68,"doc_minus_nws":-8.2,"abs_error":8.2},"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":73.0,"conditions":"Unknown","station_id":"KNYC","observation_age_label":"58 min ago","observed_at":"2026-08-26T00:51:00+00:00","humidity":61.4,"wind_speed_mph":0.0,"today_high_f":81,"tonight_low_f":68,"period_count":14}},"doc_independent":{"doc":{"agent":"doc","mode":"independent","not_nws":true,"source_surface":"openweathermap","surface":{"temperature_f":74.5,"temperature_c":23.6,"dewpoint_c":16.9,"humidity":66,"wind_speed_mph":8.1,"conditions":"clear sky","station_id":"OWM:5128581","observed_at":"2026-08-26T01:46:36Z"},"parameters":{"surface_cape":377.6,"surface_cin":120.0,"wind_shear_0_6km":9.0,"storm_relative_helicity_0_3km":70.3,"supercell_composite":0.14,"significant_tornado":0.03,"energy_helicity_index":0.17},"probabilities":{"tornado":0.001,"severe_thunderstorm":0.08,"hail":0.05},"forecast":{"method":"doc_persistence_climatology_blend","next_24h_high_f":84.5,"next_24h_low_f":59.8,"precip_chance_next_24h":0.15},"severe_risk_category":"low","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-26T01:48:47.918026Z"},"nws_comparison":{"source":"NWS","role":"comparison_baseline_only","temperature_f":73.0,"conditions":"Unknown","station_id":"KNYC","observation_age_label":"58 min ago","observed_at":"2026-08-26T00:51:00+00:00","humidity":61.4,"wind_speed_mph":0.0,"today_high_f":81,"tonight_low_f":68,"period_count":14},"performance":{"purpose":"Track whether DOC independent analysis outperforms NWS baseline","doc_not_derived_from_nws":true,"temperature_f":{"doc":74.5,"nws":73.0,"doc_minus_nws":1.5,"abs_error":1.5,"doc_closer_to_nws_if_abs_lt_2":true},"today_high_f":{"doc":84.5,"nws":81,"doc_minus_nws":3.5,"abs_error":3.5},"tonight_low_f":{"doc":59.8,"nws":68,"doc_minus_nws":-8.2,"abs_error":8.2},"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"}},"agi_narrative":{"available":true,"provider":"xai-grok","model":"grok-4.3","text":"(1) Now: New York is 73°F with calm winds and 61% humidity, based on an NWS observation from 58 minutes ago.\n\n(2) Next 48 hours: Tonight will be mostly clear and 68°F. Wednesday turns sunny with a high of 81°F, followed by a partly cloudy 71°F Wednesday night. Thursday brings showers and thunderstorms, high 81°F, with storms continuing overnight at 71°F.\n\n(3) Rest of week: Friday will see showers and thunderstorms likely, high near 81°F. Weekly highs range 81–85°F.\n\n(4) Severe risk: Severe thunderstorm risk remains low at 8%, with negligible tornado potential per NWS data. No watches or warnings are in effect.","generated_at":"2026-08-26T01:48:52.186561Z"},"media":{"location":[40.7128,-74.006],"location_name":"New York, NY","generated_at":"2026-08-26T01:48:52.199765Z","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":"KDIX","lat":39.9469,"lon":-74.4107,"distance_km":91.8,"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/DIX/N0Q_0.png","nws_radar_viewer":"https://radar.weather.gov/station/KDIX/standard","nws_viewer":"https://radar.weather.gov/?center=40.7128,-74.006&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/DIX/N0Q_0.png","loop_frames":["https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0Q_0.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0Q_1.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0Q_2.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0Q_3.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0Q_4.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0Q_5.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0Q_6.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0Q_7.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0Q_8.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/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/DIX/N0U_0.png","loop_frames":["https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0U_0.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0U_1.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0U_2.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0U_3.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0U_4.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0U_5.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0U_6.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0U_7.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0U_8.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/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/DIX/N0S_0.png","loop_frames":["https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0S_0.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0S_1.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0S_2.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0S_3.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0S_4.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0S_5.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0S_6.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0S_7.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0S_8.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/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/DIX/N0C_0.png","loop_frames":["https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0C_0.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0C_1.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0C_2.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0C_3.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0C_4.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0C_5.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0C_6.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0C_7.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0C_8.png","https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/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/DIX/N0Q_0.png","base_velocity":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0U_0.png","storm_relative_velocity":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0S_0.png","correlation_coefficient":"https://mesonet.agron.iastate.edu/data/gis/images/4326/ridge/DIX/N0C_0.png"},"endpoint":"/api/public/scri?lat=40.7128&lon=-74.006"}},"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/40.7128/-74.006","nssl_lightning":"https://www.nssl.noaa.gov/research/lightning/","weather_gov_radar":"https://radar.weather.gov/?center=40.7128,-74.006&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=40.7128,-74.006&zoom=7"},"open_maps":{"center":[40.7128,-74.006],"zoom":7,"marker":{"lat":40.7128,"lon":-74.006,"label":"KDIX"},"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":"KDIX","lat":39.9469,"lon":-74.4107,"distance_km":91.8,"source":"nws_point_radarStation"},"external_viewers":{"nws_radar":"https://radar.weather.gov/?center=40.7128,-74.006&zoom=7","nws_station":"https://radar.weather.gov/station/KDIX/standard","goes_conus":"https://www.star.nesdis.noaa.gov/goes/conus.php?sat=G16","openstreetmap":"https://www.openstreetmap.org/#map=7/40.7128/-74.0060","rainviewer_web":"https://www.rainviewer.com/map.html?loc=40.7128,-74.006,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":0,"nearest_fire_km":null,"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":41.1,"mindate":"2010-01-01","maxdate":"2010-01-01","latitude":40.74194,"name":"JERSEY CITY, NJ US","datacoverage":1,"id":"GHCND:USC00284339","elevationUnit":"METERS","longitude":-74.05722,"distance_km":5.397017952037849},"location":[40.7128,-74.006],"normals":[{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00284339","attributes":"P","value":1072.0},{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00284339","attributes":"P","value":727.0},{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00284339","attributes":"P","value":319.0},{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00284339","attributes":"P","value":128.0},{"date":"2010-01-01T00:00:00","datatype":"ANN-PRCP-NORMAL","station":"GHCND:USC00284339","attributes":"R","value":46.13},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00284339","attributes":"P","value":27.3},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00284339","attributes":"P","value":17.4},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00284339","attributes":"P","value":7.1},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00284339","attributes":"P","value":26},{"date":"2010-01-01T00:00:00","datatype":"DJF-PRCP-NORMAL","station":"GHCND:USC00284339","attributes":"R","value":1018},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00284339","attributes":"P","value":26.1},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00284339","attributes":"P","value":18.4},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00284339","attributes":"P","value":8.3},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00284339","attributes":"P","value":32},{"date":"2010-01-01T00:00:00","datatype":"JJA-PRCP-NORMAL","station":"GHCND:USC00284339","attributes":"R","value":12.22},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00284339","attributes":"P","value":29.3},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00284339","attributes":"P","value":20.4},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00284339","attributes":"P","value":8.3},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00284339","attributes":"P","value":33},{"date":"2010-01-01T00:00:00","datatype":"MAM-PRCP-NORMAL","station":"GHCND:USC00284339","attributes":"R","value":11.74},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-AVGNDS-GE001HI","station":"GHCND:USC00284339","attributes":"P","value":24.5},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-AVGNDS-GE010HI","station":"GHCND:USC00284339","attributes":"P","value":16.5},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-AVGNDS-GE050HI","station":"GHCND:USC00284339","attributes":"P","value":8.2},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-AVGNDS-GE100HI","station":"GHCND:USC00284339","attributes":"P","value":37},{"date":"2010-01-01T00:00:00","datatype":"SON-PRCP-NORMAL","station":"GHCND:USC00284339","attributes":"R","value":11.99}],"metadata":{"resultset":{"offset":1,"count":25,"limit":1000}},"distance_km":5.4,"dataset":"NORMAL_ANN","selection":"nearest_within_extent"},"station_id":"GHCND:USC00284339","station_name":"JERSEY CITY, NJ US","distance_km":5.4,"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":"OKX","name":"Upton, NY","lat":40.8656,"lon":-72.8644,"distance_km":97.6},"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=40.7128&lon=-74.006","research":"/api/public/research?q=briefing&lat=40.7128&lon=-74.006","chat":"/api/public/chat","threat_shield":"/api/public/threat-shield?lat=40.7128&lon=-74.006","weekly_regression":"/api/public/weekly-regression?lat=40.7128&lon=-74.006","weekly_regression_suite":"/api/public/weekly-regression?multi=true","upper_air":"/api/public/upper-air?lat=40.7128&lon=-74.006","current":"/api/current?lat=40.7128&lon=-74.006","everyday":"/api/forecast/everyday?lat=40.7128&lon=-74.006&include_agi=true","alerts":"/api/alerts?lat=40.7128&lon=-74.006","html_status":"/status?lat=40.7128&lon=-74.006&location_name=New York, NY"}}