GLEIF logo

Leads & companies · Coming soon

Bulk LEI lookup and change monitor with GLEIF data

Paste LEI codes or a company name. You get legal name, status, renewal date and parent company from GLEIF. Run it again to see only what changed.

Built and tested. Prices will be shown after release.

Coming soon to the Apify StoreFollow us on Apify

What you get, for example

lei2549008YU9EOMHFUA249
legalNameAPPLE OPERATIONS INDIA PRIVATE LIMITED
jurisdictionIN

How it will work: 3 steps

  1. Follow us on ApifyThe tool is built and waits in the queue for the Apify Store. Apify is the cloud platform where our tools run.
  2. Paste your input and press StartNo code needed: you fill in a form (the input). It already has a working example. For example: HWUPKR0MPOU8FGXBT394 in LEI codes. Each start is one run.
  3. Download the resultsWhen the run ends, the results are in a table (the dataset). Open Output, press Export and pick Excel or CSV. JSON and the API are there too.

This tool is an Apify Actor: a small program that runs on Apify. You can also run it on a schedule, for example every Monday. New to it? Read how it works, step by step and the 8 words you need first.

What it does

LEI Lookup & Change Monitor checks Legal Entity Identifiers (LEI) in the public GLEIF data. Add up to 1,000 LEI codes, or search by legal name. You get one row per entity with the legal name, jurisdiction, legal form, entity status and registration status, renewal date, addresses, the issuer (LOU) and the direct and ultimate parent or the reporting exception. It can also show what changed since your last run.

  • LEI lookup. Each LEI is an exact match. The Actor checks the ISO 17442 check digits first. A code with wrong check digits gets an error row (INVALID_LEI) and no request. A valid code that GLEIF does not know gets a not_found row. No input is lost.
  • Name search. GLEIF searches the words in legal names and other names (trade, previous and transliterated names). The Actor reads up to 200 candidates, puts exact and close name matches first and returns maxResults rows. You can filter by country and registration status.

Good for

  • Check the LEI of a counterparty, supplier or fund before onboarding or a trade report.
  • Find LEIs that lapsed or must be renewed soon (registrationStatus, daysUntilRenewal).
  • Find the LEI of a company when you only know its name.
  • See the parent company, or the reason the entity gives for not reporting one.
  • Watch a list of LEIs and get only the changes on each run.

Not a good fit

  • This is reference data, not a counterparty approval. The Actor never says that an entity is safe, approved or risky.
  • A missing LEI is not a risk signal. Many legal entities do not need an LEI.
  • LAPSED means the LEI registration was not renewed on time. It does not mean that the company was dissolved. Read entityStatus for that.
  • A reporting exception is not proof that the entity has no parent. It is the reason the entity gave for not reporting one.
  • No children list, no full ownership tree, no ISIN, BIC or other code mappings, and no bulk Golden Copy download.

Who uses it

Compliance and KYC teams

Check counterparty LEIs before onboarding or trade reports.

Operations teams

Find LEIs that lapsed or must be renewed soon.

Analysts

See the direct and ultimate parent of an entity.

Price

Prices will be shown after release.

Questions

Do I need a GLEIF account?

No. GLEIF data is open. You only need an Apify account.

Does LAPSED mean the company closed?

No. The LEI was not renewed on time. Check entityStatus for closure.

Does it tell me if a company is safe?

No. It gives reference data. Your own policy decides what it means.

How many LEIs can I check?

Up to 1,000 per run. In a test, this took about 20 seconds.

Why are some parents shown as an exception and not as a company?

Entities report their parents to their LEI issuer. When they do not, they give a reason, like NATURAL_PERSONS (owned by people) or NON_CONSOLIDATING. The Actor shows that reason. It does not guess a parent.

How fresh is the data?

Each run reads GLEIF live. goldenCopyDate is the date of the GLEIF data, and fetchedAt is when the Actor read it.

What licence does the data have?

GLEIF publishes LEI data under the CC0 1.0 licence. Read the GLEIF terms of use for your case. Do not use the GLEIF name or logo in a way that suggests a link with GLEIF.

Details

