Skip to content
We regularly add fields and features to the Belscope API. This documentation always shows the current version.

Establishments

The company's locations, such as shops and offices, each with its own name, address, contacts and activities.

EstablishmentEvery establishment of the company. Its number, name and start date.
AddressWhere the establishment is.
ContactsIts email addresses, phone numbers and websites.
ActivitiesIts main and secondary activity codes, with what they mean.

Request

GEThttps://api.belscope.be/v1/companies/{number}/establishments
curl https://api.belscope.be/v1/companies/0400378485/establishments \
-H "Authorization: Bearer YOUR_KEY"
const response = await fetch('https://api.belscope.be/v1/companies/0400378485/establishments', {
headers: { Authorization: 'Bearer YOUR_KEY' },
});
const data = await response.json();
import requests
response = requests.get(
'https://api.belscope.be/v1/companies/0400378485/establishments',
headers={'Authorization': 'Bearer YOUR_KEY'},
)
data = response.json()
$context = stream_context_create([
'http' => ['header' => 'Authorization: Bearer YOUR_KEY', 'ignore_errors' => true],
]);
$response = file_get_contents('https://api.belscope.be/v1/companies/0400378485/establishments', false, $context);
$data = json_decode($response, true);
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_KEY");
var response = await client.GetAsync("https://api.belscope.be/v1/companies/0400378485/establishments");
var data = await response.Content.ReadAsStringAsync();

Answer

Counts as 1 requestJSON
{
"enterprise_number": "0123.456.749",
"establishments": [
{
"establishment_number": "2.123.456.791",
"name": "Belscope Gent",
"start_date": "2018-02-01",
"address": {
"full": "Voorbeeldstraat 12 bus B, 9000 Gent",
"street": "Voorbeeldstraat",
"house_number": "12",
"box": "B",
"postal_code": "9000",
"municipality": "Gent",
"country": "België",
"struck_off_date": null
},
"contacts": {
"emails": [
"gent@belscope.be"
],
"phones": [
"09 123 45 68"
],
"websites": [
"www.belscope.be"
]
},
"activities": {
"main": [
{
"code": "62100",
"description": "Ontwerpen van computerprogramma’s"
}
],
"secondary": []
}
}
]
}
Fields 23What every field in the answer means
FieldTypeDescriptionNullable
enterprise_numbertextThe enterprise number of the company the establishments belong to.
establishmentslistThe company's establishments: the places where it works, such as shops and offices. The newest first; one without a known start date last.Empty list when the company has none.
establishment_numbertextThe establishment's own number, always as 2.123.456.791.
nametextThe establishment's name.Null when it has none (about 1 in 4).
start_datedateThe day the establishment started.Null when it is not known.
addressblockThe establishment's address.Null when the establishment has no address.
fulltextThe whole address on one line, ready to show. The country is only added abroad.Null when the address is not known.
streettextThe street.Null when it is not known.
house_numbertextThe house number.Null when there is none.
boxtextThe box number.Null when there is none.
postal_codetextThe postal code.Null when it is not known.
municipalitytextThe municipality.Null when it is not given.
countrytextBelgië in Belgium, otherwise the country.Null when it is not known.
struck_off_datedateThe day the address was officially struck off.Null when not struck off.
contactsblockHow to reach the establishment.
emailslistEmail addresses.Empty list when none.
phoneslistPhone numbers.Empty list when none.
websiteslistWebsites.Empty list when none.
activitiesblockWhat is done at the establishment, as codes from the Belgian activity list (NACE-BEL 2025).
mainlistThe main activities.Empty list when none.
secondarylistThe secondary activities, with the same fields as main. A code that is in main is not repeated here.Empty list when none.
codetextThe activity code. An establishment can have a more precise KBO code of 7 digits; search takes codes of up to 5.
descriptiontextWhat the code means.