---
type: "firecrawl-provider"
description: "The French state's open company search (API Recherche d'entreprises, run by DINUM for annuaire-entreprises.data.gouv.fr): every diffusible French legal unit from INSEE Sirene and INPI's national company register (RNE) with legal form, NAF activity, salaried headcount band, INSEE size category, head office with address and coordinates, executives (dirigeants) as published, latest published revenue and net income, VAT numbers and public labels (ESS, RGE, Qualiopi, mission company...). Search by name, SIREN/SIRET or executive name and filter by NAF code or section, headcount band, category, legal form, postal code, commune, department, region, status, labels, revenue and net-income ranges and executive birth date; look a company up by SIREN; or list companies with establishments around a point. Keyless official open data under Licence Ouverte / Etalab 2.0."
use_when: "The French state's open company search (API Recherche d'entreprises, run by DINUM for annuaire-entreprises.data.gouv.fr): every diffusible French legal unit from INSEE Sirene and INPI's national company register (RNE) with legal form, NAF activity, salaried headcount band, INSEE size category, head office with address and coordinates, executives (dirigeants) as published, latest published revenue and net income, VAT numbers and public labels (ESS, RGE, Qualiopi, mission company...). Search by name, SIREN/SIRET or executive name and filter by NAF code or section, headcount band, category, legal form, postal code, commune, department, region, status, labels, revenue and net-income ranges and executive birth date; look a company up by SIREN; or list companies with establishments around a point. Keyless official open data under Licence Ouverte / Etalab 2.0."
categories: "Public records"
capabilities: 3
credits_per_call: 5
---
# API Recherche d'entreprises (annuaire-entreprises.data.gouv.fr) on Firecrawl Alexandria

The French state's open company search (API Recherche d'entreprises, run by DINUM for annuaire-entreprises.data.gouv.fr): every diffusible French legal unit from INSEE Sirene and INPI's national company register (RNE) with legal form, NAF activity, salaried headcount band, INSEE size category, head office with address and coordinates, executives (dirigeants) as published, latest published revenue and net income, VAT numbers and public labels (ESS, RGE, Qualiopi, mission company...). Search by name, SIREN/SIRET or executive name and filter by NAF code or section, headcount band, category, legal form, postal code, commune, department, region, status, labels, revenue and net-income ranges and executive birth date; look a company up by SIREN; or list companies with establishments around a point. Keyless official open data under Licence Ouverte / Etalab 2.0.

