> For the complete documentation index, see [llms.txt](https://kevins-organization-58.gitbook.io/smtp-ghost-api/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kevins-organization-58.gitbook.io/smtp-ghost-api/email-finder.md).

# Email Finder

## Email Finder

The Email Finder API attempts to find a person's email address based on the provided input parameters, ensuring accurate and reliable results.

### Endpoint

**POST** `/api/v1/email_finder`

### Base URL

```
https://smtpghost.com/api/v1/email_finder
```

### Headers

| Header         | Value                         | Required |
| -------------- | ----------------------------- | -------- |
| `Content-Type` | `application/json`            | Yes      |
| `X-KEY`        | `<your-organization-api-key>` | Yes      |

### Request Body

```json
{
  "full_name": "Kevin Urrutia",
  "domain": "voymedia.com"
}
```

### Success Response (200 OK)

#### Email Found

```json
{
  "status": "success",
  "full_name": "Kevin Doe",
  "domain": "voymedia.com",
  "email_address": "keve@voymedia.com",
  "email_status": "VALID",
  "account_type": "professional",
  "is_catch_all": false
}
```

#### No Email Found

```json
{
  "status": "not_found",
  "full_name": "Kevn Urrutia",
  "domain": "voymedia.com",
  "message": "No valid or risky email found for the given name and domain."
}
```

**Note:** The endpoint returns `status: "success"` only when an email is found; otherwise it returns `status: "not_found"`—never an HTTP error—for “no-email” cases.

### Error Responses

#### 400 Bad Request

```json
{
  "error": "Please provide both full name and domain."
}
```

#### 402 Payment Required

```json
{
  "error": "Insufficient credits. You need 1 credit to perform email finder."
}
```

#### 422 Unprocessable Entity

```json
{
  "error": "Unable to split full name into first and last name."
}
```

#### 500 Internal Server Error

```json
{
  "status": "error",
  "error": "An internal error occurred: <details>"
}
```

On any unexpected exception, credits are refunded and a 500 is returned with `status: "error"`.
