# Crear campaña (/es/api-reference/campaigns/createCampaign)

`POST /v1/campaigns`

Base URL: `https://api.bitelio.com`

Crea una nueva campaña de correo

---

**Versionado de rutas.** Este recurso también responde en `/campaigns`, sin versionar, que es donde siempre ha estado y donde seguirá funcionando indefinidamente — `bitelio@0.1.0` llama ahí. Usa `/v1/campaigns`: el prefijo `/v1` es el que lleva una promesa de versión detrás, y un futuro `/v2` podrá cambiar de forma sin romper nada escrito contra este.

## Request body

- `name`: string (required) — Nombre de la campaña
- `description`: string — Descripción de la campaña
- `subject`: string (required) — Asunto del correo
- `body`: string (required) — Cuerpo del correo en HTML
- `from`: string (email) (required) — Dirección de correo del remitente (debe pertenecer a un dominio verificado)
- `fromName`: string — Nombre del remitente
- `replyTo`: string (email) — Dirección de correo de respuesta (reply-to)
- `audienceType`: enum ("ALL" | "SEGMENT" | "FILTERED") (required) — Tipo de audiencia objetivo
- `segmentId`: string — ID del segmento (obligatorio si audienceType es SEGMENT)
- `audienceFilter`: object — Condiciones de filtro (obligatorio si audienceType es FILTERED)

Example:

```json
{
  "name": "string",
  "subject": "string",
  "body": "string",
  "from": "user@example.com",
  "audienceType": "ALL"
}
```

## Responses

### `200` — Campaña creada

- `success`: boolean
- `data`: object
  - `id`: string
  - `name`: string
  - `subject`: string
  - `type`: enum ("ALL" | "SEGMENT" | "FILTERED")
  - `status`: enum ("DRAFT" | "SCHEDULED" | "SENDING" | "SENT")
  - `scheduledAt`: string (date-time)

```json
{
  "success": false,
  "data": {
    "id": "string",
    "name": "string",
    "subject": "string",
    "type": "ALL",
    "status": "DRAFT",
    "scheduledAt": "2026-10-13T07:11:40.077Z"
  }
}
```

## Example request

```bash
curl -X POST 'https://api.bitelio.com/v1/campaigns' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"name":"string","subject":"string","body":"string","from":"user@example.com","audienceType":"ALL"}'
```
