# CZ/SK Company Info — Free IČO Lookup (`pavel242242/cz-sk-company-info`) Actor

Look up Czech and Slovak companies by IČO. One structured JSON record per company with identification, NACE, address, statutory body, shareholders, financials, multi-year history, business activities, risk flags and VAT status. No API key. For B2B prospecting, KYC, due diligence and CRM enrichment.

- **URL**: https://apify.com/pavel242242/cz-sk-company-info.md
- **Developed by:** [Pavel Chocholouš](https://apify.com/pavel242242) (community)
- **Categories:** Integrations, Developer tools, Lead generation
- **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

<!-- The H1 is generated by Apify Store from the `title` in actor.json. -->

> Look up Czech and Slovak companies by IČO. One structured JSON record per company. No API key.

### What it does

For every IČO on input, the Actor returns one JSON record per company with:

- Identification — current and historical name, legal form, registration and dissolution dates, tax IDs (DIČ, IČ DPH).
- Address — full text plus parsed street, ZIP, city, region, district.
- Classification — NACE code with description, additional NACE codes, file number (spisová značka), employee category where reported.
- Statutory body — role, name, date of birth, address, date the office began.
- Shareholders / members — name, IČO, address, list of stakes (investment, paid percent, fraction, type).
- Financials — revenue, profit, assets, equity, currency, registered capital.
- Multi-year financial history — up to 5 years of revenue, profit, assets, liabilities and total revenue.
- Business activities — trade licence and list of registered activities.
- Risk flags — insolvency, debts, temporary protection.
- VAT status and registry status across multiple public registries.
- Data freshness timestamps so you can audit how recent every record is.

### Coverage by subject type

Verified on an 11-subject test of real companies:

| Subject | Identification + address + NACE | Statutory body | Shareholders | Latest financials | Multi-year history | Risk flags |
|---|---|---|---|---|---|---|
| 🇨🇿 a.s. (joint-stock company) | yes | yes (board) | — | registered capital | — | yes |
| 🇨🇿 s.r.o. (limited liability) | yes | yes (executives) | yes, with stakes | registered capital | — | yes |
| 🇨🇿 nadace, SVJ, spolek (foundation, HOA, association) | yes | yes (committee, council) | — | — | — | yes |
| 🇨🇿 university, ministry, public sector | yes | — | — | — | — | yes |
| 🇸🇰 a.s., s.r.o. | yes | — | — | revenue, profit, assets, equity | up to 5 years | yes |
| 🇸🇰 nadácia and other entities | yes | — | — | — | — | yes |

### Input

```json
{
  "icos": ["35757442", "04788290", "31322832"],
  "country": "auto",
  "maxConcurrency": 5,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["RESIDENTIAL"]
  }
}
````

In auto mode each IČO is queried for both countries, so the run makes roughly twice as many requests. Setting `country` to `"cz"` or `"sk"` halves the request count and avoids cases where the same 8-digit IČO exists in both countries as a different company (for example 45274649 = ČEZ in CZ and ABC servis in SK).

### Output

One JSON record per company. The full dataset is downloadable as JSON, JSONL, CSV, XLSX, HTML, or XML. The Output tab in Apify Console shows four prebuilt views: **Overview**, **Finance**, **Directors & shareholders**, **Red flags**.

### FAQ

**Why is a record missing for a specific IČO?** Either the IČO does not exist or the lookup did not succeed (returns a `null` name). Open an Issue with the IČO.

# Actor input Schema

## `icos` (type: `array`):

Business identifiers to look up. Both CZ and SK use 8-digit IČO; missing leading zeros are padded automatically ("151700" → "00151700"). Identifiers that do not exist in any queried registry simply produce no record (no error).

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

CZ and SK both use 8-digit IČO and some numbers exist in both countries as different companies (e.g. 45274649 = ČEZ, a. s. in CZ and ABC - servis, s. r. o. in SK). In auto mode the Actor stores both records and the consumer must filter by country. Setting cz or sk halves the request count and avoids these collisions.

## `maxConcurrency` (type: `integer`):

How many IČOs to process in parallel. Higher values run faster but increase the chance of triggering rate limits at the source. The Actor was tested at concurrency 3 (local) and 5 (Apify cloud with residential proxy) without issues.

## `maxRequestRetries` (type: `integer`):

Number of retries on transient errors (network, 5xx, 429). The Actor uses exponential backoff and honours the Retry-After header where the server provides one.

## `requestTimeoutSecs` (type: `integer`):

Maximum time for a single HTTP request. CZ requests use an internal 3× multiplier because they include a browser render step.

## `proxyConfiguration` (type: `object`):

Default uses the RESIDENTIAL group. IP rotation per request reduces the chance of triggering per-IP rate limits at the queried public registries. For local development without Apify Proxy access, set useApifyProxy: false.

## Actor input object example

```json
{
  "icos": [
    "35757442",
    "04788290",
    "31322832"
  ],
  "country": "auto",
  "maxConcurrency": 5,
  "maxRequestRetries": 3,
  "requestTimeoutSecs": 30,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# Actor output Schema

## `dataset` (type: `string`):

One row per IČO (or two rows when an auto-mode IČO collision exists in both registries).

# 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 = {
    "icos": [
        "35757442",
        "04788290",
        "31322832"
    ],
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("pavel242242/cz-sk-company-info").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 = {
    "icos": [
        "35757442",
        "04788290",
        "31322832",
    ],
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("pavel242242/cz-sk-company-info").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 '{
  "icos": [
    "35757442",
    "04788290",
    "31322832"
  ],
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call pavel242242/cz-sk-company-info --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "CZ/SK Company Info — Free IČO Lookup",
        "description": "Look up Czech and Slovak companies by IČO. One structured JSON record per company with identification, NACE, address, statutory body, shareholders, financials, multi-year history, business activities, risk flags and VAT status. No API key. For B2B prospecting, KYC, due diligence and CRM enrichment.",
        "version": "0.2",
        "x-build-id": "kNS8J7KOzULdXLsxB"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/pavel242242~cz-sk-company-info/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-pavel242242-cz-sk-company-info",
                "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/pavel242242~cz-sk-company-info/runs": {
            "post": {
                "operationId": "runs-sync-pavel242242-cz-sk-company-info",
                "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/pavel242242~cz-sk-company-info/run-sync": {
            "post": {
                "operationId": "run-sync-pavel242242-cz-sk-company-info",
                "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": [
                    "icos"
                ],
                "properties": {
                    "icos": {
                        "title": "List of IČOs",
                        "minItems": 1,
                        "maxItems": 10000,
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Business identifiers to look up. Both CZ and SK use 8-digit IČO; missing leading zeros are padded automatically (\"151700\" → \"00151700\"). Identifiers that do not exist in any queried registry simply produce no record (no error).",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "country": {
                        "title": "Source country",
                        "enum": [
                            "auto",
                            "cz",
                            "sk"
                        ],
                        "type": "string",
                        "description": "CZ and SK both use 8-digit IČO and some numbers exist in both countries as different companies (e.g. 45274649 = ČEZ, a. s. in CZ and ABC - servis, s. r. o. in SK). In auto mode the Actor stores both records and the consumer must filter by country. Setting cz or sk halves the request count and avoids these collisions.",
                        "default": "auto"
                    },
                    "maxConcurrency": {
                        "title": "Max parallel requests",
                        "minimum": 1,
                        "maximum": 50,
                        "type": "integer",
                        "description": "How many IČOs to process in parallel. Higher values run faster but increase the chance of triggering rate limits at the source. The Actor was tested at concurrency 3 (local) and 5 (Apify cloud with residential proxy) without issues.",
                        "default": 5
                    },
                    "maxRequestRetries": {
                        "title": "Max request retries",
                        "minimum": 0,
                        "maximum": 10,
                        "type": "integer",
                        "description": "Number of retries on transient errors (network, 5xx, 429). The Actor uses exponential backoff and honours the Retry-After header where the server provides one.",
                        "default": 3
                    },
                    "requestTimeoutSecs": {
                        "title": "Request timeout (seconds)",
                        "minimum": 5,
                        "maximum": 300,
                        "type": "integer",
                        "description": "Maximum time for a single HTTP request. CZ requests use an internal 3× multiplier because they include a browser render step.",
                        "default": 30
                    },
                    "proxyConfiguration": {
                        "title": "Apify Proxy",
                        "type": "object",
                        "description": "Default uses the RESIDENTIAL group. IP rotation per request reduces the chance of triggering per-IP rate limits at the queried public registries. For local development without Apify Proxy access, set useApifyProxy: false.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": [
                                "RESIDENTIAL"
                            ]
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
