---
type: "firecrawl-provider"
description: "Enrich a company or person, search companies and people, and find a work email from a person id."
use_when: "Enrich a company from its domain or from a name and social profile, search companies, or resolve a name to a domain."
categories: "Company"
capabilities: 1
credits_per_call: 0
---
# CompanyEnrich on Firecrawl Alexandria

Enrich a company or person, search companies and people, and find a work email from a person id.

- Categories: Company
- Category index: [Company category](https://alexandria.firecrawl.dev/agents/categories/company)
- Provider key: `companyenrich`
- Access: Firecrawl credits
- Cost: 0 credits per call

## More

- [Human guide](https://www.firecrawl.dev/app/alexandria/companyenrich)
- [OpenAPI spec](https://alexandria.firecrawl.dev/agents/providers/companyenrich/openapi.json)

## 1. Choose this provider when

Enrich a company from its domain or from a name and social profile, search companies, or resolve a name to a domain.

## 2. Minimal request

Call `POST https://api.firecrawl.dev/v2/scrape` with `{ alexandria: { provider, capability, options } }`. For a batch, send `{ alexandria: [...] }` with up to 10 calls.

```json
{
  "provider": "companyenrich",
  "capability": "companies/autocomplete",
  "options": {
    "query": "<query>"
  }
}
```

## 3. Add provider options

Use only the options needed for the task:

- `query` (string, required): Partial company name or domain, such as stripe. Example: `<query>`

## 4. Request through your preferred interface

### JavaScript

```javascript
const result = await firecrawl.scrape({
  alexandria: {
    provider: "companyenrich",
    capability: "companies/autocomplete",
    options: {
      query: "<query>",
    },
  },
});
```

### Python

```python
result = firecrawl.scrape_alexandria({
  "provider": "companyenrich",
  "capability": "companies/autocomplete",
  "options": {
    "query": "<query>"
  }
})
```

### cURL

```sh
curl https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "alexandria": {
    "provider": "companyenrich",
    "capability": "companies/autocomplete",
    "options": {
      "query": "<query>"
    }
  }
}'
```

### CLI

```sh
firecrawl scrape 'companyenrich/companies/autocomplete' \
  --options '{"query":"<query>"}'
```


### MCP

Call the FCX MCP retrieve tool with this object:

```json
{
  "provider": "companyenrich",
  "capability": "companies/autocomplete",
  "options": {
    "query": "<query>"
  }
}
```

Ask for only the returned fields needed by the task.

## 5. Full request shape

```json
{
  "provider": "companyenrich",
  "capability": "companies/autocomplete",
  "options": {
    "query": "<query>"
  }
}
```

## 6. Response data

The response includes `success`, `provider`, `capability`, `creditsCost` and `data`. This example shows the provider payload in `data`:

```json
[
  {
    "domain": "<domain>",
    "name": "<name>",
    "logoUrl": "<logoUrl>"
  }
]
```

## API reference-derived contract

The following capability contract is generated from the same normalized Alexandria API reference exposed in the API spec.

### Company autocomplete

- Capability: `companies/autocomplete`
- Description: A list of company suggestions. domain is always present.
- Instructions: Turn a partial company name into a domain, for free, before companies/enrich. Each suggestion has domain, name, and logoUrl.
- Cost: 0 credits per call
- Capability file: [Company autocomplete](https://alexandria.firecrawl.dev/agents/providers/companyenrich/companies/autocomplete)

Accepted options:
- `query` (string, required): Partial company name or domain, such as stripe. Example: `<query>`

Response schema example:
```json
[
  {
    "domain": "<domain>",
    "name": "<name>",
    "logoUrl": "<logoUrl>"
  }
]
```
