CompanyBelgium

Codes d'erreur

Référence complète des codes d'erreur HTTP retournés par l'API.

Codes HTTP

CodeStatutDescription
200
OKRequête réussie — les données sont disponibles dans le champ data
400
Bad RequestParamètres manquants ou invalides — vérifiez les paramètres de la requête
401
UnauthorizedAuthentification requise — clé API manquante ou invalide
404
Not FoundRessource non trouvée — l'entreprise ou l'endpoint n'existe pas
429
Too Many RequestsTrop de requêtes — limite de débit dépassée, réessayez plus tard
500
Internal Server ErrorErreur serveur interne — contactez le support si le problème persiste
502
Bad GatewayService 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;
  }
}

Besoin d'aide ?

Notre equipe de support est disponible pour vous aider avec l'integration de l'API.