---
type: "firecrawl-provider"
description: "Search people and companies, find a verified email, reverse-look up an email, and analyze a profile's personality."
use_when: "Search and preview people, find a verified email or mobile, identify a person from an email, and analyze a profile's personality.\n\nSearch companies by firmographics, technology, or hiring, including lookalikes of known domains."
categories: "People"
capabilities: 6
credits_range: "2-10"
---
# AI Ark on Firecrawl Alexandria

Search people and companies, find a verified email, reverse-look up an email, and analyze a profile's personality.

- Categories: People
- Category index: [People category](https://alexandria.firecrawl.dev/agents/categories/people)
- Provider key: `aiark`
- Access: Firecrawl credits
- Cost (People search): 2 credits per record
- Cost (People preview): 3 credits per call
- Cost (Email finder): 3 credits per record
- Cost (Reverse lookup): 2 credits per record
- Cost (Personality analysis): 10 credits per record
- Cost (Company search): 2 credits per record

## More

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

## Capabilities

- [People search](https://alexandria.firecrawl.dev/agents/providers/aiark/people/search): One person under content. totalElements is the full match count and totalPages the number of one-row pages. trackId is a single-use id that expires after six hours.
- [People preview](https://alexandria.firecrawl.dev/agents/providers/aiark/people/preview): One masked person under content. totalElements is the full match count. has_mobile and has_skills say whether a full lookup has something to find.
- [Email finder](https://alexandria.firecrawl.dev/agents/providers/aiark/people/email-find): The person under data, or null when AI Ark found no profile or no valid email. email.output lists address, found, status (VALID or INVALID), subStatus, domainType (SMTP, CATCH_ALL, UNKNOWN), free, generic, and mx.
- [Reverse lookup](https://alexandria.firecrawl.dev/agents/providers/aiark/people/enrich): One person profile, the same shape as a people/search row.
- [Personality analysis](https://alexandria.firecrawl.dev/agents/providers/aiark/people/personality): One analysis. assessments holds archetype, ocean, and disc scores. selling and hiring hold email advice, communication types, whatToSay, and whatToAvoid. status is SUCCESS and success is true when complete.
- [Company search](https://alexandria.firecrawl.dev/agents/providers/aiark/companies/search): One company under content. totalElements is the full match count and totalPages the number of one-row pages.

## 1. Choose this provider when

Search and preview people, find a verified email or mobile, identify a person from an email, and analyze a profile's personality.

Search companies by firmographics, technology, or hiring, including lookalikes of known domains.

## 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": "aiark",
  "capability": "people/search",
  "options": {
    "account": {}
  }
}
```

## 3. Add provider options

Use only the options needed for the task:

- `account` (object): AI Ark company filters, such as { "domain": { "any": { "include": ["example.com"] } } } or industries, employeeSize, location. Passed through unchanged. Example: `{}`
- `contact` (object): AI Ark person filters, such as experience.latest.title, seniority, location, skills, education. Passed through unchanged. Example: `{}`
- `lists` (object): Exclude people by a temporary people_id list id created on AI Ark. Example: `{}`
- `page` (number): Zero-based page. Defaults to 0. Each page is one row. Example: `10`
- `size` (number): Rows per page. Fixed at 1. Example: `1`

## 4. Request through your preferred interface

### JavaScript

```javascript
const result = await firecrawl.scrape({
  alexandria: {
    provider: "aiark",
    capability: "people/search",
    options: {
      account: {},
    },
  },
});
```

### Python

```python
result = firecrawl.scrape_alexandria({
  "provider": "aiark",
  "capability": "people/search",
  "options": {
    "account": {}
  }
})
```

### cURL

```sh
curl https://api.firecrawl.dev/v2/scrape \
  -H "Authorization: Bearer $FIRECRAWL_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "alexandria": {
    "provider": "aiark",
    "capability": "people/search",
    "options": {
      "account": {}
    }
  }
}'
```

### CLI

```sh
firecrawl scrape 'aiark/people/search' \
  --options '{"account":{}}'
```


### MCP

Call the FCX MCP retrieve tool with this object:

```json
{
  "provider": "aiark",
  "capability": "people/search",
  "options": {
    "account": {}
  }
}
```

Ask for only the returned fields needed by the task.

## 5. Full request shape

```json
{
  "provider": "aiark",
  "capability": "people/search",
  "options": {
    "account": {}
  }
}
```

## 6. Response data

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

```json
{
  "content": [
    {
      "id": "<id>",
      "identifier": "<identifier>",
      "profile": {},
      "link": {},
      "location": {},
      "company": {},
      "department": {},
      "position_groups": [],
      "educations": [],
      "skills": [],
      "last_updated": "<last_updated>"
    }
  ]
}
```

## API reference-derived contract

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

### People search

- Capability: `people/search`
- Description: One person under content. totalElements is the full match count and totalPages the number of one-row pages. trackId is a single-use id that expires after six hours.
- Instructions: Find one person matching company and person filters, one row per page. 5 Firecrawl credits when a person comes back; an empty page costs nothing. No email or phone: follow with people/email-find using the returned id or LinkedIn URL. Use people/preview to check a filter first.
- Cost: 2 credits per record
- Capability file: [People search](https://alexandria.firecrawl.dev/agents/providers/aiark/people/search)

Accepted options:
- `account` (object): AI Ark company filters, such as { "domain": { "any": { "include": ["example.com"] } } } or industries, employeeSize, location. Passed through unchanged. Example: `{}`
- `contact` (object): AI Ark person filters, such as experience.latest.title, seniority, location, skills, education. Passed through unchanged. Example: `{}`
- `lists` (object): Exclude people by a temporary people_id list id created on AI Ark. Example: `{}`
- `page` (number): Zero-based page. Defaults to 0. Each page is one row. Example: `10`
- `size` (number): Rows per page. Fixed at 1. Example: `1`

Response schema example:
```json
{
  "content": [
    {
      "id": "<id>",
      "identifier": "<identifier>",
      "profile": {},
      "link": {},
      "location": {},
      "company": {},
      "department": {},
      "position_groups": [],
      "educations": [],
      "skills": [],
      "last_updated": "<last_updated>"
    }
  ]
}
```

### People preview

- Capability: `people/preview`
- Description: One masked person under content. totalElements is the full match count. has_mobile and has_skills say whether a full lookup has something to find.
- Instructions: Check how many people match a people/search filter and see one masked row. 5 Firecrawl credits per call, including an empty page. Last names are masked; no email or phone. The id is real and works with people/email-find.
- Cost: 3 credits per call
- Capability file: [People preview](https://alexandria.firecrawl.dev/agents/providers/aiark/people/preview)

Accepted options:
- `account` (object): AI Ark company filters, such as { "domain": { "any": { "include": ["example.com"] } } } or industries, employeeSize, location. Passed through unchanged. Example: `{}`
- `contact` (object): AI Ark person filters, such as experience.latest.title, seniority, location, skills, education. Passed through unchanged. Example: `{}`
- `lists` (object): Exclude people by a temporary people_id list id created on AI Ark. Example: `{}`
- `page` (number): Zero-based page. Defaults to 0. Each page is one row. Example: `10`
- `size` (number): Rows per page. Fixed at 1. Example: `1`

Response schema example:
```json
{
  "content": [
    {
      "id": "<id>",
      "profile": {},
      "company": {},
      "location": {},
      "has_mobile": false,
      "has_skills": false
    }
  ]
}
```

### Email finder

- Capability: `people/email-find`
- Description: The person under data, or null when AI Ark found no profile or no valid email. email.output lists address, found, status (VALID or INVALID), subStatus, domainType (SMTP, CATCH_ALL, UNKNOWN), free, generic, and mx.
- Instructions: Enrich one person from an AI Ark id or LinkedIn profile URL and return a verified work email. 5 Firecrawl credits when a valid email comes back; data null is a miss and costs nothing.
- Cost: 3 credits per record
- Capability file: [Email finder](https://alexandria.firecrawl.dev/agents/providers/aiark/people/email-find)

Accepted options:
- `id` (string): AI Ark person id from people/search or people/preview. Looked up first when both are sent. Example: `<id>`
- `url` (string): Full LinkedIn profile URL, such as https://www.linkedin.com/in/example. Example: `<url>`

Response schema example:
```json
{
  "data": {
    "id": "<id>",
    "identifier": "<identifier>",
    "profile": {},
    "link": {},
    "location": {},
    "company": {},
    "department": {},
    "position_groups": [],
    "educations": [],
    "skills": [],
    "last_updated": "<last_updated>",
    "email": {}
  }
}
```

### Reverse lookup

- Capability: `people/enrich`
- Description: One person profile, the same shape as a people/search row.
- Instructions: Identify a person from an email address or mobile number and return their profile, employer, and history. 5 Firecrawl credits when a profile comes back. No match is a not_found error and costs nothing. Does not return a verified email or mobile.
- Cost: 2 credits per record
- Capability file: [Reverse lookup](https://alexandria.firecrawl.dev/agents/providers/aiark/people/enrich)

Accepted options:
- `search` (string, required): An email address, or a mobile number in international format such as +14155550100. Example: `<search>`

Response schema example:
```json
{
  "id": "<id>",
  "identifier": "<identifier>",
  "profile": {},
  "link": {},
  "location": {},
  "company": {},
  "department": {},
  "position_groups": [],
  "educations": [],
  "skills": [],
  "last_updated": "<last_updated>"
}
```

### Personality analysis

- Capability: `people/personality`
- Description: One analysis. assessments holds archetype, ocean, and disc scores. selling and hiring hold email advice, communication types, whatToSay, and whatToAvoid. status is SUCCESS and success is true when complete.
- Instructions: Generate DISC and OCEAN scores plus selling and hiring outreach guidance from a LinkedIn profile. 20 Firecrawl credits for a completed analysis. A profile AI Ark cannot find is a not_found error and costs nothing.
- Cost: 10 credits per record
- Capability file: [Personality analysis](https://alexandria.firecrawl.dev/agents/providers/aiark/people/personality)

Accepted options:
- `url` (string, required): Full LinkedIn profile URL, such as https://www.linkedin.com/in/example. Example: `<url>`

Response schema example:
```json
{
  "model": "<model>",
  "source": {},
  "score": 0,
  "selling": {},
  "hiring": {},
  "assessments": {},
  "status": "<status>",
  "success": false
}
```

### Company search

- Capability: `companies/search`
- Description: One company under content. totalElements is the full match count and totalPages the number of one-row pages.
- Instructions: Find one company matching firmographic, technology, or hiring filters, or one lookalike of up to five domains, one row per page. 5 Firecrawl credits when a company comes back; an empty page costs nothing. Pass a returned domain to people/search under account.domain.
- Cost: 2 credits per record
- Capability file: [Company search](https://alexandria.firecrawl.dev/agents/providers/aiark/companies/search)

Accepted options:
- `account` (object): AI Ark company filters, such as { "domain": { "any": { "include": ["example.com"] } } } or industries, employeeSize, location, technology, employee. Passed through unchanged. Example: `{}`
- `lookalikeDomains` (string[]): Up to 5 company domains or LinkedIn company URLs. Returns similar companies. Example: `[]`
- `lists` (object): Exclude companies by a temporary company_id list id created on AI Ark. Example: `{}`
- `page` (number): Zero-based page. Defaults to 0. Each page is one row. Example: `10`
- `size` (number): Rows per page. Fixed at 1. Example: `1`

Response schema example:
```json
{
  "content": [
    {
      "id": "<id>",
      "summary": {},
      "link": {},
      "financial": {},
      "location": {},
      "technologies": [],
      "industries": [],
      "last_updated": "<last_updated>"
    }
  ]
}
```