Step by step on Apify
  1. Open the Input tab. The form already has three LEIs: Apple Inc., Microsoft Corporation and Deutsche Bank AG.
  2. Click Start.
  3. Open the Overview view in the Output tab. Check legalName, registrationStatus, entityStatus and nextRenewalDate.
  4. Replace the codes with your own list (up to 1,000), or clear the list and type a name in legalName.
Use cases
TaskInputYou getKey fields
Check counterparty LEIs (KYC, onboarding)leisone row per LEIstatus, registrationStatus, entityStatus, legalName, jurisdiction
Find lapsed or soon-to-expire LEIsleisone row per LEIregistrationStatus, nextRenewalDate, daysUntilRenewal, managingLou
Find an LEI by company namelegalName + countryranked rowssearchRank, lei, legalName, legalCity, registrationStatus
See the parent companyleis + includeParentsOwnership viewdirectParentType, directParentName, ultimateParentName, ultimateParentExceptionReason
Watch a list for changesleis + monitorKeyChanges viewchangeType, changedFields, previousValues
Tips for better results
  • Sort by daysUntilRenewal to find codes that need action first.
  • Add a country code to a name search to get closer matches.
  • Always check legalName and lei before you trust a search result.
Limits and good to know
  • Up to 1,000 LEIs per run. In our test, 1,000 LEIs took about 20 seconds with parents
  • Name search: up to 200 candidates are read and ranked; maxResults up to 200. If GLEIF has more matches, RUN_SUMMARY.search.truncated is true. Add country, registrationStatus or a longer name
  • The name search matches words. Symbols, HTML or very short words give unrelated results. Always check legalName and lei before you use a search result
  • The Actor sends at most one request per second to GLEIF, and stops source work after 240 seconds
  • Data is as fresh as the GLEIF API, which follows the daily Golden Copy. goldenCopyDate shows the publish date

Troubleshooting

SymptomCheckAction
INVALID_LEI error rowchecksumValid, statusReasonThe code has the wrong length, characters or check digits. Copy it again from the source.
not_found for a code you trustchecksumValid is trueGLEIF has no record. The code may have a typo that still passes the check, or it is very new. Search by name to find the right LEI.
LAPSED registrationentityStatusThe LEI was not renewed. The company may still be active.
Parent fields are emptydirectParentType, directParentExceptionReasonRead the type: an exception reason, not_reported or not_available is a valid answer.
partial rowsstatusReasonParent names could not be read this time. Run the same LEIs again.
Search found the wrong companysearchRank, legalName, legalCountryAdd country, use the full legal name, or look up by LEI.
CAPPEDRUN_SUMMARY.counts.notWrittenCappedRaise the maximum cost per run, or split the list.
ERROR or SOURCE_UNAVAILABLE rowsRUN_SUMMARY.message, httpGLEIF did not answer. Run again later; error rows are free.

For developers

Sample result

One result from a real test run, in JSON. Real values change from run to run. In Excel or CSV each field is a column.

