William Sham
William Sham

Reputation: 13239

Bulk Geocoding Through HttpRequest

I'm researching ways to perform bulk geocoding through http request, and get the response back in JSON, XML, or anything pHp can handle on the server side.

The amount of address in a batch is in the hundreds. Each user of this mobile-web app will make one request (one batch) only if I can store the data on my own server once they're returned.

To sum it up for people looking to do similar things:

  1. Google Map's term doesn't let you make too many requests
  2. Openstreetmap's term doesn't allow heavy querying either
  3. Bing...
  4. TinyGeocoder...Does anyone knows the usage limit and batch capability of this? (tinygeocoder.com)

I've come to Bing and see this under their terms: (http://www.microsoft.com/maps/product/terms.html)

(c) Exceed a total of 24 batch geocoding or file uploads with a maximum of 200,000 records each, using the Bing Spatial Data Services API, within any 24 hour period.

Can someone who's familiar with their API or geocoding in general tell me, Does that mean I can only make 24 requests in a day, each request not containing more than 200,000 records?

Terms like this will make the service useless for apps that make such requests based on who the user's data.

I can invest in freemium service also, if anyone knows other provider?

Upvotes: 5

Views: 5129

Answers (5)

Alex
Alex

Reputation: 1

Try geocodefarm's api. It allows for up to 100,000 requests per day. They don't do batch geocoding, but I'm pretty sure you can setup a foreach loop to do batch for you. If you contact them, they allow upgrading higher, but for higher fees of course. Not sure if you're willing to pay, but the prices are really affordable.

~ Alex

Upvotes: 0

Ciaran
Ciaran

Reputation: 2184

Openstreetmap's term doesn't allow heavy querying either

You could use MapQuests version of Nominatim, it provides a free API to OpenStreetMaps Geo data without the usage limits.

http://devblog.mapquest.com/2011/11/17/no-preset-limit-on-free-map-api-transactions/

Upvotes: 4

Jim Buckley Barret
Jim Buckley Barret

Reputation: 330

I've used http://open.mapquestapi.com/nominatim via HTTP request. No issues so far, been off line a couple of times but nothing major. Jim

Upvotes: 1

sleske
sleske

Reputation: 83597

You might consider OpenStreetMap. It offers a web service for geocoding, though that is also rate-limited. However, if you exceed the acceptable usage of the service, you can download the data and set up your own server.

For geocoding, you probably want to look at setting up your own Nominatim server. See e.g. here for installation instructions: http://wiki.openstreetmap.org/wiki/Nominatim/Installation

Upvotes: 4

Alastair Aitchison
Alastair Aitchison

Reputation: 3532

"Does that mean I can only make 24 requests in a day, each request not containing more than 200,000 records?" Yes, that's exactly what it means. The Bing Maps spatial data services API is a batch service - it's not intended for real-time geocoding of data by end-users but rather if you want to geocode the new records inserted into a database table as an hourly scheduled job, say (hence why 24 requests a day).

Also note 3.2 d) - you can only store geocodes from Bing Maps geocoding service if you're then going to display the results on a Bing Map.

For alternative providers, I recommend you look at one of the geonames web services: http://www.geonames.org/export/ws-overview.html The appropriate service really depends on what level of accuracy you want to geocode to, and what source of data you want. Note that geocoders vary in quality a lot and a service that works well with US addresses, say, may be awful in Europe.

Upvotes: 1

Related Questions