Codes d'erreur
Référence complète des codes d'erreur HTTP retournés par l'API.
Codes HTTP
| Code | Statut | Description |
|---|---|---|
200 | OK | Requête réussie — les données sont disponibles dans le champ data |
400 | Bad Request | Paramètres manquants ou invalides — vérifiez les paramètres de la requête |
401 | Unauthorized | Authentification requise — clé API manquante ou invalide |
404 | Not Found | Ressource non trouvée — l'entreprise ou l'endpoint n'existe pas |
429 | Too Many Requests | Trop de requêtes — limite de débit dépassée, réessayez plus tard |
500 | Internal Server Error | Erreur serveur interne — contactez le support si le problème persiste |
502 | Bad Gateway | Service BCE/KBO indisponible — le service en amont est temporairement inaccessible |
Exemples de réponses d'erreur
400 — Paramètres manquants
400 Bad Request
{
"success": false,
"error": "At least one search parameter is required (name, zipCode, city, or naceCode)",
"timestamp": "2026-02-08T12:00:00.000Z"
}401 — Authentification échouée
401 Unauthorized
{
"success": false,
"error": "Invalid or missing API key",
"timestamp": "2026-02-08T12:00:00.000Z"
}404 — Entreprise non trouvée
404 Not Found
{
"success": false,
"error": "Company not found",
"timestamp": "2026-02-08T12:00:00.000Z"
}429 — Rate limiting
429 Too Many Requests
{
"success": false,
"error": "Rate limit exceeded. Please try again later.",
"timestamp": "2026-02-08T12:00:00.000Z"
}502 — Service BCE/KBO indisponible
502 Bad Gateway
{
"success": false,
"error": "KBO upstream service is temporarily unavailable",
"timestamp": "2026-02-08T12:00:00.000Z"
}Gestion des erreurs
Voici un exemple de gestion robuste des erreurs en JavaScript :
Gestion d'erreurs
async function searchCompanies(name) {
try {
const response = await fetch(
`https://companybelgium.be/api/companies/search?name=${name}`,
{ headers: { 'X-API-Key': process.env.API_KEY } }
);
const data = await response.json();
if (!data.success) {
// Gestion spécifique par code HTTP
switch (response.status) {
case 400:
console.error('Paramètres invalides:', data.error);
break;
case 401:
console.error('Clé API invalide');
break;
case 429:
console.error('Rate limit atteint, réessayer plus tard');
// Implémenter un backoff exponentiel
break;
case 502:
console.error('Service BCE/KBO indisponible');
break;
default:
console.error('Erreur:', data.error);
}
return null;
}
return data.data;
} catch (error) {
console.error('Erreur réseau:', error);
return null;
}
}