---
title: "Extract email addresses from text"
method: POST
path: "/api/v1/extract"
tags: ["List Cleaning"]
---

# Extract email addresses from text

`POST /api/v1/extract`

## Request

- Base URL: `https://verifly.email`
- URL: `https://verifly.email/api/v1/extract`
- Auth: HTTP bearer

Extract email addresses from raw text, documents, logs, scraped snippets, or pasted notes. Does not verify deliverability. Free (no credits).

## Request body

- ExtractRequest
  - `text` string, required: Text or CSV content to scan for emails.
  - `options` object
    - `deduplicate` boolean
    - `lowercase` boolean

## Response `200`

Extracted emails and stats.

- ExtractResult
  - `success` boolean, required
  - `count` integer, required
  - `emails` string[], required
  - `stats` object, required
    - `total_matches` integer
    - `unique_count` integer
    - `domains_found` integer
    - `top_domains` object[]
      - `domain` string, required
      - `count` integer, required

## Other responses

- `400`: Invalid request or invalid input.
- `401`: Missing or invalid API key.
- `429`: Too many requests. Includes Retry-After (seconds) and the X-RateLimit-* headers.

---

[API](https://skmtc.dev/verifly/apis/verifly-email-verification-api.md) · [All operations](https://skmtc.dev/verifly/apis/verifly-email-verification-api/llms.txt) · [OpenAPI document](https://skmtc.dev/verifly/apis/verifly-email-verification-api/revisions/9b2787c04363?raw)
