Skip to main content
POST
Crear campaña para una versión específica del agente

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

x-workspace-id
string<uuid>

Identificador del workspace multi-tenant. Obligatorio al autenticar con Authorization: Bearer, donde su ausencia devuelve 400 Workspace context is required. Con x-api-key es opcional: la llave ya identifica a su workspace y lo que mandes aquí se ignora.

Path Parameters

agentId
string<uuid>
required

Identificador del agente

versionId
string<uuid>
required

Identificador de la versión del agente

Body

multipart/form-data
name
string
required

Nombre operativo de la campaña.

Required string length: 1 - 255
file
file
required

Archivo CSV con cabeceras que coinciden con las variables del blueprint.

objective
string | null

Objetivo opcional que se busca medir con la campaña.

Maximum string length: 500

Response

Campaña creada y encolada para procesamiento.

campaignId
string<uuid>
required
workspaceId
string<uuid>
required
agentId
string<uuid>
required
agentVersionId
string<uuid>
required
name
string
required
Minimum string length: 1
status
enum<string>
required

Estado del lifecycle de la campaña.

  • PENDING: creada, aún no inicia procesamiento.
  • PROCESSING: stream del CSV en curso (primera pasada).
  • RETRYING: primera pasada terminó; quedan reintentos automáticos en cola.
  • COMPLETED: cerrada exitosamente sin filas terminales fallidas.
  • PARTIALLY_COMPLETED: cerrada con algunas filas terminales fallidas.
  • FAILED: la primera pasada falló por error técnico.
  • PAUSED: pausada manualmente; los reintentos se reagendan sin ejecutar.
  • CANCELLED: cancelada manualmente; reintentos pendientes se descartan.
Available options:
PENDING,
PROCESSING,
RETRYING,
COMPLETED,
PARTIALLY_COMPLETED,
FAILED,
PAUSED,
CANCELLED
inputFileKey
string
required

Ruta en storage del CSV original.

totalRecords
integer
required
Required range: x >= 0
processedRecords
integer
required

Filas del CSV materializadas como ejecuciones (primera pasada).

Required range: x >= 0
successfulRecords
integer
required

Filas que pasaron exitosamente por el procesador (incluye reintentos).

Required range: x >= 0
failedRecords
integer
required

Filas que agotaron reintentos y quedaron en estado terminal de error.

Required range: x >= 0
connectedRecords
integer
required

Contactos cuyo provider reportó audio bidireccional (humano contestó).

Required range: x >= 0
goalAchievedRecords
integer
required

Filas cuyo análisis post-call marcó GOAL_ACHIEVED=true al menos una vez. Numerador para "tasa de conversión" sobre connectedRecords.

Required range: x >= 0
pendingRetriesCount
integer
required

Filas actualmente en cola de reintento automático.

Required range: x >= 0
terminalFailures
integer
required

Filas que llegaron a estado terminal de error (agotaron reintentos).

Required range: x >= 0
createdBy
string<uuid>
required

Usuario que creó la campaña.

createdAt
string<date-time>
required
updatedAt
string<date-time>
required
objective
string | null

Objetivo opcional que se desea medir con la campaña.

pausedFromStatus
enum<string> | null

Estado previo a la pausa. Solo presente cuando status=PAUSED.

Available options:
PENDING,
PROCESSING,
RETRYING,
COMPLETED,
PARTIALLY_COMPLETED,
FAILED,
PAUSED,
CANCELLED
nextRetryAt
string<date-time> | null

Cuándo se ejecutará el próximo reintento pendiente (más cercano).

startedAt
string<date-time> | null
completedAt
string<date-time> | null
pausedAt
string<date-time> | null
cancelledAt
string<date-time> | null