french-company-check-v1

Send a SIREN, a SIRET or a company name; get back a verdict on a French company: who it is, whether it is still active, whether it has been through insolvency, whether its VAT number holds. One request reconciles three public registries, and a single action_required boolean tells a program whether to look closer.

Example

curl -s -X POST https://api.getcompanycheck.com/v1/company \
  -H 'content-type: application/json' \
  -d '{"siren": "120027016", "directors_limit": 0}'

Real response, abbreviated (…). VIES did not answer in time, so the check says so instead of reading as clear:

{
  "status": "found",
  "company": {
    "siren": "120027016",
    "legal_name": "INSTITUT NATIONAL DE LA STATISTIQUE ET DES ETUDES ECONOMIQUES",
    "state": "active",
    "incorporated_on": "1983-03-01",
    "directors": [],
    "vat_number": "FR85120027016",
    …
  },
  "insolvency": {
    "notice_count": 0,
    "adverse_count": 0,
    "adverse_recent_count": 0,
    "adverse_last_published_on": null,
    …
  },
  "complete": false,
  "action_required": true,
  "flags": ["partial_check", "source_degraded:vies"],
  "sources": {"recherche_entreprises": "ok", "bodacc": "ok", "vies": "timeout"},
  "data_as_of": "2026-09-28T18:34:19+00:00"
}

What sets it apart

Sources

SourceProvides
recherche-entreprises.api.gouv.frIdentity from SIRENE (INSEE) and officers from the RNE.
BODACCLegal notices: insolvency procedures, deregistrations, conciliations, accounts filings.
VIESIntra-EU VAT number validity.

How to call it

API documentation: /docs. Running a supplier: /operators. For language models: /llms.txt.

Personal data

Officers' names and roles come from the French trade register, which publishes them, but they remain personal data. At most 3 are returned by default and directors_limit: 0 omits them. On Pocket Network, requests and answers transit through third-party suppliers and gateways: a q search on a person's name sends that name to them in clear. Prefer siren or siret when you have one.