Reverse Geocoding wrapper for the Swiftcomplete Places API
npm install @swiftcomplete/reverse-geocodesh
npm install @swiftcomplete/reverse-geocode
`
Authentication
Each request needs to be authenticated with an API key, which you can obtain by creating a Swiftcomplete account.
Making a request
`js
const swiftcompleteReverseGeocoder = require('@swiftcomplete/reverse-geocode');
swiftcompleteReverseGeocoder.setAPIKey('INSERT-KEY-HERE');
(async function () {
let results = await swiftcompleteReverseGeocoder.reverseGeocode('51.499403,-0.127362', {});
console.log(results);
}());
`
Response
`json
[
{
"primary":{
"text":"Westminster Abbey",
},
"secondary":{
"text":"London",
},
"type":"address.residential.building.data.emptyroad",
"geometry":{
"centre":{
"lat":51.499462,
"lon":-0.127448,
"type":"address"
}
},
"distance":{
"units":"m",
"measurement":9,
"type":"biasTowards",
"geometry":{
"centre":{
"lat":51.499403,
"lon":-0.127362
}
}
},
"populatedRecord":{
"lines":[
"Westminster Abbey",
"",
"London",
"SW1P 3PA",
"United Kingdom"
],
"label":"Westminster Abbey\nLondon\nSW1P 3PA\nUnited Kingdom"
}
}
]
`
Response field descriptions
- primary.text - A simple description of the address, usually the building & street
- secondary.text - A simple description of the location, usually the city
- geometry.centre - The coordinates of the address
- geometry.centre.type - The accuracy of the coordinates, either "address", "street" or "postcode"
- distance - How far the address is from your coordinates
- distance.geometry.centre - Your original coordinates
- populatedRecord.lines - The fully formatted postal address, line by line
- populatedRecord.label - The fully formatted postal address, in a simple label format
Customising the response
It's possible to pass in an optional options object to customise the response. Each field is optional within the object:
- distanceUnits - Unit of measurement to display how far away the address is from your coordinate ("metric", "imperial", "m", "km", "ft", "mi", default: "metric")
- groupByCompass - Enabling groupByCompass returns addresses surrounding your coordinate, rather than just the closest. Useful to return an overview of an area and ignore several addresses that are grouped together (true, false, default: "false")
- maxResults - Max number of results to return (up to 5, default: 1). Note that you are billed per result, so 4 results = 4 charges.
`js
const swiftcompleteReverseGeocoder = require('@swiftcomplete/reverse-geocode');
swiftcompleteReverseGeocoder.setAPIKey('INSERT-KEY-HERE');
(async function () {
let results = await swiftcompleteReverseGeocoder.reverseGeocode('45.421497,-75.702096', {
maxResults: 3,
distanceUnits: "ft"
});
console.log(results);
}());
``