Skip to main content

Feature API Service

API Service ช่วยให้นักพัฒนาสามารถสร้างแผนที่เว็บไซต์ได้ง่ายขึ้น ข้อมูลในส่วนของ Features Collection นั้นอยู่ในรูปแบบ JSON ซึ่งสามารถมีให้บริการ 2 APIs Services

  • Get Collection : เป็นข้อมูล JSON รายละเอียดของ Features Collection ที่ทำขึ้นตามมาตรฐานของ OGC
  • Get Item : เป็น API Services ที่บริการข้อมูล Feature Items ที่อยู่ใน Collection นั้นๆ ซึ่งมีจำนวนข้อมูลเริ่มต้นจำกัดอยู่ที่ 10 items และมากสุดเท่ากับ 10,000 item

วิธีการ Share API Service

Datastore > Share API > Select API Keys > Copy

วิธีการ Share API

  1. คลิกที่จุด 3 จุด หรือ คลิกที่ Features Collection ของ Features Collection ที่ต้องการในไปใช้งาน
  2. คลิกที่ปุ่ม แบ่งปัน
  3. เลือก API Keys เพื่อใช้สำหรับการเข้าถึงของข้อมูล
  4. คัดลอก API Keys เพื่อนำไปใช้

รูปภาพประกอบความเข้าใจ

ตัวอย่าง Get Collection

https://va-cdn-02.vallarismaps.com/core/api/features/1.1/collections/667276c6563194677411bff3?api_key=ak8kmFR780oMHrsTG0QLWYR2efEyBdKaoomWoqDhXb8I4mu85AkU3fw6cT4S6rjn

จากตัวอย่าง API Get Collection ประกอบไปด้วย 3 ส่วนดังต่อไปนี้

  • Host : เซิร์ฟเวอร์ที่ให้บริการทรัพยากรข้อมูล เช่น https://va-cdn-02.vallarismaps.com/core/api
  • Path : เส้นทางไปสู่ข้อมูล โดยจำเป็นต้องระบุ collectionId ที่ต้องเรียกดูข้อมูลรายละเอียดของ Collection เช่น /features/1.1/collections/:collectionId
  • API Key : API Key กุญแจสำหรับเข้าถึงข้อมูล เช่น api_key={API_KEY}

ตัวอย่าง Get Item

https://va-cdn-02.vallarismaps.com/core/api/features/1.1/collections/667276c6563194677411bff3/items?api_key=ak8kmFR780oMHrsTG0QLWYR2efEyBdKaoomWoqDhXb8I4mu85AkU3fw6cT4S6rjn

จากตัวอย่าง API Get Collection Items ประกอบไปด้วย 3 ส่วนดังต่อไปนี้

  • Host : เซิร์ฟเวอร์ที่ให้บริการทรัพยากรข้อมูล
 https://va-cdn-02.vallarismaps.com/core/api
  • Path : เส้นทางที่ใช้ในการดึงข้อมูลจากระบบ โดยจำเป็นต้องระบุ collectionId ที่ต้องเรียกดูข้อมูล ตามด้วยเครื่องหมายทับ (Slash) และ items ซึ่งผลลัพธ์ที่ได้จากการเรียกเป็นข้อมูลรายการ Features Item ใน Collection Id ที่ทำการระบุ
/features/1.1/collections/:collectionId/items
  • API Key : API Key สำหรับเป็นกุญแจสำหรับเข้าถึงข้อมูล
api_key={API_KEY}

ค้นหาข้อมูลตามขอบเขต (Bounding Box)

การค้นหาข้อมูลเฉพาะพื้นที่ตามขอบเขตที่กำหนดเท่านั้น โดยขอบเขตที่กำหนดเป็นรูปสี่เหลี่ยม การระบุตัวเลขขอบเขตจึงประกอบไปด้วย 4 ตัวเลข หรือ 6 ตัวเลข หากระบบพิกัดที่ระบุมีค่าความสูงหรือความลึกด้วย ซึ่งเรียงลำดับการกำหนดขอบเขต ดังนี้

  • มุมล่างซ้าย X
  • มุมล่างซ้าย Y
  • มุมล่างซ้าย Z (ทางเลือก)
  • มุมบนขวา X
  • มุมบนขวา Y
  • มุมบนขวา Z (ทางเลือก)

ตัวอย่างค้นหาข้อมูลตามขอบเขต

{host}/features/1.1/collections/:collectionId/items?api_key={API_KEY}&bbox=-180.0000000,-90.0000000,180.0000000,90.0000000

ค้นหาข้อมูลตามช่วงเวลาที่ทำการแก้ไขข้อมูลล่าสุด

