# GLEIF LEI Records Scraper (`parseforge/gleif-lei-records-scraper`) Actor

Export company records from OpenCorporates, the largest open database covering 200M+ entities across 130+ jurisdictions. Search by name, jurisdiction, year, or look up by company number. Pull legal name, status, type, incorporation date, address, officers, and more.

- **URL**: https://apify.com/parseforge/gleif-lei-records-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Business, Other, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.75 / 1,000 result items

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

![ParseForge Banner](https://github.com/ParseForge/apify-assets/blob/ad35ccc13ddd068b9d6cba33f323962e39aed5b2/banner.jpg?raw=true)

## 🏛️ Global Company Records Scraper

> 🚀 **Export verified corporate records in seconds.** Pull from the **official Global LEI Index**, the regulator-mandated registry of legal entities (**2.7M+ companies across 200+ countries**). Search by name, country, jurisdiction, status, BIC or ISIN, or look up one record by its 20-character LEI code. Get registered name, registry number, status, addresses, dates, parent entities, and more.

> 🕒 **Last updated:** 2026-05-21 · **📊 45 fields** per record · **🏛️ 2.7M+ legal entities** · **🌍 200+ countries** · **🔍 2 modes (search + lookup)**

The **Global Company Records Scraper** taps into the Global LEI Index, the regulator-mandated registry that uniquely identifies every legal entity participating in financial transactions worldwide. The Actor returns up to **45 fields per record**, including the legal name, registered company number, jurisdiction code, country, entity status, registration status, entity category, legal form, incorporation and update dates, registered address, headquarters address, previous and other names, BIC and ISIN identifiers, direct and ultimate parents, S&P Global ID, and a link back to the canonical record.

Coverage spans **every U.S. state plus D.C.**, all of the **United Kingdom and Ireland**, the **European Union (France, Germany, Spain, Italy, Netherlands, Poland, Belgium, and 20+ more)**, **Switzerland and the Nordic countries**, **Canada (Ontario, BC, Quebec, Alberta, and more)**, **Australia and New Zealand**, **Singapore, Malaysia, Thailand, Indonesia, Philippines, Vietnam, Hong Kong, Taiwan, Japan, South Korea, China, India**, the **Middle East (UAE, Saudi Arabia, Israel, and more)**, **Africa (South Africa, Nigeria, Kenya, and more)** and **Latin America (Brazil, Mexico, Argentina, Chile, Colombia, and more)**.

| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| KYC and AML teams, due-diligence analysts, fintech compliance, investigative journalists, supply-chain risk teams, sales prospecting, M&A research, ESG analysts | Beneficial-ownership research, sanctions screening prep, corporate-graph building, B2B enrichment, fraud and shell-company detection, jurisdiction-shopping investigations |

---

### 📋 What the Global Company Records Scraper does

Two collection workflows in a single Actor:

- 🔍 **Search mode.** Search the global registry by legal name, country, jurisdiction, entity status, registration status, entity category, legal form, BIC, or ISIN, then pull a paginated dataset of matching records.
- 🎯 **Lookup mode.** Fetch one specific entity by its 20-character LEI code for precise enrichment workflows.

Each record can optionally include the direct parent, ultimate parent, and any issued ISIN identifiers by enabling the **Fetch parents and ISINs** toggle. Records cover the entity's legal identity, registered and headquarters addresses, status, key dates, previous and other names, and a link back to the canonical Global LEI Index record.

> 💡 **Why it matters:** the Legal Entity Identifier is the worldwide standard for identifying entities in financial transactions, mandated by G20 regulators and embedded in MiFID II, EMIR, Dodd-Frank, and 100+ other regulations. One single canonical record per entity, validated by accredited issuers in each jurisdiction, downloadable as a row.

---

### 🎬 Full Demo

_🚧 Coming soon: a 3-minute walkthrough showing how to go from sign-up to a downloaded corporate dataset._

---

### ⚙️ Input

<table>
<thead>
<tr><th>Input</th><th>Type</th><th>Default</th><th>Behavior</th></tr>
</thead>
<tbody>
<tr><td><code>maxItems</code></td><td>integer</td><td><code>10</code></td><td>Records to return. Free plan caps at 10, paid plan at 1,000,000.</td></tr>
<tr><td><code>mode</code></td><td>enum</td><td><code>"search"</code></td><td>Either <code>search</code> (multi-record query) or <code>lookup</code> (single-record fetch by LEI).</td></tr>
<tr><td><code>query</code></td><td>string</td><td><code>"google"</code></td><td>Free-text query matched across legal name, addresses, and former names. Used in Search mode when <code>legalName</code> is empty.</td></tr>
<tr><td><code>legalName</code></td><td>string</td><td><em>none</em></td><td>Exact legal-name filter. Overrides the free-text query when supplied.</td></tr>
<tr><td><code>country</code></td><td>string</td><td><em>none</em></td><td>ISO 3166-1 alpha-2 country code (<code>US</code>, <code>GB</code>, <code>DE</code>, <code>FR</code>, <code>JP</code>, etc.).</td></tr>
<tr><td><code>jurisdiction</code></td><td>string</td><td><em>none</em></td><td>ISO 3166-2 jurisdiction code, e.g. <code>US-DE</code>, <code>US-CA</code>, <code>GB</code>, <code>DE</code>.</td></tr>
<tr><td><code>entityStatus</code></td><td>enum</td><td>Any</td><td>Active, Inactive, or Unknown.</td></tr>
<tr><td><code>registrationStatus</code></td><td>enum</td><td>Any</td><td>Issued, Lapsed, Pending Transfer, Pending Archival, Duplicate, Annulled, Retired, Merged, Transferred, Pending Validation, Cancelled.</td></tr>
<tr><td><code>entityCategory</code></td><td>enum</td><td>Any</td><td>General company, Investment fund, Branch, Sole proprietor, Government entity, International organization.</td></tr>
<tr><td><code>legalForm</code></td><td>string</td><td><em>none</em></td><td>4-character Entity Legal Form code (ISO 20275). Example: <code>HZEH</code> for US Delaware LLC.</td></tr>
<tr><td><code>bic</code></td><td>string</td><td><em>none</em></td><td>8 or 11-character SWIFT/BIC code (banks, financial institutions).</td></tr>
<tr><td><code>isin</code></td><td>string</td><td><em>none</em></td><td>12-character ISIN code (securities identifier).</td></tr>
<tr><td><code>leiCode</code></td><td>string</td><td><em>none</em></td><td>Required in Lookup mode. The 20-character LEI (e.g. <code>7ZW8QJWVPR4P1J1KQY45</code> for GOOGLE LLC).</td></tr>
<tr><td><code>fetchRelationships</code></td><td>boolean</td><td><code>false</code></td><td>Pull each record's direct parent, ultimate parent, and any issued ISIN codes.</td></tr>
</tbody>
</table>

**No login required.** This Actor works against the open Global LEI Index straight away.

**Example: search for "tesla" in the United States, active entities only.**

```json
{
    "maxItems": 25,
    "mode": "search",
    "query": "tesla",
    "country": "US",
    "entityStatus": "ACTIVE"
}
````

**Example: look up GOOGLE LLC by its LEI code, with parents and ISINs.**

```json
{
    "maxItems": 1,
    "mode": "lookup",
    "leiCode": "7ZW8QJWVPR4P1J1KQY45",
    "fetchRelationships": true
}
```

> ⚠️ **Good to Know:** large unfiltered queries can be slow because the index returns hundreds of thousands of matches for common words. Combine a country, jurisdiction, or status filter to keep result counts focused. Enabling **Fetch parents and ISINs** issues up to three extra lookups per record.

***

### 📊 Output

Each record contains up to **45 fields**. Download as CSV, Excel, JSON, or XML.

#### 🧾 Schema

| Field | Type | Example |
|---|---|---|
| 🏷️ `name` | string | `"GOOGLE LLC"` |
| 🌐 `nameLanguage` | string | `"en"` |
| 🆔 `companyNumber` | string | `"3582691"` |
| 🔑 `leiCode` | string | `"7ZW8QJWVPR4P1J1KQY45"` |
| 🌍 `jurisdictionCode` | string | `"US-DE"` |
| 🗺️ `jurisdictionName` | string | `"US-DE"` |
| 🌎 `country` | string | `"US"` |
| 🟢 `currentStatus` | string | null | `"ACTIVE"` |
| 📋 `registrationStatus` | string | null | `"ISSUED"` |
| 🏷️ `entityCategory` | string | null | `"GENERAL"` |
| 🏷️ `entitySubCategory` | string | null | `null` |
| 🏛️ `legalFormCode` | string | null | `"HZEH"` |
| 🏛️ `legalFormOther` | string | null | `null` |
| 📅 `incorporationDate` | string | null | `"2002-10-22"` |
| 📅 `expirationDate` | string | null | `null` |
| 📝 `expirationReason` | string | null | `null` |
| 📅 `initialRegistrationDate` | string | null | `"2012-06-06"` |
| 📅 `lastUpdateDate` | string | null | `"2026-05-04"` |
| 📅 `nextRenewalDate` | string | null | `"2027-05-16"` |
| 🏠 `registeredAddressInFull` | string | null | `"C/O CORPORATION SERVICE COMPANY, 251 LITTLE FALLS DRIVE, WILMINGTON, US-DE, 19808, US"` |
| 🛣️ `registeredAddressStreet` | string | null | `"C/O CORPORATION SERVICE COMPANY, 251 LITTLE FALLS DRIVE"` |
| 🏙️ `registeredAddressCity` | string | null | `"WILMINGTON"` |
| 🗺️ `registeredAddressRegion` | string | null | `"US-DE"` |
| 🌎 `registeredAddressCountry` | string | null | `"US"` |
| 📮 `registeredAddressPostalCode` | string | null | `"19808"` |
| 🏢 `headquartersAddressInFull` | string | null | `"251 LITTLE FALLS DRIVE, WILMINGTON, US-DE, 19808, US"` |
| 🛣️ `headquartersAddressStreet` | string | null | `"251 LITTLE FALLS DRIVE"` |
| 🏙️ `headquartersAddressCity` | string | null | `"WILMINGTON"` |
| 🗺️ `headquartersAddressRegion` | string | null | `"US-DE"` |
| 🌎 `headquartersAddressCountry` | string | null | `"US"` |
| 📮 `headquartersAddressPostalCode` | string | null | `"19808"` |
| 📜 `previousNames` | array | null | `["Apple Computer, Inc."]` |
| 🏷️ `otherNames` | array | null | `null` |
| 🏦 `bicCodes` | array | null | `["APLEUS66XXX"]` |
| 🏛️ `micCodes` | array | null | `null` |
| 📈 `isinCodes` | array | null | `["US0378331005"]` |
| 🔢 `spGlobalIds` | array | null | `["312932093"]` |
| 🧬 `directParentLei` | string | null | `"5493006MHB84DD0ZWV18"` |
| 🧬 `directParentName` | string | null | `"XXVI Holdings Inc."` |
| 🌳 `ultimateParentLei` | string | null | `"5493006MHB84DD0ZWV18"` |
| 🌳 `ultimateParentName` | string | null | `"Alphabet Inc."` |
| 🔄 `successorEntities` | array | null | `null` |
| 🛡️ `validatedAt` | string | null | `"RA000602"` |
| 🛡️ `validatedAs` | string | null | `"3582691"` |
| 🏢 `managingLou` | string | null | `"5493001KJTIIGC8Y1R12"` |
| ✅ `conformityFlag` | string | null | `"CONFORMING"` |
| 🔗 `registryUrl` | string | null | `"https://search.gleif.org/#/record/7ZW8QJWVPR4P1J1KQY45"` |
| 🕒 `scrapedAt` | ISO 8601 | `"2026-05-21T00:51:30.000Z"` |

#### 📦 Sample records

<details>
<summary><strong>🇺🇸 Delaware LLC: GOOGLE LLC</strong></summary>

```json
{
    "name": "GOOGLE LLC",
    "companyNumber": "3582691",
    "leiCode": "7ZW8QJWVPR4P1J1KQY45",
    "jurisdictionCode": "US-DE",
    "country": "US",
    "currentStatus": "ACTIVE",
    "registrationStatus": "ISSUED",
    "entityCategory": "GENERAL",
    "legalFormCode": "HZEH",
    "incorporationDate": "2002-10-22",
    "lastUpdateDate": "2026-05-04",
    "registeredAddressInFull": "C/O CORPORATION SERVICE COMPANY, 251 LITTLE FALLS DRIVE, WILMINGTON, US-DE, 19808, US",
    "headquartersAddressInFull": "251 LITTLE FALLS DRIVE, WILMINGTON, US-DE, 19808, US",
    "spGlobalIds": ["312932093"],
    "managingLou": "5493001KJTIIGC8Y1R12",
    "conformityFlag": "CONFORMING",
    "registryUrl": "https://search.gleif.org/#/record/7ZW8QJWVPR4P1J1KQY45",
    "scrapedAt": "2026-05-21T00:51:30.000Z"
}
```

</details>

<details>
<summary><strong>🇮🇪 Irish unlimited company: GOOGLE IRELAND HOLDINGS</strong></summary>

```json
{
    "name": "GOOGLE IRELAND HOLDINGS UNLIMITED COMPANY",
    "companyNumber": "369511",
    "leiCode": "1FN51LDHILXJ06W1QN20",
    "jurisdictionCode": "IE",
    "country": "IE",
    "currentStatus": "ACTIVE",
    "registrationStatus": "ISSUED",
    "entityCategory": "GENERAL",
    "registeredAddressInFull": "70 SIR JOHN ROGERSON'S QUAY, DUBLIN 2, DUBLIN, IE-D, D02 R296, IE",
    "scrapedAt": "2026-05-21T00:51:30.000Z"
}
```

</details>

<details>
<summary><strong>🇮🇳 Indian private limited company</strong></summary>

```json
{
    "name": "GOOGLE INFORMATION SERVICES INDIA PRIVATE LIMITED",
    "companyNumber": "U72900HR2017FTC069368",
    "leiCode": "335800FCLGQFJQJGHP87",
    "jurisdictionCode": "IN",
    "country": "IN",
    "currentStatus": "ACTIVE",
    "registrationStatus": "ISSUED",
    "entityCategory": "GENERAL",
    "registeredAddressInFull": "GOOGLE SIGNATURE TOWER-III, TOWER B, SECTOR-15, GURGAON, IN-HR, 122001, IN",
    "scrapedAt": "2026-05-21T00:51:30.000Z"
}
```

</details>

***

### ✨ Why choose this Actor

| | Capability |
|---|---|
| 🌍 | **Global coverage.** 2.7M+ legal entities across 200+ countries, each one validated by an accredited LEI issuer. |
| 🔍 | **Search and lookup.** Find by name, country, jurisdiction, status, BIC or ISIN, or fetch one record by 20-character LEI. |
| 🧬 | **Parent linkage on demand.** Toggle the enrichment checkbox to pull direct parent, ultimate parent, and ISIN list per record. |
| 🏦 | **Financial identifiers built in.** Every record includes BIC, ISIN, MIC, and S\&P Global cross-walks where available. |
| 📅 | **Lifecycle metadata.** Incorporation, registration, last-update, and next-renewal dates ship on every row. |
| 🔗 | **Provenance preserved.** Each record links back to the canonical Global LEI Index entry. |
| 🆓 | **No login.** No personal key, no signup, no quota juggling. |

> 📊 The LEI is the regulator-mandated global standard for entity identification, embedded in MiFID II, EMIR, Dodd-Frank, and 100+ other financial regulations.

***

### 📈 How it compares to alternatives

| Approach | Cost | Coverage | Refresh | Filters | Setup |
|---|---|---|---|---|---|
| **⭐ Global Company Records Scraper** *(this Actor)* | $5 free credit, then pay-per-use | **2.7M+** entities, 200+ countries | **Live per run** | name, country, jurisdiction, status, legal form, BIC, ISIN | ⚡ 2 min |
| Commercial KYC vendors | $1k+/month | Same registries plus screening | Daily | Vendor schema | ⏳ Hours |
| Per-country registry scrapers | Engineering time | One country at a time | Whatever you build | Whatever you build | 🐢 Days |
| Static company-list CSVs | Free | Stale, narrow | Manual | None | 🕒 Variable |

Pick this Actor when you want one normalised schema covering most of the world, with regulator-grade validation on every record.

***

### 🚀 How to use

1. 📝 **Sign up.** [Create a free account with $5 credit](https://console.apify.com/sign-up?fpr=vmoqkp) (takes 2 minutes).
2. 🌐 **Open the Actor.** Go to the Global Company Records Scraper page on the Apify Store.
3. 🎯 **Set input.** Pick `search` or `lookup`, set your query and country or jurisdiction filter, and `maxItems`.
4. 🚀 **Run it.** Click **Start** and let the Actor collect your data.
5. 📥 **Download.** Grab your results from the **Dataset** tab as CSV, Excel, JSON, or XML.

> ⏱️ Total time from signup to downloaded dataset: **3-5 minutes.** No coding required.

***

### 💼 Business use cases

<table>
<tr>
<td width="50%" valign="top">

#### 🛡️ KYC, AML and compliance

- Onboard new customers against canonical registry records
- Build sanctions-screening prep lists by jurisdiction
- Track current-status changes for ongoing monitoring
- Verify registered-address and company-number combos

</td>
<td width="50%" valign="top">

#### 🔍 Due diligence and investigations

- Build corporate-graph datasets across jurisdictions
- Detect shell companies via address-clustering analysis
- Spot recent incorporations in opaque jurisdictions
- Pull previous-name history for rebrand and merger research

</td>
</tr>
<tr>
<td width="50%" valign="top">

#### 📰 Investigative journalism

- Cross-border ownership investigations
- Beneficial-ownership leak corroboration
- Director-network analysis stories
- Open-data accountability reporting

</td>
<td width="50%" valign="top">

#### 💼 Sales, M\&A and ESG

- Enrich B2B prospect lists with legal entity data
- Build M\&A target lists by jurisdiction and date
- ESG screening based on entity category and legal form
- Vendor-of-record validation for procurement

</td>
</tr>
</table>

***

### 🔌 Automating Global Company Records Scraper

Control the scraper programmatically for scheduled runs and pipeline integrations:

- 🟢 **Node.js.** Install the `apify-client` NPM package.
- 🐍 **Python.** Use the `apify-client` PyPI package.
- 📚 See the [Apify API documentation](https://docs.apify.com/api/v2) for full details.

The [Apify Schedules feature](https://docs.apify.com/platform/schedules) lets you trigger this Actor on any cron interval. Nightly KYC re-checks, weekly newly-incorporated sweeps, or monthly jurisdiction snapshots all run unattended.

***

### 🌟 Beyond business use cases

Data like this powers more than commercial workflows. The same structured records support research, education, civic projects, and personal initiatives.

<table>
<tr>
<td width="50%">

#### 🎓 Research and academia

- Cross-jurisdiction company-formation studies
- Tax-policy research on jurisdictional choice
- Reproducible datasets for corporate-governance papers
- Open-data exercises on global business mapping

</td>
<td width="50%">

#### 🎨 Personal and creative

- Personal "who owns this?" lookup dashboards
- Side projects, indie compliance apps, portfolio demos
- Hobbyist corporate-genealogy research
- Brand-history visualisations for design portfolios

</td>
</tr>
<tr>
<td width="50%">

#### 🤝 Non-profit and civic

- Anti-corruption advocacy investigations
- Public-records transparency dashboards
- Civil-society research on beneficial ownership
- Open-data trainings for investigative journalists

</td>
<td width="50%">

#### 🧪 Experimentation

- Train entity-resolution and de-duplication models
- Prototype agent pipelines that answer "who runs X?"
- Test corporate-graph algorithms on real registry data
- Validate compliance-tech product hypotheses

</td>
</tr>
</table>

***

### 🤖 Ask an AI assistant about this scraper

Open a ready-to-send prompt about this ParseForge actor in the AI of your choice:

- 💬 [**ChatGPT**](https://chat.openai.com/?q=How%20do%20I%20use%20the%20Global%20Company%20Records%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🧠 [**Claude**](https://claude.ai/new?q=How%20do%20I%20use%20the%20Global%20Company%20Records%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🔍 [**Perplexity**](https://perplexity.ai/search?q=How%20do%20I%20use%20the%20Global%20Company%20Records%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🅒 [**Copilot**](https://copilot.microsoft.com/?q=How%20do%20I%20use%20the%20Global%20Company%20Records%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)

***

### ❓ Frequently Asked Questions

#### 🧩 How does it work?

Pick `search` or `lookup` mode, set your filters or LEI code, and click Start. The Actor normalises the upstream record into a clean schema and writes one row per legal entity.

#### 🔍 What is the difference between search and lookup modes?

**Search** runs a multi-record query by name, country, jurisdiction, status, BIC, or ISIN, with any combination of filters. **Lookup** fetches one exact record by its 20-character LEI code, ideal for enrichment pipelines that already know which entity they want.

#### 🆓 Do I need a personal access key?

No. The Global LEI Index is open under the regulator-mandated free-public-access mandate. Tighter filters keep large runs fast.

#### 🌍 Which countries are covered?

200+ countries, including every U.S. state plus D.C., the United Kingdom and Ireland, the European Union, Canada, Australia, New Zealand, all of Southeast Asia, Japan, South Korea, China, India, the Middle East, parts of Africa, and Latin America. Use the `country` field with a two-letter ISO code, or `jurisdiction` with the ISO 3166-2 sub-national code.

#### 🧬 Can I get the parent company?

Yes. Toggle **Fetch parents and ISINs** to true and the Actor will issue extra lookups per record to attach the direct parent, ultimate parent, and any issued ISIN codes. Expect runs to take roughly twice as long with this enabled.

#### 🏦 What about BIC, ISIN, and MIC codes?

BIC, MIC, and S\&P Global identifiers ship on every record where the issuer has reported them. ISIN codes are fetched on demand when the **Fetch parents and ISINs** toggle is enabled.

#### 🔁 How often is the data refreshed?

Every run pulls live from the index. The index itself is refreshed every business day by the global federation of accredited LEI issuers, who validate every change against the underlying national registries.

#### ⏰ Can I schedule daily runs?

Yes. Use Apify Schedules to trigger this Actor on any cron interval. Nightly KYC checks, weekly new-incorporation sweeps, or monthly snapshot exports all run unattended.

#### 💼 Can I use this data commercially?

Yes. The Global LEI Index is published under an open licence specifically to support compliance, identification, and research workflows. Respect downstream regulatory rules in your product.

#### 💳 Do I need a paid Apify plan?

No. The free Apify plan covers testing and small runs (10 records per run). A paid plan lifts the cap and unlocks scheduling and higher concurrency.

#### 🔁 What happens if a run fails?

Apify retries transient errors automatically. Inspect the log in the Runs tab, adjust the input, and re-run. Partial datasets from failed runs are kept so you never lose progress.

#### 📦 What is the largest single run I can do?

Paid Apify plans cap each run at 1,000,000 records. For larger sweeps, split the workload across runs by country or by registration-status range.

#### 🆘 What if I need help?

Contact our support team through the Apify platform or the Tally form linked below.

***

### 🔌 Integrate with any app

Global Company Records Scraper connects to any cloud service via [Apify integrations](https://apify.com/integrations):

- [**Make**](https://docs.apify.com/platform/integrations/make) - Automate multi-step workflows
- [**Zapier**](https://docs.apify.com/platform/integrations/zapier) - Connect with 5,000+ apps
- [**Slack**](https://docs.apify.com/platform/integrations/slack) - Get run notifications in your channels
- [**Airbyte**](https://docs.apify.com/platform/integrations/airbyte) - Pipe corporate registry data into your warehouse
- [**GitHub**](https://docs.apify.com/platform/integrations/github) - Trigger runs from commits and releases
- [**Google Drive**](https://docs.apify.com/platform/integrations/drive) - Export datasets straight to Sheets

You can also use webhooks to trigger downstream actions when a run finishes. Push fresh KYC records into your compliance backend, or post new-incorporation alerts into Slack.

***

### 🔗 Recommended Actors

- [**🏛️ NYC 311 Service Requests Scraper**](https://apify.com/parseforge/nyc-311-service-requests-scraper) - NYC civic complaints and resolutions
- [**📊 FINRA BrokerCheck Scraper**](https://apify.com/parseforge/finra-brokercheck-scraper) - U.S. broker-dealer and advisor registration records
- [**🏦 SEC EDGAR Full-Text Search Scraper**](https://apify.com/parseforge/sec-edgar-full-text-search-scraper) - U.S. securities filings full-text search
- [**📈 Indexmundi Scraper**](https://apify.com/parseforge/indexmundi-scraper) - Global demographic and economic indicators
- [**✈️ OurAirports Global Airport Database Scraper**](https://apify.com/parseforge/ourairports-scraper) - Worldwide aviation reference data

> 💡 **Pro Tip:** browse the complete [ParseForge collection](https://apify.com/parseforge) for more business and compliance scrapers.

***

**🆘 Need Help?** [**Open our contact form**](https://tally.so/r/BzdKgA) to request a new scraper, propose a custom data project, or report an issue.

***

> **⚠️ Disclaimer:** this Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by the Global Legal Entity Identifier Foundation, any LEI issuer, or any specific national or sub-national corporate registry. All trademarks mentioned are the property of their respective owners. Only publicly available open corporate registry data is collected, and each source registry's terms of use apply to downstream usage.

# Actor input Schema

## `maxItems` (type: `integer`):

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000

## `mode` (type: `string`):

Search the global index by any combination of filters, or look up a single record by LEI code.

## `query` (type: `string`):

Free-text query matched across legal name, addresses and former names. Used in Search mode when 'Legal Name' is empty.

## `legalName` (type: `string`):

Exact legal-name filter. Overrides the free-text query when supplied. Example: 'GOOGLE LLC'.

## `country` (type: `string`):

Filter to records whose registered-address country matches this two-letter code (US, GB, DE, FR, JP, ...). Covers 200+ countries; supply the standard ISO-2 code.

## `jurisdiction` (type: `string`):

Filter by jurisdiction code, e.g. US-DE (Delaware), US-CA (California), GB, DE, FR-75. Country-level codes (US, GB) or sub-national codes (US-DE) both work.

## `entityStatus` (type: `string`):

Current legal status of the entity.

## `registrationStatus` (type: `string`):

Lifecycle status of the LEI registration itself.

## `entityCategory` (type: `string`):

Type of entity reported in the global index.

## `legalForm` (type: `string`):

4-character Entity Legal Form code (ISO 20275). Example: HZEH (US Delaware LLC), R85P (Belgium NV), V9QP (France SAS).

## `bic` (type: `string`):

Look up an entity by its 8 or 11-character SWIFT/BIC code (banks and financial institutions).

## `isin` (type: `string`):

Look up entities that issue the given 12-character ISIN (securities identifier).

## `leiCode` (type: `string`):

Required in Lookup mode. The 20-character Legal Entity Identifier (e.g. 7ZW8QJWVPR4P1J1KQY45 for GOOGLE LLC).

## `fetchRelationships` (type: `boolean`):

Pull each record's direct parent, ultimate parent, and any issued ISINs (adds extra requests per record).

## Actor input object example

```json
{
  "maxItems": 10,
  "mode": "search",
  "query": "google",
  "fetchRelationships": false
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "maxItems": 10,
    "mode": "search",
    "query": "google"
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/gleif-lei-records-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "maxItems": 10,
    "mode": "search",
    "query": "google",
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/gleif-lei-records-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "maxItems": 10,
  "mode": "search",
  "query": "google"
}' |
apify call parseforge/gleif-lei-records-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=parseforge/gleif-lei-records-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "GLEIF LEI Records Scraper",
        "description": "Export company records from OpenCorporates, the largest open database covering 200M+ entities across 130+ jurisdictions. Search by name, jurisdiction, year, or look up by company number. Pull legal name, status, type, incorporation date, address, officers, and more.",
        "version": "1.0",
        "x-build-id": "yLvtx3E8x8xvTPlc1"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parseforge~gleif-lei-records-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parseforge-gleif-lei-records-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/parseforge~gleif-lei-records-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parseforge-gleif-lei-records-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/parseforge~gleif-lei-records-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parseforge-gleif-lei-records-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000"
                    },
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "search",
                            "lookup"
                        ],
                        "type": "string",
                        "description": "Search the global index by any combination of filters, or look up a single record by LEI code."
                    },
                    "query": {
                        "title": "Search Query",
                        "type": "string",
                        "description": "Free-text query matched across legal name, addresses and former names. Used in Search mode when 'Legal Name' is empty."
                    },
                    "legalName": {
                        "title": "Legal Name (exact)",
                        "type": "string",
                        "description": "Exact legal-name filter. Overrides the free-text query when supplied. Example: 'GOOGLE LLC'."
                    },
                    "country": {
                        "title": "Country (ISO 3166-1 alpha-2)",
                        "type": "string",
                        "description": "Filter to records whose registered-address country matches this two-letter code (US, GB, DE, FR, JP, ...). Covers 200+ countries; supply the standard ISO-2 code."
                    },
                    "jurisdiction": {
                        "title": "Jurisdiction Code (ISO 3166-2)",
                        "type": "string",
                        "description": "Filter by jurisdiction code, e.g. US-DE (Delaware), US-CA (California), GB, DE, FR-75. Country-level codes (US, GB) or sub-national codes (US-DE) both work."
                    },
                    "entityStatus": {
                        "title": "Entity Status",
                        "enum": [
                            "",
                            "ACTIVE",
                            "INACTIVE",
                            "NULL"
                        ],
                        "type": "string",
                        "description": "Current legal status of the entity."
                    },
                    "registrationStatus": {
                        "title": "Registration Status",
                        "enum": [
                            "",
                            "ISSUED",
                            "LAPSED",
                            "PENDING_TRANSFER",
                            "PENDING_ARCHIVAL",
                            "DUPLICATE",
                            "ANNULLED",
                            "RETIRED",
                            "MERGED",
                            "TRANSFERRED",
                            "PENDING_VALIDATION",
                            "CANCELLED"
                        ],
                        "type": "string",
                        "description": "Lifecycle status of the LEI registration itself."
                    },
                    "entityCategory": {
                        "title": "Entity Category",
                        "enum": [
                            "",
                            "GENERAL",
                            "FUND",
                            "BRANCH",
                            "SOLE_PROPRIETOR",
                            "RESIDENT_GOVERNMENT_ENTITY",
                            "INTERNATIONAL_ORGANIZATION"
                        ],
                        "type": "string",
                        "description": "Type of entity reported in the global index."
                    },
                    "legalForm": {
                        "title": "Legal Form Code (ELF)",
                        "type": "string",
                        "description": "4-character Entity Legal Form code (ISO 20275). Example: HZEH (US Delaware LLC), R85P (Belgium NV), V9QP (France SAS)."
                    },
                    "bic": {
                        "title": "BIC / SWIFT Code",
                        "type": "string",
                        "description": "Look up an entity by its 8 or 11-character SWIFT/BIC code (banks and financial institutions)."
                    },
                    "isin": {
                        "title": "ISIN",
                        "type": "string",
                        "description": "Look up entities that issue the given 12-character ISIN (securities identifier)."
                    },
                    "leiCode": {
                        "title": "LEI Code",
                        "type": "string",
                        "description": "Required in Lookup mode. The 20-character Legal Entity Identifier (e.g. 7ZW8QJWVPR4P1J1KQY45 for GOOGLE LLC)."
                    },
                    "fetchRelationships": {
                        "title": "Fetch parents & ISINs",
                        "type": "boolean",
                        "description": "Pull each record's direct parent, ultimate parent, and any issued ISINs (adds extra requests per record).",
                        "default": false
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
