laravel-postcode-nl maintained by ifresh
- php ^8.2
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 11.*
- illuminate/contracts 11.*
- illuminate/routing 11.*
- illuminate/support 11.*
- illuminate/validation 11.*
- php ^8.2
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 11.*
- illuminate/contracts 11.*
- illuminate/routing 11.*
- illuminate/support 11.*
- illuminate/validation 11.*
- php ^8.1
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 10.*
- illuminate/contracts 10.*
- illuminate/routing 10.*
- illuminate/support 10.*
- illuminate/validation 10.*
- php ^8.1
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 10.*
- illuminate/contracts 10.*
- illuminate/routing 10.*
- illuminate/support 10.*
- illuminate/validation 10.*
- php ^8.1
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 10.*
- illuminate/contracts 10.*
- illuminate/routing 10.*
- illuminate/support 10.*
- illuminate/validation 10.*
- php ^7.3|^8.0
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 9.*
- illuminate/contracts 9.*
- illuminate/routing 9.*
- illuminate/support 9.*
- illuminate/validation 9.*
- php ^7.3|^8.0
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 9.*
- illuminate/contracts 9.*
- illuminate/routing 9.*
- illuminate/support 9.*
- illuminate/validation 9.*
- php ^7.3|^8.0
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 8.*
- illuminate/contracts 8.*
- illuminate/routing 8.*
- illuminate/support 8.*
- illuminate/validation 8.*
- php ^7.3|^8.0
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 8.*
- illuminate/contracts 8.*
- illuminate/routing 8.*
- illuminate/support 8.*
- illuminate/validation 8.*
- php ^7.3|^8.0
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 8.*
- illuminate/contracts 8.*
- illuminate/routing 8.*
- illuminate/support 8.*
- illuminate/validation 8.*
- php ^7.2.5|^8.0
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 7.*
- illuminate/contracts 7.*
- illuminate/routing 7.*
- illuminate/support 7.*
- illuminate/validation 7.*
- php ^7.2.5|^8.0
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 7.*
- illuminate/contracts 7.*
- illuminate/routing 7.*
- illuminate/support 7.*
- illuminate/validation 7.*
- php ^7.2.5|^8.0
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 7.*
- illuminate/contracts 7.*
- illuminate/routing 7.*
- illuminate/support 7.*
- illuminate/validation 7.*
- php ^7.3|^8.0
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 6.*
- illuminate/contracts 6.*
- illuminate/routing 6.*
- illuminate/support 6.*
- illuminate/validation 6.*
- php ^7.2.5|^8.0
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 6.*
- illuminate/contracts 6.*
- illuminate/routing 6.*
- illuminate/support 6.*
- illuminate/validation 6.*
- php ^7.2.5|^8.0
- ext-json *
- guzzlehttp/guzzle ^7.2
- illuminate/config 6.*
- illuminate/contracts 6.*
- illuminate/routing 6.*
- illuminate/support 6.*
- illuminate/validation 6.*
- php ^7.2.5|^7.3|^7.4
- ext-json *
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.8.*
- illuminate/contracts 5.8.*
- illuminate/routing 5.8.*
- illuminate/support 5.8.*
- illuminate/validation 5.8.*
- php ^7.2.5|^7.3|^7.4
- ext-json *
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.8.*
- illuminate/contracts 5.8.*
- illuminate/routing 5.8.*
- illuminate/support 5.8.*
- illuminate/validation 5.8.*
- php ^7.1.3
- ext-json *
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.7.*
- illuminate/contracts 5.7.*
- illuminate/routing 5.7.*
- illuminate/support 5.7.*
- illuminate/validation 5.7.*
- php ^7.1.3
- ext-json *
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.6.*
- illuminate/contracts 5.6.*
- illuminate/routing 5.6.*
- illuminate/support 5.6.*
- illuminate/validation 5.6.*
- php ^7.1.3
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.6.*
- illuminate/contracts 5.6.*
- illuminate/routing 5.6.*
- illuminate/support 5.6.*
- illuminate/validation 5.6.*
- php >=5.6.4
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.4.*
- illuminate/contracts 5.4.*
- illuminate/routing 5.4.*
- illuminate/support 5.4.*
- illuminate/validation 5.4.*
- php >=5.6.4
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.4.*
- illuminate/contracts 5.4.*
- illuminate/routing 5.4.*
- illuminate/support 5.4.*
- illuminate/validation 5.4.*
- php >=5.6.4
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.4.*
- illuminate/contracts 5.4.*
- illuminate/routing 5.4.*
- illuminate/support 5.4.*
- illuminate/validation 5.4.*
- php >=5.6.4
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.4.*
- illuminate/contracts 5.4.*
- illuminate/routing 5.4.*
- illuminate/support 5.4.*
- illuminate/validation 5.4.*
- php >=5.6.4
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.3.*
- illuminate/contracts 5.3.*
- illuminate/routing 5.3.*
- illuminate/support 5.3.*
- illuminate/validation 5.3.*
- php >=5.6.4
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.3.*
- illuminate/contracts 5.3.*
- illuminate/routing 5.3.*
- illuminate/support 5.3.*
- illuminate/validation 5.3.*
- php >=5.5.9
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.1.*|5.2.*
- illuminate/contracts 5.1.*|5.2.*
- illuminate/routing 5.1.*|5.2.*
- illuminate/support 5.1.*|5.2.*
- illuminate/validation 5.1.*|5.2.*
- php >=5.5.9
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.1.*
- illuminate/contracts 5.1.*
- illuminate/routing 5.1.*
- illuminate/support 5.1.*
- illuminate/validation 5.1.*
- php >=5.5.9
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.1.*
- illuminate/contracts 5.1.*
- illuminate/routing 5.1.*
- illuminate/support 5.1.*
- illuminate/validation 5.1.*
- php >=5.5.9
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.1.*
- illuminate/contracts 5.1.*
- illuminate/routing 5.1.*
- illuminate/support 5.1.*
- illuminate/validation 5.1.*
- php >=5.5.9
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.1.*
- illuminate/contracts 5.1.*
- illuminate/routing 5.1.*
- illuminate/validation 5.1.*
- php >=5.5.9
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.1.*
- illuminate/contracts 5.1.*
- illuminate/routing 5.1.*
- illuminate/validation 5.1.*
- php >=5.5.9
- guzzlehttp/guzzle ~6.0
- illuminate/config 5.1.*
- illuminate/contracts 5.1.*
- illuminate/routing 5.1.*
- illuminate/validation 5.1.*
Postcode.nl client for Laravel 8
A client using the Postcode.nl REST API for Dutch address verification.
Installation
Pull the package in through Composer:
composer require speelpenning/laravel-postcode-nl
Next, register an account with Postcode.nl to obtain a key and secret. See https://api.postcode.nl/#register for further information. Once you have a key and secret, store them in your .env file.
Add the following service provider to your application config:
Speelpenning\PostcodeNl\PostcodeNlServiceProvider::class,
Walk through the configuration section to make things work.
Usage
There are two ways to use the address lookup: by injecting the address lookup service in your code or using the AddressController that is shipped with the package.
Dependency injection
Example:
<?php
use Exception;
use Speelpenning\PostcodeNl\Services\AddressLookup;
class AddressDumper {
/**
* @var AddressLookup
*/
protected $lookup;
/**
* Create an address dumper instance.
*
* @param AddressLookup $lookup
*/
public function __construct(AddressLookup $lookup)
{
$this->lookup = $lookup;
}
/**
* Dumps the address details on screen.
*
* @param string $postcode
* @param int $houseNumber
* @param null|string $houseNumberAddition
*/
public function dump($postcode, $houseNumber, $houseNumberAddition = null)
{
try {
$address = $this->lookup->lookup($postcode, $houseNumber, $houseNumberAddition);
dd($address);
}
catch (Exception $e) {
exit('Ow, that went wrong...');
}
}
}
Using the JSON API
In order to use the API, enabled it in the configuration. When enabled, the following route is available:
route('postcode-nl::address', [$postcode, $houseNumber, $houseNumberAddition = null]);
or use the following URL (e.g. for AJAX calls):
/postcode-nl/address/{postcode}/{houseNumber}/{houseNumberAddition?}
Configuration
Credentials (required)
The key and secret are used for authentication. Without them, you cannot use the service.
POSTCODENL_KEY=<your-api-key>
POSTCODENL_SECRET=<your-secret>
Enable routes (optional)
This package comes with a ready to use JSON API, which is disabled by default. You can enable it like so:
POSTCODENL_ENABLE_ROUTES=true
Timeout (in seconds, optional)
By default, the client waits 10 seconds for a response. You may set a different timeout.
POSTCODENL_TIMEOUT=<timeout-in-seconds>