Client library for easily integrating Baato.io's services into your project
Using npm:
$ npm install --save @baatomaps/baato-js-client
The Baato JavaScript client library makes it easy to integrate the Baato API into existing web-based front-end projects. This package acts as a wrapper for the following Baato services:
The Baato.Search()
constructor can be used to make requests to the Search API.
import Baato from "@baatomaps/baato-js-client";
const search = new Baato.Search()
.setApiVersion("1.0") // default
.setBaseUrl(`https://api.baato.io/api`) // detault Baato base URL
.setKey("YOUR_BAATO_ACCESS_TOKEN")
.setQuery("kathmandu") // string query to search for
.setLimit(5) // limit the number of responses
.doRequest()
.then((response) => {
console.log(response); // search response
});
The Baato.Reverse()
constructor can be used to make requests to the Reverse Search API.
import Baato from "@baatomaps/baato-js-client";
const reverse = new Baato.Reverse()
.setApiVersion("1.0") // default
.setBaseUrl(`https://api.baato.io/api`) // detault Baato base URL
.setKey("YOUR_BAATO_ACCESS_TOKEN")
.setCoordinates([latitude, longitude]) // coordinates to reverse geocode
.setLimit(5) // limit the number of responses
.doRequest()
.then((res) => {
console.log(res); // reverse-search response
});
The Baato.Places()
constructor can be used to make requests to the Places API.
import Baato from "@baatomaps/baato-js-client";
const search = new Baato.Places()
.setApiVersion("1.0") // default
.setBaseUrl(`https://api.baato.io/api`) // detault Baato base URL
.setKey("YOUR_BAATO_ACCESS_TOKEN")
.setPlaceId("110023")
.doRequest()
.then((response) => {
console.log(response); // place response
});
For getting single best route.
import Baato from "@baatomaps/baato-js-client";
const points = ["27.71772,85.32784", "27.73449,85.33714"];
const bRouting = new Baato.Routing({
key: "YOUR_BAATO_ACCESS_TOKEN",
})
.setApiVersion("1.0") // default
.setBaseUrl(`https://api.baato.io/api`) // detault Baato base URL
.setKey("YOUR_BAATO_ACCESS_TOKEN")
.addPoints(points) // points for which route is to be calculated
.setVehicle("car") // one of car, bike, or foot
.getBest()
.doRequest()
.then((response) => {
console.log(response); // directions response
});
For also including alternative routes. Only supports two points. Adding more than two points will return in an error response.
import Baato from "@baatomaps/baato-js-client";
const points = ["27.71772,85.32784", "27.73449,85.33714"];
const bRouting = new Baato.Routing({
key: "YOUR_BAATO_ACCESS_TOKEN",
})
.setApiVersion("1.0") // default
.setBaseUrl(`https://api.baato.io/api`) // detault Baato base URL
.setKey("YOUR_BAATO_ACCESS_TOKEN")
.addPoints(points)
.setVehicle("car") // one of car. bike, or foot
.getAlternatives()
.doRequest()
.then((response) => {
console.log(response); // directions response
});
For elevation add getElevation()
.
To get the results in GeoJSON format, use one of our utilities Baato.Util().getGeoJsonFromSearchResults(res)
and pass the response as argument from one of the above features.
// res is the response
const geojson = new Baato.Util().getGeoJsonFromSearchResults(res);