{"updated":"2026-10-13T04:04:59.307Z","pipelines":[{"id":"dds_briefing","kind":"pipeline","stored":true,"name_th":"รายงานถนนและคลอง สนน.","name_en":"DDS dated road and canal reports","agency_th":"สำนักการระบายน้ำ กทม.","agency_en":"Bangkok DDS","cadence_th":"ตรวจทุก 15 นาที รายงานมีเวลาอ้างอิงของตนเอง","cadence_en":"checked every 15 minutes; report times differ","url":"https://dds.bangkok.go.th/flood_report.php","api":"/api/dds/briefing","metrics":["reported_depth_cm","reported_clearance","canal_msl"],"note_th":"รายงานลงวันที่ ไม่ยืนยันว่าถนนผ่านได้ตอนนี้ ข้อมูลเก่ามีป้ายกำกับ","note_en":"Dated reports, not current passability. Failed refresh retains labelled last-good records."},{"id":"thaiwater_wl","kind":"pipeline","stored":true,"name_th":"ระดับน้ำ สสน. (ThaiWater)","name_en":"HII ThaiWater — water level","agency_th":"สถาบันสารสนเทศทรัพยากรน้ำ (สสน.)","agency_en":"Hydro-Informatics Institute (HII)","cadence_th":"ทุก 10 นาที","cadence_en":"every 10 minutes","url":"https://www.thaiwater.net/","api":"/api/snapshot · /api/series?source=thaiwater_wl","metrics":["situation_level","wl_msl","storage_pct"],"note_th":"สถานีโทรมาตร ~776 แห่ง · ระดับสถานการณ์ 1–5","note_en":"~776 telemetry stations · HII situation levels 1–5"},{"id":"thaiwater_rain","kind":"pipeline","stored":true,"name_th":"ฝนสะสม 24 ชม. (ThaiWater)","name_en":"Multi-agency rain gauges (ThaiWater)","agency_th":"หลายหน่วยงานผ่าน สสน.","agency_en":"Multi-agency via HII","cadence_th":"ทุก 10 นาที","cadence_en":"every 10 minutes","url":"https://www.thaiwater.net/","api":"/api/snapshot · /api/series?source=thaiwater_rain","metrics":["rain_24h","rain_1h"],"note_th":"สถานีฝน ~4,200 แห่ง","note_en":"~4,200 rain gauges nationwide"},{"id":"thaiwater_dam","kind":"pipeline","stored":true,"name_th":"เขื่อนขนาดใหญ่","name_en":"Major dams","agency_th":"สสน. / กฟผ. / กรมชลประทาน","agency_en":"HII · EGAT · RID","cadence_th":"ทุก 1 ชม.","cadence_en":"hourly","url":"https://www.thaiwater.net/","api":"/api/snapshot · /api/series?source=thaiwater_dam","metrics":["dam_storage_pct","dam_storage_mcm","dam_inflow_mcm","dam_released_mcm"],"note_th":"เขื่อนหลัก ~35–50 แห่ง","note_en":"~35–50 major dams"},{"id":"rid_reservoir","kind":"pipeline","stored":true,"name_th":"อ่างเก็บน้ำขนาดกลาง กรมชลฯ","name_en":"RID medium reservoirs","agency_th":"กรมชลประทาน","agency_en":"Royal Irrigation Department (RID)","cadence_th":"ทุก 6 ชม.","cadence_en":"every 6 hours","url":"https://app.rid.go.th/reservoir/reservoir","api":"/api/snapshot · /api/series?source=rid_reservoir","metrics":["rsv_storage_pct","rsv_volume_mcm"],"note_th":"อ่างขนาดกลาง ~461 แห่ง","note_en":"~461 medium reservoirs"},{"id":"mrc_mekong","kind":"pipeline","stored":true,"name_th":"ระดับน้ำแม่น้ำโขง (MRC)","name_en":"Mekong mainstem water level (MRC)","agency_th":"คณะกรรมาธิการแม่น้ำโขง (MRC)","agency_en":"Mekong River Commission (MRC)","cadence_th":"ทุก 30 นาที (ต้นทางโพสต์รายชั่วโมง)","cadence_en":"every 30 min (upstream posts hourly)","url":"https://portal.mrcmekong.org/monitoring/river-monitoring-telemetry","api":"/api/snapshot · /api/series?source=mrc_mekong","metrics":["wl_msl","wl_gauge_m","situation_level","rain_1h","rain_24h"],"note_th":"สถานีในไทย 16 จุดบนลำน้ำโขงและสาขา ใช้ระดับเตือน/ระดับตลิ่งที่ MRC ประกาศเอง · เก็บสถานีต้นน้ำในลาวและจีนด้วยเพื่อวัดเวลาเดินทางของน้ำ (ไม่นับเป็นข้อมูลจังหวัดไทย)","note_en":"16 Thai stations on the Mekong and its tributaries, using MRC's own published alarm and flood stages. Upstream gauges in Laos and China are stored for travel-time analysis and never scored as Thai province data."},{"id":"air4thai","kind":"pipeline","stored":true,"name_th":"คุณภาพอากาศ Air4Thai","name_en":"Air4Thai AQI / PM2.5","agency_th":"กรมควบคุมมลพิษ (คพ.)","agency_en":"Pollution Control Department (PCD)","cadence_th":"ทุก 1 ชม.","cadence_en":"hourly","url":"https://air4thai.pcd.go.th/","api":"/api/snapshot · /api/series?source=air4thai","metrics":["aqi","pm25"],"note_th":"สถานี ~174 แห่ง — บริบทสุขภาพช่วงน้ำท่วม","note_en":"~174 stations — health context during floods"},{"id":"openmeteo","kind":"pipeline","stored":true,"name_th":"พยากรณ์ฝน Open-Meteo","name_en":"Open-Meteo rain forecast","agency_th":"Open-Meteo (จุดกึ่งกลางจังหวัดจากสถานีจริง)","agency_en":"Open-Meteo (province centroids from real stations)","cadence_th":"ทุก 3 ชม.","cadence_en":"every 3 hours","url":"https://open-meteo.com/","api":"/api/snapshot · /api/series?source=openmeteo","metrics":["precip_fc_d0","precip_fc_d1","precip_fc_d2","precip_fc_48h"],"note_th":"พยากรณ์ 48 ชม. ต่อจังหวัด — ใช้ในดัชนีเฝ้าระวัง 20%","note_en":"48h province forecast — 20% of watch score"},{"id":"glofas","kind":"pipeline","stored":true,"name_th":"อัตราการไหลแม่น้ำ GloFAS","name_en":"GloFAS river discharge (Copernicus)","agency_th":"Copernicus EMS · ผ่าน Open-Meteo Flood API","agency_en":"Copernicus EMS via Open-Meteo Flood API","cadence_th":"ทุก 3 ชม.","cadence_en":"every 3 hours","url":"https://www.globalfloods.eu/","api":"/api/rivers · /api/series?source=glofas","metrics":["discharge","discharge_fc_peak","discharge_fc_peak_day"],"note_th":"เครือข่ายน้ำเชื่อมโยง ~15 จุด · m³/s","note_en":"~15 connected reaches · m³/s cascade engine"},{"id":"enso","kind":"pipeline","stored":true,"name_th":"ดัชนี ONI / ENSO","name_en":"ENSO / ONI ocean state (NOAA)","agency_th":"NOAA Climate Prediction Center","agency_en":"NOAA Climate Prediction Center","cadence_th":"ทุก 12 ชม.","cadence_en":"every 12 hours","url":"https://www.cpc.ncep.noaa.gov/products/analysis_monitoring/ensostuff/ONI_v5.php","api":"/api/enso","metrics":["oni_anom"],"note_th":"ตัวปรับฤดูกาล ไม่ใช่ตัวพยากรณ์","note_en":"Seasonal modulator, not a forecast"},{"id":"twinAir","kind":"pipeline","stored":true,"name_th":"AirDash — ระบบแฝด (คุณภาพอากาศรายจังหวัด)","name_en":"AirDash twin — per-province air verdict","agency_th":"AirDash (air.nonarkara.org) · ข้อมูลต้นทาง คพ./Air4Thai, CAMS, GISTDA","agency_en":"AirDash (air.nonarkara.org) · upstream PCD/Air4Thai, CAMS, GISTDA","cadence_th":"ทุก 10 นาที","cadence_en":"every 10 minutes","url":"https://air.nonarkara.org/api/twin","api":"/api/twin","metrics":["level","pm25","aqi","washout_band"],"note_th":"สัญญาณคู่ขนาน ไม่อยู่ในสูตรคะแนนน้ำท่วม — ใช้บอกว่า “ถ้าต้องอพยพ สวม N95” เมื่อทั้งน้ำและอากาศอยู่ระดับเตรียมพร้อมขึ้นไป","note_en":"Parallel signal, not in the flood score — used to say \"if you must move, wear an N95\" when both water and air are at prepare or above"},{"id":"tmdForecast","kind":"pipeline","stored":true,"name_th":"พยากรณ์อากาศ 7 วัน รายจังหวัด (กรมอุตุฯ)","name_en":"TMD 7-day forecast (77 provinces + Pattaya, Hua Hin, Ko Samui, Hat Yai)","agency_th":"กรมอุตุนิยมวิทยา","agency_en":"Thai Meteorological Department","cadence_th":"ทุก 3 ชม.","cadence_en":"every 3 hours","url":"https://data.tmd.go.th/api/WeatherForecast7Days/V2/","api":"/api/weather","metrics":["tmax","tmin","rain_pct","wind_kmh","cond"],"note_th":"พยากรณ์ของทางราชการ — แสดงในการ์ดสถานที่ทุกใบ 5 วันข้างหน้า","note_en":"The official forecast — shown on every place card, five days ahead"},{"id":"tmdSynop","kind":"pipeline","stored":true,"name_th":"สถานีตรวจอากาศ กรมอุตุฯ 125 แห่ง (ราย 3 ชม.)","name_en":"TMD synoptic stations, 125 sites (3-hourly)","agency_th":"กรมอุตุนิยมวิทยา","agency_en":"Thai Meteorological Department","cadence_th":"ทุก 30 นาที (ข้อมูลราย 3 ชม.)","cadence_en":"every 30 min (3-hourly observations)","url":"https://data.tmd.go.th/api/Weather3Hours/V2/","api":"/api/weather/at","metrics":["temp_c","rh_pct","wind_kmh","visibility_km","rain_24h_mm","mslp_hpa","tmax_c","tmin_c"],"note_th":"อุณหภูมิ ความชื้น ลม ทัศนวิสัย ฝน จากสถานีจริงที่ใกล้ที่สุด — ระบุชื่อ ระยะทาง และเวลาเสมอ","note_en":"Temperature, humidity, wind, visibility, rain from the nearest real station — always with its name, distance and time"},{"id":"news","kind":"pipeline","stored":true,"name_th":"ข่าวน้ำท่วม RSS","name_en":"Flood news RSS","agency_th":"Google News TH · ข่าวสด","agency_en":"Google News TH · Khaosod","cadence_th":"ทุก 30 นาที","cadence_en":"every 30 minutes","url":"https://news.google.com/","api":"/api/news","metrics":[],"note_th":"กรองคำค้น น้ำท่วม / อุทกภัย","note_en":"Keyword-filtered flood headlines"},{"id":"imerg","kind":"pipeline","stored":true,"name_th":"ฝนดาวเทียม GPM IMERG","name_en":"GPM IMERG satellite rain (NASA)","agency_th":"NASA GES DISC · GPM Mission","agency_en":"NASA GES DISC · Global Precipitation Measurement","cadence_th":"ทุก 30 นาที (IMERG Early ~4h latency)","cadence_en":"every 30 minutes (IMERG Early ~4h latency)","url":"https://gpm.nasa.gov/data","api":"/api/snapshot (sat_rain) · /api/series?source=imerg","metrics":["sat_rain_mmh"],"note_th":"ฝนจากดาวเทียม 0.1° — ตรวจสอบจุดที่ไม่มีสถานี · ต้องใช้ NASA Earthdata token","note_en":"0.1° satellite rain — cross-checks ungauged cells · requires NASA Earthdata token"},{"id":"gistda_cctv","kind":"pipeline","stored":true,"name_th":"กล้อง CCTV ตรวจน้ำท่วม (GISTDA)","name_en":"GISTDA CheckFlood road CCTV","agency_th":"สำนักงานพัฒนาเทคโนโลยีอวกาศและภูมิสารสนเทศ (GISTDA)","agency_en":"Geo-Informatics and Space Technology Development Agency (GISTDA)","cadence_th":"ทุก 10 นาที","cadence_en":"every 10 minutes","url":"https://floodcheck.gistda.or.th/cctv","api":"/api/cctv · /api/cctv?near=lat,lng&radius_km=5","metrics":["lat","lng","is_online","is_flooded","watch_url"],"note_th":"~1,300 กล้องทั่วประเทศ (BMA + กรมทางหลวง + iTIC) · ธง is_flooded เป็นสัญญาณน้ำท่วมที่มนุษย์ตรวจได้ มีรูปสดอยู่หลังธง","note_en":"~1,300 cameras nationwide (BMA + Dept. of Highways + iTIC) · the is_flooded flag is a human-verifiable flood signal with a live picture behind it"},{"id":"gistda_flood","kind":"pipeline","stored":true,"name_th":"ขอบเขตน้ำท่วม Sentinel-1 (GISTDA)","name_en":"GISTDA Sentinel-1 rapid flood extent","agency_th":"สำนักงานพัฒนาเทคโนโลยีอวกาศและภูมิสารสนเทศ (GISTDA)","agency_en":"GISTDA Disaster Monitoring Team","cadence_th":"ทุก ~12 ชม. (Sentinel-1 pass cycle)","cadence_en":"every ~12 h (Sentinel-1 pass cycle)","url":"https://disaster.gistda.or.th/","api":"/api/flood-extent/recent · /api/flood-extent/at?date=YYYY-MM-DD · /api/flood-extent/stats","metrics":["area_m2","area_rai","scene_time"],"note_th":"GeoPackage ต่อฉาก — ตรวจน้ำบนผิวดินจากเรดาร์ SAR · แสดงเฉพาะ \"น้ำบนผิวดิน\" ไม่ใช่ \"น้ำท่วม\" เสมอ (รวมนาข้าว/ที่ลุ่ม) · ใช้เป็น ground truth ตรวจสอบคำเตือน","note_en":"Per-scene GeoPackage — SAR-detected surface water · shown as \"satellite-detected surface water\", never labelled as \"flood\" alone (paddies/wetlands included) · used as ground truth for the warning verification loop"},{"id":"gistda_water_hyacinth","kind":"pipeline","stored":true,"name_th":"ผักตบชวา (GISTDA สำรวจ)","name_en":"Water hyacinth extent (GISTDA survey)","agency_th":"สำนักงานพัฒนาเทคโนโลยีอวกาศและภูมิสารสนเทศ (GISTDA)","agency_en":"GISTDA","cadence_th":"ทุก 24 ชม.","cadence_en":"every 24 hours","url":"https://api-gateway.gistda.or.th/","api":"/api/gistda/water-hyacinth","metrics":["area_m2","waterway_th","province_th","basin_th"],"note_th":"~4,885 กอผักตบชวาใน 32 จังหวัด · ใช้ปรับ risk score เมื่อน้ำมา — ทางน้ำตันทำให้น้ำล้นตลิ่งเร็วขึ้น","note_en":"~4,885 hyacinth mats across 32 provinces · risk modifier: a clogged channel makes the same rain overtop sooner"},{"id":"gistda_dragonfly","kind":"pipeline","stored":true,"name_th":"สถานะบริการ Dragonfly (GISTDA)","name_en":"GISTDA Dragonfly service-status cross-check","agency_th":"สำนักงานพัฒนาเทคโนโลยีอวกาศและภูมิสารสนเทศ (GISTDA)","agency_en":"GISTDA","cadence_th":"ทุก 1 ชม.","cadence_en":"every 1 hour","url":"https://api-gateway.gistda.or.th/","api":"/api/gistda/dragonfly","metrics":["service","source","datetime_iso"],"note_th":"3 บริการหลักของ GISTDA พร้อมเวลาอัปเดตล่าสุด — ใช้โชว์ \"GISTDA สด\" ใน data-source legend","note_en":"3 GISTDA services with last-update times — drives the \"GISTDA LIVE\" chip in the data-source legend"},{"id":"gistda_nst3d","kind":"pipeline","stored":false,"name_th":"สถานะข้อมูล 3D นครศรีธรรมราช (GISTDA)","name_en":"NST 3D source status (GISTDA)","agency_th":"สำนักงานพัฒนาเทคโนโลยีอวกาศและภูมิสารสนเทศ (GISTDA)","agency_en":"GISTDA · Cesium 3D Tiles","cadence_th":"ตรวจการเชื่อมต่อแบบแคช","cadence_en":"cached connectivity probe","url":"https://api-gateway.gistda.or.th/api/2.0/resources/3d-tiles/mueng-nakhonsithammarat","api":"/api/gistda/3d-tiles/nst","metrics":["reachable","checked_at","viewer_available"],"note_th":"แสดงสถานะเท่านั้น — ยังไม่มีตัวแสดงผลหรือ proxy ที่พร้อมใช้งาน ไม่ส่งรหัสเข้าถึงให้ผู้ใช้","note_en":"Status only; secure asset proxy and rendered viewer are not implemented. No access credentials are returned."},{"id":"gistda_soil_moisture","kind":"pipeline","stored":true,"name_th":"ความชื้นดิน (GISTDA)","name_en":"GISTDA soil moisture","agency_th":"สำนักงานพัฒนาเทคโนโลยีอวกาศและภูมิสารสนเทศ (GISTDA)","agency_en":"GISTDA","cadence_th":"ทุก 6 ชม.","cadence_en":"every 6 hours","url":"https://api-gateway.gistda.or.th/api/2.0/resources/features/soil-moisture","api":"/api/gistda/soil-moisture · /api/snapshot (risk.provinces[*].soil_moisture)","metrics":["sm_pct","depth_cm"],"note_th":"endpoint ยังไม่ได้ subscribe (404) — เมื่อ subscribe ใน GISTDA gateway แล้วจะเริ่มส่งข้อมูลอัตโนมัติ · ใช้ผสมกับ API 30 วันเป็นน้ำหนัก 60/40 ใน FFG","note_en":"endpoint not yet subscribed (404) — once subscribed in the GISTDA gateway the source will start producing data with no code change · blends 60/40 with the 30-day station API in FFG"},{"id":"gistda_flood_features","kind":"pipeline","stored":true,"name_th":"ขอบเขตน้ำท่วม Sentinel-1 (GISTDA 1/3/7/30 วัน + น้ำท่วมซ้ำ 14 ปี)","name_en":"GISTDA flood features (1/3/7/30-day + 14-year recurrence)","agency_th":"สำนักงานพัฒนาเทคโนโลยีอวกาศและภูมิสารสนเทศ (GISTDA)","agency_en":"GISTDA Disaster Monitoring Team","cadence_th":"ทุก 6 ชม. (หน้าต่างน้ำท่วม) · 1 วัน (recurrence)","cadence_en":"every 6 h (extent windows) · 24 h (recurrence baseline)","url":"https://api-gateway.gistda.or.th/api/2.0/resources/features/flood/{1day,3days,7days,30days,flood-freq}","api":"/api/gistda/flood-features/[summary|window|freq]","metrics":["area_m2","area_rai","population","building","freq","recurrence_pct"],"note_th":"โพลแบบ full-country ของ Sentinel-1 SAR hexes — เก็บเป็นไฟล์ cache เพราะ 30-day payload ~45 MB · 1/3-day ที่ dry คืน {skipped: true, reason: \"no_data\"} ไม่ปลอมข้อมูล · flood-freq สุ่ม 5,000 จาก 7.87M polygons เพื่อทำ province baseline — ทั้งหมดนี้เสริม gistda_flood (per-scene file feed) และ gistdaPlace (per-point bbox ในแฟ้มสถานที่)","note_en":"Full-country poll of the four time-window SAR hexes — stored as file cache because the 30-day payload can reach ~45 MB · dry 1/3-day windows record {skipped: true, reason: \"no_data\"} honestly · flood-freq is a 5,000-sample roll-up from a 7.87 M catalogue — sample_share is exposed in the summary so this stays auditable · complements gistda_flood (per-scene file feed) and gistdaPlace (per-point bbox query in the place dossier)"},{"id":"jaxa_gsmap","kind":"pipeline","stored":true,"name_th":"ฝนดาวเทียม GSMaP (JAXA · รายวัน)","name_en":"JAXA GSMaP daily satellite precipitation","agency_th":"สำนักงานสำรวจอวกาศญี่ปุ่น (JAXA · EORC)","agency_en":"Japan Aerospace Exploration Agency (JAXA · EORC)","cadence_th":"ทุก 6 ชม. (catalog ตีพิมพ์ช้ากว่า realtime 3–5 วัน)","cadence_en":"every 6 h (catalog runs ~3–5 days behind realtime)","url":"https://www.eorc.jaxa.jp/jaxa/products/gsmap.html","api":"/api/jaxa/gsmap/summary · /api/jaxa/gsmap/latest","metrics":["mmh_mean","mmh_p90","wet_pct","catalog_lag_days"],"note_th":"เดิน STAC catalog ด้วยมือ (search endpoint ถูก WAF บล็อก) — range-fetch เฉพาะ 2 tile ที่แตะประเทศไทย (~95 KB compressed, inflate ได้ใน Node โดยไม่ต้องใช้ GDAL) · 0.2°/pixel · nodata = -9999.0 (ตัดออกจาก rollup) · attribution: JAXA EORC open-data","note_en":"Walks the STAC catalog tree by hand (the JAXA /search endpoint is WAF-blocked; the catalog files are reachable) — HTTP-range-fetches only the 2 tiles that touch Thailand (~95 KB compressed, inflated in Node without GDAL) · 0.2°/pixel · nodata = -9999.0 dropped from rollup · attribution: JAXA EORC open-data"},{"id":"usgs_quakes","kind":"pipeline","stored":true,"name_th":"แผ่นดินไหว M4.5+ ทั่วโลก (USGS)","name_en":"USGS M4.5+ earthquakes (week feed)","agency_th":"สำนักงานสำรวจธรณีวิทยาสหรัฐ (USGS)","agency_en":"USGS Earthquake Hazards Program","cadence_th":"เมื่อมีผู้เรียก · แคช 5 นาที","cadence_en":"on demand · cached 5 min","url":"https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/4.5_week.geojson","api":"/api/earthquakes","metrics":["mag","place","time","depth_km","tsunami","alert","is_near_thailand"],"note_th":"~80–100 เหตุการณ์ทั่วโลก · กรองเฉพาะเอเชียตะวันออกเฉียงใต้และแปซิฟิกตะวันตก · ธง is_near_thailand ระบุเหตุการณ์ใกล้ไทย (lat 5–21, lng 97–106)","note_en":"~80–100 events globally · filtered to SE Asia + Western Pacific · is_near_thailand flag marks events inside the kingdom and the Andaman shelf (lat 5–21, lng 97–106)"},{"id":"typhoon_nhc","kind":"pipeline","stored":true,"name_th":"พายุหมุนเขตร้อน NHC (NOAA)","name_en":"NOAA NHC active tropical cyclones","agency_th":"ศูนย์เฮอริเคนแห่งชาติสหรัฐ (NHC/NOAA)","agency_en":"National Hurricane Center (NOAA/NWS)","cadence_th":"เมื่อมีผู้เรียก · แคช 15 นาที","cadence_en":"on demand · cached 15 min","url":"https://www.nhc.noaa.gov/CurrentStorms.json","api":"/api/typhoons","metrics":["intensity_kt","classification","basin","near_thailand"],"note_th":"NHC ครอบคลุม EP/AL/CP เท่านั้น — พายุแปซิฟิกตะวันตก (WPAC) อยู่ภายใต้ JTWC ซึ่งฟีดไม่ใช่ keyless จึงไม่ดึงในแหล่งนี้ · ความเร็วลมเป็นนอตตามมาตรฐานสากล","note_en":"NHC covers East Pacific, Atlantic, and Central Pacific basins only — Western Pacific (WPAC) cyclones are tracked by JTWC on a gated feed and are NOT included · intensity is in knots (international tropical-cyclone standard)"},{"id":"itic_traffic","kind":"pipeline","stored":true,"name_th":"เหตุการณ์จราจรและถนนน้ำท่วม (iTIC)","name_en":"Road incidents and flooded roads (iTIC)","agency_th":"มูลนิธิศูนย์ข้อมูลจราจรอัจฉริยะไทย (iTIC Foundation) ร่วมกับพันธมิตร · เผยแพร่ผ่าน Longdo","agency_en":"Intelligent Traffic Information Center Foundation (iTIC Foundation) and partners · published via Longdo","cadence_th":"ทุก 5 นาที","cadence_en":"every 5 minutes","url":"https://event.longdo.com/feed/json","api":"/api/traffic · /api/traffic?flood=1","metrics":["category","depth_cm","passable","start","stop","contributor"],"note_th":"ที่มา: iTIC Foundation · รายงานจากกรมทางหลวง ตำรวจ และผู้ใช้ iTIC — ไม่ใช่คำสั่งปิดถนนอย่างเป็นทางการ · ถนนน้ำท่วมแสดงบนแผนที่และการ์ดพื้นที่ พร้อมรูปถ้ามี · ขอบคุณ iTIC Foundation และเครือข่าย รวมถึง ดร. ภาสกร ประถมบุตร ที่ผลักดันการเปิดข้อมูลให้นักพัฒนา","note_en":"Source: iTIC Foundation · reports from the Department of Highways, police and iTIC users — not official closure orders · flooded roads on the map and place cards, with photos where attached · with thanks to iTIC Foundation and its network, and Dr. Paskorn Prathombutr, for opening this data to developers"},{"id":"traffy_street","kind":"pipeline","stored":true,"name_th":"รายงานน้ำท่วมถนนจากประชาชน (Traffy Fondue)","name_en":"Resident street-flood reports (Traffy Fondue)","agency_th":"กทม. × NECTEC (Traffy Fondue)","agency_en":"BMA × NECTEC (Traffy Fondue)","cadence_th":"ทุก 10 นาที เก็บ 24 ชม.","cadence_en":"every 10 minutes, 24 h kept","url":"https://publicapi.traffy.in.th/share/teamchadchart/search","api":"/api/place (street) · /api/research/citizen","metrics":["depth","duration","khet"],"note_th":"เก็บเฉพาะเวลา พิกัด ~100 ม. ความลึก และเขต — ไม่เก็บข้อความหรือรูป","note_en":"Only time, ~100 m place, depth word and khet are kept — no text or photos"},{"id":"bma_klong","kind":"pipeline","stored":true,"name_th":"ระดับน้ำคลอง กทม. (KlongMap)","name_en":"Bangkok canal levels (KlongMap)","agency_th":"สำนักการระบายน้ำ กทม.","agency_en":"BMA Drainage Department","cadence_th":"ทุก 5 นาที","cadence_en":"every 5 minutes","url":"https://weather.bangkok.go.th/KlongMap","api":"/api/place (street)","metrics":["wl","bank","warning","critical"],"note_th":"~200 จุดวัดพร้อมระดับตลิ่งของแต่ละจุด","note_en":"~200 gauges, each with its own bank heights"},{"id":"bma_rain","kind":"pipeline","stored":true,"name_th":"ฝนรายสถานี กทม.","name_en":"Bangkok rain gauges","agency_th":"สำนักการระบายน้ำ กทม.","agency_en":"BMA Drainage Department","cadence_th":"ทุก 5 นาที","cadence_en":"every 5 minutes","url":"https://weather.bangkok.go.th/rain","api":"/api/snapshot · /api/place","metrics":["rain_1h","rain_24h"],"note_th":"~125 สถานี อ่านจาก กทม. โดยตรง","note_en":"~125 gauges read from BMA directly"},{"id":"bma_avoid_roads","kind":"pipeline","stored":true,"name_th":"ถนนที่ กทม. แนะนำให้เลี่ยง","name_en":"Roads BMA says to avoid","agency_th":"กรุงเทพมหานคร (now.bangkok.go.th)","agency_en":"Bangkok Metropolitan Administration (now.bangkok.go.th)","cadence_th":"ทุก 15 นาที","cadence_en":"every 15 minutes","url":"https://now.bangkok.go.th/flood-alert.html","api":"/api/place (street)","metrics":["road","section","level"],"note_th":"กทม. อ่านจากสีจราจร Google Maps — สีแดงอาจเป็นรถติด","note_en":"BMA reads Google Maps traffic colours — red may be traffic, not water"},{"id":"pakkret_water","kind":"pipeline","stored":true,"name_th":"ระดับน้ำเจ้าพระยา ท่าน้ำปากเกร็ด","name_en":"Chao Phraya at Pak Kret pier","agency_th":"เทศบาลนครปากเกร็ด","agency_en":"Pak Kret City Municipality","cadence_th":"ทุก 10 นาที","cadence_en":"every 10 minutes","url":"https://www.pakkretconnect.com/liffwater/eon","api":"/api/snapshot","metrics":["wl_msl","situation_level"],"note_th":"เกณฑ์ของเทศบาล: เฝ้าระวัง 1.50 · วิกฤต 2.30 ม.รทก. · กล้องถนน 56 ตัวอยู่ในชั้น CCTV","note_en":"Municipal levels: watch 1.50 · critical 2.30 m MSL · 56 road cameras in the CCTV layer"},{"id":"tmd_rain_regions","kind":"pipeline","stored":true,"name_th":"ฝนรายวันตามภาค (TMD)","name_en":"Daily rain by region (TMD)","agency_th":"กรมอุตุนิยมวิทยา","agency_en":"Thai Meteorological Department","cadence_th":"ทุก 6 ชม.","cadence_en":"every 6 hours","url":"https://data.tmd.go.th/api/RainRegions/v1/","api":"/api/snapshot","metrics":["rain_24h"],"note_th":"ค่าวัดทางการรายวัน","note_en":"Official daily measurements"},{"id":"raingrid","kind":"pipeline","stored":false,"name_th":"กริดพยากรณ์ฝน 48 ชม.","name_en":"48 h rain forecast grid","agency_th":"Open-Meteo","agency_en":"Open-Meteo","cadence_th":"ทุก 3 ชม.","cadence_en":"every 3 hours","url":"https://api.open-meteo.com/v1/forecast","api":"/api/rain/grid","metrics":["precip_mm"],"note_th":"ใช้กับแถบเวลาบนแผนที่","note_en":"Feeds the map timeline"},{"id":"pcd_water_quality","kind":"pipeline","stored":true,"name_th":"คุณภาพน้ำ PCD","name_en":"PCD water quality","agency_th":"กรมควบคุมมลพิษ","agency_en":"Pollution Control Department","cadence_th":"รายสัปดาห์","cadence_en":"weekly","url":"https://pcd.gdcatalog.go.th","api":"/api/snapshot","metrics":["do","ph","wqi"],"note_th":"สถานีอัตโนมัติ","note_en":"Automatic stations"},{"id":"wrf_forecast","kind":"pipeline","stored":true,"name_th":"พยากรณ์ฝน 7 วัน WRF","name_en":"WRF 7-day rain forecast","agency_th":"สถาบันสารสนเทศทรัพยากรน้ำ (สสน.)","agency_en":"Hydro-Informatics Institute (HII)","cadence_th":"ทุก 6 ชม.","cadence_en":"every 6 hours","url":"https://api-v3.thaiwater.net/","api":"/api/outlook","metrics":["rain_mm"],"note_th":"แบบจำลองที่สองนอกจาก Open-Meteo","note_en":"A second model beside Open-Meteo"},{"id":"hii_fews","kind":"pipeline","stored":true,"name_th":"รายงานน้ำท่วมฉับพลันและภัยแล้ง FEWS","name_en":"HII FEWS flash-flood & drought lists","agency_th":"สถาบันสารสนเทศทรัพยากรน้ำ (สสน.)","agency_en":"Hydro-Informatics Institute (HII)","cadence_th":"ทุก 3 ชม.","cadence_en":"every 3 hours","url":"https://fews2.hii.or.th/model-output/data_portal","api":"/api/place","metrics":["tambon"],"note_th":"รายชื่อตำบลรายวันของแบบจำลองแห่งชาติ","note_en":"The daily tambon lists of the national model"},{"id":"burn_area","kind":"pipeline","stored":true,"name_th":"พื้นที่เผาไหม้ภาคเกษตร (ตามรอยเผา)","name_en":"Agricultural burn scars (Tam Roy Pao)","agency_th":"สถาบันสารสนเทศทรัพยากรน้ำ (สสน.)","agency_en":"Hydro-Informatics Institute (HII)","cadence_th":"รายวัน","cadence_en":"daily","url":"https://tamroypao.hii.or.th/openburn","api":"/api/twin","metrics":["area_rai"],"note_th":"บริบทสำหรับ AirDash","note_en":"Context for the AirDash twin"},{"id":"cctvHealth","kind":"pipeline","stored":false,"name_th":"ตรวจสอบกล้อง CCTV","name_en":"CCTV stream health probe","agency_th":"FloodDash (ตรวจเอง)","agency_en":"FloodDash (own probe)","cadence_th":"เป็นรอบ","cadence_en":"periodic","url":"https://flood.nonarkara.org/","api":"/api/cctv/all","metrics":["live","down"],"note_th":"วัดว่ากล้องแสดงภาพจริงหรือไม่","note_en":"Measures whether each stream really plays"},{"id":"cctv_catalog_warm","kind":"pipeline","stored":false,"name_th":"อุ่นแคตตาล็อกกล้อง CCTV","name_en":"CCTV catalog warm","agency_th":"FloodDash (ภายใน)","agency_en":"FloodDash (internal)","cadence_th":"ทุก 4 นาที","cadence_en":"every 4 minutes","url":"https://flood.nonarkara.org/","api":"/api/cctv/all","metrics":["cameras_seen"],"note_th":"เก็บแคตตาล็อกกล้องไว้ให้สดก่อนที่ผู้ใช้จะขอ — ไม่มีใครต้องรอโหลด 19 วินาที","note_en":"Keeps the camera catalog warm ahead of the first visitor — nobody waits out a 19-second cold fetch"},{"id":"bma_road_water","kind":"pipeline","stored":true,"name_th":"เซ็นเซอร์วัดน้ำบนผิวถนน กทม.","name_en":"Bangkok road-surface water sensors","agency_th":"สำนักการระบายน้ำ กทม.","agency_en":"BMA Drainage Department","cadence_th":"ทุก 5 นาที","cadence_en":"every 5 minutes","url":"https://weather.bangkok.go.th/flood/","api":"/api/place (street) · /api/nearby-flood · /api/bangkok/khet","metrics":["depth_cm","max_cm","status"],"note_th":"~250 จุด วัดน้ำเหนือผิวถนนเป็นเซนติเมตร พร้อมสถานะของ สนน. (น้ำท่วม/เล็กน้อย/ปกติ/ขัดข้อง) — ค่าที่วัดจริง ไม่ใช่การประเมิน","note_en":"~250 sensors measuring water above the road in cm, with BMA's own status (flooded / minor / normal / fault) — measured, not estimated"},{"id":"rangsit_flood","kind":"pipeline","stored":true,"name_th":"จุดน้ำท่วม เทศบาลนครรังสิต","name_en":"Rangsit City Municipality flood points","agency_th":"เทศบาลนครรังสิต จ.ปทุมธานี (cdp.rangsitcity.go.th)","agency_en":"Rangsit City Municipality, Pathum Thani (cdp.rangsitcity.go.th)","cadence_th":"ทุก 5 นาที","cadence_en":"every 5 minutes","url":"https://cdp.rangsitcity.go.th/","api":"/api/route-hazards · /api/nearby-flood","metrics":["depth word (ankle/knee/waist/impassable)","place","time"],"note_th":"จุดน้ำท่วมพร้อมพิกัด ระดับน้ำ และรูป จากแพลตฟอร์มของเทศบาลเอง (JSON สาธารณะ) ใช้ในเส้นทางเลี่ยงน้ำและ \"น้ำท่วมใกล้ฉัน\" (≤ 12 ชม.) เก็บถาวรเพื่องานวิจัย รูปอยู่บนเซิร์ฟเวอร์เทศบาล เราลิงก์ไปเท่านั้น","note_en":"Flood points with coordinates, depth and a photo from the municipality's own platform (public JSON); used in the flood-avoiding route and \"flood near me\" (≤ 12 h) and archived for research. Photos stay on the municipality's server; we only link to them."},{"id":"dwr_ews","kind":"pipeline","stored":true,"name_th":"ระบบเตือนภัยน้ำทะเล/น้ำหลาก–ดินถล่ม ระดับหมู่บ้าน","name_en":"DWR village-level flash-flood / landslide warning","agency_th":"กรมทรัพยากรน้ำ (กระทรวงทรัพยากรธรรมชาติและสิ่งแวดล้อม)","agency_en":"Department of Water Resources, MNRE","cadence_th":"กรมฯ เผยแพร่ทุก 15 นาที · เราดึงทุก 15 นาที","cadence_en":"DWR republishes every 15 minutes; we poll every 15 minutes","url":"https://ews.dwr.go.th/ews/index.php","api":"/api/dwr-ews","metrics":["ews_status","rain12h_mm","rain07h_mm","soil_pct","wl_m"],"note_th":"2,275 สถานีชุมชน เข้าถึงได้โดยไม่ต้องใช้คีย์ (POST web-service/stn) · เราแสดงสัญญาณของกรมฯ ตามเดิม ไม่คำนวณแทน เพราะสถานะไม่ได้เป็นเกณฑ์ฝนล้วน (ฝน 225.5 มม./12 ชม. ยังเป็นสถานะ 0 ขณะที่ 120.0 เป็นวิกฤต) · สถานะ 9 (800 สถานี) ไม่มีคำอธิบายในเว็บกรมฯ จึงไม่ถือเป็น \"ปกติ\" · สถานีที่ไม่รายงานเกิน 60 นาทีถือว่าเราไม่รู้ ไม่ใช่ปกติ · ค่าความชื้นดินเกิน 100% ถูกปฏิเสธ ไม่ถูกตัดให้เป็น 100","note_en":"2,275 community stations, keyless (POST web-service/stn). We show DWR's signal verbatim and do not compute our own, because their status is not a plain rain threshold (225.5 mm/12h is status 0 while 120.0 is critical). Status 9 (800 stations) has no published meaning, so it is never counted as normal. A station silent for over 60 minutes is unknown, not normal. Soil readings above 100% are rejected rather than clipped."},{"id":"citizen_media_repair","kind":"pipeline","stored":true,"name_th":"ตรวจและกู้ภาพรายงานประชาชน","name_en":"Citizen media check and repair","agency_th":"FloodDash (ตรวจเอง)","agency_en":"FloodDash (own check)","cadence_th":"ทุกชั่วโมง","cadence_en":"hourly","url":"https://flood.nonarkara.org/","api":"/api/research/citizen (archive)","metrics":["status","sha256","bytes"],"note_th":"ตรวจทุกไฟล์ภาพของรายงานโซเชียลด้วยไบต์จริง กู้ไฟล์ที่เสียจากลิงก์ต้นทางที่บันทึกไว้ และบันทึกทุกความพยายาม","note_en":"Checks every social-tip media file by its bytes, re-fetches broken ones from the recorded source link, and logs every attempt"}],"remote":[{"id":"gsmap","kind":"satellite","stored":false,"name_th":"GSMaP — ฝนจากดาวเทียม (JAXA/GPM)","name_en":"GSMaP satellite precipitation (JAXA/GPM)","agency_th":"JAXA · Global Precipitation Measurement","agency_en":"JAXA Earth Observation Research Center · GPM","cadence_th":"รายชั่วโมง · 0.1°","cadence_en":"hourly · 0.1° global","url":"https://earth.jaxa.jp/en/data/index.html","api":"https://data.earth.jaxa.jp/ (JAXA Earth API · COG/WMTS)","metrics":["precipitation_rate"],"note_th":"HII ใช้ GSMaP ในระบบเฝ้าระวังฝน · แผนที่แสดงผ่าน GPM IMERG (NASA GIBS)","note_en":"HII uses GSMaP operationally; map shows GPM IMERG via NASA GIBS tiles"},{"id":"himawari","kind":"satellite","stored":false,"name_th":"Himawari-9 — ภาพเมฆ (JAXA/JMA)","name_en":"Himawari-9 cloud imagery (JAXA/JMA)","agency_th":"JAXA P-Tree · กรมอุตุนิยมวิทยา","agency_en":"JAXA Himawari Monitor (P-Tree) · JMA","cadence_th":"ทุก 10 นาที (full disk)","cadence_en":"10-minute full disk","url":"https://www.eorc.jaxa.jp/ptree/","api":"NASA GIBS WMTS · Band 13 IR + true colour","metrics":[],"note_th":"ติดตามพายุฝนหนาแน่น · แผนที่ใช้ GIBS EPSG:3857","note_en":"Dense cloud / storm tracking · GIBS Web Mercator tiles"},{"id":"modis","kind":"satellite","stored":false,"name_th":"MODIS Terra — ภาพจริง (NASA)","name_en":"MODIS Terra true colour (NASA)","agency_th":"NASA GIBS","agency_en":"NASA Global Imagery Browse Services","cadence_th":"รายวัน","cadence_en":"daily","url":"https://gibs.earthdata.nasa.gov/","api":"GIBS WMTS MODIS_Terra_CorrectedReflectance_TrueColor","metrics":[],"note_th":"ภาพพื้นผิวเมื่อเมฆน้อย · max zoom 9","note_en":"Surface view on clear days · native zoom 9"},{"id":"rainviewer","kind":"satellite","stored":false,"name_th":"เรดาร์ฝน RainViewer","name_en":"RainViewer weather radar mosaic","agency_th":"RainViewer (รวมเรดารนภาค)","agency_en":"RainViewer (regional radar composite)","cadence_th":"ทุก ~10 นาที · แอนิเมชัน","cadence_en":"~10 min · animated","url":"https://www.rainviewer.com/","api":"https://api.rainviewer.com/public/weather-maps.json","metrics":[],"note_th":"เรดารนฝนภาค · ไม่เก็บลงฐานข้อมูล","note_en":"Regional radar tiles · not persisted"},{"id":"ddpm_gd002","kind":"reference","stored":true,"name_th":"ศูนย์พักพิงฉุกเฉิน ปภ. (GD002)","name_en":"DDPM emergency shelters (GD002)","agency_th":"กรมป้องกันและบรรเทาสาธารณภัย (ปภ.)","agency_en":"Department of Disaster Prevention and Mitigation (DDPM)","cadence_th":"รายปีจาก ปภ. · สแนปชอตใน git · ingest รายวัน","cadence_en":"yearly DDPM update · committed snapshot · daily re-ingest","url":"https://catalog.disaster.go.th/dataset/dpm-gd002","api":"/api/shelters?lat=&lng=&limit= · /api/shelters/nearest · /api/shelters?province= · /api/shelters?bbox=","metrics":["lat","lng","capacity","phone"],"note_th":"ทะเบียนทั้งประเทศ (~10,400 จุดที่มีพิกัด) ไม่ใช่ตัวอย่าง 50 แถว · เบอร์โทรตามต้นทาง ถ้าไม่มีจะเป็น null · ไม่มีสถานะเปิด/ปิดในทะเบียน","note_en":"Full national registry (~10,400 geocoded rows), not a 50-row sample · phone as published or null · occupancy is not in this file"},{"id":"ddpm_catalog","kind":"reference","stored":true,"name_th":"ชุดข้อมูลอ้างอิง ปภ. (Cell Broadcast + สึนามิ)","name_en":"DDPM catalog reference (cell-broadcast + tsunami risk)","agency_th":"กรมป้องกันและบรรเทาสาธารณภัย (ปภ.)","agency_en":"Department of Disaster Prevention and Mitigation (DDPM)","cadence_th":"เมื่อมีผู้เรียก · แคช 24 ชม.","cadence_en":"on demand · cached 24 h","url":"https://catalog.disaster.go.th/","api":"/api/ddpm/cell-broadcast · /api/ddpm/risk-tsunami","metrics":["num_resources","resources"],"note_th":"เมตาดาต้า CKAN ของ cell-broadcast และ risk_tsunami · ลิงก์ทรัพยากรเป็นของต้นทาง (ArcGIS/CSV/RDF) · ไม่ตีความเนื้อหา","note_en":"CKAN package metadata for cell-broadcast and risk_tsunami · resource URLs go straight to the authoritative file (ArcGIS/CSV/RDF) · no content interpretation"},{"id":"rivers_geo","kind":"reference","stored":false,"name_th":"เครือข่ายแม่น้ำไทย (GISTDA)","name_en":"Thai river network (GISTDA)","agency_th":"สำนักงานพัฒนาเทคโนโลยีอวกาศและภูมิสารสนเทศ (GISTDA)","agency_en":"GISTDA","cadence_th":"คงที่","cadence_en":"static GeoJSON","url":"https://www.gistda.or.th/","api":"/geo/thai-rivers.geojson","metrics":[],"note_th":"เส้นทางน้ำจริงบนแผนที่","note_en":"Real channel geometry on the map"},{"id":"dgr_wells","kind":"reference","stored":true,"name_th":"ทะเบียนบ่อน้ำใต้ดิน กรมทรัพย์แร่ (ภาคตะวันออก)","name_en":"DGR groundwater well register (eastern Thailand)","agency_th":"กรมทรัพย์แร่","agency_en":"Department of Mineral Resources","cadence_th":"ไม่มีการอัปเดต — ข้อมูล ณ 3 ก.พ. 2567","cadence_en":"no refresh — data as of 3 Feb 2024","url":"https://drive.google.com/drive/folders/1EU4LJMLSScOA6F5jX5lceOFyJ3o7yiQ4","api":"/api/groundwater","metrics":["id_well","depth_m","water_level_m","discharge","utm_e","utm_n","well_type"],"note_th":"6,852 บ่อ 21 ฟิลด์ · เป็นทะเบียน ไม่ใช่ค่าระดับน้ำปัจจุบัน · พิกัด Lat/Long ปัด 2 ตำแหน่ง (~1.1 กม.) และ 4,000 บ่ออยู่ในช่องพิกัดเดียวกับบ่ออื่น — ใช้ UTM เพื่อระบุตำแหน่ง · ช่องสภาพบ่อเป็นค่าเดียว 99.96% จึงไม่มีความหมายในเชิงคุณลักษณะ","note_en":"6,852 wells, 21 fields. A register, not a current level. Lat/Long is rounded to 2 dp (~1.1 km) and 4,000 wells share a rounded cell with another well, so only the UTM pair places one precisely. The `condition` column is 99.96% one value and carries no useful information."},{"id":"ref_bangkok_flood_vercel","kind":"reference","stored":false,"name_th":"Bangkok Flood ถนนไหนไปได้ (แอปพลเมือง)","name_en":"Bangkok Flood \"which roads are passable\" (citizen app)","agency_th":"ผู้พัฒนาอิสระ · bangkok-flood.vercel.app","agency_en":"Independent developers · bangkok-flood.vercel.app","cadence_th":"—","cadence_en":"—","url":"https://bangkok-flood.vercel.app/","api":"—","metrics":[],"note_th":"แรงบันดาลใจ: เบอร์ กทม. 1555, จุดแจกทราย, จุดจอดรถหนีน้ำ, สถานะถนนจากประชาชน — ไม่ได้ดึงข้อมูลจากแอปนี้","note_en":"Inspiration: the BMA 1555 hotline, sandbag points, flood parking and crowd road status — no data is pulled from this app"},{"id":"ref_earthdefire_vercel","kind":"reference","stored":false,"name_th":"โอกาสน้ำท่วม กทม. · สด (EarthDeFIRE)","name_en":"Bangkok flood chance · live (EarthDeFIRE)","agency_th":"EarthDeFIRE · bkk-flood-chance-earth-de-fire.vercel.app","agency_en":"EarthDeFIRE · bkk-flood-chance-earth-de-fire.vercel.app","cadence_th":"—","cadence_en":"—","url":"https://bkk-flood-chance-earth-de-fire.vercel.app/","api":"—","metrics":[],"note_th":"แรงบันดาลใจ: คะแนนโอกาสน้ำท่วมรายเขต, รายการใกล้ฉัน 3 กม., ปุ่มเปิด Google Maps โหมดจราจร — ไม่ได้ดึงข้อมูลจากแอปนี้","note_en":"Inspiration: a per-khet flood-chance score, a near-me 3 km list and a Google Maps traffic button — no data is pulled from this app"},{"id":"ref_gistda_lifedee","kind":"reference","stored":false,"name_th":"GISTDA Disaster Platform · Life Dee (อ้างอิง)","name_en":"GISTDA Disaster Platform · Life Dee (reference)","agency_th":"สำนักงานพัฒนาเทคโนโลยีอวกาศและภูมิสารสนเทศ (องค์การมหาชน)","agency_en":"Geo-Informatics and Space Technology Development Agency","cadence_th":"—","cadence_en":"—","url":"https://lifedee.gistda.or.th/map/flood","api":"https://api-gateway.gistda.or.th (we already poll directly)","metrics":[],"note_th":"อ้างอิง: Life Dee เป็นแดชบอร์ดหลายภัย (น้ำท่วม/คลื่นความร้อน/PM2.5/จมน้ำ/บริการคนพิการ) สร้างบนชั้นข้อมูลเดียวกับที่เราดึงจาก api-gateway.gistda.or.th โดยตรง (5 ingest sources: CCTV, soil, hyacinth, dragonfly, flood features 1/3/7/30 วัน + freq) — ไม่ได้ดึงข้อมูลเพิ่มจาก Life Dee","note_en":"Reference: Life Dee is a multi-hazard dashboard (flood/heat/PM2.5/drown/disability) built on the same data we already pull from api-gateway.gistda.or.th directly (5 ingest sources: CCTV, soil, hyacinth, dragonfly, flood features 1/3/7/30-day + freq) — no extra data is fetched from Life Dee"},{"id":"ref_dulyachon_stress_test","kind":"reference","stored":false,"name_th":"ดุลยชล · Bangkok Drainage Stress Test 24–26 ก.ย. 2569 (อ้างอิง)","name_en":"Dulyachon · Bangkok Drainage Stress Test 24–26 Sep 2026 (reference)","agency_th":"ดุลยชล","agency_en":"Dulyachon (Thai drainage-engineering analyst)","cadence_th":"—","cadence_en":"—","url":"https://www.facebook.com/dulyachon (2026-09-26 09:30 post)","api":"—","metrics":["pump_outflow_m3s"],"note_th":"เครดิต: แผนที่อัตราการไหลของเครื่องสูบน้ำทั้งกรุงเทพฯ ตอน 08:00 วันที่ 26 ก.ย. 2569 ใช้เป็นกรอบวิศวกรรมใน knowledge/case-bangkok-drainage-stress-2026-09-24-26.md — เราไม่ได้ดึงข้อมูลจากดุลยชล","note_en":"Credit: the city-wide pumping-station outflow-rate diagram at 08:00 BKK on 2026-09-26, used as the engineering framing in knowledge/case-bangkok-drainage-stress-2026-09-24-26.md — no data is pulled from Dulyachon"},{"id":"ref_peoplesparty_flood69","kind":"reference","stored":false,"name_th":"พรรคประชาชน · flood69 (อ้างอิง: ที่ฝากรถ + ศูนย์พักพิง)","name_en":"People's Party · flood69 (reference: parking + shelters)","agency_th":"พรรคประชาชน","agency_en":"People's Party (พรรคประชาชน)","cadence_th":"—","cadence_en":"—","url":"https://flood69.peoplesparty.or.th/","api":"https://flood69.peoplesparty.or.th/api/places · /api/news · /api/klongmap · /api/systems (public, no auth)","metrics":[],"note_th":"อ้างอิง: ชุดข้อมูลที่ฝากรถ (47 แห่ง) และศูนย์พักพิง (52 แห่ง) พร้อมสถานะ open/full/closed แบบ crowd-reported ตรงกับฟีเจอร์ที่เราเลื่อนไว้ในคิว — ยังไม่ได้ดึงเข้าระบบ","note_en":"Reference: the parking (47 sites) + shelter (52 sites) dataset with crowd-reported open/full/closed status — matches the deferred feature on our queue; not yet mirrored"},{"id":"ref_bkk_streetsmart","kind":"reference","stored":false,"name_th":"BKK StreetSmart (กล้อง AI กทม.)","name_en":"BKK StreetSmart (AI on Bangkok CCTV)","agency_th":"ผู้พัฒนาอิสระ · cctv-bangkok.tail95e28b.ts.net","agency_en":"Independent developer · cctv-bangkok.tail95e28b.ts.net","cadence_th":"—","cadence_en":"—","url":"https://cctv-bangkok.tail95e28b.ts.net/","api":"—","metrics":[],"note_th":"แรงบันดาลใจ: แสดงเซ็นเซอร์น้ำบนถนนของ สนน. ซึ่งเราอ่านจาก กทม. โดยตรง และกราฟระดับน้ำพร้อมน้ำขึ้นน้ำลง — ไม่ได้ดึงข้อมูลจากเว็บนี้ (API ของเว็บเปิดให้เฉพาะหน้าของตัวเอง)","note_en":"Inspiration: it shows BMA's road water sensors, which we now read from BMA directly, and level charts with the tide — no data is pulled from this site (its API serves its own pages only)"},{"id":"ref_thailand_flooder","kind":"reference","stored":false,"name_th":"Thailand Flooder (พัฒนาด้วย Claude Code)","name_en":"Thailand Flooder (built with Claude Code)","agency_th":"ผู้พัฒนาอิสระ · thailand-flooder.vercel.app","agency_en":"Independent developer · thailand-flooder.vercel.app","cadence_th":"ทุก 5 นาที","cadence_en":"every 5 minutes","url":"https://thailand-flooder.vercel.app/","api":"—","metrics":[],"note_th":"ศึกษา 27 ก.ย. 2569: วาดถนนที่ท่วมเป็นเส้นบนถนนจริงของ OpenStreetMap และตรวจเส้นทาง A→B — อยู่ในคิวนำมาปรับ ไม่ได้ดึงข้อมูลจากเว็บนี้","note_en":"Studied 27 Sep 2026: draws flooded stretches on real OpenStreetMap roads and checks A→B routes — queued for adoption; no data is pulled from this site"},{"id":"ref_chuaykan","kind":"reference","stored":false,"name_th":"ช่วยกัน (ChuayKan) — ขอความช่วยเหลือระหว่างน้ำท่วม","name_en":"ChuayKan — flood help requests","agency_th":"อาสาสมัคร · chuaykan.web.app","agency_en":"Volunteers · chuaykan.web.app","cadence_th":"—","cadence_en":"—","url":"https://chuaykan.web.app/","api":"—","metrics":[],"note_th":"ศึกษา 27 ก.ย. 2569: ประเภทคำขอ (SOS อาหาร น้ำ เรือ ที่พัก) ระดับความเร่งด่วน และขั้นตอนขอลบข้อมูลส่วนบุคคล — เราไม่อ่านคำขอความช่วยเหลือ เพราะเป็นข้อมูลส่วนบุคคล","note_en":"Studied 27 Sep 2026: request types (SOS, food, water, boat, shelter), triage priority and a personal-data deletion flow — we do not read its help requests: they are personal data"},{"id":"ref_water_aiya","kind":"reference","stored":false,"name_th":"น้ำ.aiya.ai","name_en":"น้ำ.aiya.ai (water.aiya.ai)","agency_th":"ผู้พัฒนาอิสระ · water.aiya.ai","agency_en":"Independent developer · water.aiya.ai","cadence_th":"—","cadence_en":"—","url":"https://water.aiya.ai/","api":"—","metrics":[],"note_th":"ที่มาของแนวคิด MCP (ให้ AI อื่นเรียกเครื่องมือข้อมูล) การระบุแหล่งต่อผลลัพธ์ และที่มาของคำตอบในแชท (4.86.0) — ไม่ได้ดึงข้อมูลจากเว็บนี้","note_en":"Source of the MCP idea (other AIs calling our data tools), per-result source labelling and answer-level provenance in the chat (4.86.0) — no data is pulled from this site"},{"id":"ref_allsaft","kind":"reference","stored":false,"name_th":"ALLSAFT (BSM · สนับสนุนโดย MFEC)","name_en":"ALLSAFT (BSM · powered by MFEC)","agency_th":"BSM · allsaft.com","agency_en":"BSM · allsaft.com","cadence_th":"—","cadence_en":"—","url":"https://allsaft.com","api":"—","metrics":[],"note_th":"แนวคิดรายงาน \"ถนนผ่านไม่ได้\" และเช็กอิน \"ฉันปลอดภัย\" (อยู่ในรายการงาน) — ไม่ได้ดึงข้อมูลจากเว็บนี้","note_en":"The \"road blocked\" report type and the \"I'm Safe\" check-in (on the roadmap) — no data is pulled from this site"},{"id":"ref_ireadcustomer_flood_map","kind":"reference","stored":false,"name_th":"iReadCustomer · แผนที่น้ำท่วม กทม.","name_en":"iReadCustomer · Bangkok flood map","agency_th":"iReadCustomer (เอเจนซี่การตลาด)","agency_en":"iReadCustomer (marketing agency)","cadence_th":"—","cadence_en":"—","url":"https://ireadcustomer.com/th/tools/bangkok-flood-map","api":"—","metrics":[],"note_th":"ศึกษา 28 ก.ย. 2569 สำหรับงานวิจัยแอปน้ำท่วม — ไม่ได้นำฟีเจอร์มาและไม่ได้ดึงข้อมูล","note_en":"Studied 28 Sep 2026 for the flood-app research — no feature taken, no data pulled"},{"id":"ref_bkk_flood_map","kind":"reference","stored":false,"name_th":"BKK Flood Map (อาสาสมัคร)","name_en":"BKK Flood Map (volunteers)","agency_th":"ผู้พัฒนาอาสาสมัคร · bkk-flood-map.bkk-flood-map.workers.dev","agency_en":"Volunteer developer · bkk-flood-map.bkk-flood-map.workers.dev","cadence_th":"—","cadence_en":"—","url":"https://bkk-flood-map.bkk-flood-map.workers.dev","api":"—","metrics":[],"note_th":"ที่มาของแนวคิด \"เส้นทางเลี่ยงน้ำ\": ใช้ Valhalla (FOSSGIS) จากเบราว์เซอร์ ปิดกล่องรอบจุดน้ำท่วมแล้วหาเส้นทางใหม่ เกณฑ์ตามประเภทรถ และระดับความลึกแบบคนขับ 0–4 — เราเขียนใหม่และใช้จุดน้ำท่วมจากเซ็นเซอร์ กทม. iTIC และ Traffy ไม่ได้ดึงข้อมูลจากเว็บนี้","note_en":"Source of the flood-avoiding route idea: browser-side Valhalla (FOSSGIS) routing that fences known flood points and re-routes, per-vehicle rules and a 0–4 driver depth scale — re-implemented here on BMA sensors, iTIC and Traffy; no data is pulled from this site"},{"id":"ref_valhalla_fossgis","kind":"reference","stored":false,"name_th":"Valhalla routing (FOSSGIS) บนข้อมูล OpenStreetMap","name_en":"Valhalla routing (FOSSGIS) on OpenStreetMap data","agency_th":"FOSSGIS e.V. · valhalla1.openstreetmap.de","agency_en":"FOSSGIS e.V. · valhalla1.openstreetmap.de","cadence_th":"ตามคำขอ (จากเบราว์เซอร์ของผู้ใช้)","cadence_en":"on request (from the user's browser)","url":"https://valhalla1.openstreetmap.de","api":"—","metrics":[],"note_th":"เซิร์ฟเวอร์หาเส้นทางสาธารณะ ใช้ตามนโยบายการใช้งาน (~1 ครั้ง/วินาที/ผู้ใช้) ข้อมูลถนน © ผู้ร่วมพัฒนา OpenStreetMap","note_en":"Public routing server, used within its fair-use policy (~1 request/s per user). Road data © OpenStreetMap contributors"},{"id":"ref_camera_channels","kind":"reference","stored":false,"name_th":"ช่องทางกล้อง CCTV กทม. นนทบุรี ปทุมธานี (ไดเรกทอรี)","name_en":"CCTV channels — Bangkok, Nonthaburi, Pathum Thani (directory)","agency_th":"สนน. กทม. · กทม. จราจร · มูลนิธิ iTIC · Longdo · JK World · เทศบาลนครปากเกร็ด · เทศบาลนครนนทบุรี · เทศบาลนครรังสิต","agency_en":"BMA Drainage · BMA Traffic · iTIC Foundation · Longdo · JK World · Pak Kret City · Nonthaburi City · Rangsit City","cadence_th":"—","cadence_en":"—","url":"https://floodbangkok.bangkok.go.th/","api":"—","metrics":[],"note_th":"ลิงก์ในกำแพงกล้อง (\"ช่องทางกล้องอื่น ๆ\") รวบรวมจากรายการที่แชร์บน Facebook 27 ก.ย. 2569: floodbangkok.bangkok.go.th · cpudapp.bangkok.go.th/bmatraffic · live.iticfoundation.org · traffic.longdo.com · world.tehx.dyndns.info/flood · thaiclouderp.com (ปากเกร็ด) · nkndatamap.nakornnont.go.th · cdp.rangsitcity.go.th — เปิดเว็บของเจ้าของโดยตรง ไม่ได้ฝังหรือคัดลอกภาพ","note_en":"Links in the camera wall (\"More camera channels\"), compiled from a list shared on Facebook on 27 Sep 2026: floodbangkok.bangkok.go.th · cpudapp.bangkok.go.th/bmatraffic · live.iticfoundation.org · traffic.longdo.com · world.tehx.dyndns.info/flood · thaiclouderp.com (Pak Kret) · nkndatamap.nakornnont.go.th · cdp.rangsitcity.go.th — each opens its owner's site; nothing is embedded or copied"},{"id":"cctv_rangsit","kind":"reference","stored":false,"name_th":"กล้องเทศบาลนครรังสิต (ท่าน้ำสะพานแดง · ระดับน้ำ)","name_en":"Rangsit City Municipality cameras (Saphan Daeng pier water level)","agency_th":"เทศบาลนครรังสิต จ.ปทุมธานี — ส่งภาพผ่าน IPCamLive","agency_en":"Rangsit City Municipality, Pathum Thani — streamed via IPCamLive","cadence_th":"สด","cadence_en":"live","url":"https://rangsitcity.go.th/cctvrangsitcity/","api":"/api/cctv/all (source: rangsit)","metrics":[],"note_th":"ภาพเป็นของเทศบาลนครรังสิต IPCamLive (ipcamlive.com) เป็นผู้ให้บริการส่งสัญญาณ เทศบาลไม่ได้ประกาศพิกัด: กล้องท่าน้ำสะพานแดงวางที่ตลาดสะพานแดง (OpenStreetMap) คลาดเคลื่อนได้ ~150 ม. กล้องถนนรังสิต-ปทุมธานีไม่ได้ปักหมุดเพราะไม่มีตำแหน่งที่ยืนยันได้ ดูได้ที่หน้าเว็บของเทศบาล · กล้องอื่นในหน้านั้นเป็นลิงก์ที่ฝังรหัสผ่าน เราไม่นำมาแสดง","note_en":"Video belongs to Rangsit City Municipality; IPCamLive (ipcamlive.com) carries the stream. The municipality publishes no coordinates: the Saphan Daeng pier camera is placed at Red Bridge Market (OpenStreetMap), ~150 m precision; the Rangsit–Pathum Thani Road camera is not pinned (no verifiable point) — see the municipality page. Other cameras on that page are links with embedded passwords; we do not show them."},{"id":"cctv_dwr","kind":"reference","stored":false,"name_th":"กล้องริมน้ำ สถานีโทรมาตรกรมทรัพยากรน้ำ (131 ตัว)","name_en":"Department of Water Resources telemetry-station riverside cameras (131)","agency_th":"กรมทรัพยากรน้ำ — telemetry.dwr.go.th","agency_en":"Department of Water Resources (DWR) — telemetry.dwr.go.th","cadence_th":"ภาพนิ่ง ~รายชั่วโมง","cadence_en":"still images, ~hourly","url":"https://telemetry.dwr.go.th/reportCctv","api":"/api/cctv/all (source: dwr) · /api/cctv/dwr?id=","metrics":[],"note_th":"ภาพเป็นของกรมทรัพยากรน้ำ พบผ่านเว็บ \"เฝ้าน้ำ\" (faonam.com) แต่อ่านจาก API สาธารณะของกรมฯ โดยตรง พิกัดแปลงจาก UTM ในระบบกรมฯ และต้องตกในจังหวัดที่กรมฯ ระบุ — 1 สถานี (TA092306) พิกัดในระบบผิด จึงไม่ปักหมุด · ระบบกรมฯ ส่งลิงก์กล้องที่มีรหัสผ่านมาด้วย เราไม่เก็บและไม่ลิงก์","note_en":"Images belong to DWR. Found through \"เฝ้าน้ำ\" (faonam.com), but read from DWR's public API directly. Positions are converted from DWR's UTM and must fall in the province DWR names — one station (TA092306) has an impossible position in DWR's record and is not pinned. DWR's API also returns camera links with passwords; we neither store nor link them."},{"id":"ref_artifact_avoid_roads","kind":"reference","stored":false,"name_th":"เลี่ยงถนนน้ำท่วม กทม. (Claude artifact)","name_en":"Avoid flooded roads, Bangkok (Claude artifact)","agency_th":"ผู้จัดทำอิสระ · claude.ai/artifact","agency_en":"Independent author · claude.ai/artifact","cadence_th":"—","cadence_en":"—","url":"https://claude.ai/artifact/N6umcENfSgoY6GMkhVKwZs","api":"—","metrics":[],"note_th":"ที่มาของแนวคิด \"เทียบกับรอบก่อน\" (แห้งแล้ว/ลดลง/เท่าเดิม/สูงขึ้น/ท่วมใหม่) → change_24h ใน /api/bangkok/road-water (4.94.0) — ไม่ได้ดึงข้อมูลจากหน้านี้","note_en":"Source of the \"compare with an earlier round\" idea (cleared / fell / held / rose / new) → change_24h in /api/bangkok/road-water (4.94.0) — no data is pulled from this page"},{"id":"ref_faonam","kind":"reference","stored":false,"name_th":"เฝ้าน้ำ (faonam.com)","name_en":"Fao Nam (faonam.com)","agency_th":"ผู้พัฒนาอิสระ · faonam.com","agency_en":"Independent developer · faonam.com","cadence_th":"—","cadence_en":"—","url":"https://www.faonam.com","api":"—","metrics":[],"note_th":"ที่เราพบกล้องริมน้ำของกรมทรัพยากรน้ำ (4.92.0) — ไม่ได้ดึงข้อมูลจากเว็บนี้","note_en":"Where we found the Department of Water Resources' riverside cameras (4.92.0) — no data is pulled from this site"},{"id":"ref_paddypure_samutprakan","kind":"reference","stored":true,"name_th":"พิกัดน้ำท่วมสมุทรปราการ (paddypure.com)","name_en":"Samut Prakan flood coordinates (paddypure.com)","agency_th":"ผู้จัดทำอิสระ · รวบรวมจากคอมเมนต์ใต้โพสต์ของเพจข่าวสารเมืองปราการ","agency_en":"Independent author · compiled from comments under a post by the Khao San Mueang Prakan page","cadence_th":"ภาพรวมครั้งเดียว 29 ก.ย. 11:00 น.","cadence_en":"one snapshot, 29 Sep 11:00","url":"https://paddypure.com/flood-samutprakan-2569-09-29","api":"/api/bulletins","metrics":[],"note_th":"เก็บเฉพาะชื่อสถานที่ พิกัด จำนวนรายงาน แนวโน้ม เวลาล่าสุด และความลึกที่ระบุ — ไม่เก็บข้อความหรือรูปของผู้คอมเมนต์ หมดอายุ 30 ก.ย. 11:00 น.","note_en":"We keep place name, position, report count, trend, latest time and stated depth only — never commenters' text or photos. Expires 30 Sep 11:00."},{"id":"bulletin_rid_chaophraya","kind":"reference","stored":true,"name_th":"แผนบริหารน้ำเจ้าพระยา–ป่าสัก ของกรมชลประทาน (28 ก.ย.)","name_en":"RID Chao Phraya – Pa Sak operations plan (28 Sep)","agency_th":"กรมชลประทาน — ตามที่ \"ดุลยชล\" สรุปในโพสต์ \"อ่านระบบเจ้าพระยา\"","agency_en":"Royal Irrigation Department — as summarised by ดุลยชล (\"อ่านระบบเจ้าพระยา\")","cadence_th":"ประกาศ","cadence_en":"announcement","url":"https://flood.nonarkara.org/api/bulletins","api":"/api/bulletins","metrics":[],"note_th":"ตรวจเทียบกับฟีดของเราแล้ว 29 ก.ย. (C.2, C.13, เขื่อนป่าสัก) · แผนเพิ่มการระบายป่าสัก 30 ก.ย.–2 ต.ค. · หมดอายุ 3 ต.ค.","note_en":"Checked against our own feeds on 29 Sep (C.2, C.13, Pa Sak dam) · Pa Sak release steps 30 Sep – 2 Oct · expires 3 Oct."},{"id":"bulletin_bkk_roads","kind":"reference","stored":true,"name_th":"ประกาศถนนน้ำท่วม กทม. 29 ก.ย. 08:30 น.","name_en":"Bangkok flooded-roads bulletin, 29 Sep 08:30","agency_th":"ไม่ทราบผู้เผยแพร่ต้นทาง (ประกาศที่ส่งต่อกันทางโซเชียล)","agency_en":"original publisher not identified (circulating on social media)","cadence_th":"ประกาศ","cadence_en":"announcement","url":"https://flood.nonarkara.org/api/bulletins","api":"/api/bulletins","metrics":[],"note_th":"รายชื่อถนนและซอย 49 รายการ แบ่ง น้ำท่วมสูง / น้ำท่วม / ชุมชน — ไม่มีพิกัด จึงไม่ปักบนแผนที่ ใช้ตอบในแชท · หมดอายุ 29 ก.ย. 20:30 น.","note_en":"49 roads and sois in three tiers (deep / flooded / communities) — no coordinates, so not drawn on the map; used in the chat · expires 29 Sep 20:30."},{"id":"ref_flood2026_floodwatch","kind":"reference","stored":false,"name_th":"BKK FloodWatch 2026 (โอเพนซอร์ส MIT)","name_en":"BKK FloodWatch 2026 (open source, MIT)","agency_th":"bejranonda · github.com/bejranonda/flood2026","agency_en":"bejranonda · github.com/bejranonda/flood2026","cadence_th":"—","cadence_en":"—","url":"https://flood.autobahn.bot","api":"—","metrics":[],"note_th":"ที่มาของวิธีพยากรณ์รายสถานี (/api/gauge-forecast): คงที่ / น้ำขึ้นลงที่ฟิตจากสถานีเอง / แนวโน้มแบบหน่วง ทดสอบย้อนหลังและใช้เมื่อชนะ \"คงที่\" พร้อมช่วงจากความคลาดเคลื่อนจริง — เรานำมาเขียนใหม่ใช้กับคลังข้อมูลของเราเอง ไม่ได้ดึงข้อมูลจากเว็บนี้","note_en":"Source of the per-gauge forecast method (/api/gauge-forecast): persistence / a tide fitted per gauge / a damped trend, backtested and served only when it beats persistence, with ranges from real errors — re-implemented on our own archive; no data is pulled from this site"},{"id":"ref_rod_platform","kind":"reference","stored":false,"name_th":"ROD Platform — แบบจำลองน้ำท่วมกรุงเทพฯ (ฉากทัศน์)","name_en":"ROD Platform — Bangkok flood simulation (scenario)","agency_th":"rodplatform.net","agency_en":"rodplatform.net","cadence_th":"ฉากทัศน์เดียว (26 ก.ย. 2569)","cadence_en":"one scenario (26 Sep 2026)","url":"https://www.rodplatform.net/","api":"—","metrics":[],"note_th":"แบบจำลอง 2 มิติ ฝนบนพื้นผิวภูมิประเทศ ระดับแขวง/ตำบล 573 แห่ง — เป็นฉากทัศน์ ไม่ใช่สถานการณ์ปัจจุบัน (ยังไม่มีคลอง อาคาร ถนน และไม่เปิดเผยฝนที่ใช้) แนวคิด \"น้ำไหลจากแขวงไหนไปแขวงไหน\" เป็นแรงบันดาลใจ เราไม่ได้แสดงตัวเลขความลึกจากแบบจำลองนี้","note_en":"A 2D rain-on-terrain simulation for 573 sub-districts — a scenario, not current conditions (no canals, buildings or roads yet; the rain used is not published). Its \"which sub-district sends water to which\" idea is an inspiration; we do not show its depths"},{"id":"ref_citymeter_landometer","kind":"reference","stored":false,"name_th":"CityMETER (Landometer)","name_en":"CityMETER (Landometer)","agency_th":"Landometer · landometer.com","agency_en":"Landometer · landometer.com","cadence_th":"—","cadence_en":"—","url":"https://landometer.com/v3/citymeter?d=trafficIncident","api":"—","metrics":[],"note_th":"แรงบันดาลใจ: นับรายงาน 24 ชม. รายพื้นที่แยกตามประเภท (รวมรถเสีย) และแยก \"จำนวนรายงาน\" ออกจาก \"จำนวนจุด\" — ข้อมูลเดียวกันจาก iTIC Foundation ผ่าน Longdo ไม่ได้ดึงข้อมูลจาก CityMETER","note_en":"Inspiration: 24 h report counts by area and type (incl. stalled cars), and \"reports\" kept apart from \"places\" — same iTIC Foundation data via Longdo; no data is pulled from CityMETER"},{"id":"ref_sakaeo_flood_watch","kind":"reference","stored":false,"name_th":"ศูนย์ข้อมูลน้ำท่วม จ.สระแก้ว (Sa Kaeo Flood Watch & SOS)","name_en":"Sa Kaeo Flood Watch & SOS","agency_th":"vibecoded regional dashboard · สระแก้ว","agency_en":"vibecoded regional dashboard · Sa Kaeo","cadence_th":"~5 นาที","cadence_en":"~5 minutes","url":"https://sakaeo-flood.onrender.com/","api":"https://sakaeo-flood.onrender.com/api/floods","metrics":["severity","waterLevel","passableFor","recommendedRoute","reporterName","contactPhone","reportCount"],"note_th":"แรงบันดาลใจด้าน UX: severity 3 สถานะ (safe/warning/danger) + คำอธิบายการสัญจรต่อประเภทรถ + เส้นทางทดแทน + เบอร์โทรต่อรายงาน + ระดับความน่าเชื่อถือของผู้แจ้ง (รัฐ / อาสา / พลเมืองดี) — 18 ผู้แจ้ง 5 อำเภอ ไม่ได้ดึงข้อมูลจาก Sakaeo","note_en":"Inspiration (UX): three-state severity enum (safe/warning/danger) + per-vehicle-class passability + recommended route + contact phone per report + reporter credibility tier (gov / volunteer / citizen) — 18 reporters, 5 districts; we do not pull data from Sakaeo"},{"id":"ref_drainage_design_60mm","kind":"reference","stored":false,"name_th":"เกณฑ์ออกแบบระบบระบายน้ำ กทม. 60 มม./ชม.","name_en":"Bangkok drainage design intensity 60 mm/hr (BMA, ~1980s–present)","agency_th":"สำนักการระบายน้ำ กทม. + วิศวกรรมสถานแห่งประเทศไทย","agency_en":"BMA Drainage + Engineering Institute of Thailand","cadence_th":"—","cadence_en":"—","url":"https://dds.bangkok.go.th","api":"—","metrics":["design_rain_1h_mm","design_rain_24h_mm","chain_capacity","failure_modes"],"note_th":"เกณฑ์ออกแบบ 60 มม./ชม. (≈80 มม./วัน) — 6 failure modes (ท่อเล็ก/ปากรับน้ำไม่พอ/ความลาด/ไม่มีพื้นที่หน่วง/อุดตัน/ต้น-ปลายไม่สมดุล) — แยก \"ฝนเกินเกณฑ์\" ออกจาก \"ระบบขาดมาตรฐาน\" — อ้างอิง ธงชัย พรรณสวัสดิ์, คู่มือการออกแบบระบบระบายน้ำเสียและน้ำฝน, วิศวกรรมสถานแห่งประเทศไทย, 2534–2558","note_en":"Design intensity 60 mm/hr (≈80 mm/day) — 6 failure modes (pipe too small / inlet insufficient / slope wrong / no retention / clogged / chain imbalance) — \"rain exceeded\" vs \"system not maintained to design\" distinction — see knowledge/bangkok-drainage-design-2026-09-27.md; cite ธงชัย พรรณสวัสดิ์ manual"},{"id":"ref_peoples_flood69","kind":"reference","stored":false,"name_th":"ศูนย์ข้อมูลน้ำท่วม flood69 · พรรคประชาชน","name_en":"People's Party flood69 dashboard","agency_th":"พรรคประชาชน · data team","agency_en":"People's Party · data team","cadence_th":"~10 นาที","cadence_en":"~10 minutes","url":"https://flood69.peopleparty.or.th/ (URL pending owner confirmation)","api":"/api/places (99) · /api/news · /api/klongmap · /api/systems","metrics":["parking","shelter","klongmap","systems"],"note_th":"Vibecoded dashboard พรรคประชาชน — จอดรถ / ที่พัก / แผนที่คลอง / ระบบ ไม่มี auth มิรเรอร์ถ้าเจ้าของอนุมัติ","note_en":"People's Party vibecoded dashboard — parking / shelter / canal map / systems, no auth; mirror pending owner policy approval"},{"id":"ref_jkworld_flood_watch","kind":"reference","stored":false,"name_th":"Bangkok flood watch · JK World","name_en":"JK World Bangkok flood watch","agency_th":"vibecoded regional dashboard · JK World (tehx.dyndns.info)","agency_en":"vibecoded regional dashboard · JK World (tehx.dyndns.info)","cadence_th":"~15 นาที (ถนน) · ~60 วิ (กล้อง)","cadence_en":"~15 min (roads) · ~60 s (cameras)","url":"https://world.tehx.dyndns.info/flood","api":"/api/flood · /api/sensors","metrics":["flooded_roads","paired_cctv","multilingual_th_en_ja"],"note_th":"แรงบันดาลใจด้าน UX: จับคู่จุดน้ำท่วมกับกล้อง CCTV สดใกล้เคียง · ไทย / อังกฤษ / ญี่ปุ่น · MapLibre GL + Supercluster · Cloudflare-fronted home-lab tunnel · ลิงก์ทางการ DDS ในเมนู · Buy Me a Coffee ไม่มี AdSense ในแผงข้อมูล ไม่ได้ดึงข้อมูลจาก JK World","note_en":"Inspiration (UX): pair each flooded road with the nearest live CCTV thumbnail · EN / TH / JA multilingual · MapLibre GL + Supercluster · Cloudflare-fronted home-lab tunnel · outbound link to BMA DDS · Buy Me a Coffee; ads kept off data surfaces; we do not pull data from JK World"},{"id":"geoglounge_s1_rtc","kind":"reference","stored":false,"name_th":"โน้ตบุ๊กทำแผนที่น้ำท่วมด้วย Sentinel-1 RTC (Microsoft Planetary Computer)","name_en":"Sentinel-1 RTC flood-mapping notebook (Microsoft Planetary Computer)","agency_th":"Geoglounge — Facebook group \"Geography Lounge Thailand\" (แจกเผยแพร่โดยสมาชิกกลุ่ม)","agency_en":"Geoglounge — Facebook group \"Geography Lounge Thailand\" (shared by a group member)","cadence_th":"ไม่ได้ดึงอัตโนมัติ · สคริปต์วิจัยทำเองบน Colab · ภาพ Sentinel-1 RTC อัปเดตทุก 6–12 วัน","cadence_en":"not polled · a research script run manually on Colab · Sentinel-1 RTC imagery every 6–12 days","url":"https://www.facebook.com/Geoglounge","api":"ไม่มี API ของเรา — STAC: https://planetarycomputer.microsoft.com/api/stac/v1 (collection: sentinel-1-rtc)","metrics":["flood_extent_rai","cropland_rai","builtup_rai","sar_change_db","lulc_worldcover"],"note_th":"เครดิตถึง Geoglounge ไม่ว่าเราจะใช้หรือไม่ใช้ · เป็นโน้ตบุ๊ก Colab เปิดสแต็ก (pystac-client + odc-stac + xarray) ทำ before/after change detection บน Sentinel-1 RTC เทียบภายใน relative orbit เดียวกัน ภาพก่อนใช้ค่า median ภาพหลังใช้ค่า min แล้วตัดด้วย JRC permanent water, connected components และ slope จาก Copernicus DEM ก่อนแบ่งพื้นที่ตาม ESA WorldCover · จุดแข็งที่น่าสนใจ: Planetary Computer ให้ข้อมูลผ่าน STAC + SAS token โดยไม่ต้องมีบัญชี Earthdata ซึ่งเป็นสาเหตุที่ NASA IMERG ตอนนี้ตอบ 401 · ข้อจำกัดที่ผู้เขียนระบุเองและเราต้องจำไว้: อาคารทำให้เกิด double bounce สว่างขึ้น ไม่ใช่มืดลง วิธีนี้จึงประเมินน้ำท่วมในเขตเมืองต่ำกว่าความเป็นจริง และแยกทุ่งรับน้ำ/นาที่ปล่อยน้ำตามรอบการเพาะปลูกออกจากน้ำท่วมจริงไม่ได้ · ณ 2 ต.ค. 2569 เรายังไม่ได้รัน pipeline นี้ และยังไม่ได้ดึงข้อมูลใด ๆ จากแหล่งนี้เข้าระบบ","note_en":"Credited to Geoglounge whether or not we adopt it · an open-stack Colab notebook (pystac-client + odc-stac + xarray) doing before/after change detection on Sentinel-1 RTC, comparing only within the same relative orbit, before-image as median and after-image as min, then masking JRC permanent water, connected components and Copernicus DEM slope before splitting area by ESA WorldCover · why it matters here: Planetary Computer serves this through STAC + a SAS token with NO Earthdata account, which is exactly what NASA IMERG cannot do while it returns 401 · the limitations the author states are the ones we must carry: buildings cause double bounce, which brightens rather than darkens, so this UNDERESTIMATES flooding in urban districts, and intentional irrigation (ทุ่งรับน้ำ, off-season paddy) is not separable from real flooding without Royal Irrigation Department boundary data · as of 2 Oct 2026 we have NOT run this pipeline and pull no data from it into the system"}],"export":{"method_th":"ข้อมูลดิบ 45 วัน · รวมรายชั่วโมงถาวรหลังจากนั้น · ส่งออกรายวันต่อสถานี/ตัวชี้วัด","method_en":"Raw readings kept 45 days · permanent hourly rollups thereafter · daily export per station/metric","formats":["json","csv"],"endpoints":{"catalog":"GET /api/export/days","daily":"GET /api/export/daily?date=YYYY-MM-DD&format=json|csv","full":"GET /api/export/full (CSV · all permanent hourly aggregates)","stations":"GET /api/stations?q=…","series":"GET /api/series?source&station&metric&hours"}},"jaxa":{"portal":"https://earth.jaxa.jp/en/data/index.html","api":"https://data.earth.jaxa.jp/","ptree":"https://www.eorc.jaxa.jp/ptree/","note_th":"GSMaP (ฝนจากดาวเทียม) และ Himawari-9 จาก JAXA — แผนที่ใช้ GIBS WMTS (Web Mercator) ให้ตรงกับ basemap","note_en":"JAXA GSMaP precipitation and Himawari-9 — map tiles via NASA GIBS WMTS (Web Mercator) aligned to the basemap"}}