Reverse Geocoding: Bing Maps REST Services

Provider: Microsoft Corp.
Url: https://msdn.microsoft.com/en-us/library/ff701710.aspx
Provider Client Libraries: Javascript, .Net
Multiple Languages: Yes
Limitations: Developer account: 10,000 transactions within 30 days period

 

Batch processing: 1,000,000 geocode entities non-billable transactions in any 12 month period

 

Windows Apps: 50,000 transactions per day

 

No Windows mobile apps: 125,000 per year

 

Information wizard: https://www.microsoft.com/maps/Licensing/licensing.aspx

 

If Enterprise prices do not need to be considered, base prices can be seen as a component of Azure subscriptions:

https://azure.microsoft.com/en-us/marketplace/partners/bingmaps/mapapis/

Price: Different prices that depends on the use.

 

Example request:

http://dev.virtualearth.net/REST/v1/Locations/47.64054,-122.12934?o=json&key=BingMapsKey

 

Example response:

{
   "authenticationResultCode":"ValidCredentials",
   "brandLogoUri":"http:\/\/dev.virtualearth.net\/Branding\/logo_powered_by.png",
   "copyright":"Copyright © 2011 Microsoft and its suppliers. All rights reserved. This API cannot be accessed and the content and any results may not be used, reproduced or transmitted in any manner without express written permission from Microsoft Corporation.",
   "resourceSets":[
      {
         "estimatedTotal":1,
         "resources":[
            {
               "__type":"Location:http:\/\/schemas.microsoft.com\/search\/local\/ws\/rest\/v1",
               "bbox":[
                  47.636705672917948,
                  -122.137016420622,
                  47.6444311080593,
                  -122.1217297861384
               ],
               "name":"1 Microsoft Way, Redmond, WA 98052",
               "point":{
                  "type":"Point",
                  "coordinates":[
                     47.640568390488625,
                     -122.1293731033802
                  ]
               },
               "address":{
                  "addressLine":"1 Microsoft Way",
                  "adminDistrict":"WA",
                  "adminDistrict2":"King Co.",
                  "countryRegion":"United States",
                  "formattedAddress":"1 Microsoft Way, Redmond, WA 98052",
                  "locality":"Redmond",
                  "postalCode":"98052"
               },
               "confidence":"Medium",
               "entityType":"Address",
               "geocodePoints":[
                  {
                     "type":"Point",
                     "coordinates":[
                        47.640568390488625,
                        -122.1293731033802
                     ],
                     "calculationMethod":"Interpolation",
                     "usageTypes":[
                        "Display",
                        "Route"
                     ]
                  }
               ],
               "matchCodes":[
                  "Good"
               ]
            }
         ]
      }
   ],
   "statusCode":200,
   "statusDescription":"OK",
   "traceId":"99b1256e09044490bce82bbbba1dab7a"
}

 

Reverse Geocoding: Nominatim

Provider: OpenStreetMaps
Url: http://wiki.openstreetmap.org/wiki/Nominatim#Reverse_Geocoding
Provider Client Libraries:
Multiple Languages: Yes
Limitations: 1 request per second (86400 per day)
Price: Free

 

You can use thid party providers or install your own instance

 

Example request:

http://nominatim.openstreetmap.org/reverse?format=xml&lat=52.5487429714954&lon=-1.81602098644987&zoom=18&addressdetails=1

Example response:

<reversegeocode timestamp="Fri, 06 Nov 09 16:33:54 +0000" querystring="...">
   <result place_id="1620612" osm_type="node" osm_id="452010817">
     135, Pilkington Avenue, Wylde Green, City of Birmingham, West Midlands (county), B72, United Kingdom
   </result>
   <addressparts>
     <house_number>135</house_number>
     <road>Pilkington Avenue</road>
     <village>Wylde Green</village>
     <town>Sutton Coldfield</town>
     <city>City of Birmingham</city>
     <county>West Midlands (county)</county>
     <postcode>B72</postcode>
     <country>United Kingdom</country>
     <country_code>gb</country_code>
   </addressparts>
</reversegeocode>

Reverse Geocoding: Google Maps API

Provider: Google Inc.
Url: https://developers.google.com/maps/documentation/geocoding/intro#ReverseGeocoding
Provider Client Libraries: Javascript, Java, Python, Android, iOS
Multiple Languages: Yes
Limitations: 2,500 free requests per day, 10 per second
Price: Free: 2,500 requests per day

 

Pay as you go: $0.50 USD / 1000 additional requests, up to 100,000 daily.

 

Google Maps API for Work: it depends on the purchased quota https://developers.google.com/maps/documentation/business/

Example request:

https://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&key=APP_SPECIFIC_API_KEY

Example response:

{
	"results" : [
		{
		"address_components" : [
			{
				"long_name" : "277",
				"short_name" : "277",
				"types" : [ "street_number" ]
			},
			{
				"long_name" : "Bedford Avenue",
				"short_name" : "Bedford Ave",
				"types" : [ "route" ]
			},
			{
				"long_name" : "Williamsburg",
				"short_name" : "Williamsburg",
				"types" : [ "neighborhood", "political" ]
			},
			{
				"long_name" : "Brooklyn",
				"short_name" : "Brooklyn",
				"types" : [ "sublocality", "political" ]
			},
			{
				"long_name" : "Kings",
				"short_name" : "Kings",
				"types" : [ "administrative_area_level_2", "political" ]
			},
			{
				"long_name" : "New York",
				"short_name" : "NY",
				"types" : [ "administrative_area_level_1", "political" ]
			},
			{
				"long_name" : "United States",
				"short_name" : "US",
				"types" : [ "country", "political" ]
			},
			{
				"long_name" : "11211",
				"short_name" : "11211",
				"types" : [ "postal_code" ]
			}
		],
		"formatted_address" : "277 Bedford Avenue, Brooklyn, NY 11211, USA",
		"geometry" : {
			"location" : {
				"lat" : 40.714232,
				"lng" : -73.9612889
			},
			"location_type" : "ROOFTOP",
			"viewport" : {
				"northeast" : {
					"lat" : 40.7155809802915,
					"lng" : -73.9599399197085
				},
				"southwest" : {
					"lat" : 40.7128830197085,
					"lng" : -73.96263788029151
				}
			}
		},
		"place_id" : "ChIJd8BlQ2BZwokRAFUEcm_qrcA",
		"types" : [ "street_address" ]
		},
		
		... Additional results[] ...