Our JSON REST-API is easy to integrate and contains a logical structure of the methods.
What's an API?
An Application Programming Interface (API) is a computing interface which defines interactions between multiple software intermediaries.
It defines the kinds of calls or requests that can be made, how to make them, the data formats that should be used, the conventions to follow, without developers having to know how the other software exactly works.
What's an REST API?
Representational State Transfer (for short REST) is a software architectural style that defines a set of constraints to be used for creating Web services. SOAP has been replaced with URLs for addressing and the HTTP methods (GET, POST, DELETE and PUT) for calling the service.
Any programming language currently applicable to dynamically handle HTTP requests, in example with a cURL-library, is suitable for using REST.
Requests
API-token
To make requests to the API-endpoints, you will need an API-token. For development purposes, you can use a development-token. With this you can do test-requests, which will return a number of fixed results, and will not use your production-limit. Never use a development-token in a production environment.
You may create multiple production token, this can be useful if you would like to use the same subscription on different websites. You can make distinction between multiple websites or apps and the total number of requests.
You may create API-tokens for both development- and production requests at your customer portal.
Authorization
You authorize the request by using a Bearer-token (your API-key) in the Authorization-header.
Some methods return more than one result and are paginated over multiple pages.
These requests will always include a Pagination-object.
The maximum number of results per request depend on the purchased plan.
Response
Field
Type
Description
limit
integer
The used pagination limit, by default the maximum limit allowed by your plan
page
integer
The current page
totalPages
integer
The number of pages
totalItems
integer
The total number of items in the source data
countItems
integer
The number of items in the current request
estimate
boolean
If true, the number of total items is based on a quick scan. The total item count may vary if the next page is requested.
Headers
A number of API-related headers are included in the response headers of the request. They are useful to determine how many requests you have left for the current period and what type of key you're currently using.
Beispiel (headers)
X-API-Key-Type: production
X-API-Request-Count: 124
X-API-Request-Limit: 1000
X-API-Search-Request-Count: 794
X-API-Search-Request-Limit: 1000
Description
The headers below are displayed in a request. Some values may depend on the type of key used (development- or production key).
Header
Type
Description
X-API-Key-Type
string
The type of the used API-key. `development` for a development-key and `production` regarding a production key.
X-API-Request-Count
integer
The request count usage of the current period, excluding the current request.
X-API-Request-Limit
integer
The maximum allowed requests per period.
X-API-Search-Request-Count
integer
The maximum allowed search requests per period.
X-API-Search-Request-Limit
integer
The request search count usage of the current period, excluding the current request.
This details serves as an aid, and can also be seen visually on your dashboard.
Endpunkte
All end-points must begin with one of the following protocol and domain name, depending on the implementation and key-type:
Protocol and domain name
Environment
Description
https://api.kbodata.app/v2/
production
KBO API (production key)
https://mock.api.kbodata.app/v2/
development
KBO Mock API (development key)
Arguments prefixed with a (asterisk) are required, without these arguments the request will fail. Other arguments are optional.
To not publish any (old or incorrect) enterprise data on our website, we use fictional data in our examples.
Before you start with the implementation of our API, it is useful to have a clear picture of the data structure, below you fill find an image of the hierarchy of data and how they relate to each other.
As you can see, a denomination, address and activity can be related to both an enterprise or an establishment. Unfortunately, there are not any fixed rules for this structure. So in example it will be possible that an enterprise does not have any registration addresses, however the establishment linked to the enterprise does. Vice versa is also possible. Therefore, it is always a good idea to check the establishments of the enterprises if you are looking for any specific data.
Retrieve the enterprise details by the enterprise number.
Argumente und Kennwerte
Field
Type
Description
enterpriseNumber
integer
Number of the enterprise
Example:0417497106
Antwort
Successful response | Enterprise is found.
Field
Type
Description
Enterprise
object
enterpriseNumber
string
The enterprise number as digits only.
Example:0417497106
enterpriseNumberFormatted
string
The enterprise number as formatted human readable string.
Example:0417.497.106
vatNumber
string
VAT number
Example:BE0417497106
active
boolean
Whether the registration status of the enterprise is active or inactive. This field will also be false if the enterprise is in a pre-registration state.
Example:1
type
string
The company type, natural for natural person or entity for legal entity.
[
{
"Activity": {
"activityGroup": "BTW001",
"activityGroupDescription": {
"nl": "BTW-activiteiten",
"fr": "Activités TVA",
"en": "VAT activities",
"de": "MwSt.-Aktivitäten"
},
"classification": "MAIN",
"classificationDescription": {
"nl": "Hoofdactiviteit",
"fr": "Activité principale",
"en": "Main activity",
"de": "Hauptaktivität"
},
"Nace": {
"naceVersion": 2008,
"naceCode": "474",
"description": {
"nl": "Detailhandel in ICT-apparatuur in gespecialiseerde winkels",
"fr": "Commerce de détail d'équipements de l'information et de la communication en magasin spécialisé",
"de": "Einzelhandel mit Geräten der Informations- und Kommunikationstechnik (in Verkaufsräumen)",
"en": "Retail sale of information and communication equipment in specialised stores"
}
}
}
},
{
"…": "…"
}
]
HTTP/1.1 200 OK
404Enterprise not found
The specified Enterprise number could not be found, please make sure the enterprise number is valid and correct.
{
"error": "The `enterprise` item specified could not be found",
"type": "RequestException",
"code": -2
}
/enterprise/{enterpriseNumber}/address
Retrieve a specific enterprise address by type.
Retrieve a specific address by the enterprise number and address type.
Argumente und Kennwerte
Field
Type
Description
enterpriseNumber
integer
Number of the enterprise
Example:0417497106
Antwort
Successful response | The specific address has been found.
Field
Type
Description
Address
object
entityNumber
string
Example:0417497106
entityNumberFormatted
string
Example:0417.497.106
entityType
string
Possible values:enterpriseestablishment
Example:enterprise
type
string
-
Possible values:branchestablishmentactive-establishmentlegal-entity
Example:branch
typeDescription
object
street
object
Street of the registration
nl
string
Dutch street translation of the registration
Example:Kerkstraat
fr
string
French street translation of the registration
Example:Rue de l'Église
addressNumber
string
Address street number of the registration
Example:1
addressAdditional
string
Additional address or street suffix
Example:Unit 12, Floor 5
postOfficeBox
string
The post office box of the address, if applicable
Example:Box 5
zipcode
string
Zipcode of the registration
Example:2000
city
object
City of the registration
nl
string
Dutch city translation of the registration
Example:Brussel
fr
string
French city translation of the registration
Example:Bruxelles
countryCode
string
The ISO 3166-1 alpha-2 country code of the address.
The specified Enterprise number could not be found, please make sure the enterprise number is valid and correct.
{
"error": "The `enterprise` item specified could not be found",
"type": "RequestException",
"code": -2
}
/enterprise/{enterpriseNumber}/contact
Large plan
Retrieve contact information of the enterprise.
Retrieve contact information of the enterprise (phone numbers, email addresses and websites). Please note that companies aren't required to provide these details, so not all enterprises have contact information available.
Argumente und Kennwerte
Field
Type
Description
enterpriseNumber
integer
Number of the enterprise
Example:0417497106
Antwort
Succesful response | All contact information of the enterprise.
Field
Type
Description
[]
array
Contact
object
enterpriseNumber
string
Example:0417497106
enterpriseNumberFormatted
string
Example:0417.497.106
typeCode
string
The type of contact information
Possible values:phoneemailwebsite
Example:phone
value
string
The value of the contact type, could be a phone number, email adress or website, depending on the typeCode.
The specified Enterprise number could not be found, please make sure the enterprise number is valid and correct.
{
"error": "The `enterprise` item specified could not be found",
"type": "RequestException",
"code": -2
}
402Larger plan required
The endpoint (or a parameter that is present), is only accessible for a specific plan. Please verify the request which plan is required and upgrade accordingly.
{
"error": "Your active plan doesn't meet the requirements for this endpoint",
"type": "PlanScopeException",
"code": -31
}
/enterprise/{enterpriseNumber}/denominations
Retrieve all enterprise denominations.
Retrieve all the denominations (business names and trade names) by the enterprise number.
Argumente und Kennwerte
Field
Type
Description
enterpriseNumber
integer
Number of the enterprise
Example:0417497106
Antwort
Successful response | All denominations from the enterprise.
The specified Enterprise number could not be found, please make sure the enterprise number is valid and correct.
{
"error": "The `enterprise` item specified could not be found",
"type": "RequestException",
"code": -2
}
/enterprise/{enterpriseNumber}/establishments
Retrieve all enterprise establishments.
Retrieve all the establishments registered for this enterprise.
Argumente und Kennwerte
Field
Type
Description
enterpriseNumber
integer
Number of the enterprise
Example:0417497106
active
Large plan
string
Choose if you also want to retrieve inactive establishments. The default is only active.
Possible values:activeinactiveall
Example:active
Antwort
Successful response | All establishments from the enterprise.
Field
Type
Description
[]
array
Establishment
object
enterpriseNumber
string
Example:0417497106
enterpriseNumberFormatted
string
Example:0417.497.106
establishmentNumber
string
The establishment number without punctuation marks.
Example:2102217157
establishmentNumberFormatted
string
The estblishment number seperated by punctuation marks.
Example:2102.217.157
active
boolean
Whether the registration status of the establishment is active or inactive. This field will also be false if the establishment is in a pre-registration state.
The parameter you are using, is only accessible for a larger plan. Please verify the request which plan is required and upgrade your plan or omit the parameter.
{
"error": "Your active plan doesn't meet the requirements for this endpoint",
"type": "PlanScopeException",
"parameter": "active",
"code": -31
}
404Enterprise not found
The specified Enterprise number could not be found, please make sure the enterprise number is valid and correct.
{
"error": "The `enterprise` item specified could not be found",
"type": "RequestException",
"code": -2
}
/enterprise/{enterpriseNumber}/financial
Large plan
Retrieve short financial information of the enterprise.
Retrieve short financial information of the enterprise, the following information is available: - Paid-in capital - Annual assembly - Financial start and end year
Please note: - sole-proprietorships do not have published financial years, so this information will not be available - not all enterprises are required to publicly share this information, so it will not always be available.
Argumente und Kennwerte
Field
Type
Description
enterpriseNumber
integer
Number of the enterprise
Example:0417497106
Antwort
Successful response | Financial information from the enterprise.
Field
Type
Description
EnterpriseFinancial
object
enterpriseNumber
string
Example:0417497106
enterpriseNumberFormatted
string
Example:0417.497.106
capitalValue
integer
Placed capital according to statutes
Example:100000
capitalValuta
string
The valuta of the placed capital, while EUR is the most common, this value can be any ISO-4217 code. It's also common for companies founded before the introduction of the Euro to have historical valuta, in example: BEF, FRF and NLG. Most foreign companies have foreign valuta present.
Please visit wikipedia for an up-to-date ISO-4217 list of: - Active currency codes - Historic currency codes
Example:EUR
annualAssembly
integer
The month of the annual assembly, range is 1 to 12.
Example:6
annualAssemblyMonth
string
Textual presentation in English of the annual assembly.
Example:June
fiscalEnd
string
The end date of a regular fiscal year. The year is not present here and will be formatted as 0000.
Retrieve NSSO (RSZ, LSS, ONSS) details of the enterprise.
Retrieve NSSO details of the enterprise.
Known differently per language: - NL: Werkgeversrepertorium - FR: Répertoire des employeurs - DE: Verzeichnis der Arbeitgeber - NL: RSZ-nummer - FR: N° ONSS - DE: LSS-Nummer - EN: NSSO number
Argumente und Kennwerte
Field
Type
Description
enterpriseNumber
integer
Number of the enterprise
Example:0417497106
Antwort
Successful response | NSSO information from the enterprise.
Field
Type
Description
EnterpriseNsso
object
enterpriseNumber
string
Example:0417497106
enterpriseNumberFormatted
string
Example:0417.497.106
nssoNumber
integer
The NSSO-number (or RSZ-number, LSS-number, ONSS-number) of the company
Example:154857201
nssoNumberFormatted
string
The formatted NSSO-number with a dash of the company
Example:1548572-01
nssoNumberProvisional
integer
A temporary NSSO-number that is used when no final NSSO-number has been issued.
The endpoint (or a parameter that is present), is only accessible for a specific plan. Please verify the request which plan is required and upgrade accordingly.
{
"error": "Your active plan doesn't meet the requirements for this endpoint",
"type": "PlanScopeException",
"code": -31
}
404The provided enterprise could not be found, or does not have any NSSO information available.
503Service unavailable, please try again later.
/enterprise/{enterpriseNumber}/roles
Large plan
Retrieve all official functions of the enterprise.
Retrieve all the official funtions registered for this enterprise (board of directors).
Please note: - that sole proprietorships do not have any board members, except for the natural person that legally owns the company. This will be the only present function. - almost all foreign entities do not have any board members registered.
Argumente und Kennwerte
Field
Type
Description
enterpriseNumber
integer
Number of the enterprise
Example:0417497106
Antwort
Successful response | All functions from the enterprise.
Field
Type
Description
[]
array
EnterpriseRole
object
enterpriseNumber
string
Example:0417497106
enterpriseNumberFormatted
string
Example:0417.497.106
nameFirst
string
First name of the board member
Example:Frans
nameLast
string
Last name of the board member
Example:Vanderbeek
parentEnterpriseNumber
string
The enterprise number of which the role is inherited from. If the nameLast and nameFirst fields are both empty, the legal entity of the parent enterprise fulfills this role.
Example:0417497105
parentEnterpriseNumberFormatted
string
The enterprise number formatted.
Example:0417.497.106
dateInOffice
string
The date the person was registered
Example:2021-01-01
Role
object
roleCode
integer
Code of the function title. Please be aware that this code may change at anytime, so it's advisable not to put to much reference to this value. Or to check periodicly for any changes.
Example:5
title
object
nl
string
Function title in Dutch
Example:Zaakvoerder
en
string
Function title in English
Example:Manager
fr
string
Function title in French
Example:Gérant
de
string
Function title in German
Example:Geschäftsführer
note
object
Possible note regarding function title
nl
string
Possible note regarding function title in Dutch
Example:Overeenkomstig het Wetboek van Vennootschappen en Verenigingen moet de term "Zaakvoerder" vanaf 1 januari 2020 gelezen worden als "Bestuurder"
en
string
Possible note regarding the function title in English
Example:Pursuant to the Code of Companies and Associations, the term "Manager" must, since January 1, 2020, be read as "Board member".
fr
string
Possible note regarding function title in French
Example:En application du Code des sociétés et des associations, le terme "Gérant" doit, depuis le 1er janvier 2020, être lu comme étant "Administrateur".
de
string
Possible note regarding function title in German
Example:Gemäß dem Gesellschafts- und Vereinigungsgesetzbuch ist der Begriff "Geschäftsführer" seit dem 1. Januar 2020 als "Verwalter" zu lesen.
[
{
"EnterpriseRole": {
"enterpriseNumber": "0417497106",
"enterpriseNumberFormatted": "0417.497.106",
"nameFirst": "Frans",
"nameLast": "Vanderbeek",
"parentEnterpriseNumber": "0417497105",
"parentEnterpriseNumberFormatted": "0417.497.106",
"dateInOffice": "2021-01-01",
"Role": {
"roleCode": 5,
"title": {
"nl": "Zaakvoerder",
"en": "Manager",
"fr": "Gérant",
"de": "Geschäftsführer"
},
"note": {
"nl": "Overeenkomstig het Wetboek van Vennootschappen en Verenigingen moet de term \"Zaakvoerder\" vanaf 1 januari 2020 gelezen worden als \"Bestuurder\"\n",
"en": "Pursuant to the Code of Companies and Associations, the term \"Manager\" must, since January 1, 2020, be read as \"Board member\".\n",
"fr": "En application du Code des sociétés et des associations, le terme \"Gérant\" doit, depuis le 1er janvier 2020, être lu comme étant \"Administrateur\".\n",
"de": "Gemäß dem Gesellschafts- und Vereinigungsgesetzbuch ist der Begriff \"Geschäftsführer\" seit dem 1. Januar 2020 als \"Verwalter\" zu lesen.\n"
}
}
}
},
{
"…": "…"
}
]
HTTP/1.1 200 OK
404Enterprise not found
The specified Enterprise number could not be found, please make sure the enterprise number is valid and correct.
{
"error": "The `enterprise` item specified could not be found",
"type": "RequestException",
"code": -2
}
402Larger plan required
The endpoint (or a parameter that is present), is only accessible for a specific plan. Please verify the request which plan is required and upgrade accordingly.
{
"error": "Your active plan doesn't meet the requirements for this endpoint",
"type": "PlanScopeException",
"code": -31
}
Establishments
/establishment/{establishmentNumber}
Retrieve establishment details.
Retrieve the establishment details by the establishment number.
Argumente und Kennwerte
Field
Type
Description
establishmentNumber
integer
Number of the establishment
Example:2147197839
Antwort
Successful response | The establishment has been found.
Field
Type
Description
Establishment
object
enterpriseNumber
string
Example:0417497106
enterpriseNumberFormatted
string
Example:0417.497.106
establishmentNumber
string
The establishment number without punctuation marks.
Example:2102217157
establishmentNumberFormatted
string
The estblishment number seperated by punctuation marks.
Example:2102.217.157
active
boolean
Whether the registration status of the establishment is active or inactive. This field will also be false if the establishment is in a pre-registration state.
[
{
"Activity": {
"activityGroup": "BTW001",
"activityGroupDescription": {
"nl": "BTW-activiteiten",
"fr": "Activités TVA",
"en": "VAT activities",
"de": "MwSt.-Aktivitäten"
},
"classification": "MAIN",
"classificationDescription": {
"nl": "Hoofdactiviteit",
"fr": "Activité principale",
"en": "Main activity",
"de": "Hauptaktivität"
},
"Nace": {
"naceVersion": 2008,
"naceCode": "474",
"description": {
"nl": "Detailhandel in ICT-apparatuur in gespecialiseerde winkels",
"fr": "Commerce de détail d'équipements de l'information et de la communication en magasin spécialisé",
"de": "Einzelhandel mit Geräten der Informations- und Kommunikationstechnik (in Verkaufsräumen)",
"en": "Retail sale of information and communication equipment in specialised stores"
}
}
}
},
{
"…": "…"
}
]
HTTP/1.1 200 OK
404Establishment not found
The specified Establishment number could not be found, please make sure the establishment number is valid and correct.
{
"error": "The `establishment` item specified could not be found",
"type": "RequestException",
"code": -2
}
/establishment/{establishmentNumber}/address
Retrieve the address of the establishment address.
Retrieve the address of the establishment.
Argumente und Kennwerte
Field
Type
Description
establishmentNumber
integer
Number of the establishment
Example:2147197839
Antwort
Successful response | The specific address has been found.
Field
Type
Description
Address
object
entityNumber
string
Example:0417497106
entityNumberFormatted
string
Example:0417.497.106
entityType
string
Possible values:enterpriseestablishment
Example:enterprise
type
string
-
Possible values:branchestablishmentactive-establishmentlegal-entity
Example:branch
typeDescription
object
street
object
Street of the registration
nl
string
Dutch street translation of the registration
Example:Kerkstraat
fr
string
French street translation of the registration
Example:Rue de l'Église
addressNumber
string
Address street number of the registration
Example:1
addressAdditional
string
Additional address or street suffix
Example:Unit 12, Floor 5
postOfficeBox
string
The post office box of the address, if applicable
Example:Box 5
zipcode
string
Zipcode of the registration
Example:2000
city
object
City of the registration
nl
string
Dutch city translation of the registration
Example:Brussel
fr
string
French city translation of the registration
Example:Bruxelles
countryCode
string
The ISO 3166-1 alpha-2 country code of the address.
The specified Establishment number could not be found, please make sure the establishment number is valid and correct.
{
"error": "The `establishment` item specified could not be found",
"type": "RequestException",
"code": -2
}
/establishment/{establishmentNumber}/contact
Large plan
Retrieve contact information of the establishment.
Retrieve contact information of the establishment (phone numbers, email addresses and websites). Please note that companies aren't required to provide these details, so not all establishment have contact information available.
Argumente und Kennwerte
Field
Type
Description
establishmentNumber
integer
Number of the establishment
Example:2147197839
Antwort
Succesful response | All contact information of the establishment.
Field
Type
Description
[]
array
Contact
object
enterpriseNumber
string
Example:0417497106
enterpriseNumberFormatted
string
Example:0417.497.106
typeCode
string
The type of contact information
Possible values:phoneemailwebsite
Example:phone
value
string
The value of the contact type, could be a phone number, email adress or website, depending on the typeCode.
The specified Establishment number could not be found, please make sure the establishment number is valid and correct.
{
"error": "The `establishment` item specified could not be found",
"type": "RequestException",
"code": -2
}
402Larger plan required
The endpoint (or a parameter that is present), is only accessible for a specific plan. Please verify the request which plan is required and upgrade accordingly.
{
"error": "Your active plan doesn't meet the requirements for this endpoint",
"type": "PlanScopeException",
"code": -31
}
{
"type": "RequestException",
"error": "The item specified could not be found",
"code": -2
}
Denominations
/denominations
Search request
Autocomplete company names (denominations)
Search for denominations (trade name) by using keywords.
Both enterprises and establishments can have one or more denominations. Although an enterprise almost always has at lease one denominations, this must not be assumed. So it is adviced to verify any denominations that belong to the enterprise' establishments.
Argumente und Kennwerte
Field
Type
Description
query
string
The keywords to search for the denominations.
Example:AB Inbev
entityType
string
Accepted values: enterprise: show only enterprises, establishment: show only establishments
Possible values:enterpriseestablishment
Example:enterprise
type
string
Filter on the type of denomination.
Possible values:socialabbreviationcommercial
Example:commercial
active
Large plan
string
Choose if you want search results from inactive enterprises and establishments returned. The default is only active.
Possible values:activeinactiveall
Example:active
language
string
Search only in this language specified fields
Possible values:nlfrende
Example:nl
page
integer
The page of the results that should be returned
Example:2
limit
integer
The limit of results that should be returned, can be a value somewhere between 1 and your plan's maximum. If a higher value is used, this parameter is ignored and your plan's maximum is used instead.
Example:30
Antwort
Successful response | All denominations matching the provided search criteria.
Field
Type
Description
Denominations
array
Demomination
object
entityNumber
string
Example:0417497106
entityNumberFormatted
string
Example:0417.497.106
entityType
string
Possible values:enterpriseestablishment
Example:enterprise
language
string
Possible values:unknownnlenfrde
Example:nl
value
string
The denomination name
Example:FaimMedia B.V.
type
string
The denomination type
Possible values:socialabbreviationcommercial
Example:social
typeDescription
object
nl
string
Dutch translation of the type description
Example:Maatschappelijke naam
en
string
English translation of the type description
Example:Primary name
fr
string
French translation of the type description
Example:Dénomination sociale
de
string
German translation of the type description
Example:Primärname
Pagination
object
limit
integer
The used pagination limit, by default the maximum limit allowed by your plan
Example:10
page
integer
The current page
Example:1
totalPages
integer
The number of pages
Example:99
totalItems
integer
The total number of items in the source data
Example:1234
countItems
integer
The number of items in the current request
Example:8
estimate
boolean
If true, the number of total items is based on a quick scan. The total item count may vary if the next page is requested.
Example:1
Beispiel
200Successful response
All denominations matching the provided search criteria.
The parameter you are using, is only accessible for a larger plan. Please verify the request which plan is required and upgrade your plan or omit the parameter.
{
"error": "Your active plan doesn't meet the requirements for this endpoint",
"type": "PlanScopeException",
"parameter": "active",
"code": -31
}
Addresses
/addresses
Search request
Search for multiple addresses.
Search for multiple addresses by query parameter.
Argumente und Kennwerte
Field
Type
Description
query
string
Search query
Example:Grote Markt
entityType
string
Filter for a specific entity type
Possible values:enterpriseestablishment
Example:enterprise
active
Large plan
string
Choose if you want search results from inactive enterprises and establishments returned. The default is only active.
Possible values:activeinactiveall
Example:active
fields[]
array
Provide the fields that need to be queried.
Possible values:
The limit of results that should be returned, can be a value somewhere between 1 and your plan's maximum. If a higher value is used, this parameter is ignored and your plan's maximum is used instead.
Example:30
Antwort
Successful response | All addresses matching the provided search criteria.
Field
Type
Description
Addresses
array
Address
object
entityNumber
string
Example:0417497106
entityNumberFormatted
string
Example:0417.497.106
entityType
string
Possible values:enterpriseestablishment
Example:enterprise
type
string
-
Possible values:branchestablishmentactive-establishmentlegal-entity
Example:branch
typeDescription
object
street
object
Street of the registration
nl
string
Dutch street translation of the registration
Example:Kerkstraat
fr
string
French street translation of the registration
Example:Rue de l'Église
addressNumber
string
Address street number of the registration
Example:1
addressAdditional
string
Additional address or street suffix
Example:Unit 12, Floor 5
postOfficeBox
string
The post office box of the address, if applicable
Example:Box 5
zipcode
string
Zipcode of the registration
Example:2000
city
object
City of the registration
nl
string
Dutch city translation of the registration
Example:Brussel
fr
string
French city translation of the registration
Example:Bruxelles
countryCode
string
The ISO 3166-1 alpha-2 country code of the address.
Example:fr
country
object
Translated name of the country code.
nl
string
Dutch translation of the country
Example:Frankrijk
fr
string
French translation of the country
Example:France
en
string
English translation of the country
Example:France
de
string
German translation of the country
dateRevoke
string
dateStart
string
Example:2020-01-01
Pagination
object
limit
integer
The used pagination limit, by default the maximum limit allowed by your plan
Example:10
page
integer
The current page
Example:1
totalPages
integer
The number of pages
Example:99
totalItems
integer
The total number of items in the source data
Example:1234
countItems
integer
The number of items in the current request
Example:8
estimate
boolean
If true, the number of total items is based on a quick scan. The total item count may vary if the next page is requested.
Example:1
Beispiel
200Successful response
All addresses matching the provided search criteria.
The parameter you are using, is only accessible for a larger plan. Please verify the request which plan is required and upgrade your plan or omit the parameter.
{
"error": "Your active plan doesn't meet the requirements for this endpoint",
"type": "PlanScopeException",
"parameter": "active",
"code": -31
}
Nace
/naces
Search request
Search for nace code
Argumente und Kennwerte
Field
Type
Description
query
string
Search query
Example:ICT-apparatuur
language
string
Specify in which language should be searched. If this parameter is omitted, all available languages will be searched.
Possible values:nlfrdeen
Example:nl
filter.naceVersion
integer
Filter on a specific NACE version
Possible values:20082025
page
integer
The page of the results that should be returned
Example:2
limit
integer
The limit of results that should be returned, can be a value somewhere between 1 and your plan's maximum. If a higher value is used, this parameter is ignored and your plan's maximum is used instead.
Example:30
Antwort
Successful response | All NACEs matching the provided search criteria.
Field
Type
Description
Naces
array
Nace
object
naceVersion
integer
Example:2008
naceCode
string
Example:474
description
object
nl
string
Dutch description
Example:Detailhandel in ICT-apparatuur in gespecialiseerde winkels
fr
string
French description
Example:Commerce de détail d'équipements de l'information et de la communication en magasin spécialisé
de
string
German description
Example:Einzelhandel mit Geräten der Informations- und Kommunikationstechnik (in Verkaufsräumen)
en
string
English description
Example:Retail sale of information and communication equipment in specialised stores
Pagination
object
limit
integer
The used pagination limit, by default the maximum limit allowed by your plan
Example:10
page
integer
The current page
Example:1
totalPages
integer
The number of pages
Example:99
totalItems
integer
The total number of items in the source data
Example:1234
countItems
integer
The number of items in the current request
Example:8
estimate
boolean
If true, the number of total items is based on a quick scan. The total item count may vary if the next page is requested.
{
"Naces": [
{
"Nace": {
"naceVersion": 2008,
"naceCode": "474",
"description": {
"nl": "Detailhandel in ICT-apparatuur in gespecialiseerde winkels",
"fr": "Commerce de détail d'équipements de l'information et de la communication en magasin spécialisé",
"de": "Einzelhandel mit Geräten der Informations- und Kommunikationstechnik (in Verkaufsräumen)",
"en": "Retail sale of information and communication equipment in specialised stores"
}
}
},
{
"…": "…"
}
],
"Pagination": {
"limit": 10,
"page": 1,
"totalPages": 99,
"totalItems": 1234,
"countItems": 8,
"estimate": true
}
}
HTTP/1.1 200 OK
/nace/{naceVersion}/{naceCode}
Get NACE by version and code
Argumente und Kennwerte
Field
Type
Description
naceVersion
integer
NACE version
Possible values:20082025
Example:2025
naceCode
string
NACE code
Example:01
Antwort
Successful response, NACE is found.
Field
Type
Description
Nace
object
naceVersion
integer
Example:2008
naceCode
string
Example:474
description
object
nl
string
Dutch description
Example:Detailhandel in ICT-apparatuur in gespecialiseerde winkels
fr
string
French description
Example:Commerce de détail d'équipements de l'information et de la communication en magasin spécialisé
de
string
German description
Example:Einzelhandel mit Geräten der Informations- und Kommunikationstechnik (in Verkaufsräumen)
en
string
English description
Example:Retail sale of information and communication equipment in specialised stores
{
"Nace": {
"naceVersion": 2008,
"naceCode": "474",
"description": {
"nl": "Detailhandel in ICT-apparatuur in gespecialiseerde winkels",
"fr": "Commerce de détail d'équipements de l'information et de la communication en magasin spécialisé",
"de": "Einzelhandel mit Geräten der Informations- und Kommunikationstechnik (in Verkaufsräumen)",
"en": "Retail sale of information and communication equipment in specialised stores"
}
}
}
HTTP/1.1 200 OK
Roles
/roles
Large plan
Search request
Search for a role code (function title)
Argumente und Kennwerte
Field
Type
Description
query
string
Search query, will search for a partial role title
Example:Manager
language
string
Specify in which language should be searched. If this parameter is omitted, all available languages will be searched.
Possible values:nlenfrde
Example:en
page
integer
The page of the results that should be returned
Example:2
limit
integer
The limit of results that should be returned, can be a value somewhere between 1 and your plan's maximum. If a higher value is used, this parameter is ignored and your plan's maximum is used instead.
Example:30
Antwort
Successful response | All function titles returned
Field
Type
Description
Roles
array
Role
object
roleCode
integer
Code of the function title. Please be aware that this code may change at anytime, so it's advisable not to put to much reference to this value. Or to check periodicly for any changes.
Example:5
title
object
nl
string
Function title in Dutch
Example:Zaakvoerder
en
string
Function title in English
Example:Manager
fr
string
Function title in French
Example:Gérant
de
string
Function title in German
Example:Geschäftsführer
note
object
Possible note regarding function title
nl
string
Possible note regarding function title in Dutch
Example:Overeenkomstig het Wetboek van Vennootschappen en Verenigingen moet de term "Zaakvoerder" vanaf 1 januari 2020 gelezen worden als "Bestuurder"
en
string
Possible note regarding the function title in English
Example:Pursuant to the Code of Companies and Associations, the term "Manager" must, since January 1, 2020, be read as "Board member".
fr
string
Possible note regarding function title in French
Example:En application du Code des sociétés et des associations, le terme "Gérant" doit, depuis le 1er janvier 2020, être lu comme étant "Administrateur".
de
string
Possible note regarding function title in German
Example:Gemäß dem Gesellschafts- und Vereinigungsgesetzbuch ist der Begriff "Geschäftsführer" seit dem 1. Januar 2020 als "Verwalter" zu lesen.
Pagination
object
limit
integer
The used pagination limit, by default the maximum limit allowed by your plan
Example:10
page
integer
The current page
Example:1
totalPages
integer
The number of pages
Example:99
totalItems
integer
The total number of items in the source data
Example:1234
countItems
integer
The number of items in the current request
Example:8
estimate
boolean
If true, the number of total items is based on a quick scan. The total item count may vary if the next page is requested.
{
"Roles": [
{
"Role": {
"roleCode": 5,
"title": {
"nl": "Zaakvoerder",
"en": "Manager",
"fr": "Gérant",
"de": "Geschäftsführer"
},
"note": {
"nl": "Overeenkomstig het Wetboek van Vennootschappen en Verenigingen moet de term \"Zaakvoerder\" vanaf 1 januari 2020 gelezen worden als \"Bestuurder\"\n",
"en": "Pursuant to the Code of Companies and Associations, the term \"Manager\" must, since January 1, 2020, be read as \"Board member\".\n",
"fr": "En application du Code des sociétés et des associations, le terme \"Gérant\" doit, depuis le 1er janvier 2020, être lu comme étant \"Administrateur\".\n",
"de": "Gemäß dem Gesellschafts- und Vereinigungsgesetzbuch ist der Begriff \"Geschäftsführer\" seit dem 1. Januar 2020 als \"Verwalter\" zu lesen.\n"
}
}
},
{
"…": "…"
}
],
"Pagination": {
"limit": 10,
"page": 1,
"totalPages": 99,
"totalItems": 1234,
"countItems": 8,
"estimate": true
}
}
HTTP/1.1 200 OK
402Larger plan required
The endpoint (or a parameter that is present), is only accessible for a specific plan. Please verify the request which plan is required and upgrade accordingly.
{
"error": "Your active plan doesn't meet the requirements for this endpoint",
"type": "PlanScopeException",
"code": -31
}
/role/{roleCode}
Large plan
Get a specific function title by code
Argumente und Kennwerte
Field
Type
Description
roleCode
integer
The role code
Example:5
Antwort
Successful response | Function title is returned
Field
Type
Description
Role
object
roleCode
integer
Code of the function title. Please be aware that this code may change at anytime, so it's advisable not to put to much reference to this value. Or to check periodicly for any changes.
Example:5
title
object
nl
string
Function title in Dutch
Example:Zaakvoerder
en
string
Function title in English
Example:Manager
fr
string
Function title in French
Example:Gérant
de
string
Function title in German
Example:Geschäftsführer
note
object
Possible note regarding function title
nl
string
Possible note regarding function title in Dutch
Example:Overeenkomstig het Wetboek van Vennootschappen en Verenigingen moet de term "Zaakvoerder" vanaf 1 januari 2020 gelezen worden als "Bestuurder"
en
string
Possible note regarding the function title in English
Example:Pursuant to the Code of Companies and Associations, the term "Manager" must, since January 1, 2020, be read as "Board member".
fr
string
Possible note regarding function title in French
Example:En application du Code des sociétés et des associations, le terme "Gérant" doit, depuis le 1er janvier 2020, être lu comme étant "Administrateur".
de
string
Possible note regarding function title in German
Example:Gemäß dem Gesellschafts- und Vereinigungsgesetzbuch ist der Begriff "Geschäftsführer" seit dem 1. Januar 2020 als "Verwalter" zu lesen.
{
"Role": {
"roleCode": 5,
"title": {
"nl": "Zaakvoerder",
"en": "Manager",
"fr": "Gérant",
"de": "Geschäftsführer"
},
"note": {
"nl": "Overeenkomstig het Wetboek van Vennootschappen en Verenigingen moet de term \"Zaakvoerder\" vanaf 1 januari 2020 gelezen worden als \"Bestuurder\"\n",
"en": "Pursuant to the Code of Companies and Associations, the term \"Manager\" must, since January 1, 2020, be read as \"Board member\".\n",
"fr": "En application du Code des sociétés et des associations, le terme \"Gérant\" doit, depuis le 1er janvier 2020, être lu comme étant \"Administrateur\".\n",
"de": "Gemäß dem Gesellschafts- und Vereinigungsgesetzbuch ist der Begriff \"Geschäftsführer\" seit dem 1. Januar 2020 als \"Verwalter\" zu lesen.\n"
}
}
}
HTTP/1.1 200 OK
402Larger plan required
The endpoint (or a parameter that is present), is only accessible for a specific plan. Please verify the request which plan is required and upgrade accordingly.
{
"error": "Your active plan doesn't meet the requirements for this endpoint",
"type": "PlanScopeException",
"code": -31
}
404Item or resource not found
The item or resource specified could not be found
{
"type": "RequestException",
"error": "The item specified could not be found",
"code": -2
}
Juridical
/juridical-forms
Large plan
Search request
Search for a juridical form
Argumente und Kennwerte
Field
Type
Description
query
string
Search query, will search for a (partial) juridical form
Example:Vennoot
language
string
Specify in which language should be searched. If this parameter is omitted, all available languages will be searched.
Possible values:nlfrdeen
Example:nl
page
integer
The page of the results that should be returned
Example:2
limit
integer
The limit of results that should be returned, can be a value somewhere between 1 and your plan's maximum. If a higher value is used, this parameter is ignored and your plan's maximum is used instead.
Example:30
Antwort
Successful response | All juridical forms matching your search criteria are returned.
Field
Type
Description
JuridicalForms
array
JuridicalForm
object
juridicalFormCode
string
Juridical Form code
Example:030
description
object
nl
string
Dutch description of the juridical form
Example:Buitenlandse entiteit
en
string
English description of the juridical form
Example:Foreign entity
fr
string
French description of the juridical form
Example:Entité étrangère
de
string
German description of the juridical form
Example:Ausländische Einheit
abbreviation
object
nl
string
Dutch abbreviation of the juridical form
Example:Buitenlandse entiteit
en
string
English abbreviation of the juridical form
Example:Foreign entity
fr
string
French abbreviation of the juridical form
Example:Entité étrangère
de
string
German abbreviation of the juridical form
Example:Ausländische Einheit
Pagination
object
limit
integer
The used pagination limit, by default the maximum limit allowed by your plan
Example:10
page
integer
The current page
Example:1
totalPages
integer
The number of pages
Example:99
totalItems
integer
The total number of items in the source data
Example:1234
countItems
integer
The number of items in the current request
Example:8
estimate
boolean
If true, the number of total items is based on a quick scan. The total item count may vary if the next page is requested.
Example:1
Beispiel
200Successful response
All juridical forms matching your search criteria are returned.
The endpoint (or a parameter that is present), is only accessible for a specific plan. Please verify the request which plan is required and upgrade accordingly.
{
"error": "Your active plan doesn't meet the requirements for this endpoint",
"type": "PlanScopeException",
"code": -31
}
/juridical-situations
Large plan
Search request
Search for a juridical situation
Argumente und Kennwerte
Field
Type
Description
query
string
Search query, will search for a (partial) juridical situation
Example:Stop
language
string
Specify in which language should be searched. If this parameter is omitted, all available languages will be searched.
Possible values:nlfrdeen
Example:nl
page
integer
The page of the results that should be returned
Example:2
limit
integer
The limit of results that should be returned, can be a value somewhere between 1 and your plan's maximum. If a higher value is used, this parameter is ignored and your plan's maximum is used instead.
Example:30
Antwort
Successful response | All juridical situations matching your search criteria are returned.
Field
Type
Description
JuridicalSituations
array
JuridicalSituation
object
juridicalSituationCode
string
Juridical Situation code
Example:000
description
object
nl
string
Dutch description of the juridical situation
Example:Normale toestand
en
string
English description of the juridical situation
Example:Foreign entity
fr
string
French description of the juridical situation
Example:Situation normale
de
string
German description of the juridical situation
Example:Gewöhnlicher Zustand
Pagination
object
limit
integer
The used pagination limit, by default the maximum limit allowed by your plan
Example:10
page
integer
The current page
Example:1
totalPages
integer
The number of pages
Example:99
totalItems
integer
The total number of items in the source data
Example:1234
countItems
integer
The number of items in the current request
Example:8
estimate
boolean
If true, the number of total items is based on a quick scan. The total item count may vary if the next page is requested.
Example:1
Beispiel
200Successful response
All juridical situations matching your search criteria are returned.
The endpoint (or a parameter that is present), is only accessible for a specific plan. Please verify the request which plan is required and upgrade accordingly.
{
"error": "Your active plan doesn't meet the requirements for this endpoint",
"type": "PlanScopeException",
"code": -31
}
VAT
/vat/{vatNumber}
Verify VAT-number or enterprise number for internation transactions within the EU
Please note: we use an external service for validating VAT-numbers this may not always be available. Only use this method for validating the VAT-number for international transactions within the EU, not for retrieving company information, you may use the /enterprise endpoints for that purpose. Even though the response may say the VAT-number is invalid, it may still be valid for domestic transactions.
Argumente und Kennwerte
Field
Type
Description
vatNumber
string
The VAT-number to be validated, a valid Belgian VAT-number starts with BE followed by 10 digits. The field may also contains a valid Enterprise number
Example:BE0417497106
Antwort
Successful response | The VAT-number has been validated. Please note: this does not necessary mean the provided VAT-number is valid, check the `isValid` value of the response.
The VAT-number has been validated. Please note: this does not necessary mean the provided VAT-number is valid, check the `isValid` value of the response.
{
"type": "RequestException",
"error": "The item specified could not be found",
"code": -2
}
500Service for VAT-validation is not available.
Customer
/me
Get authorized customer information
Please note that this endpoint is rate limited to once per 60 seconds, if this is exceeded you'll receive a 429 response, and have to wait another 60 seconds before a valid response is returned.
Antwort
Success response | The provided authorization token is valid.
{
"error": "The provided access token is invalid",
"type": "AuthorizationException",
"code": -2
}
429Too many requests
You have exceeded the rate limit for this endpoint. Consult the `Retry-After` response header after how many seconds you may retry the request again.
{
"error": "You have exceeded the rate limit for this endpoint, try again in 60 seconds",
"type": "HttpTooManyRequestsException",
"code": 429
}
Health
/health
Health check for the API
Check the health of the API, every 2xx status code should be considered healthy, and every 5xx status code should be considered unhealth. Please note that this endpoint is rate limited to once per 60 seconds, if this is exceeded you'll receive a 429 response, and have to wait another 60 seconds before a valid response is returned.
Antwort
Success response | The API is healthy
Beispiel
204Success response
The API is healthy
500The API in unhealthy
503The API is unhealthy
429Too many requests
You have exceeded the rate limit for this endpoint. Consult the `Retry-After` response header after how many seconds you may retry the request again.
{
"error": "You have exceeded the rate limit for this endpoint, try again in 60 seconds",
"type": "HttpTooManyRequestsException",
"code": 429
}
405Invalid method
Make sure the request is an OPTIONS method
/health/vat
Health check for the VAT endpoints
Check the health of the VAT endpoints, every 2xx status code should be considered healthy, and every 5xx status code should be considered unhealth.
Please note that this endpoint is rate limited to once per 60 seconds, if this is exceeded you'll receive a 429 response, and have to wait another 60 seconds before a valid response is returned.
Endpoints include: - /vat/{vatNumber}
Antwort
Success response | The VAT endpoints are healthy.
Beispiel
204Success response
The VAT endpoints are healthy.
500The VAT service in unhealthy
503The VAT service is unhealthy
429Too many requests
You have exceeded the rate limit for this endpoint. Consult the `Retry-After` response header after how many seconds you may retry the request again.
{
"error": "You have exceeded the rate limit for this endpoint, try again in 60 seconds",
"type": "HttpTooManyRequestsException",
"code": 429
}
405Invalid method
Make sure the request is an OPTIONS method
/health/nsso
Health check for the NSSO endpoints
Check the health of the VAT endpoints, every 2xx status code should be considered healthy, and every 5xx status code should be considered unhealth.
Please note that this endpoint is rate limited to once per 60 seconds, if this is exceeded you'll receive a 429 response, and have to wait another 60 seconds before a valid response is returned.
Endpoints include: - /enterprise/{enterpriseNumber}/nsso
Antwort
Success response | The NSSO endpoints are healthy
Beispiel
204Success response
The NSSO endpoints are healthy
500The NSSO service in unhealthy.
503The NSSO service is unhealthy.
429Too many requests
You have exceeded the rate limit for this endpoint. Consult the `Retry-After` response header after how many seconds you may retry the request again.
{
"error": "You have exceeded the rate limit for this endpoint, try again in 60 seconds",
"type": "HttpTooManyRequestsException",
"code": 429
}
405Invalid method
Make sure the request is an OPTIONS method
Responses
HTTP status codes
By looking at the HTTP response code, you can see if the request was successful or not. If the request was unsuccessful, you can usually use the HTTP response code and the error message in the JSON-response to find out what went wrong. You probably need change something in the request parameters.
Below is a list of common HTTP response codes, used in our API:
200 OK
Success The request was successful and the data can be used.
401 Unauthorized
Not authorized You will retrieve this status code if the authorization fails, possible by using an incorrect username or access token.
402 Payment Required
Means that your plan has expired and needs renewal. You can do this on your dashboard.
404 Not Found
Will be returned if the specific item requested, cannot be found. Also used when an endpoint doesn't exist, but the API-token is valid.
405 Method Not Allowed
The used request method is unaccepted, in example this will be returned when the requested method is POST, but should be a GET.
409 Conflict422 Unprocessable Entity
Incorrect or missing parameters The requested request could not be processed, usually due missing required parameters or parameters that contain an incorrect format.
429 Too Many Requests
Request limit exceeded You have exceeded the maximum number of requests for this period, wait until for a limit reset at the end of your period or upgrade your subscription plan. You can do this on your dashboard.
Cookies
Wir und einige ausgewählte Partner verwenden Cookies oder ähnliche Technologien gemäß den Angaben in den Cookie-Richtlinien. Durch Schließen dieser Mitteilung können Sie der Verwendung solcher Technologien zustimmen.
Funktionale Cookies sind für das einwandfreie Funktionieren der Website notwendig, beispielsweise werden für die Anmeldung der Benutzer Cookies verwendet.
Zur Erfassung der Nutzererfahrung werden analytische Cookies verwendet. Wir sammeln keine persönlichen Daten für Marketingkampagnen.