README.md in geocoder-1.2.3 vs README.md in geocoder-1.2.4

- old
+ new

@@ -270,11 +270,15 @@ You can also specify a minimum radius (if you're using ActiveRecord and not Sqlite) to constrain the lower bound (ie. think of a donut, or ring) by using the `:min_radius` option: box = Geocoder::Calculations.bounding_box(center_point, distance, :min_radius => 10.5) +With ActiveRecord, you can specify alternate latitude and longitude column names for a geocoded model (useful if you store multiple sets of coordinates for each object): + Venue.near("Paris", 50, latitude: :secondary_latitude, longitude: :secondary_longitude) + + Advanced Geocoding ------------------ So far we have looked at shortcuts for assigning geocoding results to object attributes. However, if you need to do something fancy you can skip the auto-assignment by providing a block (takes the object to be geocoded and an array of `Geocoder::Result` objects) in which you handle the parsed geocoding result any way you like, for example: @@ -425,10 +429,21 @@ * **Languages**: ? * **Documentation**: http://wiki.openstreetmap.org/wiki/Nominatim * **Terms of Service**: http://wiki.openstreetmap.org/wiki/Nominatim_usage_policy * **Limitations**: Please limit request rate to 1 per second and include your contact information in User-Agent headers (eg: `Geocoder.configure(:http_headers => { "User-Agent" => "your contact info" })`). Data licensed under CC-BY-SA (you must provide attribution). +#### OpenCageData (`:opencagedata`) + +* **API key**: required +* **Key signup**: http://geocoder.opencagedata.com +* **Quota**: 2500 requests / day, then ability to purchase more (free during beta) +* **Region**: world +* **SSL support**: yes +* **Languages**: worldwide +* **Documentation**: http://geocoder.opencagedata.com/api.html +* **Limitations**: Data licensed under CC-BY-SA or (you must provide attribution). + #### Yandex (`:yandex`) * **API key**: none * **Quota**: 25000 requests / day * **Region**: world @@ -535,21 +550,10 @@ * **Documentation**: http://developer.baidu.com/map/webservice-geocoding.htm * **Terms of Service**: http://developer.baidu.com/map/law.htm * **Limitations**: Only good for non-commercial use. For commercial usage please check http://developer.baidu.com/map/question.htm#qa0013 * **Notes**: To use Baidu set `Geocoder.configure(:lookup => :baidu, :api_key => "your_api_key")`. -#### CloudMade (`:cloudmade`) - -* **API key**: required -* **Quota**: 100,000 free requests, then purchase 100,000 more for $15 -* **Region**: world -* **SSL support**: yes ($5 per 100,000 requests) -* **Languages**: en -* **Documentation**: http://cloudmade.com/documentation/geocoding -* **Terms of Service**: http://cloudmade.com/api-terms-of-service -* **Limitations**: ? - #### Geocodio (`:geocodio`) * **API key**: required * **Quota**: 2,500 free requests/day then purchase $.001 for each * **Region**: US @@ -581,9 +585,21 @@ * **Languages**: English * **Documentation**: http://github.com/fiorix/freegeoip/blob/master/README.md * **Terms of Service**: ? * **Limitations**: ? * **Notes**: If you are [running your own local instance of the FreeGeoIP service](https://github.com/fiorix/freegeoip) you can configure the host like this: `Geocoder.configure(freegeoip: {host: "..."})`. + +#### Pointpin (`:pointpin`) + +* **API key**: required +* **Quota**: 50,000/mo for €9 through 1m/mo for €49 +* **Region**: world +* **SSL support**: yes +* **Languages**: English +* **Documentation**: https://pointp.in/docs/get-started +* **Terms of Service**: https://pointp.in/terms +* **Limitations**: ? +* **Notes**: To use Pointpin set `Geocoder.configure(:ip_lookup => :pointpin, :api_key => "your_pointpin_api_key")`. #### Telize (`:telize`) * **API key**: none * **Quota**: none