API
KBO Leads API
1,88 miljoen Belgische bedrijven uit de KBO, als JSON. Dezelfde filters als in de app, met één header.
Authenticatie
Elk verzoek op https://api.lokalegroei.be draagt je API-key in de header X-API-Key. Je maakt hem aan in je dashboard, op elk plan. Je ziet hem één keer; een nieuwe key maakt de oude meteen ongeldig.
X-API-Key: kbo_…De app zelf gebruikt een Bearer-token (Authorization: Bearer …) na het inloggen. Voor scripts en automatisaties is de API-key de juiste weg.
Eerste verzoek
Kappers (NACE 96021) in Kortrijk (8500). Vervang de key en draai het.
curl "https://api.lokalegroei.be/leads?nace=96021&zipcode=8500&limit=25" \
-H "X-API-Key: kbo_jouw_key"Antwoord
total is het aantal bedrijven voor je filters, results de pagina die je vroeg. Het voorbeeld is ingekort en verzonnen; de echte velden staan in de Swagger-referentie.
{
"total": …,
"limit": 25,
"offset": 0,
"results": [
{
"id": "0123.456.789",
"enterprise_number": "0123.456.789",
"company_name": "Kapsalon Voorbeeld",
"juridical_form_label": "Besloten vennootschap",
"nace_main": "96021",
"nace_main_label": "Haarverzorging",
"address": { "street": "Voorbeeldstraat", "house_number": "1",
"zipcode": "8500", "city": "Kortrijk" },
"email": "info@voorbeeld.be",
"phone": "056 00 00 00",
"website": "voorbeeld.be",
"start_date": "2019-03-01"
}
]
}Endpoints
GET /leads
Bedrijven met filters. Tot 1000 per verzoek, verder bladeren met offset.
API-key
GET /leads/stats
Aantallen voor dezelfde filters: totaal, met e-mail, telefoon, website, per rechtsvorm.
API-key
GET /leads/export
CSV van dezelfde filters. Elke download telt als één export.
API-key
GET /leads/{id}
Eén bedrijf op ondernemingsnummer (of de lg_-id van het gratis plan).
API-key
GET /nace
Alle NACE-codes met omschrijving (q om te zoeken, lang voor de taal).
API-key
GET /nace/search
NACE-codes zoeken op een woord, bv. q=kapper.
API-key
GET /regions
Provincies en hun postcodegebieden, met aantallen.
API-key
GET /regions/gemeenten
Gemeenten zoeken (q=kortrijk), met postcode en aantallen.
API-key
GET /meta/capabilities
Welke filters en velden de databank nu ondersteunt.
Publiek
GET /leads/seo/combinaties
Alle combinaties van sector en stad met hun aantal.
Publiek
GET /leads/seo/preview
Vijf voorbeeldbedrijven per sector en stad, zonder contactgegevens.
Publiek
GET /health
Draait de API?
Publiek
Filters
Voor /leads, /leads/stats en /leads/export. Filters combineer je vrij. Een stad zoek je op postcode: /regions/gemeenten?q=kortrijk geeft de postcodes.
nace
NACE-code(s), kommagescheiden of herhaald. 96021 = kappers. Ook een kortere code zoals 43 voor de hele groep.
zipcode
Volledige postcodes, bv. 8500,8501.
zipcode_prefix
Eerste twee cijfers van de postcode, bv. 85.
has_email, has_phone, has_website
true = alleen bedrijven waarvan we dat gegeven hebben.
alleen_met_contact
true = alleen bedrijven met e-mail of telefoon.
name_contains
Stuk van de bedrijfsnaam.
opgericht_na, opgericht_voor
Oprichtingsdatum, JJJJ-MM-DD.
starters
true = opgericht in het jaar vóór de laatste KBO-update.
rechtsvorm_groep
bv. bv, nv, vzw, eenmanszaak. De volledige lijst staat in /meta/capabilities.
taal
NL, FR, DE of EN.
min_vestigingen, max_vestigingen
Aantal vestigingseenheden.
include_inactive
true = ook failliete, ontbonden en vereffende ondernemingen.
sort
relevance (standaard), newest, oldest of alphabetical.
limit, offset
Aantal per pagina (1 tot 1000, standaard 100) en waar je begint.
Een filter waarvoor de databank (nog) geen gegevens heeft, geeft een 400 met uitleg. /meta/capabilities zegt welke filters nu werken.
Wat je ziet per plan
De API volgt dezelfde regels als de app. Je plan bepaalt wat er in het antwoord staat.
Gratis
- — API-key inbegrepen
- — 50 resultaten per maand, ook via de API
- — Versluierd: geen ondernemingsnummer, straat, huisnummer, e-mail, telefoon of website
- — Wel naam, postcode, gemeente, sector, rechtsvorm en oprichtingsjaar
Starter of Lifetime
- — Alles zichtbaar, onbeperkt opvragen
- — Tot 60 verzoeken per minuut per key; daarboven 429 met Retry-After
- — 500 exports per maand
- — €49 per maand, of €590 eenmalig
Zo ziet een versluierd bedrijf eruit
Op het gratis plan gebeurt de versluiering op de server, voor elke route die een bedrijf teruggeeft. Een sterretje betekent: het gegeven bestaat, je ziet het met een betaald plan. De lg_-id werkt wel in /leads/{id}.
{
"id": "lg_k3x9…",
"enterprise_number": null,
"company_name": "Kapsalon Voorbeeld",
"address": { "street": null, "house_number": null,
"zipcode": "8500", "city": "Kortrijk" },
"email": "***@***.**",
"phone": "*** *** ***",
"website": "***",
"start_year": 2019,
"_masked": true
}Wie verder bladert dan de 50 resultaten krijgt een 403 met monthly_view_limit_reached, het aantal verborgen bedrijven en een link naar de prijzen. Zonder geldige key krijg je een 401.
n8n
Er is een community-node, n8n-nodes-kbo-leads, met de acties bedrijven zoeken, bedrijf detail, statistieken en NACE-codes. Installeren via Settings › Community nodes › Install.
Elke parameter, elk veld en elke foutcode staat in de interactieve Swagger-referentie, rechtstreeks uit de API.
Open de Swagger-referentie