Welcome to the Lumail.io API documentation. Our REST API allows you to integrate email marketing capabilities into your applications.

v1 below is frozen. New integrations use [API v2](/docs/api-reference/v2). Agents rewriting existing code should start at [Migration to V2](/docs/api-reference/v2/migration).

## Machine-readable discovery

- [OpenAPI 3.1 specification](https://lumail.io/openapi.json) - Typed operations, parameters, request bodies, responses, and error schemas for code generators and function calling
- [MCP server manifest](https://lumail.io/.well-known/mcp.json) - Canonical Streamable HTTP endpoint, OAuth discovery, and MCP documentation
- [MCP server](https://lumail.io/mcp) - OAuth-protected tools and readable developer resources
- [llms.txt](https://lumail.io/llms.txt) - Markdown index for agents and retrieval systems
- [Authentication](/docs/api-reference/api-tokens) - Organization API token permissions and Bearer usage
- [Webhooks and integrations](/docs/integrations) - ClickFunnels, Systeme.io, and automation setup
- [SDK](/docs/sdk/introduction) and [CLI](/docs/api-reference/cli) - Typed application and terminal access

## Getting Started

Before using the API, you'll need to:

1. [Generate an API token](/docs/api-reference/api-tokens)
2. Include the token in your requests using the `Authorization` header

## Available Endpoints

### Transactional Emails

- [Send Emails](/docs/api-reference/api-emails-send) - Send transactional emails to subscribers
- [Verify Email](/docs/api-reference/api-email-verify-post) - Verify email addresses before sending

#### Email Content Formats

- [Send Email in Markdown](/docs/api-reference/api-emails-markdown) - Plain text with Markdown formatting
- [Send Email in HTML](/docs/api-reference/api-emails-html) - Raw HTML emails
- [Send Email in Tiptap](/docs/api-reference/api-emails-tiptap) - Tiptap JSON format

### Subscriber Management

- [Create Subscriber](/docs/api-reference/api-subscribers-post) - Add new subscribers
- [Get Subscribers](/docs/api-reference/api-subscribers-get) - Retrieve subscriber list
- [Update Subscriber](/docs/api-reference/api-subscribers-patch) - Update subscriber data
- [Unsubscribe Subscriber](/docs/api-reference/api-subscribers-unsubscribe) - Stop mail without deleting history

#### Subscriber Tags

- [Add Tags to Subscriber](/docs/api-reference/api-subscriber-tags-post) - Apply tags to subscribers
- [Remove Tags from Subscriber](/docs/api-reference/api-subscriber-tags-delete) - Remove tags from subscribers

### Events

Track and retrieve subscriber activity. Learn more about [all event types](/docs/features/subscriber-events).

- [Track Events](/docs/api-reference/api-events-post) - Record new subscriber events
- [Get Subscriber Events](/docs/api-reference/api-subscriber-events-get) - Retrieve event history for a subscriber

### Tags

- [Get Tags](/docs/api-reference/api-tags-get) - Retrieve tags
- [Create Tags](/docs/api-reference/api-tags-post) - Create new tags

## Authentication

All API requests require authentication using a Bearer token:

```bash
curl -H "Authorization: Bearer YOUR_API_TOKEN" \
  https://api.lumail.io/v1/endpoint
```

## Rate Limits

API requests are rate-limited per organization. See [Rate Limits](/docs/api-reference/api-limits) for full details.

| Plan       | Requests per Minute |
| ---------- | ------------------- |
| Free       | 100                 |
| Premium    | 700                 |
| Enterprise | 2,000               |

## Tutorials

Step-by-step guides for common API integrations:

- [Create API Token](/docs/tutorials/create-api-token) - Generate tokens for API access
- [V0 Capture Page](/docs/tutorials/v0-capture-page) - Build capture forms with API
- [Dynamic Promo Codes](/docs/tutorials/dynamic-promo-codes) - Personalized coupons via webhooks

## Related Documentation

- [Features](/docs/features) - Platform features and capabilities
- [Workflows](/docs/workflows) - Automate email sequences
- [Integrations](/docs/integrations) - Connect with ClickFunnels, SystemIO, and more
- [Email Domains](/docs/domains/email-domains) - Configure verified sending domains
