# Tasks — mailing campaign lifecycle

> **TL;DR for agents:** Lifecycle: `POST /api/tasks/:id/start | /pause | /stop | /restart`. Insight: `GET /api/tasks/:id/analytics` (delivery / error rate / speed) and `/monitor` (live items by status). Items: `GET /api/tasks/:id/items`. Errors: `/errors`. Circuit breaker: `/circuit-breaker`.

## List tasks (mailing campaigns)

```bash
curl -s "https://api.live-direct-marketing.online/api/tasks?status=ACTIVE&pageSize=10" \
  -H "Authorization: Bearer $LDM_KEY"
```

## Start / pause / stop / restart

Scope: `tasks:write`. `restart` re-queues errored items; `stop` is a hard halt (not resumable).

```bash
# start (required: status=APPROVED|DRAFT_APPROVED)
curl -s -X POST "https://api.live-direct-marketing.online/api/tasks/$T/start" -H "Authorization: Bearer $LDM_KEY"

# pause / stop / restart
curl -s -X POST "https://api.live-direct-marketing.online/api/tasks/$T/pause"   -H "Authorization: Bearer $LDM_KEY"
curl -s -X POST "https://api.live-direct-marketing.online/api/tasks/$T/stop"    -H "Authorization: Bearer $LDM_KEY"
curl -s -X POST "https://api.live-direct-marketing.online/api/tasks/$T/restart" -H "Authorization: Bearer $LDM_KEY"
```

## Analytics — delivery rate, error rate, speed

Scope: `tasks:read`. Returns counts per item-status (PENDING/PROCESSING/DONE/ERROR/SKIPPED), `deliveryRate`, `errorRate`, `durationSec`, `speedPerHour`.

```bash
curl -s "https://api.live-direct-marketing.online/api/tasks/$T/analytics" \
  -H "Authorization: Bearer $LDM_KEY"
```

## Live monitor (items as they progress)

```bash
curl -s "https://api.live-direct-marketing.online/api/tasks/$T/monitor" \
  -H "Authorization: Bearer $LDM_KEY"
```

## Errors & circuit breaker (auto-pause on AI / bounce thresholds)

```bash
curl -s "https://api.live-direct-marketing.online/api/tasks/$T/errors"          -H "Authorization: Bearer $LDM_KEY"
curl -s "https://api.live-direct-marketing.online/api/tasks/$T/circuit-breaker" -H "Authorization: Bearer $LDM_KEY"
```
