This is the Algolia Places provider from the PHP Geocoder. This is a READ ONLY repository. See the main repo for information and documentation.
composer require geocoder-php/algolia-places-provider
The Algolia Places API allows up to 1000 free requests per day (per IP) without authentication.
By signing up for an account you can make 100,000 requests per month (~3000 a day).
See: https://community.algolia.com/places/pricing.html
You should set a locale on the query. If it is missing, results may not be as complete for non english speaking countries.
use Geocoder\Query\GeocodeQuery;
use Geocoder\Query\ReverseQuery;
$httpClient = new \Http\Discovery\Psr18Client();
// Unauthenticated
$provider = new \Geocoder\Provider\AlgoliaPlaces\AlgoliaPlaces($httpClient);
// Authenticated
$provider = new \Geocoder\Provider\AlgoliaPlaces\AlgoliaPlaces($httpClient, '<your-key>', '<your-app-id>');
$geocoder = new \Geocoder\StatefulGeocoder($provider, 'en');
$result = $geocoder->geocodeQuery(GeocodeQuery::create('Paris')->withLocale('fr-FR'));
Contributions are very welcome! Send a pull request to the main repository or report any issues you find on the issue tracker.