Vietnam POI Search API: Find Nearby Restaurants, Stores, and ATMs
How to use GoGoDuk's POI API to find nearby places in Vietnam: filter by category, radius, rating, and open-now. Returns GeoJSON, free 100 requests/day.
A POI (Points of Interest) search API is what powers every "restaurants near me", "stores around here", or "nearest ATM" feature in your app. For products aimed at Vietnamese users, you want a POI API that understands local place data rather than a global source that covers Vietnam thinly.
This guide shows how to use GoGoDuk's /v1/pois endpoint to find nearby places within a map view, filtered by place type, rating, and open status. If you are new to turning addresses into coordinates, start with What is geocoding?.
What a POI API is and when to use it
POIs are meaningful places on a map: restaurants, cafes, gas stations, hospitals, banks, supermarkets, and so on. A POI API returns a list of these places around a location, with coordinates so you can drop pins on a map.
Use a POI API when your product needs:
- Nearby search: show restaurants / stores / services close to a user or driver.
- Map place layers: render POI groups (food, shopping, health) as separate layers.
- Local discovery: build search experiences for restaurants, services, and attractions.
- Operations & analytics: combine places with admin boundaries to plan service areas.
On GoGoDuk, POIs live on the same platform as geocoding, reverse geocoding, and admin boundaries — one API key, free 100 requests/day, no credit card.
Calling /v1/pois
The endpoint needs the places:read scope and an X-API-Key header. The required parameter is bbox (a map view as minLng,minLat,maxLng,maxLat); add near to rank results by distance to a point.
Or in JavaScript:
The response is a GeoJSON FeatureCollection, with places ordered by increasing distance to near (or to the center of bbox if near is omitted):
Because it is standard GeoJSON, you can feed it straight into MapLibre GL JS, Leaflet, or any map library without conversion.
Advanced filtering
/v1/pois supports a few optional parameters to narrow results:
category— a comma-separated list of place types (matches any). Some real ids:restaurant,cafe,bar,bakery,supermarket,convenience_store,hospital,pharmacy,bank,atm,gas_station,lodging,shopping_mall. Get the full list with Vietnamese labels viaGET /v1/categories.min_rating— only return places with a rating ≥ this value (between 0 and 5).open_now— set totrueto return only places marked open.near—lng,latused as the distance-ranking center.limit— number of results, from 1 to 10 (default 5).
Example: find up to 10 cafes that are open now, rated 4 stars or higher, near a location:
The numbers above (counts, ratings) are illustrative of the syntax only. Real results depend on the data around the area you query.
POI layers on a map with vector tiles
When you want to show many places on an interactive map (not a short list), use the vector tile endpoint instead of repeatedly calling /v1/pois:
The map renderer fetches tiles by view and zoom level, so you can build a category map (food, shopping, health layers) while staying lightweight. When a user taps a pin, fetch that place's detail with:
One platform, one API key
The advantage of POIs on GoGoDuk is that they sit alongside the other location APIs for Vietnam: you use address geocoding & autocomplete for the user's origin, /v1/pois to find places around it, and admin boundaries to constrain by service area — all behind a single API key.
A few practical applications:
- Delivery app / store-finder: find stores near the customer and plot them on a map. See how to build a Store Locator for Vietnam.
- Zone-based operations: combine POIs with delivery zones.
See the full parameter and response reference in the API docs and the Vietnam POI API page.
Getting started
/v1/pois is part of GoGoDuk's free plan: 100 requests/day per account, enough for prototypes and many small production apps. Create an account, grab an API key, and run your first query in minutes.
Want to use GoGoDuk?
Free forever — 100 requests/day per account, no credit card. Higher limits on request.
Sign up →