Skip to content

A library to return geojson results from the argis geocoder results

License

Notifications You must be signed in to change notification settings

conveyal/geocoder-arcgis-geojson

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

geocoder-arcgis-geojson

Isomorphic geocoding for reuse across our JavaScript libraries. This library is built to match the API of geocoder-arcgis in order to facilitate a quick conversion of our applications to use ESRI's geocoder. Read the ESRI docs here. Coordinates must be anything that can be parsed by lonlng.

Examples

All API methods (except autocomplete) accept the options clientId, clientSecret and forStorage. When using forStorage, the clientId and clientSecret options are required.

Autocomplete

import {autocomplete} from 'geocoder-arcgis-geojson'

autocomplete({
  boundary: {
    rect: {
      minLon: minLon,
      minLat: minLat,
      maxLon: maxLon,
      maxLat: maxLat
    }
  },
  focusPoint: {lat: 39.7691, lon: -86.1570},
  text: '1301 U Str'
}).then((result) => {
  console.log(result)
}).catch((err) => {
  console.error(err)
})

Bulk

import {autocomplete} from 'geocoder-arcgis-geojson'

bulk({
  addresses: [
    '1301 U Str',
    '123 Main St'
  ],
  boundary: {
    rect: {
      minLon: minLon,
      minLat: minLat,
      maxLon: maxLon,
      maxLat: maxLat
    }
  },
  clientId: 'secret',
  clientSecret: 'secret',
  focusPoint: {lat: 39.7691, lon: -86.1570}
}).then((result) => {
  console.log(result)
}).catch((err) => {
  console.error(err)
})

Reverse

import {reverse} from 'geocoder-arcgis-geojson'

reverse({
  point: {
    lat: 39.7691,
    lng: -86.1570
  }
}).then((result) => {
  console.log(result)
}).catch((err) => {
  console.error(err)
})

search({apiKey, text, ...options})

import {search} from 'geocoder-arcgis-geojson'

search({
  text: '1301 U Street NW, Washington, DC',
  focusPoint: {lat: 39.7691, lon: -86.1570},
  boundary: {
    rect: {
      minLon: minLon,
      minLat: minLat,
      maxLon: maxLon,
      maxLat: maxLat
    }
  }
}).then((geojson) => {
  console.log(geojson)
}).catch((err) => {
  console.error(err)
})

API

Table of Contents

autocomplete

index.js:94-128

Search for and address using ESRI's suggest service. This service does not return geojson, instead it returns the list of address suggestions and corresponding magicKeys

Parameters

Returns Promise A Promise that'll get resolved with the suggest result

bulk

index.js:144-195

Bulk geocode a list of addresses using ESRI's geocodeAddresses service.

Parameters

  • $0 Object
    • $0.addresses Array Can be array of strings or objects. Strings can be addresses or coordinates in the form lon,lat
    • $0.clientId string
    • $0.clientSecret string
    • $0.boundary Object?
    • $0.focusPoint Object?
    • $0.url string?

Returns Promise A Promise that'll get resolved with the bulk geocode result

reverse

index.js:210-251

Reverse geocode using ESRI's reverseGeocode service.

Parameters

  • $0 Object
    • $0.clientId string?
    • $0.clientSecret string?
    • $0.forStorage boolean Specifies whether result is inteded to be stored (optional, default false)
    • $0.point {lat: number, lon: number} Point to reverse geocode
    • $0.url string? optional URL to override ESRI reverseGeocode endpoint

Returns Promise A Promise that'll get resolved with reverse geocode result

search

index.js:270-324

Search for an address using ESRI's findAddressCandidates service.

Parameters

  • $0 Object
    • $0.clientId string?
    • $0.clientSecret string?
    • $0.boundary Object?
    • $0.focusPoint Object?
    • $0.forStorage boolean Specifies whether result is inteded to be stored (optional, default false)
    • $0.magicKey string? magicKey to use in searching as obtained from suggest results
    • $0.size number (optional, default 10)
    • $0.text string The address text to query for
    • $0.url string? optional URL to override ESRI reverseGeocode endpoint

Returns Promise A Promise that'll get resolved with search result

About

A library to return geojson results from the argis geocoder results

Resources

License

Stars

Watchers

Forks

Packages

No packages published