---
title: "Read one website for emails, free"
method: POST
path: "/v1/tools/extract-emails"
tags: ["Tools"]
---

# Read one website for emails, free

`POST /v1/tools/extract-emails`

## Request

- Base URL: `https://api.nvoke.run`
- URL: `https://api.nvoke.run/v1/tools/extract-emails`
- Auth: none required

The free website email extractor on nvoke.run/tools. Reads the homepage and likely contact pages of one domain (robots.txt honored, opt-outs respected) and returns its generic role addresses. Addresses of people are counted in `hiddenPersonal` and shown only in a search. Rate limited per IP and per day.

## Request body

- object
  - `domain` string, required
  - `turnstileToken` string: Cloudflare Turnstile token, when the server asks for one.

## Response `200`

OK

- object
  - `domain` string, required
  - `status` 'done' | 'blocked' | 'refused' | 'js_only' | 'failed' | 'opted_out', required
  - `emails` object[], required
    - `address` string, required
    - `sourceUrl` string, nullable, required
  - `hiddenPersonal` integer, required
  - `cached` boolean, required

## Other responses

- `4XX`: `invalid_request`: The body or query failed validation. `details` lists the problems. `rate_limited`: Too many requests of this kind from this account or client. Try again later. `captcha_failed`: The Turnstile token was missing or did not pass. Solve the challenge again. `busy`: Too many free tool checks are running or today’s free allowance is used up. Try again later, or sign up.

---

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