NAME
Geo::Coder::OpenCage
VERSION
version 0.08
SYNOPSIS
my $Geocoder = Geo::Coder::OpenCage->new(api_key => $my_api_key);
my $result = $Geocoder->geocode(location => "Donostia");
DESCRIPTION
This module provides an interface to the OpenCage geocoding service.
For full details on the API visit http://geocoder.opencagedata.com/api.
NAME
Geo::Coder::OpenCage - Geocode addresses with the OpenCage Geocoder API
METHODS
new
my $Geocoder = Geo::Coder::OpenCage->new(api_key => $my_api_key);
You can get your API key from http://geocoder.opencagedata.com
geocode
Takes a single named parameter 'location' and returns a result hashref.
my $result = $Geocoder->geocode(location => "Mudgee, Australia");
The OpenCage Geocoder has a few optional parameters, some of which this module supports and some of which it doesn't.
- Supported Parameters
-
please see the geocoder documentation almost all of the various optional parameters are supported
- language
-
An IETF format language code (such as es for Spanish or pt-BR for Brazilian Portuguese); if this is omitted a code of en (English) will be assumed.
- countrycode
-
Provides the geocoder with a hint to the country that the query resides in. This value will help the geocoder but will not restrict the possible results to the supplied country.
The country code is a 3 character code as defined by the ISO 3166-1 Alpha 3 standard.
- Not Supported
-
- format
-
This module only ever uses the JSON format. For other formats you should access the API directly using HTTP::Tiny or similar user agent module.
- jsonp
-
This module always parses the response as a Perl data structure, so the jsonp option is never used.
As a full example:
my $result = $Geocoder->geocode(
location => "Псковская улица, Санкт-Петербург, Россия",
language => "ru",
countrycode => "ru",
);
reverse_geocode
Takes two named parameters 'lat' and 'lng' and returns a result hashref.
my $result = $Geocoder->reverse_geocode(lat => -22.6792, lng => 14.5272);
This supports the optional 'language' parameter in the same way that geocode() does.
ENCODING
All strings passed to and recieved from Geo::Coder::OpenCage methods are expected to be character strings, not byte strings.
For more information see perlunicode.
AUTHOR
Ed Freyfogle
COPYRIGHT AND LICENSE
Copyright 2016 OpenCage Data Ltd <cpan@opencagedata.com>
Please check out all our open source work over at https://github.com/opencagedata and our developer blog: http://blog.opencagedata.com
Thanks!
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.16 or, at your option, any later version of Perl 5 you may have available.
AUTHOR
edf <edf@opencagedata.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2016 by OpenCage Data Limited.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.