สำหรับนักพัฒนา
ข้อมูลพยากรณ์สำหรับนักพัฒนา
อ่านข้อมูลอากาศจันทบุรีจากแคชของ ThaiSkyward ผ่าน JSON โดยไม่ต้องใช้ API key สำหรับ endpoint สาธารณะที่ระบุในหน้านี้
พยากรณ์รายชั่วโมง
GET/forecast-data.json?source=ECMWF
เลือก source เป็น ECMWF, GFS หรือ WeatherNext3 หากไม่ระบุจะใช้ WeatherNext3 ตามสัญญา API เดิม ขณะที่แผนที่เปิดด้วย ECMWF จึงควรระบุ source ทุกครั้งที่นำไปอ้างอิง
curl "https://thaiskyward.com/forecast-data.json?source=ECMWF"ผลตอบกลับมี schemaVersion, source, status, checkedAt, displayTimeZone, freshnessHours, accumulation, units และ series โดย hours เริ่มจากชั่วโมงปัจจุบันและยาวได้ไม่เกิน 72 ชั่วโมงข้างหน้า ตามข้อมูลที่มีจริง
Feed นี้อ่านชุดรายชั่วโมงจากแคช orchard ส่วนชั้นสีแผนที่ ECMWF/GFS ใช้แคชกริดอีกชุด จึงไม่ควรถือว่า feed นี้เป็นข้อมูลครบทุกจุดบนแผนที่ ช่วงเวลาในหน้าจอแผนที่คือย้อนหลัง 12 ชั่วโมงถึงล่วงหน้า 24 ชั่วโมง
source- แหล่งพยากรณ์: WeatherNext3, ECMWF หรือ GFS
status- ready เมื่อมีชุดที่ยังสดและมีชั่วโมงให้ใช้; unavailable เมื่อไม่มีชุดที่ตรงเงื่อนไข
checkedAt- เวลาที่ระบบอ่านแคช ไม่ใช่เวลาออกพยากรณ์
series[].issuedAt- เวลาออกชุดพยากรณ์ ใช้ตรวจอายุข้อมูลร่วมกับ fresh
series[].fetchedAt- เวลานำข้อมูลเข้าระบบ
series[].fresh- true เมื่อชุดพยากรณ์ยังไม่เกินเกณฑ์ freshnessHours (12 ชั่วโมง)
series[].hours[].validTime- เวลาที่พยากรณ์มีผล รูปแบบ ISO 8601; แสดงผลใน Asia/Bangkok
หน่วยและการอ่านค่าที่ขาด
- อุณหภูมิ °C
- ความชื้น %
- ฝนและ ET₀ mm
- ลมและลมกระโชก km/h
- ทิศลมเป็นองศา
- VPD kPa
ฝนและ ET₀ เป็นยอดสะสมในหนึ่งชั่วโมงก่อน validTime ค่า null หมายถึงไม่มีค่า ไม่ใช่ศูนย์ เช่นเดียวกับ status=unavailable หรือ series=[] ที่ไม่ได้แปลว่าไม่มีฝน ยอดรายวันต้องตรวจว่าครบ 24 ชั่วโมงตามวันในเวลาไทย
VPD คำนวณจากอุณหภูมิและความชื้น ไม่ใช่อัตราคายน้ำจริงของต้นไม้ ET₀ คือการคายระเหยน้ำอ้างอิง จึงต้องพิจารณาฝน ความชื้นดินและระยะต้นก่อนใช้วางแผนให้น้ำ
สรุปพยากรณ์รายอำเภอ
ใช้ชุด ECMWF สำหรับหน้ารายอำเภอ: เมืองจันทบุรี มะขาม ขลุง และท่าใหม่ มี dataUpdatedAt, stale, staleAfterHours, units และ locations
เป็นพยากรณ์ที่พิกัดตัวแทนอำเภอ ไม่ใช่สถานีตรวจวัดในทุกสวน และเป็นคนละโครงสร้างกับ feed รายชั่วโมงข้างต้น ให้ใช้เวลาพยากรณ์และหน่วยที่มากับแต่ละชุด
สถานะ HTTP และการแคช
200อ่านได้ แต่ยังต้องตรวจ status, fresh หรือ stale ก่อนใช้งาน400ค่า source ไม่รองรับใน feed รายชั่วโมง503อ่านแคชไม่ได้ หรือสรุปรายอำเภอยังไม่มีข้อมูล ให้ลองใหม่ภายหลัง
ผลสำเร็จใช้ Cache-Control: public, s-maxage=300, stale-while-revalidate=600 ข้อมูลอาจมาจากแคช จึงต้องอ้างเวลาออกพยากรณ์และเวลาที่พยากรณ์มีผลเสมอ การอ่าน feed ไม่สั่งให้ระบบไปดึงโมเดลใหม่
อ้างอิงข้อมูลและอ่านต่อ
ThaiSkyward [โมเดล] พิกัด [lat, lon] พยากรณ์ ณ [validTime] ออกชุดพยากรณ์ [issuedAt] พร้อมลิงก์กลับหน้าข้อมูลที่ใช้อ้างอิง
วิธีอ่านข้อมูลและคำถามที่พบบ่อย ดัชนีสำหรับเครื่องอ่าน คำอธิบายข้อมูลฉบับเต็ม
สำหรับงานเชื่อมต่อเพิ่มเติม ติดต่อ hello@do.in.th