API

JSON-REST Documentation

This interface to the Postcode.nl API uses the REST and JSON standards for communication.

Example implementation

We have written an example reference client implementation for using our API via the JSON-REST endpoint for PHP: PostcodeNl_Api_RestClient.

Forward compatibility

We will take care never to break existing fields or behavior without warning. Please note that we reserve the right to add new fields to responses in the future, so your client should ignore future unknown fields at any depth in the response.

Authentication

HTTP Basic authentication is used, with the values of your applications Key and Secret used as username and password, respectively. You can obtain a Key and Secret by registering an application account.

Parameters

Parameter values are added to the method URL according to the documented method URL template, and each parameter must be url-encoded.

Address API methods

rest/addresses/postcode
Dutch address lookup by postcode
rest/addresses/exact
Dutch address lookup by city, street and housenumber
rest/addresses/rd
Dutch address lookup by Rijksdriehoeksmeting coordinates
rest/addresses/latlon
Dutch address lookup by latitude and longitude
rest/postcode-ranges/postcode
Dutch postcode range lookup by postcode

Frequently Asked Questions

Should I use GET or POST?

The Address REST API requires GET requests.

Why do I receive a 404 error if the address is not found?

We use HTTP Status codes to classify success or error reasons.

200 OK
Positive result found.
404 Not found
No result found, address does not exist, etc.
400 Bad request
Missing or invalid parameters. This often indicates a request which could've been prevented by doing client side parameter syntax checks first.
401 Unauthorized
Missing, invalid or disabled credentials.
409 Conflict
Only relevant for the exact search, see the method documentation.

Browser clients and jsonp support

We do not support any browser client, so we don't offer support for javascript and jsonp. We recommend to host a simple proxy script on your own server instead of making cross domain calls directly in the browser. This proxy script would hold the key and secret: It is not allowed to put your secret in publicly readable javascript.
You're responsible for keeping the secret safe.

I am getting a warning about SSLv3 when connecting

Our services are only available using safe HTTPS implementations. We do not support the older SSL(v3) protocol when communicating over HTTPS, instead use the more secure TLS protocol (v1.0-v1.2). Most internet communication libraries will support TLS automatically.