Match a company by name or identifier as the reader types.
The one operation that accepts a key in the query string, which is what lets a browser
call it on every keystroke without a CORS preflight — authentication
explains why the other three need a header.
A code here travels with a label rather than a scheme: the search index carries the
wording denormalized, so a suggestion needs no second call to be readable. score is 1.0
for a SIREN, SIRET or French VAT number matched directly.
Autocomplete over the search index, grouped by company: one result is one legal entity, carrying the establishment that matched alongside the head office. A SIREN, SIRET or French VAT number is answered directly, scored 1.0. partial is true when a branch exceeded its time budget and the answer is therefore smaller than the query deserves.
This is the one operation that accepts a key in the query string. A key with the fk_pub prefix may be sent as `?key=<key>` instead of in the Authorization header, which is what lets a browser call this endpoint without a CORS preflight; any other prefix sent that way is refused, and so is an fk_pub key sent that way to any other operation, because a query string ends up in access logs, Referer headers and browser history and the other three read the canonical layer. A public key reaches those over a Bearer header, at the cost of one preflight.
{"results":[{"registry_number":"389389248","name":"LE FOURNIL DE L ILE BARBE LYON","highlight":"LE FOURNIL DE L ILE BARBE <em>LYON</em>","legal_form":{"code":"5710","label":"SAS, société par actions simplifiée"},"activity":{"code":"10.71C","label":"Boulangerie et boulangerie-pâtisserie"},"active":true,"head_office":{"establishment_number":"38938924800011","city":"PARIS"},"matched_establishment":{"establishment_number":"38938924800029","city":"LYON","head_office":false},"score":0.03875489757659952}],"partial":false,"took_ms":0,"query":{"interpreted":{"activity":"boulangerie","consumed":false}}}
Try it
Calls the real API with a demo key. No account, no signup.