API สำหรับอ่านข้อมูลน้ำฝน

⌘K

API สำหรับอ่านข้อมูลน้ำฝน

การกำหนดรายละเอียดของ API สำหรับอ่านข้อมูลน้ำฝน

API ID URL รายละเอียด
A001.1 /Rainfall อ่านข้อมูลน้ำฝนตามเงื่อนไขที่ระบุ

คุณลักษณะ API สำหรับอ่านข้อมูลน้ำฝน

API ID: A001.1
วัตถุประสงค์: อ่านข้อมูลน้ำฝน
Status: Required (ตั้งแต่ API version 1.0 Draft 1)
Since: 1.0 Draft 1
Revision: 1.0 Draft 1

ข้อมูลทั่วไป ในการติดต่อ API สำหรับอ่านข้อมูลน้ำฝน

ข้อมูล รายละเอียด
URL /Rainfall
HTTP Method GET

Query parameter ของ API สำหรับอ่านข้อมูลน้ำฝน

ลำดับ Parameter Type ความหมาย หมายเหตุ
1 interval string ประเภทความถี่ของการตรวจวัด (อ้างอิงค่าตามหัวข้อ การใช้ค่า interval ในการระบุความถี่ของข้อมูลด้านน้ำจากการตรวจวัด) required
2 latest boolean true – ดึงข้อมูลเฉพาะค่าของการตรวจวัดล่าสุด
false – ดึงข้อมูลตาม startDateTime และ endDateTime
required
3 startDatetime datetime วัน-เวลาที่ตรวจวัด (เริ่มต้น) – Inclusive required เมื่อค่าพารามิเตอร์ latest = false
4 endDatetime datetime วัน-เวลาที่ตรวจวัด (สิ้นสุด) – Inclusive required เมื่อค่าพารามิเตอร์ latest = false
5 provinceCode string รหัสจังหวัด (2 หลัก) ดูหัวข้อการอ้างอิงจังหวัด optional
6 amphoeCode string รหัสอำเภอ (4 หลัก) ดูหัวข้อการอ้างอิงอำเภอ optional
7 tambonCode string รหัสตำบล (6 หลัก) ดูหัวข้อการอ้างอิงตำบล optional
8 basinCode string รหัสลุ่มน้ำหลัก (2 หลัก) ดูหัวข้อการอ้างอิงลุ่มน้ำหลัก/ลุ่มน้ำสาขา optional
9 subBasinCode string รหัสลุ่มน้ำสาขา (4 หลัก) ดูหัวข้อการอ้างอิงลุ่มน้ำหลัก/ลุ่มน้ำสาขา optional
10 agencyCode string รหัสหน่วยงาน ดูหัวข้อรหัสหน่วยงาน optional
11 stationCode string รหัสสถานีตรวจวัดของหน่วยงาน ดูหัวข้อรหัสสถานีตรวจวัด optional

หมายเหตุ

1) การอ่านข้อมูลที่มีความถี่แตกต่างกัน ให้ทำการ call API แยกกัน
2) ข้อมูล parameter 5-11 ใช้ในการบ่งบอก filter ว่าต้องการดึงข้อมูลของสถานีตรวจวัดครอบคลุมพื้นที่ใดบ้าง

ตัวอย่าง HTTP Request Parameter ในการอ่านค่าแบบช่วงเวลา 15 นาที

latest=false
&startDatetime=2022-05-02T23:15:00
&endDatetime=2022-05-02T23:30:00
&interval=C-15
&provinceCode=10

ตัวอย่าง HTTP Request Parameter ในการอ่านค่าแบบช่วงเวลารายวัน

latest=false
&startDatetime=2022-05-02T07:00:00
&endDatetime=2022-05-02T06:59:59
&interval=P-Daily
&provinceCode=10

หมายเหตุ

มีการขึ้นบรรทัดใหม่สำหรับ Parameter และไม่ได้ทำ HTTP URL Encode เพื่อให้ง่ายต่อการอ่าน

โครงสร้างของ Response body ข้อมูลน้ำฝน

{
  "metadata": {
    "version": string,
    "dataProviderCode": string,
    "dataProviderName": string,
    "documentGenerateTime": datetime,
    "waterDatatype": string,
    "interval": string
  },
  "timeSeriesObservation": [
    {
      "observationMetadata": {
        "observeAgencyCode": string,
        "observeAgencyName": string,
        "originality": integer,
        "editAgencyCode": string,
        "editAgencyName": string
      },
      "resultTime": datetime,
      "station": {
        "stationCode": string,
        "stationReference": url
      },
      "waterResources": {
        "waterResourcesCode": string,
        "waterResourcesReference": url
      },
      "measurementResults": [
        {
          "instrumentPosition": {
            "position": string,
            "number": integer
          },
          "measureTime": datetime,
          "createTime": datetime,
          "updateTime": datetime,
          "variable": string,
          "value": decimal,
          "uom": string,
          "qualityFlag": string,
          "comment": string,
          "qualityControlLevel": string
        }
      ]
    }
  ]
}


หมายเหตุ

ในกรณีที่ ข้อมูลตามโครงสร้างมาตรฐานไม่ได้กำหนดเป็น Mandatory (ดูหัวข้อโครงสร้างข้อมูลตามลำดับเวลา (Time Series)) ถ้ามีข้อมูลสามารถส่งข้อมูลนั้นๆได้ตามโครงสร้าง แต่ในกรณีที่ไม่มีข้อมูล API อาจจะไม่ส่งข้อมูลนั้นๆกลับออกมา

ตัวอย่าง HTTP Response Body ของข้อมูลน้ำฝน 15 นาที

{
  "metadata": {
    "version": "1.0",
    "dataProviderCode": "G11004",
    "dataProviderName": "Meteorological Department",
    "documentGenerateTime": "2022-05-02T22:30:00",
    "waterDatatype": "A001",
    "interval": "C-15"
  },
  "timeSeriesObservation": [
    {
      "observationMetadata": {
        "observeAgencyCode": "G11004",
        "observeAgencyName": "Meteorological Department",
        "originality": 1
      },
      "resultTime": "2022-05-02T22:15:00",
      "station": {
        "stationCode": "G11004-103662",
        "stationReference": "https://api.my.org/twsapi/v1.0/StationInfo/G11004-103662"
      },
      "measurementResults": [
        {
          "measureTime": "2022-05-02T22:00:00",
          "createTime": "2022-05-02T22:00:00",
          "updateTime": "2022-05-02T22:00:00",
          "variable": "Rainfall",
          "value": 2.1,
          "uom": "mm",
          "qualityFlag": "U",
          "comment": "No quality control",
          "qualityControlLevel": "1"
        },
        {
          "measureTime": "2022-05-02T22:15:00",
          "createTime": "2022-05-02T22:15:00",
          "updateTime": "2022-05-02T22:15:00",
          "variable": "Rainfall",
          "value": 1.0,
          "uom": "mm",
          "qualityFlag": "U",
          "comment": "No quality control",
          "qualityControlLevel": "1"
        }
      ]
    }
  ]
}

หมายเหตุ

ข้อมูลที่ใส่ในตัวอย่างเป็นข้อมูลจำลองเพื่อประกอบความเข้าใจในการทำงานของ API เท่านั้น อาจจะไม่ตรงกับการใช้งานจริง

How can we help?