Bỏ qua

Tìm kiếm các địa điểm trong một khu vực cụ thể. Bạn có thể tinh chỉnh kết quả bằng cách cung cấp từ khóa hoặc chỉ định loại địa điểm.

Điểm cuối (Endpoint)

https://maps.track-asia.com/api/v2/place/nearbysearch/{outputFormat}

Định dạng đầu ra (outputFormat)

outputFormat Mô tả
json (khuyến nghị) định dạng JSON
xml định dạng XML

Tham số (Parameters)

Tham số Giá trị Mô tả Ví dụ
location Chuỗi (bắt buộc) Tọa độ trung tâm tìm kiếm dưới dạng {vĩ độ},{kinh độ}. Ví dụ: 10.76865,106.6681899 (vĩ độ: 10.76865, kinh độ: 106.6681899) 10.76865,106.6681899
radius Số (bắt buộc) Bán kính tìm kiếm tính bằng mét (m). Ví dụ: 100 = 100 mét. Tối đa 50,000 mét (50km). Kết quả ngoài bán kính này vẫn có thể được hiển thị tùy thuộc vào mật độ khu vực. 100
type Chuỗi Loại địa điểm cần tìm. Có thể chỉ định nhiều loại bằng dấu | (ví dụ: hospital|pharmacy) hospital
key Chuỗi (bắt buộc) Khóa API (sử dụng key của bạn, public_key bị giới hạn, chỉ dùng test) public_key
new_admin Boolean Trả về địa chỉ theo địa giới hành chính mới true
include_old_admin Boolean (Dùng kèm new_admin) Trả song song cả địa chỉ cũ và mới true

Mã ví dụ

Ví dụ này minh họa cách sử dụng định dạng JSON trong phản hồi.

https://maps.track-asia.com/api/v2/place/nearbysearch/json?location=10.76865,106.6681899&radius=100&key=public_key

Ví dụ này minh họa cách sử dụng định dạng XML trong phản hồi:

https://maps.track-asia.com/api/v2/place/nearbysearch/xml?location=10.76865,106.6681899&type=hospital|pharmacy&radius=100&key=public_key
# JSON
curl -G "https://maps.track-asia.com/api/v2/place/nearbysearch/json" \
--data-urlencode "location=10.76865,106.6681899" \
--data-urlencode "type=hospital|pharmacy" \
--data-urlencode "radius=100" \
--data-urlencode "key=public_key"

# XML
 curl -G "https://maps.track-asia.com/api/v2/place/nearbysearch/xml" \
--data-urlencode "location=10.76865,106.6681899" \
--data-urlencode "type=hospital|pharmacy" \
--data-urlencode "radius=100" \
--data-urlencode "key=public_key"
// JSON
const response = await fetch("https://maps.track-asia.com/api/v2/place/nearbysearch/json?location=10.76865,106.6681899&radius=100&key=public_key")
const data = await response.json()
console.log(data)

// XML
const responseXML = await fetch("https://maps.track-asia.com/api/v2/place/nearbysearch/xml?location=10.76865,106.6681899&type=hospital|pharmacy&radius=100&key=public_key")
const dataXML = await responseXML.text()
console.log(dataXML)

Phản hồi

JSON Phản hồi

Phản hồi là một đối tượng JSON với cấu trúc như sau:

  • status: Chuỗi trạng thái (ví dụ: "OK")
  • html_attributions: Mảng các chuỗi attribution HTML
  • results: Mảng các đối tượng kết quả. Mỗi đối tượng gồm:
    • place_id: Định danh duy nhất cho địa điểm
    • name: Tên địa điểm
    • formatted_address: Địa chỉ đầy đủ đã được chuẩn hóa
    • adr_address: Địa chỉ đã được gắn thẻ HTML để hiển thị
    • address_components: Mảng các đối tượng với:
      • long_name: Tên đầy đủ
      • short_name: Tên viết tắt
      • types: Mảng các loại địa chỉ
    • geometry: Đối tượng với:
      • location: Tọa độ (lat/lng)
      • location_type: Loại vị trí
      • viewport: Khu vực hiển thị (northeast/southwest)
    • plus_code: Đối tượng với:
      • compound_code: Mã khu vực
      • global_code: Mã toàn cầu
    • types: Mảng các loại địa điểm
    • icon: Tên biểu tượng
    • icon_background_color: Màu nền biểu tượng
    • url: (Có thể có) Đường dẫn tới trang chi tiết địa điểm
    • utc_offset: (Có thể có) Múi giờ địa phương (phút)
    • vicinity: (Có thể có) Địa chỉ gần nhất hoặc mô tả khu vực
    • old_address_components: (Chỉ có khi truyền include_old_admin=true) Mảng các đối tượng thành phần địa chỉ theo địa giới cũ, cấu trúc giống address_components.
    • old_formatted_address: (Chỉ có khi truyền include_old_admin=true) Địa chỉ đầy đủ theo địa giới cũ.
XML Phản hồi

Phản hồi XML có cấu trúc tương tự, các trường sẽ là các thẻ XML tương ứng với các trường JSON ở trên. Một số khác biệt:

  • Kết quả XML được bọc trong phần tử gốc <PlaceSearchResponse>
  • Các mảng trong JSON (như results, address_components, types) sẽ là các phần tử lặp lại trong XML
  • Các trường rỗng được thể hiện bằng mảng rỗng trong JSON, nhưng sẽ không có phần tử nào trong XML

Lưu ý quan trọng

  • Các trường trong phản hồi tuân theo chuẩn Google Maps Places API.
  • Phản hồi không bao gồm toàn bộ thông tin chi tiết của địa điểm. Để lấy thông tin đầy đủ nhất, hãy sử dụng API Place Detail.

Status

Status Mô tả
OK cho biết không có lỗi xảy ra; tìm kiếm thành công và ít nhất một kết quả đã được trả về.
ZERO_RESULTS cho biết tìm kiếm thành công nhưng không trả về kết quả nào. Điều này có thể xảy ra nếu không tìm thấy địa điểm nào trong bán kính tìm kiếm.
INVALID_REQUEST cho biết yêu cầu không hợp lệ (ví dụ: thiếu tham số bắt buộc, giá trị tham số không hợp lệ).

Error

Khi API trả về mã trạng thái khác OK, có thể có trường error_message bổ sung trong đối tượng phản hồi. Trường này chứa thông tin chi tiết hơn về lý do đằng sau mã trạng thái đã cho.

Các bước tiếp theo