> ## Documentation Index
> Fetch the complete documentation index at: https://docs.asteragents.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Lusha Enrich Tool

> Enrich known B2B contacts or companies with verified emails, direct phones, and firmographics from Lusha

## What it does

Lusha Enrich takes people or companies you **already know** — by name + company, email, LinkedIn URL, or company domain — and fills in the rest: verified work emails, direct phone numbers, job titles, and company firmographics. Use it after [Lusha Prospect](/tools/lusha_prospect) finds matches, or directly on a list you already have (e.g. CRM records missing contact info).

<Note>
  **Requires Lusha Integration**: Set up the [Lusha integration](/integrations/lusha) before agents can use this tool.
</Note>

## What it costs

Lusha bills **per data point revealed**. To keep spend predictable, this tool reveals emails by default and leaves phones off:

| Reveal                  | Credits       | Default |
| ----------------------- | ------------- | ------- |
| `reveal_email`          | 1 per contact | **on**  |
| `reveal_phone`          | 5 per contact | **off** |
| `reveal_company_fields` | 1 each        | off     |

Set `preview_only: true` to look up a record's `id` and which data points **exist** without revealing any PII or spending reveal credits.

## Key features

* Enrich by any identifier: email, LinkedIn URL, or name + company name/domain
* Contact and company modes
* Credit-safe by default — phones (5×) are opt-in
* Preview mode to check availability before spending
* Batch up to 100 records per call

## Parameters

| Parameter               | Type      | Required | Description                                                                                                                    |
| ----------------------- | --------- | -------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `entity_type`           | string    | No       | `contact` (default) uses `contacts`; `company` uses `companies`                                                                |
| `contacts`              | array     | No\*     | People to enrich (max 100). Each item: `email`, or `linkedinUrl`, or `firstName`+`lastName`+(`companyName` or `companyDomain`) |
| `companies`             | array     | No\*     | Companies to enrich (max 100). Each item: `domain` (preferred) and/or `name`                                                   |
| `reveal_email`          | boolean   | No       | Reveal work email(s), 1 credit each (default `true`)                                                                           |
| `reveal_phone`          | boolean   | No       | Reveal direct phone(s), 5 credits each (default `false`)                                                                       |
| `reveal_company_fields` | string\[] | No       | For companies: extra fields to reveal, 1 credit each (e.g. `employeesByDepartment`, `competitors`)                             |
| `preview_only`          | boolean   | No       | Look up id + available data points without revealing PII or spending reveal credits (default `false`)                          |

\*Provide `contacts` (default) or `companies` (with `entity_type: "company"`).

## Common use cases

### Get a known person's work email

```
contacts: [{ "firstName": "Jane", "lastName": "Doe", "companyDomain": "acme.com" }]
reveal_email: true
```

Returns Jane's verified work email (1 credit).

### Enrich a batch from prospecting

```
contacts: [
  { "firstName": "Jane", "lastName": "Doe", "companyName": "Acme" },
  { "email": "sam@globex.com" }
]
reveal_email: true
reveal_phone: true
```

Reveals email + direct phone for both (1 + 5 credits each).

### Check availability before spending

```
contacts: [{ "linkedinUrl": "https://www.linkedin.com/in/janedoe" }]
preview_only: true
```

Returns the match's `id` and `canReveal` (what data exists and its cost) — no reveal credits spent.

### Enrich a company by domain

```
entity_type: "company"
companies: [{ "domain": "acme.com" }]
```

Returns firmographics (size, industry, location, social links).

## What you get back

* `results[]` — full records; contacts include `emails[]` and `phones[]` (with confidence + type) when revealed
* `billing` — `creditsCharged` for the call
* `revealed` — which fields were revealed
* `rate_limits` — remaining requests for the minute/hour/day window

## Best practices

* **Prefer strong identifiers** — email or LinkedIn URL match most reliably; otherwise use a company **domain** over a name
* **Leave phones off unless needed** — at 5 credits each they dominate cost on large batches
* **Preview first on uncertain matches** to avoid paying for a wrong or empty record
* **Batch up to 100** to minimize requests against your rate limit

## Troubleshooting

**"Provide a non-empty contacts array" / "no usable identifier"**

* Each contact needs at least one of: `email`, `linkedinUrl`, or `firstName`+`lastName`+company

**"Lusha account is out of credits (402)"**

* Top up your Lusha plan, or reduce phone reveals and prefer email-only enrichment

**"Lusha blocked this contact for legal/GDPR reasons (451)"**

* That specific record can't be revealed for compliance reasons — skip it

**Phone came back empty even with `reveal_phone: true`**

* Lusha may not have a phone for that contact — check the `canReveal`/`has` fields via `preview_only` first

## Related tools

* [Lusha Prospect](/tools/lusha_prospect) — find new contacts/companies matching an ICP, then enrich the ids it returns
