Drop-in replacements for other geocoding APIs
Switching geocoding providers usually means rewriting the code that parses responses. We would rather you did not have to. Each host below accepts the paths and parameters of one provider's API and answers in that provider's JSON format, with our data behind it. Change the hostname, put your My Geocode key where the old one went, and ship. A free key takes your name, an email address and a minute.
Find your provider below
Each page lists the original host, the replacement host, and every path that is supported.
Change the host in your config
For example
maps.googleapis.combecomesgapi.mygeocode.com. Paths and parameters stay the same.Swap the key
Put your My Geocode key in the same parameter the old key used. A free key has 2,500 requests a day.
REST hosts
Google Maps Platform
maps.googleapis.com → gapi.mygeocode.comThe Geocoding, Places Autocomplete, Time Zone and Elevation web services all answer at the same paths on gapi.mygeocode.com, with the same JSON shape Google returns.
Endpoints and response formatBing Maps REST Services
dev.virtualearth.net → bing.mygeocode.comMicrosoft is retiring Bing Maps for Enterprise.
Endpoints and response formatHERE Geocoding and Search
geocode.search.hereapi.com, revgeocode.search.hereapi.com, autosuggest.search.hereapi.com, autocomplete.search.hereapi.com → here.mygeocode.comHERE splits its search API across several hosts.
Endpoints and response formatMapbox Geocoding
api.mapbox.com → mapbox.mygeocode.comBoth the older v5 Geocoding API and the current v6 endpoints answer at mapbox.mygeocode.com.
Endpoints and response formatGeocode.Farm
api.geocode.farm, www.geocode.farm → farm.mygeocode.comGeocode.Farm's forward and reverse endpoints, in both the v3 and v4 URL styles, answer at farm.mygeocode.com.
Endpoints and response formatOpenStreetMap Nominatim
nominatim.openstreetmap.org → osm.mygeocode.comThe public Nominatim instance asks for at most one request per second and no heavy use.
Endpoints and response formatOpenCage
api.opencagedata.com → opencage.mygeocode.comOpenCage uses one endpoint for forward and reverse geocoding and returns a rich annotations block.
Endpoints and response formatLocationIQ
us1.locationiq.com, eu1.locationiq.com → locationiq.mygeocode.comLocationIQ's search, reverse, autocomplete and timezone endpoints answer at locationiq.mygeocode.com.
Endpoints and response formatGeoapify
api.geoapify.com → geoapify.mygeocode.comGeoapify's geocoding endpoints return GeoJSON FeatureCollections with a flat properties object.
Endpoints and response formatTomTom Search
api.tomtom.com → tomtom.mygeocode.comTomTom's Geocode, Reverse Geocode and Fuzzy Search endpoints answer at tomtom.mygeocode.com with the same summary and results structure, including the freeformAddress field most integrations display.
Endpoints and response formatMapQuest Geocoding
www.mapquestapi.com, open.mapquestapi.com → mapquest.mygeocode.comBoth the licensed and the Open Data MapQuest geocoding endpoints answer at mapquest.mygeocode.com, with the info, options and results envelope and the adminArea1 to adminArea6 naming that MapQuest clients parse.
Endpoints and response formatGeocodio
api.geocod.io → geocodio.mygeocode.comGeocodio focuses on the United States and Canada.
Endpoints and response formatPositionStack
api.positionstack.com → positionstack.mygeocode.comPositionStack's forward and reverse endpoints answer at positionstack.mygeocode.com with the same data array and flat field names.
Endpoints and response formatip-api.com
ip-api.com, pro.ip-api.com → ipapi.mygeocode.comip-api's JSON endpoint is one of the most widely copied IP lookup formats.
Endpoints and response formatipinfo.io
ipinfo.io → ipinfo.mygeocode.comipinfo's compact JSON with a loc string and an org string prefixed by the AS number is reproduced at ipinfo.mygeocode.com.
Endpoints and response formatipstack
api.ipstack.com → ipstack.mygeocode.comipstack's standard lookup and check endpoints answer at ipstack.mygeocode.com with the same top-level fields and location object, over HTTPS on every plan.
Endpoints and response formatOpen-Elevation
api.open-elevation.com → openelevation.mygeocode.comOpen-Elevation's public server is a volunteer project with no uptime promise.
Endpoints and response formatJavaScript libraries
The same approach works for map and geocoder libraries. Load the Google Maps JavaScript API from gapi.mygeocode.com and google.maps.Map, Geocoder and places.Autocomplete keep working with our geocoding and elevation data behind them and free OpenStreetMap tiles for the map, with no charge for loading the library. There are loaders for the Bing Maps V8 control, HERE Maps for JavaScript and MapQuest.js, and configuration for MapLibre and Mapbox GL with mapbox-gl-geocoder, and for the Leaflet geocoder plugins.
What is the same and what is not
The same
- Paths, query parameters and HTTP methods documented by the provider.
- Response structure: field names, nesting, arrays, types and coordinate order.
- Status vocabularies, for example Google's
OKandZERO_RESULTSor Bing'sstatusCode. - Error shapes, so your existing error handling keeps working.
- Pricing. A request to a compatibility host costs the same as a request to our own endpoint and draws on the same key allowance.
Different
- The data. Coordinates, formatted addresses and confidence values are ours, so they will not match the original provider digit for digit.
- Identifiers. Place IDs are ours and are stable, but they cannot be passed to the original provider.
- Features outside geocoding, IP, timezone and elevation, such as routing, places details and photos, are not included. Each page lists what is missing.
- Keys. A pay-as-you-go key works from two IP addresses per rolling 24 hours and an Unlimited key from three, as on our own endpoints. Use more keys or packages for larger fleets.
Provider not listed?
Adding a compatibility host is a few days of work when the provider's format is documented. If you are on a service that is not here, tell us which one and roughly how many requests a day you send.