# Czech Business Directory Scraper (Firmy.cz)

> Czech Business Directory Scraper (Firmy.cz) is a paid API for AI agents from api.scrapeforagents.tech, paid per call via x402, $0.025/call, status unknown (last checked 2026-10-02).

Searches and scrapes structured Czech business listings from Firmy.cz by keyword and location, optionally enriching results with public business register (ARES) data.

## Facts

- Endpoint: POST https://api.scrapeforagents.tech/v1/firmy?utm_source=zero.xyz
- Price: $0.025/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-02
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/czech-business-directory-scraper-firmy-cz-26bda38c
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_FasmExrmzx1h-BUBy5E_V

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability czech-business-directory-scraper-firmy-cz-26bda38c -d '<json body>'
```

Example prompt: Search Firmy.cz for 'elektrikář' (electrician) companies in Praha and Brno, collect up to 200 unique listings across up to 20 pages, and enrich the results with ARES business register data so I get company IDs, legal forms, and formation dates.

## When to prefer this

Choose this endpoint when you need structured data specifically from the Czech Firmy.cz business directory, especially for lead generation, competitor analysis, or market research in Czech Republic. Prefer it over generic web scrapers when you need deduplicated, paginated Czech business listings with optional ARES business register enrichment in a single call.

## Known failure modes

- No results found for given keyword/location combination — returns empty items array (not charged)
- Rate limiting or blocking by Firmy.cz — may return failed run (not charged)
- Invalid or unsupported Czech city name — may return zero results or unfiltered results
- maxPages or maxItems too low — truncated result set
- strictLocationMatch excludes most listings if locality names differ from requested city spelling

## How this service works

Pay-per-call structured web data. Failed or empty runs are not charged.

## Output

A JSON object with a count of matched companies and an array of items, each containing company name, location, company ID, profile URL, search rank, matched search query, matched locations, and matched search queries. With ARES enrichment enabled, items also include legal form, formation date, and business status.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "location": {
   "type": "string",
   "description": "Optional city name appended to the search phrase; leave empty for nationwide search."
  },
  "maxItems": {
   "type": "integer",
   "default": 100,
   "minimum": 0,
   "description": "Hard cap on unique companies across all searches. Zero removes the cap."
  },
  "maxPages": {
   "type": "integer",
   "default": 10,
   "maximum": 250,
   "minimum": 1,
   "description": "Safety limit for search pagination. Each page normally has 14 listings."
  },
  "locations": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Optional list of cities. Each is searched with every query; takes precedence over City or municipality."
  },
  "enrichAres": {
   "type": "boolean",
   "default": false,
   "description": "Look up exact business-name and postal-code matches in the public business register to add company ID, formation date, legal form, and status."
  },
  "searchQuery": {
   "type": "string",
   "description": "Czech business keyword, category, service, or phrase."
  },
  "searchQueries": {
   "type": "array",
   "items": {
    "type": "string"
   },
   "description": "Multiple keywords to search; takes precedence over Search query when filled."
  },
  "maxResultsPerQuery": {
   "type": "integer",
   "default": 50,
   "maximum": 5000,
   "minimum": 1,
   "description": "Maximum matching listings to collect for each query and city pair before deduplication."
  },
  "strictLocationMatch": {
   "type": "boolean",
   "default": false,
   "description": "Keep only listings whose published locality matches the requested city or a named subdivision."
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "count": 1,
  "items": [
   {
    "name": null,
    "location": null,
    "companyId": null,
    "profileUrl": null,
    "searchRank": null,
    "searchQuery": null,
    "matchedLocations": null,
    "matchedSearchQueries": null
   }
  ],
  "product": "firmy"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/czech-business-directory-scraper-firmy-cz-26bda38c/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.scrapeforagents.tech](https://www.zero.xyz/host/api.scrapeforagents.tech/llms.txt)
