# POST /email-campaigns/:id/send

**Resource:** [Email Campaigns](./email-campaigns.md)  
**Scopes:** `email-campaigns:write`  
**Write operation:** yes

Send a campaign immediately via Postmark broadcast stream. Campaign must be in draft or scheduled status, must have subject and body_html set, and must match at least one contact. Resolves audience, batches sends (up to 500 per batch), and records per-recipient status. This action cannot be undone.

## Parameters

| Name | In | Type | Required | Description |
|------|----|------|----------|-------------|
| `id` | path | uuid | yes | Campaign UUID |

## Request example

```bash
curl -X POST \
  "https://api.trustpager.com/functions/v1/api/v1/email-campaigns/campaign-uuid-here/send" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

## Response example

```json
{
  "data": {
    "id": "campaign-uuid-...",
    "status": "sending",
    "recipient_count": 124,
    "sent_count": 124,
    "failed_count": 0
  }
}
```

---
Base URL: `https://api.trustpager.com/functions/v1/api/v1` — Auth: `Authorization: Bearer YOUR_API_KEY`