API Documentatie

Alles wat je nodig hebt om de Postcode API te integreren in je applicatie.

Base URL

Base URL
https://api.dataconnect.nl/v1

Alle requests gaan via HTTPS. HTTP wordt niet ondersteund.

Authenticatie

Stuur je API-sleutel mee als Bearer token in de Authorization header:

Header
Authorization: Bearer jouw_api_sleutel

Je API-sleutel ontvang je na het aanvragen van een account.

Ondersteunde landen

CodeLandPostcode formaatVoorbeeld
nlNederland4 cijfers + 2 letters1012AB
beBelgië4 cijfers3600
frFrankrijk5 cijfers75003
dkDenemarken4 cijfers1051

Endpoint

GET
/v1/{land}/address/{postcode}/{huisnummer}
/v1/{land}/address/{postcode}/{huisnummer}/{toevoeging}

Parameters

ParameterTypeVerplichtOmschrijving
landstringJaLandcode: nl, be, fr, dk
postcodestringJaPostcode (zonder spaties)
huisnummerintegerJaHuisnummer
toevoegingstringNeeHuisletter of toevoeging (bijv. A, bis)

Response

Voorbeeld request

GET /v1/nl/address/1012AB/1
// Response
{
  "status":    "success",
  "data": {
    "bag_id":     "0363010000000001",
    "postcode":   "1012AB",
    "huisnummer": 1,
    "huisletter": null,
    "toevoeging": null,
    "straat":     "Dam",
    "plaats":     "Amsterdam",
    "gemeente":   "Amsterdam",
    "provincie":  "Noord-Holland",
    "latitude":   52.3730796,
    "longitude":  4.8932945
  }
}

Response velden

VeldTypeOmschrijving
bag_idstringUniek ID uit de bronregistratie
postcodestringPostcode
huisnummerintegerHuisnummer
huisletterstring|nullHuisletter (A, B, etc.)
toevoegingstring|nullToevoeging (bis, I, etc.)
straatstringStraatnaam
plaatsstringWoonplaats
gemeentestring|nullGemeentenaam
provinciestring|nullProvincienaam
latitudefloat|nullBreedtegraad (WGS84)
longitudefloat|nullLengtegraad (WGS84)

Adres zoeken (EU)

Voor België, Frankrijk en Denemarken gebruik je het search endpoint. Dit werkt als autocomplete: typ een deel van het adres en krijg suggesties terug.

GET /v1/{land}/search?q={zoektekst}
// Zoek op gemeente
GET /v1/be/search?q=Genk

// Zoek op straat
GET /v1/be/search?q=Rootenstraat

// Zoek specifiek adres
GET /v1/be/search?q=Rootenstraat 17 3600

Response types

TypeWanneerVelden
municipalityZoek op plaatsnaamplaats, gemeente
streetZoek op straatnaamstraat, postcode, plaats
addressVolledig adres gevondenAlle velden incl. coördinaten

Voorbeeld response

GET /v1/be/search?q=Rootenstraat 17 3600
{
  "status": "success",
  "data": {
    "count": 1,
    "results": [
      {
        "type":      "address",
        "postcode":  "3600",
        "huisnummer": 17,
        "straat":    "Rootenstraat",
        "plaats":    "Genk",
        "gemeente":  "Genk",
        "regio":     "Vlaanderen",
        "subregio":  "Limburg",
        "latitude":  50.9649300,
        "longitude": 5.5018900
      }
    ]
  }
}

Let op: het /v1/{land}/address/ endpoint is alleen beschikbaar voor NL. Voor EU-landen gebruik je altijd /v1/{land}/search.

Foutcodes

HTTPStatusBetekenis
200successAdres gevonden
400errorOngeldig verzoek (missende parameters, fout formaat)
401errorGeen of ongeldige API-sleutel
404errorAdres niet gevonden
429errorRate limit bereikt
500errorServerfout

Code voorbeelden

cURL
curl -H "Authorization: Bearer JOUW_API_SLEUTEL" \
  "https://api.dataconnect.nl/v1/nl/address/1012AB/1"
PHP
use DataConnectApi\DataConnectApiClient;

$client = new DataConnectApiClient('JOUW_API_SLEUTEL');
$adres = $client->address('1012AB', 1, null, 'nl');

echo $adres['straat'];    // Dam
echo $adres['plaats'];    // Amsterdam
echo $adres['provincie']; // Noord-Holland
JavaScript
const response = await fetch(
  'https://api.dataconnect.nl/v1/nl/address/1012AB/1',
  { headers: { 'Authorization': 'Bearer JOUW_API_SLEUTEL' } }
);

const { data } = await response.json();
console.log(data.straat);    // Dam
console.log(data.plaats);    // Amsterdam
console.log(data.provincie); // Noord-Holland
Python
import requests

headers = {'Authorization': 'Bearer JOUW_API_SLEUTEL'}
r = requests.get('https://api.dataconnect.nl/v1/nl/address/1012AB/1', headers=headers)
data = r.json()['data']

print(data['straat'])    # Dam
print(data['plaats'])    # Amsterdam
print(data['provincie']) # Noord-Holland

Klaar om te beginnen?

API-sleutel aanvragen