one result · JSON
{
  "status": "complete",
  "lei": "2549008YU9EOMHFUA249",
  "checksumValid": true,
  "legalName": "APPLE OPERATIONS INDIA PRIVATE LIMITED",
  "jurisdiction": "IN",
  "legalFormCode": "YSP9",
  "entityStatus": "ACTIVE",
  "registrationStatus": "ISSUED",
  "nextRenewalDate": "2027-05-25T14:07:19Z",
  "managingLou": "5493001KJTIIGC8Y1R12",
  "legalCity": "Bangalore",
  "legalCountry": "IN",
  "directParentType": "parent",
  "directParentLei": "HWUPKR0MPOU8FGXBT394",
  "directParentName": "Apple Inc.",
  "directParentCountry": "US",
  "directParentExceptionReason": null,
  "ultimateParentType": "parent",
  "ultimateParentLei": "HWUPKR0MPOU8FGXBT394",
  "ultimateParentName": "Apple Inc.",
  "changeType": null,
  "gleifRecordUrl": "https://search.gleif.org/#/record/2549008YU9EOMHFUA249",
  "goldenCopyDate": "2026-10-12T00:00:00Z"
}
Data fields (40)
FieldTypeMeaning
statusstringcomplete = record found (with parents if requested); partial = record found but some parent details are missing; not_found = valid LEI with no GLEIF record; error = invalid LEI (no request sent) or source failure.
statusReasonstringWhy the row is not complete, in plain words.
errorCodestringINVALID_LEI, SOURCE_UNAVAILABLE, SOURCE_TIMEOUT, RATE_LIMITED, DEADLINE_REACHED, ... for error rows.
inputstringThe LEI as you entered it, or the search text for search rows.
inputTypestringlei = from the LEI list; search = from the name search.
searchQuerystringName search text for search rows.
searchRankintegerPosition in the name search results (1 = first).
leistringLegal Entity Identifier (ISO 17442), upper case.
checksumValidbooleanTrue when the LEI has 20 valid characters and its ISO 17442 check digits match.
legalNamestringLegal name as registered.
legalNameLanguagestringLanguage code of the legal name.
otherNamesarrayOther and transliterated names with their type (e.g. TRADING_OR_OPERATING_NAME, PREVIOUS_LEGAL_NAME, AUTO_ASCII_TRANSLITERATED_LEGAL_NAME).
jurisdictionstringLegal jurisdiction, ISO country or subdivision code (e.g. US-CA, DE).
legalFormCodestringISO 20275 Entity Legal Form (ELF) code, e.g. 6QQB.
legalFormOtherstringLegal form as free text when no ELF code applies.
entityCategorystringGENERAL, BRANCH, FUND, SOLE_PROPRIETOR, RESIDENT_GOVERNMENT_ENTITY or INTERNATIONAL_ORGANIZATION.
entitySubCategorystringEntity sub-category when published.
entityStatusstringStatus of the legal entity: ACTIVE or INACTIVE; null when GLEIF publishes none (e.g. annulled records). Separate from registrationStatus.
entityCreationDatestringDate the entity was legally formed.
entityExpirationDatestringDate the entity ceased to exist, if published.
entityExpirationReasonstringDISSOLVED, CORPORATE_ACTION or OTHER, if published.
successorLeistringLEI of the successor entity after a merger or other corporate action.
successorNamestringName of the successor entity.
registrationStatusstringStatus of the LEI registration: ISSUED, LAPSED (not renewed on time; does not mean the entity was dissolved), RETIRED, MERGED, ANNULLED, DUPLICATE, PENDING_TRANSFER, PENDING_ARCHIVAL, TRANSFERRED or CANCELLED.
initialRegistrationDatestringWhen the LEI was first issued.
lastUpdateDatestringLast update of the LEI record.
nextRenewalDatestringDate the registration must be renewed by.
daysUntilRenewalintegerDays from the run date to nextRenewalDate; negative = overdue.
managingLoustringLEI of the Local Operating Unit (LEI issuer) that manages the record.
corroborationLevelstringHow the LOU verified the data: FULLY_CORROBORATED, PARTIALLY_CORROBORATED, ENTITY_SUPPLIED_ONLY.
registeredAtstringRegistration authority ID (GLEIF RA list code, e.g. RA000665).
registeredAsstringEntity ID in that business register.
legalAddressLinesarrayLegal address street lines.
legalCitystringLegal address city.
legalRegionstringLegal address region (ISO 3166-2).
legalPostalCodestringLegal address postal code.
legalCountrystringLegal address country (ISO 3166-1 alpha-2).
hqAddressLinesarrayHeadquarters address street lines.
hqCitystringHeadquarters city.
hqRegionstringHeadquarters region.
Input settings (9)

The main fields of the input form. With the API you send them as JSON.

SettingName in the APITypeExample value
LEI codesleisarray["HWUPKR0MPOU8FGXBT394", "INR2EJN1ERAN0W5ZP974", "7LTWFZYICNSX8D621K86"]
Search by entity namelegalNamestring
Country (legal address)countrystring
LEI registration statusregistrationStatusstring"ANY"
Max search resultsmaxResultsinteger10
Include direct and ultimate parentincludeParentsbooleantrue
Monitor key (for scheduled runs)monitorKeystring
Compare with previous datasetpreviousDatasetIdstring
Only output changesonlyChangesbooleantrue

Use cases with this tool

Each guide shows all the steps and the other tools.

Start on Apify

Make a free Apify account: you get $5 of free usage every month. Missing a tool? Suggest it. We read every idea, but we do not promise to build it.

Apify links on this page are affiliate links. We may earn a commission. You pay the same price. Affiliate disclosure