Getting started
The Happklaar API gives developers access to Dutch real-estate workflow data. This guide gets you from zero to a verified API call in under 5 minutes.
Base URL
All API endpoints are served under a single versioned base URL:
Code
Every path in this documentation is relative to that base. There is no subdomain routing per module — all routes live under /v1/*.
Prerequisites
You need a Personal Access Token (PAT) to authenticate. Tokens are issued at:
app.happklaar.nl → Account → API Keys
Create a token and copy it immediately — you will not see the full value again. Tokens start with the prefix hk_.
Your first call
The /v1/ping endpoint requires no payload and returns a minimal liveness response. It is the fastest way to confirm your PAT and base URL are wired correctly.
Code
Replace <PAT> with your token value.
A successful response:
Code
The host field echoes the Host header from your request.
GET /v1/ping
/v1/ping is a lightweight liveness endpoint. It is rate-limited but does not require any scope beyond a valid PAT.
Code
Response body:
Code
What a successful call confirms
| Check | What it proves |
|---|---|
| HTTP 200 | The API is reachable and your network path works |
Authorization: Bearer accepted | Your PAT is valid and has not been revoked |
ok: true | The API process is healthy |
Troubleshooting
If you receive 401 Unauthenticated, verify that:
- Your token starts with
hk_. - You included the
Authorization: Bearer <token>header (noBearerprefix missing). - The token has not been revoked at
app.happklaar.nl/app/profile/security.
If you receive 429 Too Many Requests, you have exceeded the rate limit window. See Rate limiting for details on headers and backoff strategy.
Content type
All requests with a body must include Content-Type: application/json. All responses are application/json (or application/problem+json for errors — see Errors).
Next steps
- Authentication — how PATs are created, scoped, and revoked
- Errors — the RFC 9457 problem+json envelope all error responses use