Aan de slag
Nederlandse overheidsdata API — maak je eerste call in minder dan 60 seconden. BAG, VIES, RDW, EP-Online, NS en ENTSO-E via één API-sleutel.
What is OmniAPI?
OmniAPI is a B2B REST API suite that gives your application access to Dutch and EU government data via a single authenticated endpoint. No scraping, no per-source authentication, no data storage on your side.
Available endpoints (beta):
| Tag | Endpoint | Description |
|---|---|---|
| Geo | GET /v1/geo/address-enrich | BAG address enrichment + coordinates |
| Finance | GET /v1/finance/iban-to-bic | Dutch IBAN → BIC/SWIFT (offline) |
| Finance | GET /v1/finance/vat-verify | EU VAT validation via VIES |
| Compliance | GET /v1/compliance/validate-finance | BSN/IBAN mathematical validation |
| HR | GET /v1/hr/minimum-wage | Dutch minimum wage (WML) |
| HR | GET /v1/hr/holiday-surcharge | Dutch public holiday + CAO surcharge |
| Real Estate | GET /v1/real-estate/energy-label | EP-Online energy label |
Base URL
https://api.omnizoek.nlFor local development, start the API with make run in omni-api/ — it listens
on http://localhost:8080.
Quick start
curl -H "X-API-Key: YOUR_KEY" \
"https://api.omnizoek.nl/v1/finance/iban-to-bic?iban=NL99INGB0001234567"Response:
{
"iban": "NL99INGB0001234567",
"bic": "INGBNL2A",
"bank_name": "ING Bank N.V.",
"country_code": "NL"
}Error format
All errors follow the same envelope:
{
"error": "invalid_input",
"detail": "Human-readable explanation of what went wrong."
}| HTTP code | Meaning |
|---|---|
400 | Invalid parameters |
401 | Missing or invalid API key |
404 | Resource not found (e.g. address not in BAG) |
422 | Query parameter validation failed |
503 | Upstream government API unavailable |