PHPackages                             api-check/php-laravel-client - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. api-check/php-laravel-client

ActiveLibrary[API Development](/categories/api)

api-check/php-laravel-client
============================

ApiCheck wrapper for Laravel - address validation, search, and verification

v2.0.0(3mo ago)114MITPHPPHP ^8.1CI passing

Since Oct 9Pushed 3mo ago2 watchersCompare

[ Source](https://github.com/api-check/php-laravel-client)[ Packagist](https://packagist.org/packages/api-check/php-laravel-client)[ Docs](https://apicheck.nl/)[ RSS](/packages/api-check-php-laravel-client/feed)WikiDiscussions main Synced today

READMEChangelog (2)Dependencies (7)Versions (4)Used By (0)

ApiCheck Laravel Client
=======================

[](#apicheck-laravel-client)

A thin Laravel wrapper for the [ApiCheck PHP Client](https://github.com/api-check/php-client).

ApiCheck helps you validate customer data - addresses, emails, and phone numbers.

Requirements
------------

[](#requirements)

- PHP 8.1+
- Laravel 9.0+ | 10.0+ | 11.0+
- An ApiCheck API key ([get one here](https://app.apicheck.nl/authentication/register))

Installation
------------

[](#installation)

```
composer require api-check/php-laravel-client
```

The service provider and facade are auto-discovered by Laravel.

Configuration
-------------

[](#configuration)

Publish the config file:

```
php artisan vendor:publish --tag=apicheck-config
```

Add to your `.env`:

```
APICHECK_API_KEY=your-api-key-here

# Optional - required if your API key has "Allowed Hosts" configured
APICHECK_REFERER=https://yourdomain.com
```

Usage
-----

[](#usage)

### Via Facade

[](#via-facade)

```
use ApiCheck\Laravel\Facades\ApiCheck;

// Lookup an address (NL, LU)
$address = ApiCheck::lookup('nl', [
    'postalcode' => '2513AA',
    'number' => 1,
]);

// Get available number additions
$additions = ApiCheck::getNumberAdditions('nl', '2513AA', 1);

// Search for addresses (18 European countries)
$results = ApiCheck::search('be', 'city', ['name' => 'Brussels']);

// Global search
$results = ApiCheck::globalSearch('nl', 'amsterdam', ['limit' => 10]);

// Verify email
$emailResult = ApiCheck::verifyEmail('test@example.com');
// Returns: disposable_email (bool), greylisted (bool), status ("valid"|"invalid"|"unknown")

// Verify phone
$phoneResult = ApiCheck::verifyPhone('+31612345678');
// Returns: valid (bool), country_code, area_code, international_formatted, etc.
```

### Via Helper Function

[](#via-helper-function)

```
$address = apicheck()->lookup('nl', ['postalcode' => '2513AA', 'number' => 1]);
```

### Via Dependency Injection

[](#via-dependency-injection)

```
use ApiCheck\Api\ApiClient;

public function __construct(ApiClient $apiCheck)
{
    $this->apiCheck = $apiCheck;
}

public function index()
{
    $address = $this->apiCheck->lookup('nl', ['postalcode' => '2513AA', 'number' => 1]);
}
```

Available Methods
-----------------

[](#available-methods)

All methods from [api-check/php-client](https://github.com/api-check/php-client) are available:

### Lookup API (NL, LU)

[](#lookup-api-nl-lu)

- `lookup($country, $query)` - Look up address by postal code + house number
- `getNumberAdditions($country, $postalcode, $number)` - Get available number additions (e.g., "A", "1-3")

### Search API (18 European countries)

[](#search-api-18-european-countries)

- `search($country, $type, $query)` - Search by type: `city`, `street`, `postalcode`, `address`, `locality`, `municipality`
- `globalSearch($country, $query, $options)` - Global search across all scopes
- `searchLocality($country, $name, $options)` - Search localities (deelgemeenten, primarily BE)
- `searchMunicipality($country, $name, $options)` - Search municipalities (gemeenten, primarily BE)
- `searchAddress($country, $params)` - Resolve full address from IDs returned by other searches
- `getSupportedSearchCountries()` - List supported countries

### Verify API

[](#verify-api)

- `verifyEmail($email)` - Validate email address (disposable, greylisted, valid/invalid/unknown)
- `verifyPhone($number)` - Validate phone number with formatting and type info

Supported Countries
-------------------

[](#supported-countries)

### Lookup API

[](#lookup-api)

- Netherlands (nl)
- Luxembourg (lu)

### Search &amp; Verify APIs

[](#search--verify-apis)

18 European countries: nl, be, lu, fr, de, cz, fi, it, no, pl, pt, ro, es, ch, at, dk, gb, se

Exception Handling
------------------

[](#exception-handling)

```
use ApiCheck\Api\Exceptions\NotFoundException;
use ApiCheck\Api\Exceptions\ValidationException;
use ApiCheck\Api\Exceptions\UnsupportedCountryException;
use ApiCheck\Api\Exceptions\ApiException;

try {
    $address = ApiCheck::lookup('nl', ['postalcode' => '2513AA', 'number' => 1]);
} catch (NotFoundException $e) {
    // No results found
} catch (ValidationException $e) {
    // Invalid input
} catch (UnsupportedCountryException $e) {
    // Country not supported for this endpoint
} catch (ApiException $e) {
    // General API error
}
```

License
-------

[](#license)

[MIT](https://choosealicense.com/licenses/mit/)

Support
-------

[](#support)

- Website: [apicheck.nl](https://www.apicheck.nl)
- Email:
- Documentation: [apicheck.nl/documentation](https://apicheck.nl/documentation)

###  Health Score

42

—

FairBetter than 88% of packages

Maintenance82

Actively maintained with recent releases

Popularity8

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~635 days

Total

3

Last Release

93d ago

Major Versions

1.1 → v2.0.02026-04-01

PHP version history (2 changes)1.0PHP ^7.1|^8.0

v2.0.0PHP ^8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/2fbba6e9dc0a41b3dc76f177d888dd47ab13774b796c6327e2274f6301cea6e8?d=identicon)[ApiCheck](/maintainers/ApiCheck)

---

Top Contributors

[![WouterDoornbos](https://avatars.githubusercontent.com/u/9071887?v=4)](https://github.com/WouterDoornbos "WouterDoornbos (15 commits)")

---

Tags

laravelpostal-codeemail-verificationphone verificationaddress validationapicheckaddress-api

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/api-check-php-laravel-client/health.svg)

```
[![Health](https://phpackages.com/badges/api-check-php-laravel-client/health.svg)](https://phpackages.com/packages/api-check-php-laravel-client)
```

###  Alternatives

[defstudio/telegraph

A laravel facade to interact with Telegram Bots

816333.3k3](/packages/defstudio-telegraph)[simplestats-io/laravel-client

Server-side analytics for Laravel that follows the full funnel from visit to registration to payment, attributed to the channel that drove it. Revenue, MRR, churn and ad-spend profit (ROAS/CAC) per channel. GDPR compliant, ad-blocker proof.

5021.9k](/packages/simplestats-io-laravel-client)[riclep/laravel-storyblok

A Laravel wrapper around the Storyblok API to provide a familiar experience for Laravel devs

6279.6k5](/packages/riclep-laravel-storyblok)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
