# FirmenABC Scraper — Austrian Company Register Data (`studio-amba/firmenabc-at-scraper`) Actor

Scrape company data from FirmenABC.at, Austria's largest business directory. Extract Firmenbuchnummer, VAT ID, address, founding date, industry, and management/shareholder details for any Austrian company by name.

- **URL**: https://apify.com/studio-amba/firmenabc-at-scraper.md
- **Developed by:** [Studio Amba](https://apify.com/studio-amba) (community)
- **Categories:** Business, Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $12.00 / 1,000 result scrapeds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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/docs.md):

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.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/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

## FirmenABC Scraper

Scrape Austrian company register data from FirmenABC.at by company name.

### Why use this actor?

FirmenABC.at is Austria's largest business directory, covering over 800,000
companies. This actor turns a company name search into structured data:
Firmenbuchnummer (official company register number), VAT ID, registered
address, founding date, industry, and management/shareholder details. Useful
for sales lead generation, KYC/compliance checks, credit risk screening, and
market research on Austrian businesses — without manually looking up each
company on the site.

### How to scrape FirmenABC company data

1. Enter a company name or keyword in **Search Query** (e.g. `Bau GmbH`,
   `Muster GmbH`, or a specific company name you're looking for).
2. Set **Max Results** to how many matching companies you want (FirmenABC
   shows up to 50 unique companies per search).
3. Run the actor. It searches FirmenABC.at, then visits each matching
   company's profile page to extract the full register data.
4. Download the results as JSON, CSV, or Excel, or connect the dataset to
   your CRM / spreadsheet via the Apify API.

The actor works from any Apify plan — no FirmenABC account or login needed.

### Input

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `searchQuery` | String | No | Company name or keyword to search for (default: `Bau GmbH`) |
| `maxResults` | Integer | No | Maximum companies to return, up to 50 (default: 20) |
| `proxyConfiguration` | Object | No | Legacy field, kept for backwards compatibility (fetching uses a built-in unlocking service) |

### Output

Each result contains:

| Field | Type | Example |
|-------|------|---------|
| `companyName` | String | `"A.S. Pflaster GmbH"` |
| `legalName` | String | `"A.S. Pflaster Gesellschaft m.b.H."` |
| `registerId` | String | `"FN 192193 m"` |
| `vatId` | String | `"ATU49136304"` |
| `foundingDate` | String | `"2000-02-03T00:00:00+01:00"` |
| `legalFormStartDate` | String | `"03.02.2000"` |
| `address` | String | `"Industriestraße 4, 2292 Engelhartstetten"` |
| `street` | String | `"Industriestraße 4"` |
| `postalCode` | String | `"2292"` |
| `city` | String | `"Engelhartstetten"` |
| `country` | String | `"AT"` |
| `industry` | String | `"Pflastersteine / Pflasterungen"` |
| `activityDescription` | String | `"Betrieb einer Pflasterei;"` |
| `officers` | Array | `[{"name": "Scherer Andreas", "role": "alleinvertretungsberechtigt"}]` |
| `officerNames` | String | `"Scherer Andreas"` |
| `shareholders` | Array | `[{"name": "Scherer Andreas", "role": "Anteil: 100,00%"}]` |
| `phone` | String | `"02214 33 56"` |
| `email` | String | `"office@as-pflaster.at"` |
| `website` | String | `"www.as-pflaster.at"` |
| `url` | String | Full FirmenABC profile URL |

### Example output

```json
{
    "companyName": "A.S. Pflaster GmbH",
    "legalName": "A.S. Pflaster Gesellschaft m.b.H.",
    "registerId": "FN 192193 m",
    "vatId": "ATU49136304",
    "foundingDate": "2000-02-03T00:00:00+01:00",
    "legalFormStartDate": "03.02.2000",
    "address": "Industriestraße 4, 2292 Engelhartstetten",
    "street": "Industriestraße 4",
    "postalCode": "2292",
    "city": "Engelhartstetten",
    "country": "AT",
    "industry": "Pflastersteine / Pflasterungen",
    "activityDescription": "Betrieb einer Pflasterei;",
    "officers": [
        { "name": "Scherer Andreas", "role": "alleinvertretungsberechtigt" }
    ],
    "officerNames": "Scherer Andreas",
    "shareholders": [
        { "name": "Scherer Andreas", "role": "Anteil: 100,00%" }
    ],
    "phone": "02214 33 56",
    "email": "office@as-pflaster.at",
    "website": "www.as-pflaster.at",
    "url": "https://www.firmenabc.at/a-s-pflaster-gmbh_NAKq",
    "scrapedAt": "2026-07-14T14:30:00.000Z"
}
````

### Cost estimate

This actor uses roughly 1 request per company result (one search request
amortized across up to 50 results, plus one detail-page request per
company). At standard Apify pricing that's a few cents per 10 companies —
see the actor's pricing tab for the exact per-result price.

### Limitations

- FirmenABC's search results page returns a maximum of 50 unique companies
  per query — very broad searches (e.g. just "GmbH") will only surface the
  first 50 matches, not the full result set.
- Some smaller or newly registered companies may have incomplete profiles
  (missing VAT ID, phone, or email) if FirmenABC itself doesn't have that
  data on file.
- Data is scraped from the public website and may change without notice.
- Respect the website's terms of service and use responsibly.

### Need this data on a schedule, or a custom version?

We run this scraper as a managed service for businesses: scheduled runs,
deduplication, delta detection, and delivery to your inbox, Google Sheets,
or API — maintenance included. We can also build a custom version with your
exact fields and filters, or combine multiple sources into one feed.

See [studioamba.dev/services](https://studioamba.dev/services/) or email
<hello@studioamba.dev> for a free data sample.
We maintain 300+ European web scrapers and answer within one business day.

# Actor input Schema

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

Company name or keyword to search for (e.g., 'Bau GmbH', 'Muster GmbH', a specific company name). FirmenABC's search matches company names containing this text.

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

Maximum number of companies to return. FirmenABC shows up to 50 companies per search results page (verified ceiling); values above 50 are capped. Each result requires its own detail-page fetch (~20s), so large values take proportionally longer.

## `brightDataApiKey` (type: `string`):

Optional: your own Bright Data API key for the Web Unlocker zone. Leave empty to use the built-in unlocking service.

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

Legacy field, kept for backwards compatibility. Fetching goes through the built-in Bright Data Web Unlocker, so this is ignored.

## Actor input object example

```json
{
  "searchQuery": "Bau GmbH",
  "maxResults": 15,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# Actor output Schema

## `results` (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 = {
    "searchQuery": "Bau GmbH",
    "maxResults": 15,
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("studio-amba/firmenabc-at-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 = {
    "searchQuery": "Bau GmbH",
    "maxResults": 15,
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("studio-amba/firmenabc-at-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 '{
  "searchQuery": "Bau GmbH",
  "maxResults": 15,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call studio-amba/firmenabc-at-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=studio-amba/firmenabc-at-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "FirmenABC Scraper — Austrian Company Register Data",
        "description": "Scrape company data from FirmenABC.at, Austria's largest business directory. Extract Firmenbuchnummer, VAT ID, address, founding date, industry, and management/shareholder details for any Austrian company by name.",
        "version": "0.1",
        "x-build-id": "zF9rFDBc1JidxxYq1"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/studio-amba~firmenabc-at-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-studio-amba-firmenabc-at-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/studio-amba~firmenabc-at-scraper/runs": {
            "post": {
                "operationId": "runs-sync-studio-amba-firmenabc-at-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/studio-amba~firmenabc-at-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-studio-amba-firmenabc-at-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": {
                    "searchQuery": {
                        "title": "Search Query",
                        "type": "string",
                        "description": "Company name or keyword to search for (e.g., 'Bau GmbH', 'Muster GmbH', a specific company name). FirmenABC's search matches company names containing this text."
                    },
                    "maxResults": {
                        "title": "Max Results",
                        "minimum": 1,
                        "maximum": 50,
                        "type": "integer",
                        "description": "Maximum number of companies to return. FirmenABC shows up to 50 companies per search results page (verified ceiling); values above 50 are capped. Each result requires its own detail-page fetch (~20s), so large values take proportionally longer.",
                        "default": 20
                    },
                    "brightDataApiKey": {
                        "title": "Bright Data API Key (optional)",
                        "type": "string",
                        "description": "Optional: your own Bright Data API key for the Web Unlocker zone. Leave empty to use the built-in unlocking service."
                    },
                    "proxyConfiguration": {
                        "title": "Proxy Configuration",
                        "type": "object",
                        "description": "Legacy field, kept for backwards compatibility. Fetching goes through the built-in Bright Data Web Unlocker, so this is ignored."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
