v1

latestOpenAPI 3.0.3Proprietary2026-08-0610636149.4 KB
Conversations

Crear conversación

post/v1/conversations

Request body

channelIdstring required
companyIdstring required
channel'FACEBOOK' | 'WEB' | 'WHATSAPP' | 'INSTAGRAM' required

Canal de comunicación de una conversación (por dónde llegó el contacto). No confundir con ChannelSite.type: acá WHATSAPP describe el canal de la conversación, mientras que en la configuración del canal/sitio el mismo canal aparece como WHATSAPP_API o WHATSAPP_BUSINESS según la integración. Son campos y vocabularios distintos.

fromstring required

Identificador del originante

urlstring

Example request

{
  "channel": "WHATSAPP"
}

Response

Conversación creada

idstring
channelIdstring

ID del canal donde ocurre la conversación.

companyIdstring

ID de la empresa dueña de la conversación.

contactIdstring

ID del contacto asociado a la conversación. Usalo para traer datos que viven en el contacto y no en la conversación — en particular la puntuación de lead (rating, estrellas 1–5) vía GET /v1/contacts.

channel'FACEBOOK' | 'WEB' | 'WHATSAPP' | 'INSTAGRAM'

Canal de comunicación de una conversación (por dónde llegó el contacto). No confundir con ChannelSite.type: acá WHATSAPP describe el canal de la conversación, mientras que en la configuración del canal/sitio el mismo canal aparece como WHATSAPP_API o WHATSAPP_BUSINESS según la integración. Son campos y vocabularios distintos.

status'ACTIVE' | 'CLOSED' | 'AWAY' | 'INACTIVE' | 'FINALIZED'

Estado de la conversación. ACTIVE (abierta), CLOSED/FINALIZED (cerrada), AWAY (sin actividad reciente), INACTIVE (inactiva). Para filtrar el listado usá el parámetro status con los valores opened/closed/inactive.

lastMessagestring
lastMessageAtstring date-time
visitorNamestring
visitorEmailstring
visitorPhonestring
assignedTostring

ID del agente actualmente asignado a la conversación. Vacío si nadie la tiene asignada.

preAssignedstring

ID del agente pre-asignado (asignación automática por reparto/round-robin antes de que el agente intervenga). Para filtrar conversaciones asignadas a un agente usá el parámetro preAssigned del listado.

persistentLastOperatorstring

ID del último agente humano que intervino la conversación (envió al menos un mensaje). Vacío si nunca intervino un humano (conversación solo atendida por el bot). Para filtrar por intervención usá el parámetro agent o condition del listado.

utmSourcestring

Fuente de la campaña (UTM source). Filtrable con el parámetro utmSource.

utmMediumstring

Medio de la campaña (UTM medium). Filtrable con el parámetro utmMedium.

utmCampaignstring

Nombre de la campaña (UTM campaign). Filtrable con el parámetro utmCampaign.

gaClientIdstring

Google Analytics Client ID asociado a la conversación.

phaseIdstring

ID de la etapa de inbox (fase del pipeline) en la que está la conversación. Es un ID, no el nombre: resolvé el nombre legible (ej. "Nuevos", "Cotizados", "Pedidos") con GET /v1/phases. Para filtrar el listado por etapa usá el parámetro phase.

amountnumber

Valor monetario de la conversación/negocio cargado en el inbox (monto del lead). null o 0 si no se cargó un valor. Útil para reportes de ingresos por etapa.

typestring

Tipo de negocio/oportunidad asociado a la conversación (si aplica).

tagsstring[]

Etiquetas en formato plano (legacy). Mezcla etiquetas de negocio con etiquetas internas/sistémicas de Cliengo (ej. posted_email, posted_phone, fired_new_lead, is_intervened, was_intervened, external_robot, automatic_transfer, post_lead, no_lead). Si la usás, filtrá las internas (prefijos posted_/fired_ y esos flags); para análisis de etiquetas conviene usar operatorTags. Puede venir como arreglo de strings; valídalo antes de iterar.

closedboolean

Atajo booleano para saber si la conversación está cerrada (equivale a status cerrado).

createdAtstring date-time

Fecha de creación de la conversación.

Example response

{
  "id": "626e9cc66ac98128162b2bbc",
  "channelId": "5f08e255c9a881002afc06ec",
  "companyId": "5c7414a4e4b06f6eb79408f5",
  "contactId": "60a1b2c3d4e5f6a7b8c9d0e1",
  "channel": "WHATSAPP",
  "lastMessage": "será un placer asistirte, cuál es tu nombre?",
  "visitorName": "Robert",
  "visitorEmail": "robert@example.com",
  "visitorPhone": "584122233456",
  "participants": [
    {
      "id": "5f08e255c9a881002afc06ec",
      "name": "Ana Gómez"
    }
  ],
  "assignedTo": "5f08e255c9a881002afc06ec",
  "preAssigned": "5f08e255c9a881002afc06ec",
  "persistentLastOperator": "5f08e255c9a881002afc06ec",
  "utmSource": "facebook",
  "utmMedium": "cpc",
  "utmCampaign": "promo-verano",
  "phaseId": "5f08e255c9a881002afc06ec",
  "amount": 15000,
  "operatorTags": [
    {
      "tagName": "cotizado"
    }
  ]
}