Développeurs
API et MCP gratuits des entreprises françaises
Une API REST et un serveur MCP pour lire les données publiques INSEE, INPI et DILA, et préparer des brouillons d'annonces légales, sans paiement ni publication automatiques. Gratuit, avec un compte développeur.
Vous recevez un lien de connexion par e-mail, puis vous créez votre clé dans votre espace développeur.
Ce que vous obtenez
Entreprises et établissements
Identité, siège et établissements diffusibles. Source : INSEE Sirene.
Capital, documents, dirigeants
Capital, métadonnées des documents déposés, dirigeants en cours de mandat (nom et fonction). Source : INPI RNE.
Avis BODACC
Les 20 derniers avis d'une société et le contenu filtré de chaque avis. Source : DILA.
Annonces légales
Prix réglementé, annonces qu'exige un événement, démarches suivantes, brouillon sur legalone.fr.
Adresses
Autocomplétion, normalisation et géolocalisation. Source : Base Adresse Nationale.
Gratuit
Compte gratuit, toutes ses clés ensemble : 60 requêtes par minute, 5 000 par jour, 100 000 par mois. Quota supérieur sur demande.
Quotas
| Appelant | Par minute | Par jour | Par mois | Recherche par minute |
|---|---|---|---|---|
| Compte gratuit (toutes ses clés ensemble) | 60 | 5 000 | 100 000 | 20 |
| Quota supérieur (sur demande gratuite, examinée par l'équipe) | 300 | 25 000 | 500 000 | 60 |
| Serveur MCP sans clé (par adresse IP) | 60 | 1 000 | — | — |
Les jours et les mois suivent le calendrier UTC. Une requête refusée n'est pas comptée. Contourner les quotas (plusieurs comptes, clés ou adresses IP) est interdit. Pour un volume plus élevé, demandez un quota supérieur depuis votre espace développeur : c'est gratuit, et une personne de l'équipe vous répond. Pour une offre professionnelle, écrivez à [email protected].
Données exposées et jamais exposées
Exposées
- Identité de l'entreprise et de ses établissements diffusibles (SIRENE, INSEE).
- Adresses postales françaises normalisées et géolocalisées (Base Adresse Nationale).
- Capital et métadonnées des documents déposés (RNE, INPI).
- Avis du BODACC filtrés (DILA).
- Dirigeants en cours de mandat : nom affiché, fonction, type (personne physique ou morale).
Jamais exposées
- Jour et lieu de naissance, nationalité, domicile, e-mail et téléphone des personnes (le mois et l'année de naissance seulement en accès étendu vérifié).
- Bénéficiaires effectifs.
- Comptes annuels et contenu des documents déposés.
- Entreprises et établissements dont l'INSEE restreint la diffusion.
- Personnes, sociétés ou avis ayant fait l'objet d'une opposition.
- Recherche de personnes : on ne cherche pas un dirigeant par son nom.
- Qui habite ou travaille à une adresse.
Les données viennent du répertoire SIRENE (INSEE), du registre national des entreprises (INPI), du BODACC (DILA) et, pour les adresses, de la Base Adresse Nationale. Elles sont fournies telles que publiées, sans garantie : pour une décision à effet juridique, vérifiez sur la source officielle.
Créer un compte développeur
Chaque requête à l'API demande une clé, et chaque clé appartient à un compte développeur gratuit : adresse e-mail vérifiée, société, usage prévu et acceptation des conditions. Dans votre espace développeur, vous créez et révoquez vos clés (trois actives au plus), suivez votre consommation et demandez un quota supérieur. Envoyez la clé avec Authorization: Bearer lo_….
Démarrage rapide
Créez votre compte développeur gratuit (plus haut), puis une clé dans votre espace. Les réponses sont en JSON, avec les sources et la date de mise à jour dans meta.
curl -H "Authorization: Bearer lo_votre_cle" \
https://api.legalone.fr/v1/entreprises/992052134curl -H "Authorization: Bearer lo_votre_cle" \
"https://api.legalone.fr/v1/entreprises?q=nozzl&per_page=5"curl -H "Authorization: Bearer lo_votre_cle" \
"https://api.legalone.fr/v1/entreprises/992052134/bodacc?limit=5"Format de réponse : { data, meta, links }. Les erreurs suivent la RFC 9457 (application/problem+json). Une ressource restreinte, en opposition ou supprimée répond 404, comme une ressource absente. Chaque réponse porte les en-têtes X-RateLimit-Limit, X-RateLimit-Remaining et X-RateLimit-Reset ; un 429 ajoute Retry-After.
Bibliothèques TypeScript et Python (un fichier chacune), fiche d'utilisation pour agents IA (skill) et manifeste du serveur MCP, sous licence MIT : github.com/legalone-fr/entreprises.
Serveur MCP
Le serveur MCP donne à un assistant les mêmes données que l'API, en lecture seule ; seuls ses outils d'annonces légales écrivent, un brouillon sur legalone.fr. Transport Streamable HTTP. Les annuaires d'assistants (Claude, ChatGPT) n'acceptent qu'un serveur public ou OAuth, pas une clé saisie par l'utilisateur : le serveur reste donc consultable sans clé, avec un quota réduit par adresse IP (voir le tableau ci-dessus). Votre propre agent peut envoyer votre clé (Authorization: Bearer lo_…) pour utiliser le quota de votre compte (toutes ses clés ensemble).
https://mcp.legalone.fr/mcpPour vos clients, la marche à suivre assistant par assistant : LegalOne dans votre assistant IA.
Dans Claude ou ChatGPT, ajoutez cette URL comme connecteur personnalisé (serveur MCP distant), si votre offre le permet. Pour les clients qui lisent un fichier de configuration JSON :
{
"mcpServers": {
"legalone": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.legalone.fr/mcp"
]
}
}
}{
"mcpServers": {
"legalone": {
"type": "http",
"url": "https://mcp.legalone.fr/mcp"
}
}
}Les outils
| Outil | Rôle |
|---|---|
| search_companies | Cherche une entreprise par nom, SIREN ou SIRET (20 résultats au plus). |
| get_company | Fiche d'une entreprise à partir de son SIREN. |
| get_establishment | Fiche d'un établissement à partir de son SIRET. |
| list_bodacc_notices | Liste les avis BODACC d'une entreprise. |
| get_bodacc_notice | Lit un avis BODACC. |
| list_company_documents | Liste les documents déposés par une entreprise. |
| search_addresses | Vérifie, complète et géolocalise une adresse postale française (Base Adresse Nationale). |
| get_legal_notice_price | Prix réglementé d'une annonce légale pour une formalité et un département. |
| which_legal_notice | Annonces légales qu'exige un événement (création, transfert de siège, changement de dirigeant, dissolution…). |
| get_next_steps | Démarches après l'annonce et pièces à préparer. |
| prepare_legal_notice | Prépare un brouillon d'annonce sur legalone.fr ; l'utilisateur le relit, le complète et le paie sur le site. |
| update_legal_notice_draft | Corrige un brouillon préparé par l'outil précédent, tant que l'utilisateur ne l'a pas enregistré. |
Votre espace client (connexion LegalOne)
Une seconde adresse donne aussi à l'assistant votre espace client : annonces, factures, documents, sociétés suivies, cabinet, et des actions (préparer un brouillon, choisir son journal, suivre une société…), chacune après votre accord dans la conversation. L'assistant vous envoie sur legalone.fr : vous vous connectez comme d'habitude (code de vérification compris) et autorisez l'accès. Il reçoit un jeton valable 15 minutes, renouvelé tant que vous l'utilisez (30 jours au plus sans utilisation). Un administrateur de cabinet voit aussi les factures du cabinet, un collaborateur les siennes, comme sur le site. Aucun paiement ne se fait depuis un assistant : il vous donne le lien de paiement de legalone.fr. Mot de passe, sessions, moyens de paiement, membres du cabinet et clés restent sur le site. Vous retirez l'accès dans Sécurité du compte.
https://mcp.legalone.fr/compte| Outil en plus | Rôle |
|---|---|
| list_my_invoices | Vos factures d'annonces légales : numéro, annonce, société, date, lien vers le PDF sur legalone.fr. |
| list_my_legal_notices | Vos annonces : statut, journal, département, date de parution, lien vers l'annonce. |
| get_my_notice_documents | Facture, attestation de parution et justificatif d'une annonce (liens). |
| list_my_followed_companies | Vos sociétés suivies et leurs alertes (BODACC, registre). |
| get_my_cabinet | Votre cabinet : membres et annonces (administrateurs seulement). |
| get_my_cashback | Votre solde cashback et ses derniers mouvements. |
| resume_my_draft | Le formulaire d'un de vos brouillons, pour le terminer. |
| list_journals_for_my_notice | Les journaux disponibles aujourd'hui pour un brouillon (liste lue en direct). |
| follow_company / unfollow_company | Suivre ou ne plus suivre une société (après votre accord). |
| duplicate_my_notice | Copier une de vos annonces en brouillon (après votre accord). |
| order_transfer_counterpart | Préparer le second avis d'un transfert hors ressort (après votre accord). |
| send_my_invoice_by_email | Renvoyer une facture, avec l'attestation si besoin, à l'adresse de votre compte (après votre accord). |
| choose_journal | Choisir le journal d'un brouillon, revérifié sur la liste du jour (après votre accord). |
| get_payment_link | Le lien de la page de paiement sur legalone.fr : vous payez sur le site, jamais dans la conversation. |
Pour les auteurs de clients MCP : métadonnées RFC 9728 à /.well-known/oauth-protected-resource/compte, serveur d'autorisation https://legalone.fr/api/auth (RFC 8414, enregistrement dynamique RFC 7591, PKCE S256, paramètre resource RFC 8707), périmètres compte:lecture puis compte:actions (demandé par 403 insufficient_scope).
Documentation complète
Référence de l'API LegalOne →Chaque route avec ses paramètres, ses codes d'erreur, un exemple curl, un exemple de réponse et un bouton « Essayer ». Générée depuis le contrat OpenAPI.Routes
Base : https://api.legalone.fr. Les routes sont en GET, sauf celle marquée POST.
| Route | Rôle |
|---|---|
| /v1/entreprises/{siren} | Fiche : identité, siège, établissements (25 au plus), capital RNE, dirigeants (nom et fonction). |
| /v1/etablissements/{siret} | Fiche d'un établissement. |
| /v1/entreprises?q=&page=&per_page= | Recherche par préfixe du nom, ou par SIREN ou SIRET exact. 20 résultats par page, 5 pages au plus. |
| /v1/entreprises/{siren}/bodacc?limit= | 20 derniers avis BODACC de la société (résumés). |
| /v1/bodacc/{id} | Contenu filtré d'un avis BODACC. |
| /v1/entreprises/{siren}/documents | Métadonnées des actes et dépôts de comptes, avec lien vers l'INPI. |
| /v1/adresses?q=&limit= | Autocomplétion d'adresses françaises (Base Adresse Nationale), 10 résultats au plus. |
| /v1/adresses/normaliser?q= | Meilleure correspondance pour une adresse, avec un statut : matched, low_confidence ou not_found. |
| /v1/adresses/inverse?lat=&lon= | Adresses les plus proches d'un point. |
| /v1/annonces/prix?formality=&department= | Prix réglementé d'une annonce légale (HT, TVA, TTC), le même dans tous les journaux habilités du département. |
| /v1/annonces/quelle-annonce?situations=&department= | Annonces légales qu'exige un événement : nombre, département, délai, base légale, prix. |
| /v1/annonces/etapes?formality= | Démarches après l'annonce (guichet unique, BODACC) et pièces à préparer. |
| POST /v1/annonces/brouillons | Brouillon d'annonce sur legalone.fr, à partir du SIREN (modification) ou des statuts (création) ; lien (7 jours) vers le formulaire prérempli, relu et payé sur le site. |
| PATCH /v1/annonces/brouillons/{id} | Corrige ce brouillon avec le jeton de modification (editToken) reçu à sa création, tant que l'utilisateur ne l'a pas enregistré. |
| /v1/openapi.json | Contrat OpenAPI 3.1. |
| /v1/health | État du service et fraîcheur des données. |
Description complète : openapi.json.
Cas d'usage
Pré-remplir l'onboarding de vos clients professionnels
Votre client saisit son SIREN : l'API renvoie la dénomination, la forme juridique, le code NAF, l'adresse du siège normalisée, le capital et les dirigeants (nom et fonction). Vous pré-remplissez et enrichissez votre formulaire d'ouverture de compte, votre client corrige si besoin, puis vous faites votre vérification réglementaire avec vos propres outils.
const response = await fetch(
`https://api.legalone.fr/v1/entreprises/${siren}`,
{ headers: { Authorization: `Bearer ${process.env.LEGALONE_API_KEY}` } },
);
if (response.status === 404) return null; // inconnue ou non diffusable
const { data, meta } = await response.json();
// Champs pré-remplis, modifiables par votre client avant validation
return {
raisonSociale: data.name,
siren: data.siren,
formeJuridique: data.legalFormCode,
codeNaf: data.activityCode,
adresseSiege: data.headOffice?.address.normalized?.label ?? data.headOffice?.address.line,
capital: data.capital?.amount,
dirigeants: data.officers.map((officer) => `${officer.name} (${officer.role})`),
source: meta.attribution, // à afficher près des données
};Ces données servent à pré-remplir et à enrichir. Elles ne remplacent pas la vérification d'identité exigée des professionnels assujettis (article L.561-5 du code monétaire et financier) : vérifiez sur un extrait Kbis ou un extrait RNE, et sur vos propres sources.
Adresses
Normalisation, autocomplétion et géolocalisation d'adresses postales françaises, à partir de la Base Adresse Nationale (Licence Ouverte 2.0). Mêmes clés et mêmes quotas que le reste de l'API.
curl -H "Authorization: Bearer lo_votre_cle" \
"https://api.legalone.fr/v1/adresses/normaliser?q=8+boulevard+du+Port+80000+Amiens"Les fiches d'entreprise et d'établissement portent aussi address.normalized (adresse normalisée et coordonnées) quand elle est connue, sinon null. Les réponses des routes d'adresses se mettent en cache 24 heures ; en cas d'erreur 503, réessayez après le délai de Retry-After.
Adresses : Base Adresse Nationale (BAN), Licence Ouverte 2.0 — via LegalOneRéponses rapides
Attribution à afficher
Citez LegalOne et les sources près des données. Remplacez {date} par meta.updatedAt, au format JJ/MM/AAAA. Le mot « LegalOne » renvoie vers la fiche de l'entreprise (data.links.legalone) ou, à défaut, vers legalone.fr. Ne citez que les sources réellement utilisées (meta.sources).
Données : LegalOne — sources INSEE Sirene, INPI RNE, DILA BODACC, mise à jour le {date}<p class="legalone-attribution">
Données : <a href="https://www.legalone.fr">LegalOne</a> — sources INSEE Sirene, INPI RNE, DILA BODACC, mise à jour le {date}
</p>Quand meta.sources contient la Base Adresse Nationale (adresse normalisée d'un établissement), meta.attribution l'ajoute à la liste. Les routes d'adresses ont leur propre mention, sans date (voir attribution).