Skip to content
MapHero

MapHero Developer

Maps and location APIs for your applications.

A developer-first mapping platform: styles and tiles, place search, geocoding, routing and optimization behind one API key, on one regional map of Palestine, Iraq, Kuwait, Qatar, Saudi Arabia and Oman.

The live map could not start.

Map APIs and services

What a MapHero key can call

Each service is a grant on the key, so an application is given exactly the surfaces it uses and nothing else.

Maps

The rendered map itself, served to web and mobile clients.

  • Map styles
  • Map tiles
  • Map sessions

Search and location

Text to places, coordinates to addresses, and points onto the road network.

  • Place search
  • Autocomplete
  • Reverse geocoding
  • Snap to road
  • Nearest road

Routing

From a single leg to every pair of points in one call.

  • Find route
  • Multi-stop routing
  • Matrix

Optimization and geospatial

Visiting order, fleet distribution, and questions about areas.

  • Travelling salesperson
  • Vehicle routing
  • Which polygon

Not available on MapHero Developer: turn-by-turn instructions and isochrones. The routing engine behind this product does not implement either, so calls to them are refused as an unsupported capability even when a key holds the grant.

Geographic coverage

One regional map, six countries

MapHero is built around one regional map rather than a global index, so the cartography, the place data and the road network are maintained for the countries the platform serves. These six are the countries the map is built from today.

  • Palestine
  • Iraq
  • Kuwait
  • Qatar
  • Saudi Arabia
  • Oman

Nothing is served outside these six. Jordan, Lebanon, Syria, Bahrain, the United Arab Emirates and Yemen are planned and have no map yet, so no map, place or route is returned for them. Depth varies by country and by service; ask us which services are ready for the territory your application needs.

SDK integration

Render a map, then call the API from the same map

index.html
<!-- The MapHero Web SDK -->
<script src='https://maphero.io/maphero.js'></script>
<link href='https://maphero.io/maphero.css' rel='stylesheet'/>

<div id='map' style='width:100%; height:100%; position:absolute'></div>

const map = new mapHero.Map({
  container: 'map',
  style: 'day',
  token: 'mh_pk_…'
});
search — from the same map
// The map's key is reused, so one credential covers both.
const places = await map.getApi().searchPlaces({ key: 'ramallah' });

style: 'day' names a theme rather than a URL, and the SDK resolves it against the map the key belongs to. A publishable mh_pk_ key is the only kind that belongs in a browser.

Available SDKs

  • Web — mapHero.Map
  • Flutter
  • Android
  • iOS
  • React Native

The SDKs render the map. Everything else — search, geocoding, routing, matrix and optimization — is REST, so it can be called from any language with the same key.

SDK documentation

Developer console

Keys, usage and billing in one place

  • API keys — issue, restrict and revoke publishable and secret keys
  • Usage and analytics — what each key called, and how much
  • Billing — the account's plan and its balance
  • Map preview — see a map before an application does
  • Docs — the API reference, one click from the key that calls it

Pricing

Developer pricing is being finalised

We are still settling how the developer plans are shaped and what they include, so there is nothing to quote here yet. Tell us what you are building and we will talk through the terms directly.

No published rates. Anything you have seen quoted elsewhere for MapHero Developer is provisional and is not an offer.

Documentation and quick start

From nothing to a first response

  1. 01

    Create an account

    The account owns your maps, your keys and the usage they record.

  2. 02

    Create an API key

    Grant it only the services it needs, and restrict it to the origins you call from.

  3. 03

    Make your first request

    Send the key as X-API-Key and read the result from the data field.

your first request
curl -H "X-API-Key: mh_pk_…" \
  "https://api.maphero.io/places/search?key=ramallah"

Start with a key.

Render a map first, then add search, routing and optimization as you need them.