# Global Company Search (`lentic_clockss/global-company-search`) Actor

Search 40+ countries in one query. Get company registration data, GLEIF LEI records, financial institution status, and VAT validation from official government registries.

- **URL**: https://apify.com/lentic\_clockss/global-company-search.md
- **Developed by:** [kane liu](https://apify.com/lentic_clockss) (community)
- **Categories:** Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

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

## 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

## Global Company Search

Search 40+ countries in one query. Get company registration data, LEI records, financial institution status, and VAT validation from official government registries — all in a single API call.

---

### What it does

One search across official government registries worldwide. Enter a company name, registration number, LEI code, VAT number, SIREN, ABN, or EIN — the system automatically detects the input type and routes your query to the right data sources.

The Actor uses a three-tier routing engine:

1. **Format recognition** — detects structured identifiers (LEI, VAT, SIREN, ABN, EIN) via pattern matching and routes directly to the matching registry
2. **Country inference** — identifies country suffixes and narrows the search to relevant national registries
3. **Global broadcast** — for plain company names, searches all verified sources in parallel

No API keys needed from you. All data sources are public government registries. The Actor handles authentication and rate limiting internally. You get unified JSON output with full provenance tracking on every result.

---

### Who is it for

- **Supplier verification consultants** — verify that overseas suppliers are legally registered and active before your clients sign contracts
- **Due diligence and background check freelancers** — quickly assemble company dossiers from official sources across multiple jurisdictions in minutes, not hours
- **SaaS developers** — embed company verification into your product via the Apify API, no need to integrate dozens of government APIs yourself
- **Import/export compliance teams** — check trading partners across jurisdictions before shipping goods or signing agreements

---

### What data you get

Every result includes three layers of information:

#### Provenance (audit trail)

Every single result carries full source attribution so you know exactly where the data came from and how fresh it is.

| Field | Description |
|-------|-------------|
| `_source_authority` | Official government body that owns the data (e.g. "European Banking Authority") |
| `_retrieved_at` | Exact retrieval timestamp in ISO 8601 format |
| `_data_freshness` | `"real-time"`, `"cached_12h"`, or `"preloaded"` |
| `_response_time_ms` | How long the source took to respond |
| `_source_name` | Human-readable source name (e.g. "GLEIF LEI — Germany") |

#### Unified preview fields

Normalized across all sources so you can process results without parsing source-specific formats.

| Field | Description |
|-------|-------------|
| `name` | Entity name |
| `type` | Entity type (corporation, LLC, partnership, etc.) |
| `status` | Registration status (active, dissolved, etc.) |
| `country` | ISO-2 country code |
| `authority` | Issuing authority |
| `registration_number` | Company registration number |
| `lei` | Legal Entity Identifier (20-character alphanumeric) |
| `vat_number` | VAT registration number |
| `address` | Registered address |

#### Raw fields

Complete original data from each source, unmodified. Different sources return different fields — the raw layer preserves everything the government registry returned.

---

### About duplicate results

Results are **not deduplicated**. The same company may appear from multiple sources. For example, a German company might show up in both the GLEIF LEI registry and the IHK Berlin business register. A French company might appear in both the Recherche Entreprises registry and the GLEIF LEI France dataset.

Each result carries full source attribution (`_source_name`, `_source_authority`) so you can identify and handle duplicates in your downstream processing. This is by design — deduplication requires business logic specific to your use case, and we prefer to give you complete data rather than making assumptions about which result you would want to keep.

---

### Data freshness

60% of our data sources are queried in real-time from official government registries. Every search hits the source directly. No stale cache, no outdated snapshots.

The remaining sources use 12-hour cached datasets (GLEIF LEI registries, ECB financial institution lists) or preloaded government bulk data files that are refreshed regularly.

This matters because competitor data quality is a known problem in this space:

- **Dun & Bradstreet** has a 1.1/5 Trustpilot rating and was fined $5.7 million by the FTC for data accuracy issues
- **OpenCorporates** has a 2.1/5 Trustpilot rating, with users reporting that half their data sources have stopped updating
- **Kyckr** reported a 72% UBO (Ultimate Beneficial Ownership) retrieval failure rate in their own audit

We connect directly to 40+ official registries. When a government registry updates a company record, your next search reflects that change.

---

### Countries covered (37 countries + EU)

**Americas:** US (12 states — AK, CO, CT, FL, IA, NY, OR, PA, TX, VA, WA), Canada (Federal + BC)

**Europe:** DE, FR, IT, GB, NL, CH, BE, ES, FI, SE, DK, PL, GR, IE, and 14 additional EU countries via GLEIF LEI registries

**Asia-Pacific:** AU, SG, NZ, IL

**EU-wide financial regulators:** EBA (banking), ECB (monetary financial institutions), EIOPA (insurance/pensions), ESMA (investment firms)

**Global:** GLEIF LEI Registry covers 35+ countries worldwide

**United States detail:** SEC EDGAR (all public companies), FDIC (4,600+ banks), IRS Nonprofits (1.9M organizations), NAICS industry codes, plus 12 state-level business registries

---

### How to use (no code needed)

1. Go to the [Input tab](https://console.apify.com/actors/lentic_clockss~global-company-search/input) on Apify Console
2. Enter a company name, registration number, LEI code, or VAT number
3. Click **Start** — results appear in the Dataset tab within seconds

That is it. The Actor automatically detects what you entered and routes to the right sources. No configuration needed for basic searches.

---

### API integration

Call the Actor programmatically from any language or tool that can make HTTP requests:

```bash
curl "https://api.apify.com/v2/acts/lentic_clockss~global-company-search/runs" \
  -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_APIFY_TOKEN" \
  -d '{"searchQuery": "Deutsche Bank", "maxResults": 10}'
````

The Actor returns results in the Apify Dataset. Retrieve them via:

```
GET https://api.apify.com/v2/datasets/{datasetId}/items?format=json
```

Every run also writes a `RUN_SUMMARY` record to the Key-Value Store with per-source status, result counts, routing tier used, countries found, and error details:

```
GET https://api.apify.com/v2/key-value-stores/{storeId}/records/RUN_SUMMARY
```

***

### Export formats

JSON, CSV, Excel, XML — available via the Apify Console export button or the Dataset API with `?format=csv`, `?format=xlsx`, or `?format=xml`.

***

### Integrations

Connect this Actor to your existing workflow tools:

- **Make (Integromat)** — trigger runs and process results in Make scenarios
- **Zapier** — use the Apify Zapier integration to connect with 5,000+ apps
- **Slack** — get notified when a search completes
- **Google Sheets** — export results directly to a spreadsheet
- **Airbyte** — sync results to your data warehouse
- **GitHub** — trigger searches from CI/CD pipelines
- **REST API** — call from any language or tool
- **MCP Protocol** — connect to AI agents and LLM toolchains

***

### Pricing

This Actor uses Pay-Per-Event pricing:

| Event | Price |
|-------|-------|
| Each result returned | **$0.003** |

**Cost examples:**

- Search "Deutsche Bank", get 30 results across registries → 30 x $0.003 = **$0.09**
- Search 10 companies, get 200 total results → 200 x $0.003 = **$0.60**

**$5 free monthly Apify credit = ~1,666 free results.**

Compare to alternatives:

- Dun & Bradstreet: $100+/month subscription for basic access
- OpenCorporates API: $100-500/month depending on volume
- Kyckr: custom enterprise pricing, minimum annual contract
- Building it yourself: dozens of API integrations to maintain

***

### Data sources

82 total data products (56 verified and active in v1.0, expanding):

| Category | Count | Coverage |
|----------|-------|----------|
| Country company registries | 35 products | AU, CA, CH, DE, FR, IL, IT, NL, NZ, SG, GB, US (12 states) |
| GLEIF LEI registries | 30 products | 35+ countries worldwide |
| EU/US/CA financial institution registers | 10 products | EBA, ECB, EIOPA, ESMA, FDIC, FINTRAC, OSFI |
| VAT validation services | 2 products | EU VIES (all EU member states), Italy |
| Other business data | 5 products | SEC EDGAR, IRS Nonprofits, NAICS, India MCA, Korea DART |

All sources are official government registries and regulatory databases. No scraped data, no third-party aggregators, no data of uncertain provenance.

***

### Ethical use and disclaimer

This Actor queries only official public government registries and open data portals. No private data is accessed, no protected content is scraped, no terms of service are violated.

**This tool provides informational access to public records. It is NOT a KYB (Know Your Business) compliance platform, legal verification service, or substitute for professional due diligence. Results may include false positives due to name similarities across jurisdictions. Always verify critical business decisions against primary sources. This service does not constitute legal, regulatory, or compliance advice.**

The Actor performs keyword-based search and returns all matching records from each source. It does not perform:

- Identity resolution or entity matching across sources
- Compliance scoring or risk ratings
- Legal determinations about company status
- Fuzzy matching or alias expansion

Results must be reviewed by a qualified person before acting on them. Company verification is a professional responsibility — this tool supports the discovery and research phase only.

***

### Related actors

- [Global Sanctions Screening](https://apify.com/lentic_clockss/global-sanctions-screening) — search OFAC, EU, Canada sanctions lists and AU ASIC banned persons registers in one call
- [Regulatory Compliance Search](https://apify.com/lentic_clockss/regulatory-compliance-search) — search ESMA, CNIL, FINRA enforcement actions and regulatory decisions

# Actor input Schema

## `searchQuery` (type: `string`):

Company name, registration number, LEI code, or VAT number. The system automatically detects the input type and routes to the right data sources.

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

ISO-2 country code (e.g. DE, US, FR). Leave empty to search all countries.

## `maxResults` (type: `integer`):

Maximum number of results from each data source (1-200).

## Actor input object example

```json
{
  "searchQuery": "Deutsche Bank",
  "country": "",
  "maxResults": 50
}
```

# Actor output Schema

## `results` (type: `string`):

Company records from official government registries with unified preview fields and full provenance.

## `runSummary` (type: `string`):

Per-source status report with timing, result counts, and error details.

# 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 = {
    "searchQuery": "Deutsche Bank"
};

// Run the Actor and wait for it to finish
const run = await client.actor("lentic_clockss/global-company-search").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 = { "searchQuery": "Deutsche Bank" }

# Run the Actor and wait for it to finish
run = client.actor("lentic_clockss/global-company-search").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 '{
  "searchQuery": "Deutsche Bank"
}' |
apify call lentic_clockss/global-company-search --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=lentic_clockss/global-company-search",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Global Company Search",
        "description": "Search 40+ countries in one query. Get company registration data, GLEIF LEI records, financial institution status, and VAT validation from official government registries.",
        "version": "0.1",
        "x-build-id": "7TwrqAYscMrz36xO2"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/lentic_clockss~global-company-search/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-lentic_clockss-global-company-search",
                "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/lentic_clockss~global-company-search/runs": {
            "post": {
                "operationId": "runs-sync-lentic_clockss-global-company-search",
                "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/lentic_clockss~global-company-search/run-sync": {
            "post": {
                "operationId": "run-sync-lentic_clockss-global-company-search",
                "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",
                "required": [
                    "searchQuery"
                ],
                "properties": {
                    "searchQuery": {
                        "title": "Search query",
                        "minLength": 1,
                        "maxLength": 500,
                        "type": "string",
                        "description": "Company name, registration number, LEI code, or VAT number. The system automatically detects the input type and routes to the right data sources."
                    },
                    "country": {
                        "title": "Country filter (optional)",
                        "maxLength": 2,
                        "type": "string",
                        "description": "ISO-2 country code (e.g. DE, US, FR). Leave empty to search all countries.",
                        "default": ""
                    },
                    "maxResults": {
                        "title": "Max results per source",
                        "minimum": 1,
                        "maximum": 200,
                        "type": "integer",
                        "description": "Maximum number of results from each data source (1-200).",
                        "default": 50
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
