Exa alternative API for EU law and company data
Search APIs for agents that need Europe: EU law article by article, and companies in official registers. Exa-compatible endpoints, our own EU-hosted indexes, pay per call or by plan.
- EU law: the exact article, not a page about it. Right article in the top 5 for 19 of 20 questions, Exa's web search 13 (14 Nov 2026, method published)
- Companies from official registers (France, Sweden, Norway, Finland, Czechia, Estonia) plus GLEIF LEIs for every country, with register links
- Exa's own SDKs work: point exa-js or exa-py at our /v1 base URL
- The EU law database is hosted in Cloudflare's EU jurisdiction; uploaded files are never stored
A free key makes 100 calls a month: leave an e-mail address, open the link, paste the key. Failed calls are never charged.
One request
curl -H "Authorization: Bearer $API_KEY" \
"https://tools.funwords.eu/company/search?q=Spotify"
Python
import os, requests
r = requests.get(
"https://tools.funwords.eu/company/search",
params={
"q": "Spotify",
},
headers={"Authorization": f"Bearer {os.environ['API_KEY']}"},
timeout=60,
)
r.raise_for_status()
print(r.json())
Node.js
const params = new URLSearchParams({
q: "Spotify",
});
const r = await fetch(`https://tools.funwords.eu/company/search?${params}`, {
headers: { Authorization: `Bearer ${process.env.API_KEY}` },
});
if (!r.ok) throw new Error(await r.text());
console.log(await r.json());
The answer
{
"query": "Spotify",
"countries": "all",
"count": 10,
"results": [
{
"name": "Spotify AB",
"country": "SE",
"idType": "organisationsnummer",
"id": "556703-7485",
"legalForm": "Aktiebolag (limited company)",
"city": "STOCKHOLM",
"exact": true,
"details": "/se/company?orgnr=556703-7485",
"lei": "5493004INDUJX1TDHI57",
"source": "Bolagsverket and SCB (Sweden)"
},
{
"name": "SPOTIFY AB",
"country": "FR",
"idType": "SIREN",
"id": "511237240",
"legalForm": "3220",
"exact": true,
"url": "https://annuaire-entreprises.data.gouv.fr/entreprise/511237240",
"details": "/fr/company?siren=511237240",
"source": "INSEE Sirene and INPI RNE (France)",
"branchOfForeign": true
},
{
"name": "SPOTIFY FRANCE SAS",
"country": "FR",
"idType": "SIREN",
"id": "511930729",
"legalForm": "SAS, société par actions simplifiée",
"city": "PARIS",
"exact": false,
"url": "https://annuaire-entreprises.data.gouv.fr/entreprise/511930729",
"details": "/fr/company?siren=511930729",
"source": "INSEE Sirene and INPI RNE (France)"
}
],
"searched": [
"LEI",
"NO",
"SE",
"EE",
"FR",
"CZ",
"FI"
],
"complete": true,
"retrievedAt": "2026-11-14T14:52:10.000Z",
"note": "Official register facts only: a registered entity with that name exists; this is not a credit view. Sole traders are not covered. Countries without a register here are searched through GLEIF, which lists only entities that hold an LEI."
}
Pricing
One API key, paid by card through Stripe. $0.01 per successful call with a key; failed calls cost nothing.
A plan adds its credits each month when the payment succeeds; unused credits stay, and you can cancel at any time. Packs never expire. After paying you get your key on the next page. The same key works on every tool in the catalog. Details: credits and plans.
Inputs
| Name | Type | Description |
|---|---|---|
q (required) | string | Company name, with or without the legal form (AB, Oy, SA, GmbH…) |
country | string | Only these countries: ISO codes or names, comma-separated (FR, SE, NO, FI, CZ, EE search their registers; any other country searches GLEIF). Default: all |
limit | integer | Results (1-20, default 10) |
What it does not do
- Not a general web index: for open-web search and news, a general search engine stays the better tool.
- Register facts and law text only: no credit scores, no people data, not legal advice.
Also on the same key
- EU law search: GDPR, AI Act, DSA, VAT and 40+ EU acts · $0.005 a call
- VAT number validation, EU VIES · $0.01 a call
- LEI lookup, legal entity identifier · $0.01 a call
Questions
Why use this instead of Exa?
When the question is about Europe. Exa crawls the web and processes requests in the US; its company data comes from web pages and its legal sources are US. Here, law comes from the EU's own consolidated texts and companies from the official registers, searched from the EU.
Do I need to rewrite my Exa code?
No. Exa's SDKs accept a base URL: new Exa(apiKey, "https://tools.funwords.eu/v1"). Search, contents, findSimilar and answer work; searches restricted to eur-lex.europa.eu, or with category "law", are answered from the EU law index.
How do I pay?
With an API key from a monthly plan or a one-off pack; AI agents with a wallet can also pay per call with no account (see For AI agents below).
Is there a subscription?
There is a monthly plan and there are one-off credit packs. Both give one API key; a plan adds credits each month and unused credits stay.
Guides
For AI agents
The same tool is on the MCP server https://tools.funwords.eu/mcp (the first 25 successful calls are free), and an agent with a wallet can pay per call in USDC: the tool URL answers 402 Payment Required with x402 and MPP terms. Reference: tool page · OpenAPI · docs for agents.