mapbox-sdk-js
A node.js and browser JavaScript client
to Mapbox services.
Services
Generally Available
- Geocoding
- Forward (place names ⇢ longitude, latitude)
- Reverse (longitude, latitude ⇢ place names)
- Upload API
- Upload data to be processed and hosted by Mapbox.
- Directions
- Profiles for driving, walking, and cycling
- GeoJSON & Polyline formatting
- Instructions as text or HTML
- Datasets
- Retrieve, add, and edit datasets.
- Styles
- Retrieve, add and edit styles, fonts and icons.
- Tilesets
- Tokens
- Retrieve, add and edit access tokens.
- Matrix
- Travel-time tables between coordinates up to 25 pairs
- Profiles for driving, walking and cycling
- Map Matching
Installation
$ npm install --save mapbox
Usage
Setup via node
:
var MapboxClient = require('mapbox');
Setup via script
tag:
<script src='https://unpkg.com/mapbox@1.0.0-beta9/dist/mapbox-sdk.min.js'></script>
Initializing:
var client = new MapboxClient('YOUR_ACCESS_TOKEN');
Basic usage of the geocoder:
client.geocodeForward('Chester, NJ', function(err, data, res) {
});
As an alternative to callbacks, each method also returns a Promise:
client.geocodeForward('Chester, NJ')
.then(function(res) {
var data = res.entity;
})
.catch(function(err) {
});
Listing resources may return a subset of the entire listing. If more pages are
available the res
object will contain a .nextPage()
method. This method
requires no arguments, other than an optional callback function, otherwise a
Promise is returned.
sub-requiring individual services
Each service is available as a sub-require if you'd only like to include only
its functionality and not the entire bundle. The returned MapboxClient
will have the same constructor style but only include functions necessary
for that service's support.
Available sub-requires:
- geocoding:
require('mapbox/lib/services/geocoding')
- surface:
require('mapbox/lib/services/surface')
- matching:
require('mapbox/lib/services/matching')
- directions:
require('mapbox/lib/services/directions')
- matrix:
require('mapbox/lib/services/matrix')
- datasets:
require('mapbox/lib/services/datasets')
- styles:
require('mapbox/lib/services/styles')
- uploads:
require('mapbox/lib/services/uploads')
- tilestats:
require('mapbox/lib/services/tilestats')
- static:
require('mapbox/lib/services/static')
- tilesets:
require('mapbox/lib/services/tilesets')
- tokens:
require('mapbox/lib/services/tokens')