# AI Lead Enricher (`lizzyyy2/ai-lead-enricher`) Actor

Paste company domains and get back enriched, sales-ready leads: industry, what they do, target customer, emails, social profiles, pain points and a personalized cold-email opener. Built-in AI, no API key needed.

- **URL**: https://apify.com/lizzyyy2/ai-lead-enricher.md
- **Developed by:** [Lizzy](https://apify.com/lizzyyy2) (community)
- **Categories:** Lead generation, AI
- **Stats:** 2 total users, 0 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

$12.00 / 1,000 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 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

## AI Lead Enricher

Paste a list of company domains and get back **enriched, sales-ready leads** — industry, what the company does, who they sell to, public emails, phone numbers, social profiles, likely pain points, and a **personalized cold-email opener** written for each company.

Built-in AI. **No OpenAI / OpenRouter API key required** — the AI runs on Apify's platform out of the box.

---

### Why this actor

Most lead-enrichment tools either:

- only scrape contact data (no real intelligence), or
- ask you to bring **your own** OpenAI / OpenRouter API key and set it up yourself.

This actor does both for you, with **zero AI setup**:

| | Plain scrapers | "AI" tools needing your key | **AI Lead Enricher** |
|---|:---:|:---:|:---:|
| Emails / phones / socials | ✅ | ✅ | ✅ |
| Industry, summary, target customer | ❌ | ✅ | ✅ |
| Pain points & sales angles | ❌ | ⚠️ | ✅ |
| Personalized cold-email opener | ❌ | ⚠️ | ✅ |
| Works with **no API key** | ✅ | ❌ | ✅ |

---

### Input

| Field | Type | Description |
|---|---|---|
| `domains` | array (required) | Company websites to enrich, e.g. `stripe.com`, `https://www.notion.so`. |
| `offerDescription` | string | What you sell. The AI uses it to write an opener that connects your offer to each company. Leave empty for a company-only opener. |
| `language` | string | Output language for AI text (English, German, Turkish, …). Default `English`. |
| `maxPagesPerSite` | integer (1–5) | How many pages to read per company (homepage + about/contact). Default `3`. |
| `proxyConfiguration` | object | Optional Apify Proxy to improve success on sites that block datacenter traffic. |

#### Example input

```json
{
  "domains": ["stripe.com", "notion.so"],
  "offerDescription": "We offer a 24/7 AI support chatbot that cuts response times by 60%.",
  "language": "English",
  "maxPagesPerSite": 3
}
````

***

### Output

One enriched record per company:

```json
{
  "input": "stripe.com",
  "website": "https://stripe.com",
  "companyName": "Stripe",
  "industry": "Financial technology / payments infrastructure",
  "summary": "Stripe provides payment processing and financial APIs for online businesses.",
  "targetCustomer": "Startups, SaaS companies and enterprises selling online.",
  "productsServices": ["Payments", "Billing", "Connect", "Radar"],
  "companySizeHint": "Large enterprise",
  "location": "San Francisco, CA",
  "emails": ["press@stripe.com"],
  "phones": [],
  "socials": { "linkedin": "https://www.linkedin.com/company/stripe", "twitter": "https://twitter.com/stripe" },
  "painPoints": ["Reducing payment fraud", "Scaling global compliance"],
  "salesAngles": ["Position around faster onboarding", "Highlight fraud-reduction ROI"],
  "personalizedOpener": "Hi Stripe team — with the volume of online payments you handle, even a small lift in support speed compounds fast...",
  "linkedinOpener": "Loved how Stripe keeps simplifying payments — would enjoy connecting.",
  "sourceUrls": ["https://stripe.com", "https://stripe.com/about"],
  "aiEnriched": true
}
```

***

### How it works

1. Normalizes each domain to a clean origin and fetches the homepage.
2. Follows a few internal **about / contact / company** pages (up to your `maxPagesPerSite`).
3. Extracts emails, phone numbers and social profiles deterministically (regex over the real page content).
4. Sends the page text to the built-in AI, which returns a structured sales profile and personalized openers.
5. Saves one clean lead per company to the dataset.

Companies whose site can't be fetched are skipped (and logged), so you only pay for results you actually get.

***

### Tips

- Add a clear `offerDescription` to get openers that mention *your* value proposition.
- Bump `maxPagesPerSite` to 4–5 for richer profiles on larger sites.
- Turn on Apify Proxy if some sites block the default requests.

***

### FAQ

**Do I need an OpenAI / OpenRouter API key?**
No. The AI enrichment runs on Apify's built-in model — nothing to configure, no separate AI bill.

**Where do the emails and phone numbers come from?**
They're extracted deterministically (regex) from the company's **own public website** — the homepage plus a few about/contact pages. No guessing, no scraping of private data.

**What languages can the AI write in?**
Any — set `language` to English, German, Turkish, Spanish, etc. Openers and summaries come back in that language.

**Do I pay for companies that fail to load?**
No. Sites that can't be fetched are skipped and logged, so you only pay for leads you actually get.

**Is this good for cold outreach?**
Yes — that's the point. Each lead includes pain points, sales angles, a cold-email opener and a softer LinkedIn opener tailored to your `offerDescription`.

***

### Related Actors — build a full pipeline

Enrichment is even more powerful when you start from a **buying signal** instead of a cold list:

- **Find the signal → enrich the company:** Run **Hiring Signals — Job Board Scraper + AI** first to find companies actively hiring for what you sell, then drop those companies into **AI Lead Enricher (this Actor)** to get emails, socials and a personalized opener for each. *Önce sinyal bul → sonra enrich et.*
- Already have a list of stores or apps? Feed domains from the **Shopify Store Scraper** or **App Store Scraper** straight into this Actor to turn raw targets into sales-ready leads.

> Workflow: **Hiring Signals (intent)** → **AI Lead Enricher (contact + opener)** → your CRM / sequencer.

# Actor input Schema

## `domains` (type: `array`):

One or more company websites to enrich (e.g. stripe.com, https://www.notion.so). The actor reads each public website and turns it into a sales-ready lead.

## `offerDescription` (type: `string`):

Briefly describe your product/service. The AI uses it to write a personalized cold-email opener that connects your offer to each company. Leave empty for a company-only opener.

## `language` (type: `string`):

Language for AI-generated text (e.g. English, German, Turkish).

## `maxPagesPerSite` (type: `integer`):

How many pages to read per company (homepage plus about/contact pages). 1-5.

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

Optional. Use Apify Proxy to improve success on sites that block datacenter traffic.

## Actor input object example

```json
{
  "domains": [
    "stripe.com"
  ],
  "language": "English",
  "maxPagesPerSite": 3,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `leads` (type: `string`):

All enriched, sales-ready leads in the default dataset.

# 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 = {
    "domains": [
        "stripe.com"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("lizzyyy2/ai-lead-enricher").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 = { "domains": ["stripe.com"] }

# Run the Actor and wait for it to finish
run = client.actor("lizzyyy2/ai-lead-enricher").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 '{
  "domains": [
    "stripe.com"
  ]
}' |
apify call lizzyyy2/ai-lead-enricher --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=lizzyyy2/ai-lead-enricher",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "AI Lead Enricher",
        "description": "Paste company domains and get back enriched, sales-ready leads: industry, what they do, target customer, emails, social profiles, pain points and a personalized cold-email opener. Built-in AI, no API key needed.",
        "version": "0.1",
        "x-build-id": "BcmK0DUMgTLfBkz0U"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/lizzyyy2~ai-lead-enricher/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-lizzyyy2-ai-lead-enricher",
                "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/lizzyyy2~ai-lead-enricher/runs": {
            "post": {
                "operationId": "runs-sync-lizzyyy2-ai-lead-enricher",
                "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/lizzyyy2~ai-lead-enricher/run-sync": {
            "post": {
                "operationId": "run-sync-lizzyyy2-ai-lead-enricher",
                "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": [
                    "domains"
                ],
                "properties": {
                    "domains": {
                        "title": "Company domains or URLs",
                        "minItems": 1,
                        "type": "array",
                        "description": "One or more company websites to enrich (e.g. stripe.com, https://www.notion.so). The actor reads each public website and turns it into a sales-ready lead.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "offerDescription": {
                        "title": "What you sell (for personalization)",
                        "type": "string",
                        "description": "Briefly describe your product/service. The AI uses it to write a personalized cold-email opener that connects your offer to each company. Leave empty for a company-only opener."
                    },
                    "language": {
                        "title": "Output language",
                        "type": "string",
                        "description": "Language for AI-generated text (e.g. English, German, Turkish).",
                        "default": "English"
                    },
                    "maxPagesPerSite": {
                        "title": "Max pages per site",
                        "minimum": 1,
                        "maximum": 5,
                        "type": "integer",
                        "description": "How many pages to read per company (homepage plus about/contact pages). 1-5.",
                        "default": 3
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Optional. Use Apify Proxy to improve success on sites that block datacenter traffic.",
                        "default": {
                            "useApifyProxy": false
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
