CompanyBelgium

Recherche de codes NACE

Recherchez parmi les codes NACE (nomenclature europeenne des activites economiques) par mot-cle. Les resultats incluent les descriptions en francais, neerlandais et anglais.

GET
/api/v2/naces?q=telecom&version=2008&limit=50

Headers

HeaderValueDescription
X-API-Keypk_live_...Votre cle API publique
X-API-Secretsk_live_...Votre cle API secrete

Parameters

NameTypeDescription
q
optional
stringTerme de recherche (nom ou code NACE)Example: telecom
version
optional
stringVersion/revision de la nomenclature NACEExample: 2008
language
optional
stringLangue de recherche pour le filtre textuel (fr, nl, en)Example: frDefault: fr
limit
optional
integerNombre maximum de resultats (max 200)Example: 50Default: 50

Example Request

cURL
curl -X GET \
  "https://companybelgium.be/api/v2/naces?q=telecom&version=2008&limit=50" \
  -H "X-API-Key: pk_live_votre_cle" \
  -H "X-API-Secret: sk_live_votre_secret"
JavaScript / Node.js
const response = await fetch(
  'https://companybelgium.be/api/v2/naces?q=telecom&version=2008&limit=50',
  {
    headers: {
      'X-API-Key': process.env.API_KEY,
      'X-API-Secret': process.env.API_SECRET,
    },
  }
);

const data = await response.json();

if (data.success) {
  data.data.forEach(nace => {
    console.log(`${nace.naceCode} - ${nace.description_FR}`);
  });
}
Python
import requests

response = requests.get(
    'https://companybelgium.be/api/v2/naces',
    params={'q': 'telecom', 'version': '2008', 'limit': 50},
    headers={
        'X-API-Key': 'pk_live_votre_cle',
        'X-API-Secret': 'sk_live_votre_secret',
    }
)
data = response.json()

if data['success']:
    for nace in data['data']:
        print(f"{nace['naceCode']} - {nace['description_FR']}")

Example Response

200 OK
{
  "success": true,
  "data": [
    {
      "naceCode": "61.100",
      "naceVersion": "2008",
      "description_FR": "Telecommunications filaires",
      "description_NL": "Draadgebonden telecommunicatie",
      "description_EN": "Wired telecommunications activities"
    },
    {
      "naceCode": "61.200",
      "naceVersion": "2008",
      "description_FR": "Telecommunications sans fil",
      "description_NL": "Draadloze telecommunicatie",
      "description_EN": "Wireless telecommunications activities"
    },
    {
      "naceCode": "61.300",
      "naceVersion": "2008",
      "description_FR": "Telecommunications par satellite",
      "description_NL": "Telecommunicatie via satelliet",
      "description_EN": "Satellite telecommunications activities"
    }
  ],
  "timestamp": "2026-04-17T10:00:00.000Z"
}

Error Codes

400 Bad Request
Limite depassee
400 Bad Request
{
  "success": false,
  "error": "limit must be between 1 and 200",
  "timestamp": "2026-04-17T10:00:00.000Z"
}

Caching

Cache Duration: 10 minutes

