Input schema (truncated preview — do not copy)
{
"type": "object",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"required": [
"query"
],
"properties": {
"limit": {
"type": "number",
"description": "Nombre de resultats par page (defaut 20 ; max 20 sur free, 100 sur pro). Facture 1 appel de quota par tranche de 20 lignes : limit=100 coute 5 appels."
},
"query": {
"type": "string",
"description": "Nom, SIREN, mot-cle activite, ou \"*\" pour rechercher uniquement par filtres. Operateurs acceptes : \"expression exacte\", OR en majuscules (ou |) entre deux termes, -terme pour exclure, parentheses pour grouper. Ex : (logiciel OR saas) \"gestion de paie\" -holding"
},
"ville": {
"type": "string",
"description": "Nom de ville. Plusieurs villes separees par virgule. Ex: \"Paris,Lyon,Bordeaux\""
},
"ca_max": {
"type": "number",
"description": "CA maximum en euros. Ex: 50000000 pour 50M"
},
"ca_min": {
"type": "number",
"description": "CA minimum en euros. Ex: 5000000 pour 5M"
},
"cursor": {
"type": "string",
"description": "Curseur de pagination retourne dans next_cursor de la reponse precedente. Ne pas fournir pour la premiere page."
},
"radius": {
"type": "integer",
"maximum": 200,
"minimum": 1,
"description": "Rayon de recherche en km (1-200) autour de latitude/longitude. Les trois vont ensemble : un triplet incomplet est refuse."
},
"region": {
"type": "string",
"description": "Region. Ex: \"Ile-de-France\", \"Bretagne\", \"Auvergne-Rhone-Alpes\""
},
"statut": {
"enum": [
"ACTIVE",
"DISSOLVED"
],
"type": "string",
"description": "Filtre par statut au registre. DISSOLVED = dissoute ou radiee ; une societe en procedure collective reste ACTIVE jusqu'a sa radiation. Le statut ne se deduit PAS de date_radiation, absente sur environ 9,9M des 12,4M societes dissoutes."
},
"sort_by": {
"enum": [
"relevance",
"chiffre_affaires",
"resultat_net",
"effectif_moyen",
"date_creation",
"capital"
],
"type": "string",
"description": "Tri des resultats. Par defaut \"relevance\". Ex: \"chiffre_affaires\" pour trier par CA."
},
"code_naf": {
"type": "string",
"description": "Code NAF/APE. Exemples courants :\n- SaaS/Logiciel : 5829C, 6201Z, 6202A\n- Conseil IT : 6202A, 6209Z\n- Conseil management : 7022Z\n- Fintech : 6419Z, 6499Z\n- Biotech/Pharma : 2120Z, 7211Z\n- E-commerce : 4791A, 4791B\n- BTP : 4120A, 4120B\n- Restauration : 5610A, 5610C\nPlusieurs codes separes par virgule."
},
"is_cotee": {
"type": "boolean",
"description": "true pour les societes cotees en bourse uniquement, false pour les exclure"
},
"latitude": {
"type": "number",
"maximum": 90,
"minimum": -90,
"description": "Latitude du centre pour une recherche par rayon (WGS84). A fournir avec longitude ET radius."
},
"longitude": {
"type": "number",
"maximum": 180,
"minimum": -180,
"description": "Longitude du centre pour une recherche par rayon (WGS84). A fournir avec latitude ET radius."
},
"sort_order": {
"enum": [
"asc",
"desc"
],
"type": "string",
"description": "Ordre de tri. Par defaut \"desc\". Ex: \"asc\" pour les plus petits CA en premier."
},
"cagr_ca_max": {
"type": "number",
"description": "Croissance CA max sur 1 an en % (ex: 50 pour +50%)"
},
"cagr_ca_min": {
"type": "number",
"description": "Croissance CA min sur 1 an en % (ex: 20 pour +20%)"
},
"code_postal": {
"type": "string",
"description": "Code postal du siege. Ex: \"75001\", \"69001\". Plusieurs separes par virgule."
},
"departement": {
"type": "string",
"description": "Code departement. Ex: \"75\", \"33\", \"69\""
},
"est_filiale": {
"type": "boolean",
"description": "true = filiales uniquement, false = entreprises independantes uniquement"
},
"has_website": {
"type": "boolean",
"description": "true pour ne retourner que les entreprises ayant un site web"
},
"credit_grade": {
"type": "array",
"items": {
"enum": [
"AAA",
"AA",
"A",
"BBB",
"BB",
"B",
"CCC",
"D"
],
"type": "string"
},
"description": "Grades de risque credit a garder (OR). Ex: [\"CCC\",\"D\"] pour les societes a risque eleve, [\"AAA\",\"AA\"] pour les plus solides. ~900k societes scorees (celles avec un bilan recent) ; les non scorees sont exclues des qu'un grade est demande."
},
"effectif_max": {
"type": "number",
"description": "Effectif maximum (nombre de salaries)"
},
"effectif_min": {
"type": "number",
"description": "Effectif minimum (nombre de salaries)"
},
"filter_annee": {
"type": "number",
"description": "Annee de l'exercice financier. Filtre les entreprises dont le dernier bilan publie correspond a cette annee. Ex: 2024 pour ne voir que les bilans 2024. Combiner avec ca_min pour \"societes ayant fait 5M de CA en 2024\"."
},
"siren_groupe": {
"type": "string",
"description": "SIREN de la tete de groupe. Retourne toutes les societes du meme groupe. Ex: \"352383715\" pour lister toutes les filiales de LVMH."
},
"credit_scored": {
"type": "boolean",
"description": "true pour ne garder que les societes qui ont un score credit, false pour les exclure"
},
"dirigeant_nom": {
"type": "string",
"description": "Nom de famille du dirigeant (recherche exacte). Ex: \"GUILLEMOT\". Combine avec dirigeant_prenom et dirigeant_naissance pour desambiguiser les homonymes."
},
"groupe_parent": {
"type": "string",
"description": "Nom du groupe parent (recherche textuelle). Ex: \"LVMH\", \"Bouygues\""
},
"plan_en_cours": {
"type": "boolean",
"description": "Societes executant un plan (redressement, sauvegarde ou cession). Distinct de procedure_collective : sous plan, la periode d'observation est terminee."
},
"include_fields": {
"type": "string",
"description": "Champs a ajouter a chaque resultat (CSV). Une valeur filtree n'apparait que si son champ est demande. Montants et ratios : le champ porte le nom du filtre sans _min/_max (ebitda_min -> ebitda, capitaux_propres_min -> capitaux_propres, nb_cessions_min -> nb_cessions). Exceptions : dividendes_min -> dividendes_verses ; nb_marches_min -> nb_marches_titulaire,montant_marches_titulaire ; nb_subventions_min -> nb_subventions,montant_subventions_total ; nb_brevets_min -> nb_brevets,nb_brevets_actifs.\nFinancier : ca, marge_brute, valeur_ajoutee, ebitda, resultat_exploitation, resultat_net, marge_nette, marge_ebitda, total_actif, capitaux_propres, tresorerie, dettes_financieres, dettes_fournisseurs, dette_nette, bfr, ratio_endettement, capacite_autofinancement, dividendes_verses, delai_paiement_clients_jours, delai_paiement_fournisseurs_jours, effectif_moyen, annee_financiere.\nCroissance : croissance_ca, croissance_ebitda, croissance_rn, et leurs variantes _2ans, _3ans, _5ans.\nGroupe : est_filiale, est_tete_de_groupe, groupe_parent, siren_groupe, nb_filiales_directes, societe_mere_etrangere.\nSignaux BODACC : nb_cessions, derniere_cession_date, a_fusionne, nb_modifications_capital, nb_transferts_siege, nb_changements_denomination, nb_evt_modif_admin.\nDonnees publiques : nb_marches_titulaire, montant_marches_titulaire, nb_subventions, montant_subventions_total, nb_brevets, nb_brevets_actifs, nb_participations_salons, est_societe_mission, est_ess.\nFonds PE/VC : a_fonds, nom_fonds, siren_fonds, type_fonds, annee_entree_fonds, nb_fonds_actuels.\nCotees : a_lei, lei, source_esef, source_gleif, nb_instruments_financiers.\nCompteurs et fraicheur : nb_dirigeants, nb_etablissements, nb_representants_actifs, derniere_evt_date, dernier_depot_date, dernier_marche_date.\nTexte : description_activite (alias description ; reprend souvent le libelle NAF), objet_social, site_internet (~40 % des societes a CA > 8 M EUR). Le descriptif est deja cherche par query.\nPlan gratuit : ca, resultat_net, effectif_moyen, croissance_ca, annee_financiere, plus les champs groupe, signaux, donnees publiques et texte."
},
"tresorerie_max": {
"type": "number",
"description": "Tresorerie maximum en euros"
},
"tresorerie_min": {
"type": "number",
"description": "Tresorerie minimum en euros"
},
"advanced_filters": {
"anyOf": [
{
"type": "object",
"properties": {
"ca_max": {
"type": "number",
"description": "CA maximum (euros)"
},
"a_fonds": {
"type": "boolean",
"description": "true = detenue par un fonds d'investissement PE/VC"
},
"bfr_max": {
"type": "number"
},
"bfr_min": {
"type": "number"
},
"est_ess": {
"type": "boolean",
"description": "true = economie sociale et solidaire"
},
"a_fusionne": {
"type": "boolean",
"description": "true = a participe a une fusion"
},
"ebitda_max": {
"type": "number",
"description": "EBITDA maximum"
},
"ebitda_min": {
"type": "number",
"description": "EBITDA minimum"
},
"cagr_ca_max": {
"type": "number"
},
"capital_max": {
"type": "number",
"description": "Capital social maximum"
},
"capital_min": {
"type": "number",
"description": "Capital social minimum"
},
"effectif_max": {
"type": "number",
"description": "Tranche INSEE maximum"
},
"data_freshness": {
"type": "number",
"description": "Fraicheur des bilans en annees. Ex: 2 pour bilans < 2 ans"
},
"dividendes_max": {
"type": "number"
},
"dividendes_min": {
"type": "number"
},
"nb_brevets_min": {
"type": "number",
"description": "\"entreprises avec brevets\" -> 1"
},
"nb_marches_max": {
"type": "number"
},
"nb_marches_min": {
"type": "number",
"description": "\"entreprises avec marches publics\" -> 1"
},
"tresorerie_max": {
"type": "number"
},
"cagr_rn_1an_max": {
"type": "number"
},
"cagr_rn_1an_min": {
"type": "number"
},
"dette_nette_max": {
"type": "number"
},
"dette_nette_min": {
"type": "number"
},
"marge_brute_max": {
"type": "number"
},
"marge_brute_min": {
"type": "number"
},
"marge_nette_max": {
"type": "number"
},
"marge_nette_min": {
"type": "number"
},
"nb_cessions_max": {
"type": "number"
},
"nb_cessions_min": {
"type": "number"
},
"total_actif_max": {
"type": "number"
},
"total_actif_min": {
"type": "number"
},
"cagr_ca_2ans_max": {
… [server-provided details truncated]