---
title: "Get Prospect"
method: GET
path: "/email/prospect"
tags: ["Email"]
---

# Get Prospect

`GET /email/prospect`

## Request

- Base URL: `https://api.mixrank.com/v2/json/YOUR_API_KEY`
- URL: `https://api.mixrank.com/v2/json/YOUR_API_KEY/email/prospect`
- Auth: none declared

Discovers or generates candidate email addresses. Requires person_id, or domain plus at least one of full_name, first_name, or last_name. Billing is per returned email. With webhook, returns HTTP 202 and delivers the result asynchronously.

Required permissions for your API key's user: `email.prospect`.

## Query parameters

- `full_name` string
- `first_name` string
- `last_name` string
- `person_id` integer
- `domain` string
- `limit` integer
- `check_ownership` 't' | 'f'
- `skip_sv` 't' | 'f'
- `keep_ambiguous` 't' | 'f'
- `downscore_edu` 't' | 'f'
- `webhook` string

## Response `200`

Successful response.

- union
  - object
    - `name` string, nullable: The name used to generate emails.
    - `emails` object[], nullable: Discovered email assessments; may include ambiguous linked addresses when keep_ambiguous is enabled.
      - `email` string, nullable: The requested email address.
      - `normalized` string, nullable: The normalized email address.
      - `validity` 'valid' | 'ambiguous' | 'maybe_valid' | 'invalid' | 'uncached' | 'malformed' | 'temp_error' | 'perm_error', nullable: <p>Email validity. Possible values are:</p> <ul> <li><code>valid</code>: The email is valid.</li> <li><code>ambiguous</code>: There is not enough information about this email.</li> <li><code>maybe_valid</code>: Similar to <code>ambiguous</code>, but we know it was valid at some point.</li> <li><code>invalid</code>: The email is invalid.</li> <li><code>uncached</code>: Only returned after a strategy of <code>cached</code> didn't find the result.</li> <li><code>malformed</code>: This email address is malformed.</li> <li><code>temp_error</code>: Temporary internal error, please try again later.</li> <li><code>perm_error</code>: Permament error, maybe a misconfigured email server?</li> </ul>
      - `validated_at` string, nullable: When this result was generated.
      - `uses_greylist` boolean, nullable: Whether the recipient domain greylists our probe. Null on cached results (not stored). While the greylist window is still closed the result is inconclusive (<code>validity</code> is <code>ambiguous</code>) and <code>retry_after</code> hints when to retry; once resolved <code>validity</code> is conclusive while this stays true.
      - `retry_after` string, nullable: If greylisted, the earliest time it is worth retrying this address. Null on cached results and when not greylisted.
      - `gateway` string, nullable: Gateway name. Not strictly a SEG, but who is filtering email.
      - `is_disposable` boolean, nullable: Whether the email address is disposable / temporary.
      - `is_consumer` boolean, nullable: Whether the email is b2c (gmail.com, yahoo.com, ...).
      - `is_domain_catchall` boolean, nullable: Whether the email domain is catchall (not this particular address). Might be null for unknown.
      - `mx_records` string[], nullable: List of MX DNS records for the domain
  - object
    - `errors` object, required

## Other responses

- `202`: Webhook request accepted; the result is delivered asynchronously.
- `400`: Invalid inputs or webhook URL.
- `403`: Invalid key or insufficient endpoint permissions.
- `404`: Person, usable name, or company domain could not be found.
- `429`: Too many pending webhook requests.
- `500`: Internal API error.
- `503`: Queue unavailable; retry later.

---

[API](https://skmtc.dev/mixrank/apis/mixrank-api.md) - [All operations](https://skmtc.dev/mixrank/apis/mixrank-api/llms.txt) - [OpenAPI document](https://skmtc.dev/mixrank/apis/mixrank-api/revisions/786d3fcfe918?raw)
