> ## Documentation Index
> Fetch the complete documentation index at: https://docs.deliveryman.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Introduction

> Send email, retrieve email, read replies and get events from your Deliveryman domains

With the Deliveryman API you can send emails from the domains connected to your account, track their delivery, read replies, verify addresses and manage your suppression list. Deliveryman takes care of the sending accounts, warmup, deliverability and tracking.

You write the logic on top, like an AI agent, a CRM sync or your own sequences.

> [!WARNING]
>
> **Strongly recommended:** leave 5 to 10 minutes between emails sent from the same domain. Sending many emails from one domain in a short time can hurt your domain and IP reputation.

## What you can do

> **[Send email](/api-reference/email/send-email.md)**
>
> Send from a full email address or just a domain, and get back a `message_id`.

> **[Send history](/api-reference/email/list-sent-emails.md)**
>
> List sent emails with their delivery status, opens, clicks, bounce and replies.

> **[Inbox](/api-reference/inbox/list-replies.md)**
>
> Read the latest replies, threaded with the email they answer.

> **[Domains](/api-reference/domains/list-domains.md)**
>
> List your connected domains and the email accounts that can send from each one.

> **[Email verification](/api-reference/email-verification/verify-email.md)**
>
> Check whether an address exists before you send to it.

> **[Suppression list](/api-reference/suppression-list/list-suppressed-emails.md)**
>
> List, add and remove bounced and unsubscribed addresses.

> **[Webhooks](/webhooks.md)**
>
> Get `sent`, `failed`, `open`, `click`, `bounce`, `unsubscribe` and `reply` events as they happen.

## Base URL

```http theme={null}
https://api.deliveryman.ai/api/v2/
```

## Authentication

Every request needs your API key in the `X-Api-Key` header. To create a key, go to **Integrations** in the dashboard, open **Deliveryman API Keys** and click **Manage**.

```bash theme={null}
curl "https://api.deliveryman.ai/api/v2/send-history/?domain=draftss.com&limit=20&offset=0" \
  -H "X-Api-Key: YOUR_API_KEY"
```

Keep your key secret. It has full access to your account, so only use it from your server, never from a browser or mobile app.

## Errors

The API uses standard HTTP status codes. Error responses have a `message` field that explains what went wrong:

```json theme={null}
{
  "message": "Domain 'draftss.com' is not connected to your account."
}
```

| Status | Meaning |
| - | - |
| `400` | The request is invalid. Check `message` for the field that failed. |
| `402` | You've run out of sending credits. |
| `403` | The API key is missing or invalid (this response has a `detail` field instead of `message`), or API sending has been disabled for your account. |
| `404` | The sender, email or entry doesn't exist. |
| `409` | `reply_to_message_id` refers to an email that hasn't been sent yet. |
| `422` | The recipient is on your suppression list. |
| `429` | Too many requests, or your sending domain's send queue is full. Wait for the `Retry-After` seconds and retry. See [Rate limits](/rate-limits.md). |
| `503` | The API is switched off. No requests are accepted while it is. |
| `5xx` | Something went wrong on our side. Retry later. |

If the API is switched off, every `/api/v2/` endpoint answers `503` and a notice appears at the top of these
pages. Emails already accepted are still delivered, and unsubscribe links in emails already sent keep working.

## Rate limits

Each endpoint caps how many requests your account can make per minute, and emails from one domain go out at least a minimum interval apart. See [Rate limits](/rate-limits.md) for the numbers and how to handle a `429`.

## Earlier API versions

The `/api/v1/` endpoints for campaigns, contact lists, leads and sequences keep working and are documented under
**v1** in the version picker at the top of the sidebar. V1 is in maintenance: new features only go into V2, so new
integrations should use the endpoints on this page.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.