Skip to content

dex4er/perl-Geo-Coder-GeocodeFarm

Repository files navigation

Geo::Coder::GeocodeFarm

CI Trunk Check CPAN

NAME

Geo::Coder::GeocodeFarm - Geocode addresses with the GeocodeFarm API

SYNOPSIS

    use Geo::Coder::GeocodeFarm;

    my $geocoder = Geo::Coder::GeocodeFarm->new(
        key => 'YOUR-API-KEY-HERE',
    );

    my $result = $geocoder->geocode(
        location => '530 W Main St Anoka MN 55303 US',
    );
    printf "%f,%f\n",
        $result->{coordinates}{lat},
        $result->{coordinates}{lon};

    my $reverse = $geocoder->reverse_geocode(
        lat      => '45.2040305',
        lon      => '-93.3995728',
    );
    print $reverse->{formatted_address}, "\n";

DESCRIPTION

The Geo::Coder::GeocodeFarm module provides an interface to the geocoding functionality of the GeocodeFarm API v4.

METHODS

new

    $geocoder = Geo::Coder::GeocodeFarm->new(
        key    => 'YOUR-API-KEY-HERE',
        url    => 'https://api.geocode.farm/',
        ua     => HTTP::Tiny->new,
        parser => JSON->new->utf8,
        raise_failure => 1,
    );

Creates a new geocoding object with optional arguments.

An API key is required and can be obtained at https://geocode.farm/store/api-services/

geocode

    $result = $geocoder->geocode(
        location => $location,
    )

Forward geocoding takes a provided address or location and returns the coordinate set for the requested location.

Method throws an error (or returns failure as nested list if raise_failure argument is false) if the service failed to find coordinates or wrong key was used.

reverse_geocode

    $result = $geocoder->reverse_geocode(
        lat      => $latitude,
        lon      => $longitude,
    )

Reverse geocoding takes a provided coordinate set and returns the address for the requested coordinates.

Method throws an error (or returns failure as nested list if raise_failure argument is false) if the service failed to find coordinates or wrong key was used.

SEE ALSO

https://geocode.farm/

BUGS

If you find the bug or want to implement new features, please report it at https://github.com/dex4er/perl-Geo-Coder-GeocodeFarm/issues

The code repository is available at https://github.com/dex4er/perl-Geo-Coder-GeocodeFarm

AUTHOR

Piotr Roszatycki dexter@cpan.org

LICENSE

Copyright (c) 2013, 2015, 2025 Piotr Roszatycki dexter@cpan.org.

This is free software; you can redistribute it and/or modify it under the same terms as perl itself.

See http://dev.perl.org/licenses/artistic.html

About

Geo::Coder::GeocodeFarm - Geocode addresses with the GeocodeFarm API

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •