Upnify Documentación API
CRM · /analitica/actividades

Analítica

Actividades observadas

GET/analitica/actividades

Consulta seguimientos, correos propios y mensajes COM autorizados. Requiere periodo de hasta 366 días o lote de contactos. Separa notas, intentos y contacto efectivo según campos de la fuente; conserva desconocidos y evita duplicar correos enlazados a seguimientos.

Parámetros

NombreTipoValidaciónDescripción
paramsvarchar
paginavarcharRequeridoEntero entre 1 y 2147483647. Página de resultados; no admite descarga ilimitada.
cantidadRegistrosvarcharRequeridoEntero de 1 a 200. Cantidad máxima de filas de la página.
tkContactosvarcharHasta 100 tokens separados por coma, máximo 128 caracteres cada uno y 8192 en total. Los duplicados no multiplican resultados.
fechaIniciovarcharInicio incluido, ISO 8601 con offset; requiere fechaFin. Se requiere un intervalo de hasta 366 días o tkContactos.
fechaFinvarcharFin excluido, ISO 8601 con offset, posterior al inicio y hasta 366 días después. Requiere fechaInicio.
fechaBasevarcharRequeridoValor habilitado: evento. Seguimiento usa su fecha registrada; correo entrante usa su fecha de mensaje; saliente usa envío; COM usa la fecha del mensaje.
ordenvarcharRequeridoascendente o descendente por creación, con desempate estable por identidad.
fuentevarcharRequeridotodas, seguimiento, correoEntrante, correoSaliente o com. Se aplican permisos del contacto y de cada fuente.
permitirParcialesvarcharRequeridotrue o false. Con fuente=todas permite omitir COM si no está habilitado en la cuenta. No omite falta de permiso ni errores de ejecución.
canalvarcharcorreo, telefono, visita, WhatsApp, interno o desconocido. En COM se conserva el nombre y código del canal fuente; la clasificación no comprobada queda desconocida.
direccionvarcharentrante, saliente, interna o desconocida, sustentada por campos de la fuente.
tipovarcharnota, intento, contactoEfectivo, automatismo, mensaje o desconocido. No se clasifica a partir del texto.
tipoActorvarcharhumano, automatico, sistema o desconocido según la evidencia registrada.

Respuesta

NombreTipoDescripción
idActividadStringIdentidad estable de la actividad dentro de la cuenta.
fuenteStringseguimiento, correoEntrante, correoSaliente o com.
idRegistroFuenteStringIdentidad opaca del registro fuente.
tkProspectoStringContacto autorizado al que corresponde la actividad.
tkOportunidadStringOportunidad relacionada y perteneciente al contacto, o null.
tkConversacionStringConversación COM autorizada, o null.
idComunicacionStringIdentidad compartida de una comunicación enlazada; permite relacionarla con su seguimiento. Puede ser null.
idMensajeProveedorStringIdentificador del mensaje guardado por el proveedor, o null.
proveedorIntegerCódigo de proveedor del buzón de correo cuando está registrado; de otro modo null.
canalStringcorreo, telefono, visita, WhatsApp, interno o desconocido. En COM se conserva el nombre y código del canal fuente; la clasificación no comprobada queda desconocida.
canalFuenteStringNombre original del canal COM; puede ser null. No determina por texto la clasificación.
tipoCanalFuenteIntegerCódigo original del tipo de canal COM, o null.
estadosProveedorObjectEstados persistidos de COM: envioOriginal, entregaOriginal, lecturaOriginal y falloOriginal. Sus tiempos conservan el formato fuente; no se presentan como instantes normalizados. Puede ser null.
direccionStringentrante, saliente, interna o desconocida, sustentada por campos de la fuente.
tipoStringnota, intento, contactoEfectivo, automatismo, mensaje o desconocido. No se clasifica a partir del texto.
tipoActorStringhumano, automatico, sistema o desconocido según la evidencia registrada.
tkActorStringUsuario que la evidencia identifica como actor humano; null si no se puede identificar.
tipoFuenteIntegerTipo numérico original del seguimiento, o null.
estadoFuenteStringEstado original del proveedor o buzón, o null. Los códigos externos se conservan.
resultadoStringResultado comprobado: efectivo, sinContactoEfectivo, recibido, enviado, entregado, rebotado, leido, fallido o desconocido.
extractoStringTexto o asunto permitido, hasta 512 caracteres; null para contenido no autorizado o ausente.
contenidoTruncadoBooleanIndica que el texto fuente supera el máximo de 512 caracteres.
ventasRelacionadasArray<Object>Ventas vinculadas a la oportunidad del mismo contacto; cada objeto contiene tkVenta. No multiplica la actividad.
fechaEventoStringInstante propio de la actividad con zona explícita; null si no se puede determinar.
fechaRegistroStringFecha independiente de registro o descarga cuando existe; de otro modo null.
fechaActualizacionStringFecha de modificación de esta fuente cuando existe; de otro modo null.
fechaOriginalStringFecha original del evento, incluso cuando no se puede convertir; puede ser null.
baseTemporalStringseguimiento, fechaCorreo, envio, mensaje o desconocido; identifica la procedencia temporal.
coberturaObjectEstado, fuentes consultadas, capacidadesFaltantes e integridadHistorica.
advertenciasArray<Object>Lista de objetos con codigo, mensaje y fuente que explican límites de cobertura.
consistenciaStringSiempre sinInstantanea; los cambios concurrentes pueden alterar la navegación.
fechaGeneracionStringInstante de generación de la respuesta, con zona explícita.
Row-CountIntegerTotal del conjunto autorizado y filtrado, antes de paginar.

Solicitud

Actividad reciente de un contacto

curl --request GET --url 'https://api.upnify.com/v4/analitica/actividades?tkContactos=P-EJEMPLO&fuente=todas&cantidadRegistros=3&fechaInicio=2026-09-10T16%3A00%3A00Z&fechaFin=2026-09-11T16%3A00%3A00Z' --header 'token: 00000000-0000-4000-8000-000000000001'

Respuesta

HTTP 200; Row-Count: 8

JSON
[
  [
    {
      "idActividad": "com:1",
      "fuente": "com",
      "idRegistroFuente": "com:1",
      "tkProspecto": "P-EJEMPLO",
      "tkOportunidad": null,
      "tkConversacion": "CONV-EJEMPLO",
      "idComunicacion": "com:1",
      "idMensajeProveedor": "ID-PROVEEDOR-SINTETICO",
      "proveedor": null,
      "canal": "desconocido",
      "canalFuente": "Canal sintetico",
      "tipoCanalFuente": 1,
      "estadosProveedor": {
        "envioOriginal": 1000,
        "entregaOriginal": 1001,
        "lecturaOriginal": null,
        "falloOriginal": null
      },
      "direccion": "saliente",
      "tipo": "automatismo",
      "tipoActor": "automatico",
      "tkActor": null,
      "tipoFuente": null,
      "estadoFuente": "delivered",
      "resultado": "entregado",
      "extracto": "Mensaje automatico sintetico",
      "contenidoTruncado": false,
      "ventasRelacionadas": [],
      "fechaEvento": "2026-09-10T17:00:00Z",
      "fechaRegistro": null,
      "fechaActualizacion": null,
      "fechaOriginal": "2026-09-10 11:00:00",
      "baseTemporal": "mensaje"
    },
    {
      "idActividad": "com:2",
      "fuente": "com",
      "idRegistroFuente": "com:2",
      "tkProspecto": "P-EJEMPLO",
      "tkOportunidad": null,
      "tkConversacion": "CONV-EJEMPLO",
      "idComunicacion": "com:2",
      "idMensajeProveedor": null,
      "proveedor": null,
      "canal": "desconocido",
      "canalFuente": "Canal sintetico",
      "tipoCanalFuente": 1,
      "estadosProveedor": {
        "envioOriginal": null,
        "entregaOriginal": null,
        "lecturaOriginal": null,
        "falloOriginal": null
      },
      "direccion": "entrante",
      "tipo": "mensaje",
      "tipoActor": "humano",
      "tkActor": null,
      "tipoFuente": null,
      "estadoFuente": null,
      "resultado": "desconocido",
      "extracto": "Mensaje entrante sintetico",
      "contenidoTruncado": false,
      "ventasRelacionadas": [],
      "fechaEvento": "2026-09-10T16:00:00Z",
      "fechaRegistro": null,
      "fechaActualizacion": null,
      "fechaOriginal": "2026-09-10 10:00:00",
      "baseTemporal": "mensaje"
    },
    {
      "idActividad": "correoEntrante:3",
      "fuente": "correoEntrante",
      "idRegistroFuente": "correoEntrante:3",
      "tkProspecto": "P-EJEMPLO",
      "tkOportunidad": null,
      "tkConversacion": null,
      "idComunicacion": "correoEntrante:3",
      "idMensajeProveedor": null,
      "proveedor": null,
      "canal": "correo",
      "canalFuente": null,
      "tipoCanalFuente": null,
      "estadosProveedor": null,
      "direccion": "entrante",
      "tipo": "mensaje",
      "tipoActor": "desconocido",
      "tkActor": null,
      "tipoFuente": null,
      "estadoFuente": null,
      "resultado": "recibido",
      "extracto": "Correo entrante sintetico",
      "contenidoTruncado": false,
      "ventasRelacionadas": [],
      "fechaEvento": "2026-09-10T16:00:00Z",
      "fechaRegistro": "2026-09-22T02:30:11.3933333Z",
      "fechaActualizacion": null,
      "fechaOriginal": "2026-09-10T10:00:00",
      "baseTemporal": "fechaCorreo"
    }
  ],
  [
    {
      "cobertura": {
        "estado": "parcial",
        "fuentes": [
          "seguimiento",
          "correoEntrante",
          "correoSaliente",
          "com"
        ],
        "capacidadesFaltantes": [
          "mensajesSinIdentidadPersistida",
          "correoDeOtrosUsuarios",
          "historialCompleto"
        ],
        "integridadHistorica": "desconocida"
      },
      "advertencias": [
        {
          "codigo": "ALCANCE_CORREOS",
          "mensaje": "Inbox y outbox conservan el alcance del buzon de la sesion; un seguimiento no concede acceso al contenido de mensajes privados.",
          "fuente": "correo"
        },
        {
          "codigo": "COBERTURA_COM",
          "mensaje": "Se proyectan mensajes con identificador persistido; El tipo y nombre fuente del canal se conservan sin clasificar por texto; los estados del proveedor solo se proyectan cuando estan guardados.",
          "fuente": "com"
        }
      ],
      "consistencia": "sinInstantanea",
      "fechaGeneracion": "2026-09-21T18:00:00Z"
    }
  ]
]