Aller au contenu
Public · sans cléLecture seuleAPI v1 · MCP

API publique : rechercher, consulter, vérifier

Référence de l'API Ilicompta : recherches, fiches cabinets, villes, sources, filtres, pagination et erreurs. Accès public sans clé.

Adresse et accès

Base : https://ilicompta.fr/api/v1. Toutes les opérations utilisent GET et retournent du JSON. L'accès ne nécessite ni compte ni clé. Limite commune à l'API et au MCP : 120 requêtes par minute et origine réseau. Une origine peut regrouper plusieurs utilisateurs d'un assistant.

Les paramètres inconnus ou invalides sont rejetés. Les réponses incluent request_id et dataset_version. L'export_generated_at indique la date de génération de l'export, pas une date de vérification des faits.

Rechercher des cabinets

GET /cabinets. Paramètres : city (slug recommandé, nom exact ou code postal), q (nom ou SIREN), sector, service, software, language, limit (1 à 20, défaut 5), cursor. Les filtres sont combinés par ET. Il n'y a aucun élargissement automatique.

Les filtres d'activité sélectionnent des mentions extraites d'un site identifié, pas des compétences certifiées. Consultez /taxonomies pour les valeurs exactes. q ne remplace pas les filtres de prestations.

Conservez les mêmes paramètres, y compris limit, et ajoutez next_cursor dans cursor pour la page suivante. total est le nombre de correspondances avant pagination. L'ordre est alphabétique, départagé par slug.

const url = new URL('https://ilicompta.fr/api/v1/cabinets');
url.searchParams.set('city', 'lyon-69000');
url.searchParams.set('limit', '5');
const response = await fetch(url);
const data = await response.json();
if (!response.ok) throw new Error(data.error.message);
for (const cabinet of data.results) {
  console.log(cabinet.name, cabinet.citation_url);
}

Consulter une fiche

GET /cabinets/{slug}. Utilisez un slug retourné par la recherche. La fiche contient l'identité, l'adresse, les activités, les informations juridiques disponibles, les sources et les limites. Les dates inconnues restent null.

canonical_url identifie la fiche ; citation_url pointe vers son bloc de faits et de sources. Les sources d'origine restent disponibles dans evidence et legal.verification_url.

import json
from urllib.request import urlopen

with urlopen('https://ilicompta.fr/api/v1/cabinets/expertise-conseil') as response:
    data = json.load(response)
print(data['cabinet']['citation_url'])

Villes, statistiques et référentiels

GET /cities?q=Lyon : trouver un slug et résoudre les ambiguïtés (limit de 1 à 20, défaut 8). GET /cities/{slug}/stats : périmètre géographique, nombre de fiches, couverture et mentions recensées. GET /taxonomies : valeurs exactes des quatre filtres. GET /meta : version du catalogue et limites.

Les statistiques comptent les mentions héritées une fois par fiche. La recherche filtrée impose en plus une URL d'extraction. Cette différence est explicitée dans les réponses ; les pourcentages décrivent le catalogue, pas tout le marché.

Erreurs et reprise

400 invalid_parameter / unknown_filter / invalid_cursor : corriger la requête à partir du contrat. 404 cabinet_not_found / city_not_found : identifier une fiche ou une ville publiée. 409 ambiguous_city : utiliser le slug d'une candidate. 409 catalog_changed : recommencer la pagination sans curseur.

429 rate_limited : attendre la durée Retry-After, au moins 60 secondes. 503 temporarily_unavailable : réessayer avec un délai croissant. Un résultat vide en HTTP 200 signifie aucune correspondance documentée, pas une indisponibilité technique.

Les réponses API ne sont pas mises en cache par les caches partagés pour appliquer les limites à chaque appel. Vous pouvez conserver une réponse pour votre traitement en enregistrant sa version, sans la présenter comme une vérification récente.

Une information à corriger ? Consulter la méthode et le parcours de correction.