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
- คลิกที่จุด 3 จุด หรือ คลิกที่ Features Collection ของ Features Collection ที่ต้องการในไปใช้งาน
- คลิกที่ปุ่ม แบ่งปัน
- เลือก API Keys เพื่อใช้สำหรับการเข้าถึงของข้อมูล
- คัดลอก 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=*กรุงเทพมหานคร*
เครื่องหมายดอกจัน (*) ใช้เพื่อแทนตัวอักษรหนึ่งตัวหรือหลายตัวในค่าของข้อมูล
โปรดทราบว่าบางเบราว์เซอร์อาจแปลงพารามิเตอร์ URL เป็นตัวอักษรตัวพิมพ์เล็กโดยอัตโนมัติ