# Company Enrichment & Search API - Firmographics, Tech & Socials (`nabeelbaghoor/company-enrichment-search-api`) Actor

Search and enrich companies from a 16M+ company dataset by industry, size, location and technologies, and export structured firmographics - name, website, HQ, employee count, revenue, tech stack, social profiles and contacts. Pay per result. Bring your own API key.

- **URL**: https://apify.com/nabeelbaghoor/company-enrichment-search-api.md
- **Developed by:** [Nabeel Hassan](https://apify.com/nabeelbaghoor) (community)
- **Categories:** Jobs, Developer tools, Lead generation
- **Stats:** 2 total users, 1 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$15.00 / 1,000 company results

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 web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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

## Company Enrichment & Search API - firmographics, tech stack and socials

**Company Enrichment & Search API** turns a 16M+ company dataset into a clean, structured export. Screen companies by industry, employee size, HQ country and the technologies they use, then export enriched firmographic records - name, domain, website, headcount, revenue, tech stack, social profiles and contacts - as JSON, CSV or Excel.

Bring your own API token and pay only for the records you keep.

### Why use this actor?

- **Firmographic screening** - filter a large company universe by industry, employee size band and headquarters country.
- **Technographic filtering** - narrow to companies whose websites run specific technologies, such as an ecommerce platform, CRM or analytics tool.
- **Enriched output** - company name, domain, website, industry, employee count, year founded, revenue, monthly web visitors, tech stack, LinkedIn and social profiles, plus public contact emails and phones, parsed into flat columns.
- **Advanced query** - use simple fields for the common cases, or pass raw condition objects for full control over every supported attribute.
- **Pay per result** - you are charged only for the company records actually returned, up to 1,000 per run.
- **No proxies, no blocks** - data comes through a stable API, so runs are fast and reliable.

### Use cases

- **Lead generation and TAM building** - build target account lists by industry, geography, size and tech stack.
- **Technographic targeting** - find every company using a given platform, CRM or framework.
- **Market mapping** - map a sector's players and rank them by headcount or web traffic.
- **CRM enrichment** - append firmographics, tech stack and socials to your existing account list.
- **Competitive research** - profile competitors and their technology footprint.

### Input

Configure everything from the visual editor - every filter is a proper field, no code needed. Example JSON input:

```json
{
  "industries": ["computer-software"],
  "employeeRanges": ["51-200", "201-500"],
  "countryCodes": ["us"],
  "technologies": ["hubspot"],
  "maxResults": 100,
  "apiKey": "YOUR_API_TOKEN"
}
````

For attributes beyond the built-in fields, add raw condition objects:

```json
{
  "rawQuery": [
    { "attribute": "about.totalEmployees", "operator": "or", "sign": "equals", "values": ["1001-5000"] },
    { "attribute": "locations.headquarters.country.code", "operator": "or", "sign": "equals", "values": ["gb"] }
  ],
  "maxResults": 250,
  "apiKey": "YOUR_API_TOKEN"
}
```

### Output

One clean JSON object per company:

```json
{
  "name": "Acme Analytics",
  "domain": "acme.com",
  "website": "https://acme.com",
  "industry": "computer-software",
  "totalEmployees": "51-200",
  "yearFounded": 2015,
  "city": "San Francisco",
  "country": "United States",
  "countryCode": "us",
  "revenue": "10M-50M",
  "monthlyVisitors": 84000,
  "technologies": ["hubspot", "react", "google-analytics"],
  "linkedin": "https://www.linkedin.com/company/acme",
  "twitter": "https://twitter.com/acme",
  "emails": ["hello@acme.com"],
  "id": 123456
}
```

### Do I need an API key?

Yes. This actor calls a company data API on your behalf, which requires your own **API token**. Sign up self-serve with the provider to get a free starter allowance and a token, paste it into the input, and run. Your token is stored securely and never logged.

### Pay per result

You pay only for the company records the actor actually returns - no subscriptions, no minimums. Set **Maximum results** to cap each run's spend exactly.

### FAQ

#### What is the Company Enrichment & Search API?

It is a company data API that lets you screen a 16M+ company universe by firmographics and technographics, then returns enriched records - name, domain, website, industry, headcount, revenue, tech stack, social profiles and contacts. This actor runs that search and exports the matches as JSON, CSV or Excel.

#### What filters can I use?

Built-in fields for industry, employee size band, HQ country code and technologies used. For any other supported attribute, add raw condition objects in the Advanced field, each in the form `{ "attribute": ..., "operator": ..., "sign": ..., "values": [...] }`.

#### What is technographic filtering?

It means filtering companies by the software and technologies their websites run - for example every company using a specific ecommerce platform, CRM, analytics tool or JavaScript framework. Pass technology slugs in the Technologies field to narrow your list to a tech stack.

#### What data is included per company?

Where available, each record carries name, domain, website, industry, employee size band, year founded, HQ city and country, revenue band, monthly web visitors, active technologies, LinkedIn and other social profiles, and public contact emails and phones.

#### How many results can I get per run?

Up to 1,000 company records per run, paged automatically in batches of up to 100. For larger universes, split the search by industry, country or size band across multiple runs.

#### How much does it cost?

Pricing is pay-per-result: a small fixed amount per company record returned, plus standard Apify platform usage, plus your own API usage against your token. A run that returns nothing costs almost nothing.

#### Can I run this on a schedule?

Yes. Use Apify Schedules to run it daily or weekly and connect the dataset to Zapier, Make, n8n, webhooks or the API to push new or updated accounts into your CRM or data warehouse.

#### Is this legal?

The actor returns company firmographic and technographic data retrieved through a licensed API using your own credentials. It focuses on company-level business data.

### Keyword map

company enrichment api, company search api, firmographics api, technographics api, company data api, b2b data api, lead generation api, tech stack lookup api, company database api, account list building, tam data api, company lookup by domain.

### Support and feedback

Found an issue or missing a filter? Open an issue in the **Issues** tab - it is monitored daily.

# Actor input Schema

## `search` (type: `string`):

Optional free-text search across company name and domain, e.g. `analytics` or `acme`. Combined with the structured filters below.

## `industries` (type: `array`):

Filter to companies in these industries, using the provider's industry slugs, e.g. `computer-software`, `financial-services`, `hospital-health-care`. Multiple values are combined as OR (matches the `about.industries` attribute).

## `employeeRanges` (type: `array`):

Filter by employee headcount band(s). Bands are strings, e.g. `1-10`, `11-50`, `51-200`, `201-500`, `501-1000`, `1001-5000`, `5001-10000`, `10001+` (matches the `about.totalEmployees` attribute). Combined as OR.

## `countryCodes` (type: `array`):

Filter to companies headquartered in these two-letter ISO country codes, e.g. `us`, `gb`, `de`, `in` (matches `locations.headquarters.country.code`). Combined as OR.

## `technologies` (type: `array`):

Filter to companies whose sites use these technologies, using the provider's technology slugs, e.g. `shopify`, `hubspot`, `google-analytics`, `react` (matches `technologies.active`). Combined as OR.

## `rawQuery` (type: `array`):

Power users: an array of raw condition objects in the form `{ "attribute": "about.totalEmployees", "operator": "or", "sign": "equals", "values": ["51-200"] }`. When set, these are appended to the conditions built from the fields above. See the provider's search documentation for all supported `attribute` paths and `sign` values.

## `sortKey` (type: `string`):

Field to sort results by.

## `sortOrder` (type: `string`):

Ascending or descending.

## `simplified` (type: `boolean`):

Return the provider's simplified company records. Simplified results are lighter and are not charged credits against your key by the provider.

## `startPage` (type: `integer`):

1-based page to start from. Increase to skip earlier results.

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

Stop after this many company records (1-1,000). Paged automatically in batches of up to 100. You are charged per result returned.

## `apiKey` (type: `string`):

Your company data API token. Required. Sign up self-serve at the provider for a free starter allowance and generate a token in your dashboard. Stored securely and never logged.

## Actor input object example

```json
{
  "sortKey": "meta.score",
  "sortOrder": "desc",
  "simplified": false,
  "startPage": 1,
  "maxResults": 100
}
```

# 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 = {
    "maxResults": 100
};

// Run the Actor and wait for it to finish
const run = await client.actor("nabeelbaghoor/company-enrichment-search-api").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 = { "maxResults": 100 }

# Run the Actor and wait for it to finish
run = client.actor("nabeelbaghoor/company-enrichment-search-api").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 '{
  "maxResults": 100
}' |
apify call nabeelbaghoor/company-enrichment-search-api --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Company Enrichment & Search API - Firmographics, Tech & Socials",
        "description": "Search and enrich companies from a 16M+ company dataset by industry, size, location and technologies, and export structured firmographics - name, website, HQ, employee count, revenue, tech stack, social profiles and contacts. Pay per result. Bring your own API key.",
        "version": "0.1",
        "x-build-id": "wEc7bqB3OoZQZ0lx9"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/nabeelbaghoor~company-enrichment-search-api/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-nabeelbaghoor-company-enrichment-search-api",
                "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/nabeelbaghoor~company-enrichment-search-api/runs": {
            "post": {
                "operationId": "runs-sync-nabeelbaghoor-company-enrichment-search-api",
                "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/nabeelbaghoor~company-enrichment-search-api/run-sync": {
            "post": {
                "operationId": "run-sync-nabeelbaghoor-company-enrichment-search-api",
                "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": {
                    "search": {
                        "title": "Search text",
                        "type": "string",
                        "description": "Optional free-text search across company name and domain, e.g. `analytics` or `acme`. Combined with the structured filters below."
                    },
                    "industries": {
                        "title": "Industries",
                        "type": "array",
                        "description": "Filter to companies in these industries, using the provider's industry slugs, e.g. `computer-software`, `financial-services`, `hospital-health-care`. Multiple values are combined as OR (matches the `about.industries` attribute).",
                        "items": {
                            "type": "string"
                        }
                    },
                    "employeeRanges": {
                        "title": "Employee size bands",
                        "type": "array",
                        "description": "Filter by employee headcount band(s). Bands are strings, e.g. `1-10`, `11-50`, `51-200`, `201-500`, `501-1000`, `1001-5000`, `5001-10000`, `10001+` (matches the `about.totalEmployees` attribute). Combined as OR.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "countryCodes": {
                        "title": "HQ country codes",
                        "type": "array",
                        "description": "Filter to companies headquartered in these two-letter ISO country codes, e.g. `us`, `gb`, `de`, `in` (matches `locations.headquarters.country.code`). Combined as OR.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "technologies": {
                        "title": "Technologies used",
                        "type": "array",
                        "description": "Filter to companies whose sites use these technologies, using the provider's technology slugs, e.g. `shopify`, `hubspot`, `google-analytics`, `react` (matches `technologies.active`). Combined as OR.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "rawQuery": {
                        "title": "Advanced query conditions",
                        "type": "array",
                        "description": "Power users: an array of raw condition objects in the form `{ \"attribute\": \"about.totalEmployees\", \"operator\": \"or\", \"sign\": \"equals\", \"values\": [\"51-200\"] }`. When set, these are appended to the conditions built from the fields above. See the provider's search documentation for all supported `attribute` paths and `sign` values."
                    },
                    "sortKey": {
                        "title": "Sort by",
                        "enum": [
                            "meta.score",
                            "about.totalEmployees",
                            "analytics.monthlyVisitors"
                        ],
                        "type": "string",
                        "description": "Field to sort results by.",
                        "default": "meta.score"
                    },
                    "sortOrder": {
                        "title": "Sort order",
                        "enum": [
                            "desc",
                            "asc"
                        ],
                        "type": "string",
                        "description": "Ascending or descending.",
                        "default": "desc"
                    },
                    "simplified": {
                        "title": "Simplified records",
                        "type": "boolean",
                        "description": "Return the provider's simplified company records. Simplified results are lighter and are not charged credits against your key by the provider.",
                        "default": false
                    },
                    "startPage": {
                        "title": "Start page",
                        "minimum": 1,
                        "type": "integer",
                        "description": "1-based page to start from. Increase to skip earlier results.",
                        "default": 1
                    },
                    "maxResults": {
                        "title": "Maximum results",
                        "minimum": 1,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Stop after this many company records (1-1,000). Paged automatically in batches of up to 100. You are charged per result returned."
                    },
                    "apiKey": {
                        "title": "API token",
                        "type": "string",
                        "description": "Your company data API token. Required. Sign up self-serve at the provider for a free starter allowance and generate a token in your dashboard. Stored securely and never logged."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