การค้นหาข้อมูลตามช่วงเวลาที่ทำการแก้ไขข้อมูลล่าสุด เป็นการค้นหาข้อมูลที่อยู่ในคีย์ updatedAt ด้วยรูปแบบ RFC 3339 ซึ่งการค้นหาใช้คีย์ datetime สำหรับการส่งค่าพารามิเตอร์

ตัวอย่างค้นหาข้อมูลตามช่วงเวลา

{host}/features/1.1/collections/:collectionId/items?datetime=2021-02-02T14:09:44.673Z/..

ตัวอย่างการค้นหาข้อมูลตามช่วงรูปแบบต่าง ๆ

  • วัน-เวลา : 2018-02-12T23:20:50Z
  • ช่วงวัน-เวลา : 2018-02-12T00:00:00Z/2018-03-18T12:31:12Z
  • ช่วงวัน-เวลา (เฉพาะ เริ่มต้น หรือ สิ้นสุด):
    • เฉพาะเริ่มต้น : 2018-02-12T00:00:00Z/..
    • เฉพาะสิ้นสุด : ../2018-03-18T12:31:12Z

กำหนดจำนวนผลลัพธ์รายการข้อมูล (Limit)

การกำหนดจำนวนผลลัพธ์รายการข้อมูล สามารถใช้คีย์ limit สำหรับส่งค่าพารามิเตอร์ โดยค่าเป็นตัวเลขตั้งแต่ 0-10000 ซึ่งมีค่าเริ่มต้น คือ 10

ตัวอย่างการกำหนดจำนวนผลลัพธ์

{host}/features/1.1/collections/:collectionId/items?limit=300

ข้ามลำดับการแสดงผลลัพธ์ (Offset)

การข้ามลำดับการแสดงผลลัพธ์ สามารถใช้คีย์ offset สำหรับส่งค่าพารามิเตอร์ โดยค่าที่ส่งเป็นตัวเลขตั้งแต่ 0 เป็นต้น ซึ่งมีค่าเริ่มต้น คือ 0

ตัวอย่างข้ามลำดับการแสดงผลลัพธ์

{host}/features/1.1/collections/:collectionId/items?offset=0

เรียงลำดับการแสดงผลข้อมูล (Sort)

การเรียงลำดับการแสดงผลข้อมูลโดยใช้ สามารถใช้คีย์ sort สำหรับส่งค่าพารามิเตอร์ โดยผู้ใช้สามารถกำหนดค่าพารามิเตอร์เพื่อระบุคีย์และทิศทางการเรียงลำดับได้ดังนี้

คีย์:ทิศทางการเรียงลำดับ
  • คีย์ : ระบุชื่อคอลัมน์ข้อมูลที่ต้องการใช้สำหรับการเรียงลำดับ
  • ทิศทางการเรียงลำดับ : รูปแบบการเรียงข้อมูล
    • asc : เรียงจากน้อยไปหามาก
    • desc : เรียงจากมากไปหาน้อย

ตัวอย่างเรียงลำดับการแสดงผลข้อมูล ตัวอย่างนี้จะเรียงลำดับรายการข้อมูลใน Collectiion ตามค่า _createdAt จากเก่าไปใหม่ (เรียงจากค่า timestamp น้อยไปหามาก)

{host}/features/1.1/collections/:collectionId/items?sort=_createdAt:asc

ค้นหาข้อมูลโดยใช้ข้อมูลคุณลักษณะ (Properties)

การค้นหาข้อมูลโดยใช้ข้อมูลคุณลักษณะ (Properties) หรือข้อมูลที่อยู่ในคีย์ properties ใดๆ ของ Features Collection ที่ต้องการใช้สำหรับการค้นหา ในรูปแบบ Wildcard โดยผู้ใช้สามารถใช้คีย์และค่าของข้อมูล ซึ่งค่าของข้อมูลจะถูกครอบด้วยเครื่องหมายดอกจัน (*)

คีย์ : ค่าของข้อมูล

ตัวอย่างการค้นหาข้อมูลโดยใช้ข้อมูลคุณลักษณะ (Properties)

{host}/features/1.1/collections/:collectionId/items?prov_name_t=*กรุงเทพมหานคร*
เครื่องหมายดอกจัน (*)

เครื่องหมายดอกจัน (*) ใช้เพื่อแทนตัวอักษรหนึ่งตัวหรือหลายตัวในค่าของข้อมูล

Carmel Parameter

โปรดทราบว่าบางเบราว์เซอร์อาจแปลงพารามิเตอร์ URL เป็นตัวอักษรตัวพิมพ์เล็กโดยอัตโนมัติ