Notes

  • Sans parametre q, tous les codes NACE de la version specifiee sont retournes (jusqu'a la limite).
  • Les versions disponibles dependent des donnees importees depuis la BCE (generalement 2003 et 2008).
  • La recherche s'effectue sur les descriptions dans la langue indiquee par le parametre language.

Detail d'un code NACE

Recuperez les informations detaillees d'un code NACE specifique, incluant ses descriptions dans les trois langues (FR, NL, EN).

GET
/api/v2/nace/{version}/{code}

Headers

HeaderValueDescription
X-API-Keypk_live_...Votre cle API publique
X-API-Secretsk_live_...Votre cle API secrete

Parameters

NameTypeDescription
version
required
stringVersion de la nomenclature NACEExample: 2008
code
required
stringCode NACE (avec point separateur)Example: 61.100

Example Request

cURL
curl -X GET \
  "https://companybelgium.be/api/v2/nace/2008/61.100" \
  -H "X-API-Key: pk_live_votre_cle" \
  -H "X-API-Secret: sk_live_votre_secret"
JavaScript / Node.js
const version = '2008';
const code = '61.100';

const response = await fetch(
  `https://companybelgium.be/api/v2/nace/${version}/${code}`,
  {
    headers: {
      'X-API-Key': process.env.API_KEY,
      'X-API-Secret': process.env.API_SECRET,
    },
  }
);

const data = await response.json();

if (data.success) {
  console.log(`Code: ${data.data.naceCode}`);
  console.log(`FR: ${data.data.description_FR}`);
  console.log(`NL: ${data.data.description_NL}`);
  console.log(`EN: ${data.data.description_EN}`);
}
Python
import requests

version = '2008'
code = '61.100'

response = requests.get(
    f'https://companybelgium.be/api/v2/nace/{version}/{code}',
    headers={
        'X-API-Key': 'pk_live_votre_cle',
        'X-API-Secret': 'sk_live_votre_secret',
    }
)
data = response.json()

if data['success']:
    nace = data['data']
    print(f"Code: {nace['naceCode']}")
    print(f"FR: {nace['description_FR']}")
    print(f"NL: {nace['description_NL']}")
    print(f"EN: {nace['description_EN']}")

Example Response

200 OK
{
  "success": true,
  "data": {
    "naceCode": "61.100",
    "naceVersion": "2008",
    "description_FR": "Telecommunications filaires",
    "description_NL": "Draadgebonden telecommunicatie",
    "description_EN": "Wired telecommunications activities"
  },
  "timestamp": "2026-04-17T10:00:00.000Z"
}

Error Codes

404 Not Found
Code NACE introuvable pour la version donnee
404 Not Found
{
  "success": false,
  "error": "NACE code 99.999 not found for version 2008",
  "timestamp": "2026-04-17T10:00:00.000Z"
}

Caching

Cache Duration: 1 heure

Notes

  • Les parametres version et code sont des segments de chemin (path parameters), pas des query parameters.
  • Le code NACE doit inclure le point separateur (ex: 61.100 et non 61100).

Formes juridiques

Consultez la liste des formes juridiques belges (SA, SRL, ASBL, etc.) avec leurs descriptions trilingues. Permet de rechercher par mot-cle.

GET
/api/v2/juridical-forms?q=SA&limit=100

Headers

HeaderValueDescription
X-API-Keypk_live_...Votre cle API publique
X-API-Secretsk_live_...Votre cle API secrete

Parameters

NameTypeDescription
q
optional
stringTerme de recherche (code ou description)Example: SA
limit
optional
integerNombre maximum de resultats (max 500)Example: 100Default: 100

Example Request

cURL
curl -X GET \
  "https://companybelgium.be/api/v2/juridical-forms?q=SA&limit=100" \
  -H "X-API-Key: pk_live_votre_cle" \
  -H "X-API-Secret: sk_live_votre_secret"
JavaScript / Node.js
const response = await fetch(
  'https://companybelgium.be/api/v2/juridical-forms?q=SA&limit=100',
  {
    headers: {
      'X-API-Key': process.env.API_KEY,
      'X-API-Secret': process.env.API_SECRET,
    },
  }
);

const data = await response.json();

if (data.success) {
  data.data.forEach(form => {
    console.log(`${form.code} - ${form.description_FR}`);
  });
}
Python
import requests

response = requests.get(
    'https://companybelgium.be/api/v2/juridical-forms',
    params={'q': 'SA', 'limit': 100},
    headers={
        'X-API-Key': 'pk_live_votre_cle',
        'X-API-Secret': 'sk_live_votre_secret',
    }
)
data = response.json()

if data['success']:
    for form in data['data']:
        print(f"{form['code']} - {form['description_FR']}")

Example Response

200 OK
{
  "success": true,
  "data": [
    {
      "code": "015",
      "description_FR": "Societe anonyme",
      "description_NL": "Naamloze vennootschap",
      "description_EN": "Public limited company"
    },
    {
      "code": "016",
      "description_FR": "Societe en commandite par actions",
      "description_NL": "Commanditaire vennootschap op aandelen",
      "description_EN": "Partnership limited by shares"
    }
  ],
  "timestamp": "2026-04-17T10:00:00.000Z"
}

Error Codes

400 Bad Request
Limite depassee
400 Bad Request
{
  "success": false,
  "error": "limit must be between 1 and 500",
  "timestamp": "2026-04-17T10:00:00.000Z"
}

Caching

Cache Duration: 1 heure

Notes

  • Sans parametre q, toutes les formes juridiques sont retournees.
  • Les codes correspondent aux codes officiels de la BCE/KBO.
  • Les descriptions sont disponibles en francais (FR), neerlandais (NL) et anglais (EN).

Recherche de denominations (autocompletion)

Recherchez des denominations d'entreprises belges par nom. Ideal pour implementer un champ d'autocompletion dans votre application. Retourne le numero d'entreprise associe a chaque denomination.

GET
/api/v2/denominations?q=proximus&limit=20

Headers

HeaderValueDescription
X-API-Keypk_live_...Votre cle API publique
X-API-Secretsk_live_...Votre cle API secrete

Parameters

NameTypeDescription
q
required
stringTerme de recherche (minimum 2 caracteres)Example: proximus
limit
optional
integerNombre maximum de resultats (max 50)Example: 20Default: 20

Example Request

cURL
curl -X GET \
  "https://companybelgium.be/api/v2/denominations?q=proximus&limit=20" \
  -H "X-API-Key: pk_live_votre_cle" \
  -H "X-API-Secret: sk_live_votre_secret"
JavaScript / Node.js
// Exemple d'autocompletion
const query = 'proximus';

const response = await fetch(
  `https://companybelgium.be/api/v2/denominations?q=${encodeURIComponent(query)}&limit=20`,
  {
    headers: {
      'X-API-Key': process.env.API_KEY,
      'X-API-Secret': process.env.API_SECRET,
    },
  }
);

const data = await response.json();

if (data.success) {
  data.data.forEach(denom => {
    console.log(`${denom.denomination} (${denom.enterpriseNumber})`);
  });
}
Python
import requests

response = requests.get(
    'https://companybelgium.be/api/v2/denominations',
    params={'q': 'proximus', 'limit': 20},
    headers={
        'X-API-Key': 'pk_live_votre_cle',
        'X-API-Secret': 'sk_live_votre_secret',
    }
)
data = response.json()

if data['success']:
    for denom in data['data']:
        print(f"{denom['denomination']} ({denom['enterpriseNumber']})")

Example Response

200 OK
{
  "success": true,
  "data": [
    {
      "enterpriseNumber": "0202.239.951",
      "denomination": "Proximus",
      "language": "1",
      "typeOfDenomination": "001"
    },
    {
      "enterpriseNumber": "0202.239.951",
      "denomination": "Proximus SA de droit public",
      "language": "2",
      "typeOfDenomination": "001"
    },
    {
      "enterpriseNumber": "0847.357.834",
      "denomination": "Proximus ICT",
      "language": "1",
      "typeOfDenomination": "001"
    }
  ],
  "timestamp": "2026-04-17T10:00:00.000Z"
}

Error Codes

400 Bad Request
Terme de recherche trop court
400 Bad Request
{
  "success": false,
  "error": "q parameter must be at least 2 characters",
  "timestamp": "2026-04-17T10:00:00.000Z"
}

Caching

Cache Duration: 10 minutes

Notes

  • Le parametre q est obligatoire et doit contenir au moins 2 caracteres.
  • La recherche utilise un index trigramme pour des resultats rapides meme sur 3.3M+ denominations.
  • Le champ language correspond au code langue BCE : 1 = francais, 2 = neerlandais, 3 = allemand, 4 = anglais.
  • Le champ typeOfDenomination indique le type de nom : 001 = denomination sociale, 002 = abreviation, etc.

Need help?

Our support team is available to help you with API integration.