EZ Map API

Every EZ Map account comes with API access for you to access your maps in your own projects.

Rate Limiting

All API requests are rate limited. The limits are approximately 60 calls per minute, after which users will receive a 429 "Too many requests" error and will be unable to make more requests for a minute.

The following headers are sent to assist users

Please contact us using the feedback tool to request an increase in limits.

Endpoints

All API endpoints begin with the same URL and require your EZ Map registered email address as well as your API key which can be found on your dashboard.

All endpoints require a HTTP POST request.

https://ezmap.co/api/{email}/{apikey}

Get Maps JSON

Endpoint

/getmaps

https://ezmap.co/api/{email}/{apikey}/getmaps

Response

JSON encoded array of map objects

[{
  "id": 1,
  "user_id": 1,
  "title": "My House",
  "apiKey": "AIxaSyBK0YfdfIUMRQ9xgz6A62WPfrVJuNMtMy8",
  "mapContainer": "ez-map",
  "width": 560,
  "height": 420,
  "responsiveMap": true,
  "latitude": 57.18807929165505,
  "longitude": -2.19426155090332,
  "markers": [{
    "title": "My House",
    "icon": "https:\/\/ezmap.co\/icons\/svgs\/location-blue.svg",
    "lat": 57.188079291655,
    "lng": -2.1942615509033203,
    "infoWindow": {"content": "…truncated HTML markup…"}
  }],
  "mapOptions": {
    "mapTypeControlStyle": "0",
    "mapTypeId": "roadmap",
    "zoomLevel": "11",
    "showStreetViewControl": "true",
    "showZoomControl": "true",
    "showScaleControl": "true",
    "draggable": "true",
    "doubleClickZoom": "true",
    "clickableIcons": "false",
    "showFullScreenControl": "false",
    "keyboardShortcuts": "false",
    "mapMakerTiles": "false",
    "showMapTypeControl": "false",
    "scrollWheel": "false"
  },
  "theme_id": 395,
  "created_at": "2016-05-10 12:59:00",
  "updated_at": "2016-11-17 16:55:50",
  "embeddable": true,
  "deleted_at": null
},
{
…
}]

Get Map Code

Endpoint

/getmapcode/{mapID}

https://ezmap.co/api/{email}/{apikey}/getmapcode/{mapID}

Response

Raw HTML Markup. This will be similar to the code you would normally paste from the grey box

<!-- Google map code from EZ Map - https://ezmap.co -->
<script src='https://maps.googleapis.com/maps/api/js?key='></script>
<script>
  function init() {
    var mapOptions = { "center": {  "lat": 57.511784490097,  "lng": -1.8120742589235306 }, "clickableIcons": true, "disableDoubleClickZoom": false, "draggable": true, "fullscreenControl": true, "keyboardShortcuts": true, "mapMaker": false, "mapTypeControl": true, "mapTypeControlOptions": {  "text": "Default (depends on viewport size etc.)",  "style": 0 }, "mapTypeId": "roadmap", "rotateControl": true, "scaleControl": true, "scrollwheel": true, "streetViewControl": true, "styles": false, "zoom": 3, "zoomControl": true};
    var mapElement = document.getElementById('ez-map');
    var map = new google.maps.Map(mapElement, mapOptions);

    google.maps.event.addDomListener(window, "resize", function() { var center = map.getCenter(); google.maps.event.trigger(map, "resize"); map.setCenter(center); });
  }
  google.maps.event.addDomListener(window, 'load', init);
</script>
<style>
  #ez-map{min-height:150px;min-width:150px;height: 420px;width: 100%;}
  #ez-map .infoTitle{}
  #ez-map .infoWebsite{}
  #ez-map .infoEmail{}
  #ez-map .infoTelephone{}
  #ez-map .infoDescription{}
</style>
<div id='ez-map'></div>
<!-- End of EZ Map code - https://ezmap.co -->