Skip to content

Laralabs/get-address-io

Repository files navigation

Stable Build CI Status

Laravel getAddress.io Package

This package allows you to easily interact with the getAddress.io API and cache full postcode results to reduce quota usage.

🚀 Quick Start

Installation

Require the package in the composer.json of your project.

composer require laralabs/get-address-io

Publish the configuration file.

php artisan vendor:publish --tag=getaddress-config

Edit the configuration file and set your desired settings, the cache is disabled by default and you will need to set the following env variables:

GETADDRESS_API_KEY=
GETADDRESS_ADMIN_KEY=

If you have enabled the cache, make sure you run the migration:

php artisan migrate

Usage

A helper function and facade is available, choose your preferred method.

The facade is located at Laralabs\GetAddress\Facades\GetAddress

The endpoints currently supported are (support for other endpoints coming soon):

  • find
  • autocomplete
  • get

Perform a lookup using the find endpoint:

$results = get_address()->find($postcode, $property);

The $property argument is optional, just searching for a postcode will return all results for that postcode and also cache the data if the cache has been enabled.

Perform a looking using the autocomplete endpoint:

$results = get_address()->autocomplete($searchTerm, ['top' => '20']);

The second argument supports an array of parameters to send with the POST request, the example above shows setting the returned results to the maximum allowed of 20.

Perform a lookup using the get endpoint:

$results = get_address()->get($addressId);

This is used with the autocomplete endpoint to return the full address information, the $addressId argument must be the ID returned from the autocomplete response.

💬 Support

Please raise an issue on GitHub if there is a problem.

🔑 License

This is open-sourced software licensed under the MIT License.