- Categories: Public records
- Category index: [Public records category](https://firecrawl.dev/alexandria/agents/categories/public-records)
- Provider key: `recherche-entreprises-api-gouv-fr`
- Access: Firecrawl credits
- Cost: 5 credits per call

## More

- [Human guide](https://firecrawl.dev/app/alexandria/recherche-entreprises-api-gouv-fr)
- [OpenAPI spec](https://firecrawl.dev/alexandria/agents/providers/recherche-entreprises-api-gouv-fr/openapi.json)

## Capabilities

- [Get company](https://firecrawl.dev/alexandria/agents/providers/recherche-entreprises-api-gouv-fr/companies/get_company): One French legal unit by SIREN (or a pasted annuaire-entreprises.data.gouv.fr link): name, legal name, acronym, legal form with label, NAF activity with label, salaried headcount band decoded to a range, INSEE category, creation and cessation dates, status, head office (SIRET, address, postcode, commune, department, region, coordinates, activity, headcount), establishment counts, executives as published (natural persons with role, birth year/month and nationality when the source publishes them; legal entities such as auditors with their SIREN), latest published revenue and net income, VAT numbers, RNA id and public labels. not_found when the SIREN is unknown or not diffusible in open data.
- [Search companies](https://firecrawl.dev/alexandria/agents/providers/recherche-entreprises-api-gouv-fr/companies/search_companies): Search French legal units (unités légales) in Sirene + RNE by name, address, executive name or SIREN/SIRET, and/or filter by NAF activity code or section, salaried headcount band, INSEE category (PME/ETI/GE), legal form, postal code, commune, department, region, active/ceased status, public labels (ESS, sole proprietorship, association, RGE, Qualiopi, mission company...), latest revenue and net-income ranges, and executive or elected-official name and birth-date range. Each result is the full company record (legal form, NAF code and label, headcount band decoded to a range, category, creation date, status, head office with address and coordinates, executives, latest published revenue and net income, establishment counts, VAT numbers, labels) plus the establishments that matched the query. 10 per page by default (25 max), `next_page` continues; the API serves at most 10,000 results per query.
- [Search near point](https://firecrawl.dev/alexandria/agents/providers/recherche-entreprises-api-gouv-fr/companies/search_near_point): French legal units with at least one establishment within a radius (up to 50 km) of a point, optionally filtered by the unit's NAF activity code or section. Each result is the full company record plus the establishments that fall in the radius (address, coordinates, activity, headcount band, status). 10 per page by default (25 max), `next_page` continues; at most 10,000 results.

## 1. Choose this provider when

The French state's open company search (API Recherche d'entreprises, run by DINUM for annuaire-entreprises.data.gouv.fr): every diffusible French legal unit from INSEE Sirene and INPI's national company register (RNE) with legal form, NAF activity, salaried headcount band, INSEE size category, head office with address and coordinates, executives (dirigeants) as published, latest published revenue and net income, VAT numbers and public labels (ESS, RGE, Qualiopi, mission company...). Search by name, SIREN/SIRET or executive name and filter by NAF code or section, headcount band, category, legal form, postal code, commune, department, region, status, labels, revenue and net-income ranges and executive birth date; look a company up by SIREN; or list companies with establishments around a point. Keyless official open data under Licence Ouverte / Etalab 2.0.

## 2. Minimal request

Call `POST https://api.firecrawl.dev/v2/scrape` with `{ alexandria: { provider, capability, options } }`. For a batch, send `{ alexandria: [...] }` with up to 10 calls.

```json
{
  "provider": "recherche-entreprises-api-gouv-fr",
  "capability": "companies/get_company",
  "options": {
    "siren": "542051180"
  }
}
```

## 3. Add provider options

Use only the options needed for the task:

- `siren` (string): SIREN, 9 digits (spaces allowed, e.g. '542 051 180'); checked with the Luhn key. Pattern: ^\s*[0-9]{3}\s?[0-9]{3}\s?[0-9]{3}\s*$. Example: `<siren>`
- `url` (string): Alternative to siren: a pasted Annuaire des Entreprises link, https://annuaire-entreprises.data.gouv.fr/entreprise/<name>-<siren> or /etablissement/<siret>. Example: `<url>`

## 4. Request through your preferred interface

### JavaScript

```javascript
const result = await firecrawl.scrape({
  alexandria: {
    provider: "recherche-entreprises-api-gouv-fr",
    capability: "companies/get_company",
    options: {
      siren: "542051180",
    },
  },
});
```

### Python

```python
result = firecrawl.scrape_alexandria({
  "provider": "recherche-entreprises-api-gouv-fr",
  "capability": "companies/get_company",
  "options": {
    "siren": "542051180"
  }
})
```

### cURL

```sh
curl https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "alexandria": {
    "provider": "recherche-entreprises-api-gouv-fr",
    "capability": "companies/get_company",
    "options": {
      "siren": "542051180"
    }
  }
}'
```

### CLI

```sh
firecrawl scrape 'recherche-entreprises-api-gouv-fr/companies/get_company' \
  --options '{"siren":"542051180"}'
```


### MCP

Call the FCX MCP retrieve tool with this object:

```json
{
  "provider": "recherche-entreprises-api-gouv-fr",
  "capability": "companies/get_company",
  "options": {
    "siren": "542051180"
  }
}
```

Ask for only the returned fields needed by the task.

## 5. Full request shape

```json
{
  "provider": "recherche-entreprises-api-gouv-fr",
  "capability": "companies/get_company",
  "options": {
    "siren": "542051180"
  }
}
```

## 6. Response data

The response includes `success`, `provider`, `capability`, `creditsCost` and `data`. This example shows the provider payload in `data`:

```json
{
  "company": {
    "acronym": null,
    "activity": {
      "naf25_code": "70.10Y",
      "naf_code": "70.10Z",
      "naf_label": "Activités des sièges sociaux",
      "section": "M",
      "section_label": "Activités spécialisées, scientifiques et techniques"
    },
    "association_id": null,
    "category": {
      "code": "GE",
      "label": "Large enterprise (GE)",
      "year": 2024
    },
    "ceased_on": null,
    "created_on": "1954-01-01",
    "diffusion_status": "O",
    "establishments_count": 16,
    "executives": [
      {
        "birth_month": "1954-01",
        "birth_year": 1954,
        "first_names": "PRENOM1",
        "kind": "person",
        "last_name": "NOM1",
        "name": null,
        "nationality": null,
        "role": "Administrateur",
        "siren": null
      },
      {
        "birth_month": "1956-01",
        "birth_year": 1956,
        "first_names": "PRENOM2",
        "kind": "person",
        "last_name": "NOM2",
        "name": null,
        "nationality": null,
        "role": "Administrateur",
        "siren": null
      },
      {
        "birth_month": "1960-01",
        "birth_year": 1960,
        "first_names": "PRENOM3",
        "kind": "person",
        "last_name": "NOM3",
        "name": null,
        "nationality": null,
        "role": "Administrateur",
        "siren": null
      },
      {
        "birth_month": null,
        "birth_year": null,
        "first_names": null,
        "kind": "company",
        "last_name": null,
        "name": "ERNST & YOUNG AUDIT",
        "nationality": null,
        "role": "Commissaire aux comptes titulaire",
        "siren": "344366315"
      }
    ],
    "finances": [
      {
        "net_income": 16031000000,
        "revenue": 214550000000,
        "year": 2024
      }
    ],
    "head_office": {
      "address": "LA DEFENSE 6 2 PLACE JEAN MILLIER 92400 COURBEVOIE",
      "closed_on": null,
      "commune": "COURBEVOIE",
      "commune_code": "92026",
      "created_on": "2000-03-22",
      "department": "92",
      "foreign_country": null,
      "headcount": {
        "band": "51",
        "label": "2,000 to 4,999 employees",
        "max": 4999,
        "min": 2000,
        "year": 2024
      },
      "is_head_office": true,
      "latitude": 48.892593777,
      "longitude": 2.2430590926,
      "naf_code": "70.10Z",
      "postal_code": "92400",
      "region": "Île-de-France",
      "region_code": "11",
      "signs": [],
      "siret": "54205118000066",
      "status": "active",
      "trade_name": "TOTALENERGIE SE"
    },
    "headcount": {
      "band": "51",
      "label": "2,000 to 4,999 employees",
      "max": 4999,
      "min": 2000,
      "year": 2024
    },
    "labels": [
      "finess",
      "egapro",
      "collective_agreement"
    ],
    "legal_form": {
      "code": "5800",
      "label": "Société européenne"
    },
    "legal_name": "TOTALENERGIES SE",
    "name": "TOTALENERGIES SE (TOTALENERGIE SE)",
    "open_establishments_count": 3,
    "siren": "542051180",
    "status": "active",
    "updated_at": "2026-10-08T09:05:45",
    "vat_numbers": [
      "FR59542051180"
    ]
  },
  "notice": "Source: API Recherche d'entreprises (DINUM, annuaire-entreprises.data.gouv.fr), compiled from INSEE Sirene, INPI RNE and other French public registers; Licence Ouverte / Etalab 2.0. Retrieved at observed_at_ms.",
  "observed_at_ms": 1791536460000,
  "source_url": "https://recherche-entreprises.api.gouv.fr/search?q=542051180&page=1&per_page=5"
}
```

## API reference-derived contract

The following capability contract is generated from the same normalized Alexandria API reference exposed in the API spec.

### Get company

- Capability: `companies/get_company`
- Description: One French legal unit by SIREN (or a pasted annuaire-entreprises.data.gouv.fr link): name, legal name, acronym, legal form with label, NAF activity with label, salaried headcount band decoded to a range, INSEE category, creation and cessation dates, status, head office (SIRET, address, postcode, commune, department, region, coordinates, activity, headcount), establishment counts, executives as published (natural persons with role, birth year/month and nationality when the source publishes them; legal entities such as auditors with their SIREN), latest published revenue and net income, VAT numbers, RNA id and public labels. not_found when the SIREN is unknown or not diffusible in open data.
- Instructions: Due diligence or M&A screening on one French company: SIREN, headcount band, revenue and executives in one call. Use search_companies first when you only have a name.
- Cost: 5 credits per call
- Capability file: [Get company](https://firecrawl.dev/alexandria/agents/providers/recherche-entreprises-api-gouv-fr/companies/get_company)

Accepted options:
- `siren` (string): SIREN, 9 digits (spaces allowed, e.g. '542 051 180'); checked with the Luhn key. Pattern: ^\s*[0-9]{3}\s?[0-9]{3}\s?[0-9]{3}\s*$. Example: `<siren>`
- `url` (string): Alternative to siren: a pasted Annuaire des Entreprises link, https://annuaire-entreprises.data.gouv.fr/entreprise/<name>-<siren> or /etablissement/<siret>. Example: `<url>`

Response schema example:
```json
{
  "company": {
    "acronym": null,
    "activity": {
      "naf25_code": "70.10Y",
      "naf_code": "70.10Z",
      "naf_label": "Activités des sièges sociaux",
      "section": "M",
      "section_label": "Activités spécialisées, scientifiques et techniques"
    },
    "association_id": null,
    "category": {
      "code": "GE",
      "label": "Large enterprise (GE)",
      "year": 2024
    },
    "ceased_on": null,
    "created_on": "1954-01-01",
    "diffusion_status": "O",
    "establishments_count": 16,
    "executives": [
      {
        "birth_month": "1954-01",
        "birth_year": 1954,
        "first_names": "PRENOM1",
        "kind": "person",
        "last_name": "NOM1",
        "name": null,
        "nationality": null,
        "role": "Administrateur",
        "siren": null
      },
      {
        "birth_month": "1956-01",
        "birth_year": 1956,
        "first_names": "PRENOM2",
        "kind": "person",
        "last_name": "NOM2",
        "name": null,
        "nationality": null,
        "role": "Administrateur",
        "siren": null
      },
      {
        "birth_month": "1960-01",
        "birth_year": 1960,
        "first_names": "PRENOM3",
        "kind": "person",
        "last_name": "NOM3",
        "name": null,
        "nationality": null,
        "role": "Administrateur",
        "siren": null
      },
      {
        "birth_month": null,
        "birth_year": null,
        "first_names": null,
        "kind": "company",
        "last_name": null,
        "name": "ERNST & YOUNG AUDIT",
        "nationality": null,
        "role": "Commissaire aux comptes titulaire",
        "siren": "344366315"
      }
    ],
    "finances": [
      {
        "net_income": 16031000000,
        "revenue": 214550000000,
        "year": 2024
      }
    ],
    "head_office": {
      "address": "LA DEFENSE 6 2 PLACE JEAN MILLIER 92400 COURBEVOIE",
      "closed_on": null,
      "commune": "COURBEVOIE",
      "commune_code": "92026",
      "created_on": "2000-03-22",
      "department": "92",
      "foreign_country": null,
      "headcount": {
        "band": "51",
        "label": "2,000 to 4,999 employees",
        "max": 4999,
        "min": 2000,
        "year": 2024
      },
      "is_head_office": true,
      "latitude": 48.892593777,
      "longitude": 2.2430590926,
      "naf_code": "70.10Z",
      "postal_code": "92400",
      "region": "Île-de-France",
      "region_code": "11",
      "signs": [],
      "siret": "54205118000066",
      "status": "active",
      "trade_name": "TOTALENERGIE SE"
    },
    "headcount": {
      "band": "51",
      "label": "2,000 to 4,999 employees",
      "max": 4999,
      "min": 2000,
      "year": 2024
    },
    "labels": [
      "finess",
      "egapro",
      "collective_agreement"
    ],
    "legal_form": {
      "code": "5800",
      "label": "Société européenne"
    },
    "legal_name": "TOTALENERGIES SE",
    "name": "TOTALENERGIES SE (TOTALENERGIE SE)",
    "open_establishments_count": 3,
    "siren": "542051180",
    "status": "active",
    "updated_at": "2026-10-08T09:05:45",
    "vat_numbers": [
      "FR59542051180"
    ]
  },
  "notice": "Source: API Recherche d'entreprises (DINUM, annuaire-entreprises.data.gouv.fr), compiled from INSEE Sirene, INPI RNE and other French public registers; Licence Ouverte / Etalab 2.0. Retrieved at observed_at_ms.",
  "observed_at_ms": 1791536460000,
  "source_url": "https://recherche-entreprises.api.gouv.fr/search?q=542051180&page=1&per_page=5"
}
```

### Search companies

- Capability: `companies/search_companies`
- Description: Search French legal units (unités légales) in Sirene + RNE by name, address, executive name or SIREN/SIRET, and/or filter by NAF activity code or section, salaried headcount band, INSEE category (PME/ETI/GE), legal form, postal code, commune, department, region, active/ceased status, public labels (ESS, sole proprietorship, association, RGE, Qualiopi, mission company...), latest revenue and net-income ranges, and executive or elected-official name and birth-date range. Each result is the full company record (legal form, NAF code and label, headcount band decoded to a range, category, creation date, status, head office with address and coordinates, executives, latest published revenue and net income, establishment counts, VAT numbers, labels) plus the establishments that matched the query. 10 per page by default (25 max), `next_page` continues; the API serves at most 10,000 results per query.
- Instructions: Screening and prospect lists of French companies: e.g. software publishers (58.29C) or IT consultancies (62.02A) in Île-de-France with 50-249 employees and over EUR 10M revenue, manufacturers whose executive is 60+ (succession targets), ESS structures in a department, or finding a company's SIREN from its name. Chain `results[].siren` into get_company.
- Cost: 5 credits per call
- Capability file: [Search companies](https://firecrawl.dev/alexandria/agents/providers/recherche-entreprises-api-gouv-fr/companies/search_companies)

Accepted options:
- `commune_codes` (string[]): INSEE commune codes (5 characters, e.g. 75056 Paris, 2A004 Ajaccio); matches units with an establishment there. Example: `[]`
- `company_categories` (string[]): INSEE company category: PME (SME), ETI (mid-cap), GE (large enterprise). Example: `[]`
- `departments` (string[]): Department codes (01-95, 2A, 2B, 971-976); matches units with an establishment there. Example: `[]`
- `headcount_bands` (string[]): INSEE salaried headcount bands of the legal unit: NN none, 00 zero at year end, 01 1-2, 02 3-5, 03 6-9, 11 10-19, 12 20-49, 21 50-99, 22 100-199, 31 200-249, 32 250-499, 41 500-999, 42 1,000-1,999, 51 2,000-4,999, 52 5,000-9,999, 53 10,000+. For '50+ employees' pass 21 through 53. Example: `[]`
- `labels` (string[]): Only units carrying all these public labels: ess (social and solidarity economy), sole_proprietorship (entreprise individuelle), association, local_authority (collectivité territoriale), mission_company (société à mission), public_administration, rge (RGE environmental certification), qualiopi (training quality), organic (Agence Bio), training_organization, siae (work-integration structure), finess (health/social facility), living_heritage (Entreprise du Patrimoine Vivant), entertainment_contractor (licence d'entrepreneur de spectacles), responsible_purchasing (RFAR label), alim_confiance (food-safety inspection published), uai (education establishment), egapro (gender pay-equality index published), collective_agreement (collective agreement IDCC on file). Example: `[]`
- `legal_forms` (string[]): INSEE legal categories (catégorie juridique, 4 digits): e.g. 5710 SAS, 5720 SASU, 5499 SARL, 5498 EURL, 5599/5699 SA, 5800 SE, 1000 sole proprietor, 9220 association. Example: `[]`
- `naf_codes` (string[]): Main activity of the legal unit, NAF rév. 2 / APE codes such as 62.01Z (6201Z accepted). Any of them matches. Example: `[]`
- `naf_sections` (string[]): NAF sections of the main activity: A agriculture, B mining, C manufacturing, D energy, E water/waste, F construction, G wholesale/retail trade, H transport, I accommodation/food, J information/communication, K finance/insurance, L real estate, M professional/scientific/technical (incl. head offices 70.10Z), N administrative support, O public administration, P education, Q health/social, R arts/recreation, S other services, T households, U extraterritorial. Example: `[]`
- `net_income_max` (number): Maximum net income of the latest published accounts, euros. Example: `10`
- `net_income_min` (number): Minimum net income (résultat net) of the latest published accounts, euros (negative allowed). Example: `10`
- `page` (number): Page number (1-based). Pass `next_page` from the previous answer. page * per_page may not exceed 10,000. Example: `1`
- `per_page` (number): Results per page, 1-25 (API cap). Example: `10`
- `person_birth_date_max` (string): Latest birth date of an executive or elected official (YYYY-MM). For 'executive aged 60+' in October 2026, pass 1966-10. Pattern: ^[0-9]{4}-(0[1-9]|1[0-2])(-[0-9]{2})?$. Example: `<person_birth_date_max>`
- `person_birth_date_min` (string): Earliest birth date of an executive or elected official (YYYY-MM; a day is accepted and ignored). For 'executive under 40' in 2026, pass 1986-11. Pattern: ^[0-9]{4}-(0[1-9]|1[0-2])(-[0-9]{2})?$. Example: `<person_birth_date_min>`
- `person_first_names` (string): First name(s) of an executive or elected official. Example: `<person_first_names>`
- `person_last_name` (string): Last name of an executive (dirigeant) or local elected official. Example: `<person_last_name>`
- `person_type` (string): Restrict the person filters to executives (dirigeants) or local elected officials (élus). Example: `executive`
- `postal_codes` (string[]): Postal codes; matches legal units with at least one establishment there. Example: `[]`
- `q` (string): Free text over company names, addresses and executive or elected-official names, or a direct SIREN (9 digits) / SIRET (14 digits) lookup. At least 3 characters unless a filter is also given. Example: `<q>`
- `regions` (string[]): INSEE region codes; matches units with an establishment there: 01 Guadeloupe, 02 Martinique, 03 Guyane, 04 La Réunion, 06 Mayotte, 11 Île-de-France, 24 Centre-Val de Loire, 27 Bourgogne-Franche-Comté, 28 Normandie, 32 Hauts-de-France, 44 Grand Est, 52 Pays de la Loire, 53 Bretagne, 75 Nouvelle-Aquitaine, 76 Occitanie, 84 Auvergne-Rhône-Alpes, 93 Provence-Alpes-Côte d'Azur, 94 Corse. Example: `[]`
- `revenue_max` (number): Maximum revenue of the latest published accounts, euros. Example: `10`
- `revenue_min` (number): Minimum revenue (chiffre d'affaires) of the latest published accounts, euros. Units without published accounts never match. Example: `10`
- `sort_by_size` (boolean): true: order by company size (number of establishments) instead of relevance. Example: `false`
- `status` (string): Administrative state of the legal unit in Sirene. Example: `active`

Response schema example:
```json
{
  "next_page": null,
  "notice": "Source: API Recherche d'entreprises (DINUM, annuaire-entreprises.data.gouv.fr), compiled from INSEE Sirene, INPI RNE and other French public registers; Licence Ouverte / Etalab 2.0. Retrieved at observed_at_ms.",
  "observed_at_ms": 1791536460000,
  "page": 1,
  "per_page": 10,
  "results": [
    {
      "acronym": null,
      "activity": {
        "naf25_code": "70.10Y",
        "naf_code": "70.10Z",
        "naf_label": "Activités des sièges sociaux",
        "section": "M",
        "section_label": "Activités spécialisées, scientifiques et techniques"
      },
      "association_id": null,
      "category": {
        "code": "GE",
        "label": "Large enterprise (GE)",
        "year": 2024
      },
      "ceased_on": null,
      "created_on": "1954-01-01",
      "diffusion_status": "O",
      "establishments_count": 16,
      "executives": [
        {
          "birth_month": "1954-01",
          "birth_year": 1954,
          "first_names": "PRENOM1",
          "kind": "person",
          "last_name": "NOM1",
          "name": null,
          "nationality": null,
          "role": "Administrateur",
          "siren": null
        },
        {
          "birth_month": "1956-01",
          "birth_year": 1956,
          "first_names": "PRENOM2",
          "kind": "person",
          "last_name": "NOM2",
          "name": null,
          "nationality": null,
          "role": "Administrateur",
          "siren": null
        },
        {
          "birth_month": null,
          "birth_year": null,
          "first_names": null,
          "kind": "company",
          "last_name": null,
          "name": "ERNST & YOUNG AUDIT",
          "nationality": null,
          "role": "Commissaire aux comptes titulaire",
          "siren": "344366315"
        }
      ],
      "finances": [
        {
          "net_income": 16031000000,
          "revenue": 214550000000,
          "year": 2024
        }
      ],
      "head_office": {
        "address": "LA DEFENSE 6 2 PLACE JEAN MILLIER 92400 COURBEVOIE",
        "closed_on": null,
        "commune": "COURBEVOIE",
        "commune_code": "92026",
        "created_on": "2000-03-22",
        "department": "92",
        "foreign_country": null,
        "headcount": {
          "band": "51",
          "label": "2,000 to 4,999 employees",
          "max": 4999,
          "min": 2000,
          "year": 2024
        },
        "is_head_office": true,
        "latitude": 48.892593777,
        "longitude": 2.2430590926,
        "naf_code": "70.10Z",
        "postal_code": "92400",
        "region": "Île-de-France",
        "region_code": "11",
        "signs": [],
        "siret": "54205118000066",
        "status": "active",
        "trade_name": "TOTALENERGIE SE"
      },
      "headcount": {
        "band": "51",
        "label": "2,000 to 4,999 employees",
        "max": 4999,
        "min": 2000,
        "year": 2024
      },
      "labels": [
        "finess",
        "egapro",
        "collective_agreement"
      ],
      "legal_form": {
        "code": "5800",
        "label": "Société européenne"
      },
      "legal_name": "TOTALENERGIES SE",
      "matching_establishments": [
        {
          "address": "LA DEFENSE 6 2 PLACE JEAN MILLIER 92400 COURBEVOIE",
          "closed_on": null,
          "commune": "COURBEVOIE",
          "commune_code": "92026",
          "created_on": "2000-03-22",
          "department": "92",
          "foreign_country": null,
          "headcount": {
            "band": "51",
            "label": "2,000 to 4,999 employees",
            "max": 4999,
            "min": 2000,
            "year": 2024
          },
          "is_head_office": true,
          "latitude": 48.892593777,
          "longitude": 2.2430590926,
          "naf_code": "70.10Z",
          "postal_code": "92400",
          "region": "Île-de-France",
          "region_code": "11",
          "signs": [],
          "siret": "54205118000066",
          "status": "active",
          "trade_name": "TOTALENERGIE SE"
        },
        {
          "address": "CENTRE SCIENTIFIQUE ET TECHNIQUE JEAN AVENUE LARRIBAU 64000 PAU",
          "closed_on": null,
          "commune": "PAU",
          "commune_code": "64445",
          "created_on": "2001-01-01",
          "department": "64",
          "foreign_country": null,
          "headcount": {
            "band": "32",
            "label": "250 to 499 employees",
            "max": 499,
            "min": 250,
            "year": 2024
          },
          "is_head_office": false,
          "latitude": 43.320148206,
          "longitude": -0.313168083,
          "naf_code": "72.19Z",
          "postal_code": "64000",
          "region": "Nouvelle-Aquitaine",
          "region_code": "75",
          "signs": [],
          "siret": "54205118000074",
          "status": "active",
          "trade_name": "TOTALENERGIES SE"
        },
        {
          "address": "POLE D'ETUDE ET DE RECHERCHE DE LACQ 64170 LACQ",
          "closed_on": null,
          "commune": "LACQ",
          "commune_code": "64300",
          "created_on": "2013-01-01",
          "department": "64",
          "foreign_country": null,
          "headcount": {
            "band": "NN",
            "label": "Non-employer unit (no employees during the reference year)",
            "max": 0,
            "min": 0,
            "year": null
          },
          "is_head_office": false,
          "latitude": 43.418068572,
          "longitude": -0.636464046,
          "naf_code": "72.19Z",
          "postal_code": "64170",
          "region": "Nouvelle-Aquitaine",
          "region_code": "75",
          "signs": [],
          "siret": "54205118000173",
          "status": "active",
          "trade_name": null
        }
      ],
      "name": "TOTALENERGIES SE (TOTALENERGIE SE)",
      "open_establishments_count": 3,
      "siren": "542051180",
      "status": "active",
      "updated_at": "2026-10-08T09:05:45",
      "vat_numbers": [
        "FR59542051180"
      ]
    }
  ],
  "source_url": "https://recherche-entreprises.api.gouv.fr/search?q=totalenergies+se&nature_juridique=5800&etat_administratif=A&page=1&per_page=10",
  "total_pages": 1,
  "total_results": 1
}
```

### Search near point

- Capability: `companies/search_near_point`
- Description: French legal units with at least one establishment within a radius (up to 50 km) of a point, optionally filtered by the unit's NAF activity code or section. Each result is the full company record plus the establishments that fall in the radius (address, coordinates, activity, headcount band, status). 10 per page by default (25 max), `next_page` continues; at most 10,000 results.
- Instructions: Local market mapping: which companies operate establishments around an address or coordinates, e.g. restaurant companies (56.10A) within 1 km of a site, or groups whose head-office activity (70.10Z) has offices in a business district.
- Cost: 5 credits per call
- Capability file: [Search near point](https://firecrawl.dev/alexandria/agents/providers/recherche-entreprises-api-gouv-fr/companies/search_near_point)

Accepted options:
- `lat` (number, required): Latitude (WGS84) of the centre point. Example: `10`
- `long` (number, required): Longitude (WGS84) of the centre point. Example: `10`
- `naf_codes` (string[]): Main activity of the legal unit, NAF rév. 2 / APE codes such as 70.10Z (7010Z accepted); any of them matches. The API applies it to the unit, not to the establishment in the radius (each matching establishment reports its own naf_code). Example: `[]`
- `naf_sections` (string[]): NAF sections of the main activity: A agriculture, B mining, C manufacturing, D energy, E water/waste, F construction, G wholesale/retail trade, H transport, I accommodation/food, J information/communication, K finance/insurance, L real estate, M professional/scientific/technical (incl. head offices 70.10Z), N administrative support, O public administration, P education, Q health/social, R arts/recreation, S other services, T households, U extraterritorial. Example: `[]`
- `page` (number): Page number (1-based). Pass `next_page` from the previous answer. page * per_page may not exceed 10,000. Example: `1`
- `per_page` (number): Results per page, 1-25 (API cap). Example: `10`
- `radius_km` (number): Search radius in km, up to 50. Example: `5`
- `sort_by_size` (boolean): true: order by company size (number of establishments) instead of relevance. Example: `false`

Response schema example:
```json
{
  "next_page": null,
  "notice": "Source: API Recherche d'entreprises (DINUM, annuaire-entreprises.data.gouv.fr), compiled from INSEE Sirene, INPI RNE and other French public registers; Licence Ouverte / Etalab 2.0. Retrieved at observed_at_ms.",
  "observed_at_ms": 1791536460000,
  "page": 1,
  "per_page": 25,
  "results": [
    {
      "acronym": null,
      "activity": {
        "naf25_code": "70.10Y",
        "naf_code": "70.10Z",
        "naf_label": "Activités des sièges sociaux",
        "section": "M",
        "section_label": "Activités spécialisées, scientifiques et techniques"
      },
      "association_id": null,
      "category": {
        "code": "GE",
        "label": "Large enterprise (GE)",
        "year": 2024
      },
      "ceased_on": null,
      "created_on": "1954-01-01",
      "diffusion_status": "O",
      "establishments_count": 1568,
      "executives": [
        {
          "birth_month": "1962-01",
          "birth_year": 1962,
          "first_names": "PRENOM1",
          "kind": "person",
          "last_name": "NOM1",
          "name": null,
          "nationality": null,
          "role": "Président de SAS",
          "siren": null
        },
        {
          "birth_month": null,
          "birth_year": null,
          "first_names": null,
          "kind": "company",
          "last_name": null,
          "name": "PRICEWATERHOUSECOOPERS AUDIT",
          "nationality": null,
          "role": "Commissaire aux comptes titulaire",
          "siren": "672006483"
        }
      ],
      "finances": [
        {
          "net_income": 761671037,
          "revenue": 840807354,
          "year": 2025
        }
      ],
      "head_office": {
        "address": "TOUR TOTAL 24 COURS MICHELET 92800 PUTEAUX",
        "closed_on": null,
        "commune": "PUTEAUX",
        "commune_code": "92062",
        "created_on": "1993-01-01",
        "department": "92",
        "foreign_country": null,
        "headcount": {
          "band": "41",
          "label": "500 to 999 employees",
          "max": 999,
          "min": 500,
          "year": 2024
        },
        "is_head_office": true,
        "latitude": 48.888371966,
        "longitude": 2.2452570987,
        "naf_code": "70.10Z",
        "postal_code": "92800",
        "region": "Île-de-France",
        "region_code": "11",
        "signs": [],
        "siret": "54203492116871",
        "status": "active",
        "trade_name": null
      },
      "headcount": {
        "band": "42",
        "label": "1,000 to 1,999 employees",
        "max": 1999,
        "min": 1000,
        "year": 2024
      },
      "labels": [
        "egapro",
        "collective_agreement"
      ],
      "legal_form": {
        "code": "5710",
        "label": "SAS, société par actions simplifiée"
      },
      "legal_name": "TOTALENERGIES MARKETING SERVICES",
      "matching_establishments": [
        {
          "address": "COUPOLE 2 PLACE JEAN MILLIER 92400 COURBEVOIE",
          "closed_on": null,
          "commune": "COURBEVOIE",
          "commune_code": "92026",
          "created_on": "2025-01-01",
          "department": "92",
          "foreign_country": null,
          "headcount": {
            "band": "NN",
            "label": "Non-employer unit (no employees during the reference year)",
            "max": 0,
            "min": 0,
            "year": null
          },
          "is_head_office": false,
          "latitude": 48.8927656039865,
          "longitude": 2.24349467752444,
          "naf_code": "46.71Z",
          "postal_code": "92400",
          "region": "Île-de-France",
          "region_code": "11",
          "signs": [],
          "siret": "54203492121699",
          "status": "active",
          "trade_name": null
        }
      ],
      "name": "TOTALENERGIES MARKETING SERVICES",
      "open_establishments_count": 15,
      "siren": "542034921",
      "status": "active",
      "updated_at": "2026-10-08T09:05:45",
      "vat_numbers": [
        "FR73542034921"
      ]
    },
    {
      "acronym": null,
      "activity": {
        "naf25_code": "70.10Y",
        "naf_code": "70.10Z",
        "naf_label": "Activités des sièges sociaux",
        "section": "M",
        "section_label": "Activités spécialisées, scientifiques et techniques"
      },
      "association_id": null,
      "category": {
        "code": "GE",
        "label": "Large enterprise (GE)",
        "year": 2024
      },
      "ceased_on": null,
      "created_on": "1969-01-01",
      "diffusion_status": "O",
      "establishments_count": 7,
      "executives": [
        {
          "birth_month": "1974-01",
          "birth_year": 1974,
          "first_names": "PRENOM2",
          "kind": "person",
          "last_name": "NOM2",
          "name": null,
          "nationality": null,
          "role": "Président de SAS",
          "siren": null
        },
        {
          "birth_month": null,
          "birth_year": null,
          "first_names": null,
          "kind": "company",
          "last_name": null,
          "name": "PRICEWATERHOUSECOOPERS AUDIT",
          "nationality": null,
          "role": "Commissaire aux comptes titulaire",
          "siren": "672006483"
        }
      ],
      "finances": [
        {
          "net_income": 341870299,
          "revenue": 510532317,
          "year": 2025
        }
      ],
      "head_office": {
        "address": "LA DEFENSE 6 2 PLACE JEAN MILLIER 92400 COURBEVOIE",
        "closed_on": null,
        "commune": "COURBEVOIE",
        "commune_code": "92026",
        "created_on": "2001-04-27",
        "department": "92",
        "foreign_country": null,
        "headcount": {
          "band": "32",
          "label": "250 to 499 employees",
          "max": 499,
          "min": 250,
          "year": 2024
        },
        "is_head_office": true,
        "latitude": 48.892593777,
        "longitude": 2.2430590926,
        "naf_code": "70.10Z",
        "postal_code": "92400",
        "region": "Île-de-France",
        "region_code": "11",
        "signs": [],
        "siret": "69200480700057",
        "status": "active",
        "trade_name": null
      },
      "headcount": {
        "band": "32",
        "label": "250 to 499 employees",
        "max": 499,
        "min": 250,
        "year": 2024
      },
      "labels": [
        "training_organization",
        "egapro",
        "collective_agreement"
      ],
      "legal_form": {
        "code": "5710",
        "label": "SAS, société par actions simplifiée"
      },
      "legal_name": "TOTALENERGIES RAFFINAGE CHIMIE",
      "matching_establishments": [
        {
          "address": "LA DEFENSE 6 2 PLACE JEAN MILLIER 92400 COURBEVOIE",
          "closed_on": null,
          "commune": "COURBEVOIE",
          "commune_code": "92026",
          "created_on": "2001-04-27",
          "department": "92",
          "foreign_country": null,
          "headcount": {
            "band": "32",
            "label": "250 to 499 employees",
            "max": 499,
            "min": 250,
            "year": 2024
          },
          "is_head_office": true,
          "latitude": 48.892593777,
          "longitude": 2.2430590926,
          "naf_code": "70.10Z",
          "postal_code": "92400",
          "region": "Île-de-France",
          "region_code": "11",
          "signs": [],
          "siret": "69200480700057",
          "status": "active",
          "trade_name": null
        }
      ],
      "name": "TOTALENERGIES RAFFINAGE CHIMIE",
      "open_establishments_count": 4,
      "siren": "692004807",
      "status": "active",
      "updated_at": "2026-10-08T09:09:10",
      "vat_numbers": [
        "FR63692004807"
      ]
    },
    {
      "acronym": null,
      "activity": {
        "naf25_code": "70.10Y",
        "naf_code": "70.10Z",
        "naf_label": "Activités des sièges sociaux",
        "section": "M",
        "section_label": "Activités spécialisées, scientifiques et techniques"
      },
      "association_id": null,
      "category": {
        "code": "GE",
        "label": "Large enterprise (GE)",
        "year": 2024
      },
      "ceased_on": null,
      "created_on": "1954-01-01",
      "diffusion_status": "O",
      "establishments_count": 16,
      "executives": [
        {
          "birth_month": "1954-01",
          "birth_year": 1954,
          "first_names": "PRENOM3",
          "kind": "person",
          "last_name": "NOM3",
          "name": null,
          "nationality": null,
          "role": "Administrateur",
          "siren": null
        },
        {
          "birth_month": null,
          "birth_year": null,
          "first_names": null,
          "kind": "company",
          "last_name": null,
          "name": "ERNST & YOUNG AUDIT",
          "nationality": null,
          "role": "Commissaire aux comptes titulaire",
          "siren": "344366315"
        }
      ],
      "finances": [
        {
          "net_income": 16031000000,
          "revenue": 214550000000,
          "year": 2024
        }
      ],
      "head_office": {
        "address": "LA DEFENSE 6 2 PLACE JEAN MILLIER 92400 COURBEVOIE",
        "closed_on": null,
        "commune": "COURBEVOIE",
        "commune_code": "92026",
        "created_on": "2000-03-22",
        "department": "92",
        "foreign_country": null,
        "headcount": {
          "band": "51",
          "label": "2,000 to 4,999 employees",
          "max": 4999,
          "min": 2000,
          "year": 2024
        },
        "is_head_office": true,
        "latitude": 48.892593777,
        "longitude": 2.2430590926,
        "naf_code": "70.10Z",
        "postal_code": "92400",
        "region": "Île-de-France",
        "region_code": "11",
        "signs": [],
        "siret": "54205118000066",
        "status": "active",
        "trade_name": "TOTALENERGIE SE"
      },
      "headcount": {
        "band": "51",
        "label": "2,000 to 4,999 employees",
        "max": 4999,
        "min": 2000,
        "year": 2024
      },
      "labels": [
        "finess",
        "egapro",
        "collective_agreement"
      ],
      "legal_form": {
        "code": "5800",
        "label": "Société européenne"
      },
      "legal_name": "TOTALENERGIES SE",
      "matching_establishments": [
        {
          "address": "LA DEFENSE 6 2 PLACE JEAN MILLIER 92400 COURBEVOIE",
          "closed_on": null,
          "commune": "COURBEVOIE",
          "commune_code": "92026",
          "created_on": "2000-03-22",
          "department": "92",
          "foreign_country": null,
          "headcount": {
            "band": "51",
            "label": "2,000 to 4,999 employees",
            "max": 4999,
            "min": 2000,
            "year": 2024
          },
          "is_head_office": true,
          "latitude": 48.892593777,
          "longitude": 2.2430590926,
          "naf_code": "70.10Z",
          "postal_code": "92400",
          "region": "Île-de-France",
          "region_code": "11",
          "signs": [],
          "siret": "54205118000066",
          "status": "active",
          "trade_name": "TOTALENERGIE SE"
        }
      ],
      "name": "TOTALENERGIES SE (TOTALENERGIE SE)",
      "open_establishments_count": 3,
      "siren": "542051180",
      "status": "active",
      "updated_at": "2026-10-08T09:05:45",
      "vat_numbers": [
        "FR59542051180"
      ]
    }
  ],
  "source_url": "https://recherche-entreprises.api.gouv.fr/near_point?lat=48.892594&long=2.243059&radius=0.05&activite_principale=70.10Z&page=1&per_page=25",
  "total_pages": 1,
  "total_results": 9
}
```
