GLEIF LEI Lookup - Legal Entity Identifier API avatar

GLEIF LEI Lookup - Legal Entity Identifier API

Pricing

from $4.00 / 1,000 company records

Go to Apify Store
GLEIF LEI Lookup - Legal Entity Identifier API

GLEIF LEI Lookup - Legal Entity Identifier API

Look up Legal Entity Identifiers (LEI) from GLEIF and match a company across identifier systems: LEI, national number (SIREN, Companies House, HRB), BIC, MIC, OCID and S&P Global, with legal address and corporate hierarchy. KYC and entity resolution, no key.

Pricing

from $4.00 / 1,000 company records

Rating

0.0

(0)

Developer

Tom Awake

Tom Awake

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

17 hours ago

Last modified

Categories

Share

What does GLEIF LEI Lookup do?

Match a company across identifier systems — LEI, national company number, BIC, MIC, OpenCorporates, S&P Global — with legal address, registration status and corporate ownership.

No login. No API key. No proxies.

The problem this actually solves

Finding a company is easy. Matching the same company between two systems is not — your CRM has a name, your bank file has a BIC, your finance system has an S&P id, and the French registry has a SIREN.

GLEIF carries all of them on one record. This Actor exports them as plain columns:

FieldExample (Airbus)
lei529900FCMZ4LKXFD0R69
registeredAs383 474 814 (the French SIREN)
registeredAtthe national registry that issued it
bicAIRBFR22XXX
mic, ocid, spglobal, qcc, gemother identifier systems

In testing, 98 % of French entities carried a national registration number — so a country-wide export is effectively a LEI↔national-ID mapping table.

Whole corporate groups in one run

Give a parent's LEI in Subsidiaries of this LEI and you get its entire ownership tree. Measured on NEOEN FRANCE: 116 owned entities, against 68 direct subsidiaries — the filter reaches indirect holdings the direct-children view misses, and it costs no extra lookups.

Add parent company and subsidiary count instead when you are going the other way: for each entity, its direct parent, ultimate parent and how many subsidiaries it has. That costs three API calls per row, so use it on a narrow selection.

Lapsed LEIs are a compliance signal

Set LEI registration status to LAPSED to list entities that failed to renew. There are over 73,000 in France alone. A counterparty whose LEI has lapsed is a flag worth raising before a transaction, and nobody surfaces it as a list.

Output

lei, legalName, otherNames, entityStatus, jurisdiction, legalForm, category, subCategory, creationDate, registeredAs, registeredAt, registrationStatus, initialRegistrationDate, lastUpdateDate, nextRenewalDate, managingLou, corroborationLevel, bic, mic, ocid, spglobal, qcc, gem, full legal and headquarters addresses, gleifUrl, plus directParentLei, directParentName, ultimateParentLei, ultimateParentName and directChildrenCount when hierarchy is requested.

Input

{
"country": "FR",
"entityStatus": "ACTIVE",
"maxItems": 500
}
FieldDefaultNotes
countryFRTwo-letter code of the legal address
entityStatusACTIVEExcludes dissolved and merged entities
legalNameFull or partial legal name
maxItems500Up to 50,000
includeHierarchyfalseParent and subsidiary count, 3 calls per row
ownedByA parent LEI; returns its whole ownership tree
fulltextSearched across the record, not just the name
bic11-character form, e.g. AIRBFR22XXX
leiExact 20-character LEI
categoryFund, branch, government entity, …
jurisdictionLegal jurisdiction, which can differ from the address country
registrationStatusISSUED, LAPSED, …

Use cases

  • Entity resolution — build a LEI↔SIREN↔BIC mapping table for a country.
  • KYC and onboarding — ownership tree, registration status, renewal date.
  • Counterparty screening — find lapsed or retired LEIs in a portfolio.
  • Fund administration — every fund registered in a jurisdiction.
  • Data enrichment — attach a stable global identifier to records that only carry a national one.

Limits, honestly

  • GLEIF only accepts a fixed list of filters. City, postcode, region and headquarters country are refused by the API. Country of legal address, jurisdiction, name, full text, category, status, BIC, LEI and ownedBy all work. This Actor exposes only the ones that do.
  • BIC is rare. Only financial institutions carry one, so a BIC column is mostly empty on a general export — that is the source, not the export.
  • A lapsed LEI means the registration was not renewed. It does not by itself mean the company is gone.
  • Hierarchy is self-declared under GLEIF's reporting rules, and not every group reports completely.
  • Requests are paced out of courtesy to a free public service.
  • Not affiliated with GLEIF.

How much does it cost?

You pay per company record returned: $0.006 each, that is $6.00 per 1,000. There is no start fee, and subscription plans pay less per company record.

The example input below asks for up to 200 company records, so it costs $1.20 at most.

If a run reaches the spending limit you set, the output stops at that limit and never goes past it. You are never charged for rows that were not delivered.

Use GLEIF LEI Lookup as an API

Call it from your own code with the Apify client, here in Python:

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("DataIO/gleif-lei-lookup").call(run_input={'country': 'FR', 'entityStatus': 'ACTIVE', 'maxItems': 200})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

It also works from JavaScript, Make, Zapier, n8n, and from AI agents through the Apify MCP server.

Other actors you might like

FAQ

The actor reads public data from its official source, without logging in and without bypassing any access control. What you do with the data, for example contacting people listed in it, is your responsibility under the laws that apply to you, such as GDPR in Europe.

Can I run it on a schedule?

Yes. Create a schedule in Apify Console, daily or weekly for example, and each run delivers a fresh dataset, which you can send by email, webhook or integration.

Can AI agents use it?

Yes. It is available through the Apify MCP server, and every input field is described in its input schema, so an agent can call it directly.