Eventos de datos de tu empresa

Los cuatro niveles con los que Tinkay lee datos de tu negocio: atributos firmados del Messenger, conectores HTTP en vivo, sincronización de clientes y acceso directo por réplica de solo lectura.

Los cuatro niveles con los que Tinkay lee datos de tu negocio: atributos firmados del Messenger, conectores HTTP en vivo, sincronización de clientes y acceso directo por réplica de solo lectura. Son 18 eventos. Todos llegan con la envoltura estándar y su contenido propio en data.

attribute.detected

El Messenger mandó un atributo que Tinkay no conocía y quedó disponible para la IA.

Disponible desde 2026-09-02. Volumen medio. Se puede usar como disparador de automatizaciones.

Campos de data

CampoTipoDescripción
keystringClave del atributo tal como llega en el payload
typestringtext | number | boolean | date | currency | email | url
originstringmessenger | api | sync | connector | manual
contact_idstringContacto donde se vio primero
sensitivebooleantrue si quedó marcado como dato sensible
attribute.detected
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "attribute.detected",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "key": "saldo_ars",    "type": "text",    "origin": "ai",    "contact_id": "ct_juan",    "sensitive": false  }}

attribute.updated

Cambió la configuración de un atributo: etiqueta, tipo, visibilidad para la IA o marca de sensible.

Disponible desde 2026-09-02. Volumen bajo.

Campos de data

CampoTipoDescripción
keystringClave del atributo
changesobjectCampos modificados con valor anterior y nuevo
ai_visiblebooleanSi Tinkay AI puede leerlo
updated_bystringQuién lo cambió
attribute.updated
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "attribute.updated",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "key": "saldo_ars",    "changes": {      "status": "in_progress"    },    "ai_visible": true,    "updated_by": "mem_camila"  }}

attribute.payload_rejected

Llegó un payload de atributos con firma inválida o campos mal formados.

Disponible desde 2026-09-02. Volumen bajo. Se puede usar como disparador de automatizaciones.

Campos de data

CampoTipoDescripción
reasonstringinvalid_signature | malformed_json | unknown_field | type_mismatch
fieldstringCampo que falló o null
hoststringDominio que lo envió
attribute.payload_rejected
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "attribute.payload_rejected",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "reason": "low_confidence",    "field": "saldo_ars",    "host": "tienda.ejemplo.com"  }}

connector.called

Tinkay consultó en vivo un conector HTTP de tu sistema durante una conversación.

Disponible desde 2026-09-02. Volumen alto.

Campos de data

CampoTipoDescripción
connector_idstringID del objeto
conversation_idstringConversación que lo pidió
triggerstringai | agent | automation | test
statusstringok | error | timeout
response_statusnumberCódigo HTTP
duration_msnumberTiempo de respuesta
connector.called
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "connector.called",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "connector_id": "conn_saldo",    "conversation_id": "cv_1832",    "trigger": "ai",    "status": "open",    "response_status": 200,    "duration_ms": 212  }}

connector.failed

Un conector devolvió error, venció el tiempo de espera o no pudo mapear la respuesta.

Disponible desde 2026-09-02. Volumen bajo. Se puede usar como disparador de automatizaciones.

Campos de data

CampoTipoDescripción
connector_idstringID del objeto
conversation_idstringConversación afectada o null
statusstringerror | timeout
response_statusnumberCódigo HTTP o null
errorstringDetalle del error
attemptsnumberIntentos hechos
connector.failed
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "connector.failed",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "connector_id": "conn_saldo",    "conversation_id": "cv_1832",    "status": "open",    "response_status": 200,    "error": "connect ETIMEDOUT",    "attempts": 5  }}

connector.updated

Se creó, editó o pausó un conector HTTP.

Disponible desde 2026-09-02. Volumen bajo.

Campos de data

CampoTipoDescripción
connector_idstringID del objeto
namestringNombre del conector
actionstringcreated | updated | paused | resumed | deleted
updated_bystringQuién lo hizo
connector.updated
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "connector.updated",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "connector_id": "conn_saldo",    "name": "Juan Pérez",    "action": "created",    "updated_by": "mem_camila"  }}

write_action.proposed

Tinkay propuso escribir algo en tu sistema y quedó esperando confirmación.

Disponible desde 2026-09-02. Volumen medio. Se puede usar como disparador de automatizaciones.

Campos de data

CampoTipoDescripción
run_idstringID del objeto
action_idstringID de la acción
conversation_idstringConversación que la originó
confirmationstringcustomer | agent
paramsstringDatos con los que se ejecutaría
idempotency_keystringClave que evita duplicados
previewstringTexto que vio la persona antes de confirmar
write_action.proposed
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "write_action.proposed",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "run_id": "obj_8f1c2a",    "action_id": "act_subscription",    "conversation_id": "cv_1832",    "confirmation": "customer",    "params": "Datos con los que se ejecutaría",    "idempotency_key": "Clave que evita duplicados",    "preview": "Texto que vio la persona antes de confirmar"  }}

write_action.confirmed

Una persona autorizó la escritura: recién ahí sale el pedido a tu sistema.

Disponible desde 2026-09-02. Volumen medio. Se puede usar como disparador de automatizaciones.

Campos de data

CampoTipoDescripción
run_idstringID del objeto
action_idstringID de la acción
approved_bystringID del agente, o 'customer' si la confirmó el cliente en el chat
approval_kindstringcustomer | agent
waited_secondsnumberCuánto estuvo esperando
write_action.confirmed
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "write_action.confirmed",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "run_id": "obj_8f1c2a",    "action_id": "act_subscription",    "approved_by": "mem_camila",    "approval_kind": "customer",    "waited_seconds": 120  }}

write_action.rejected

Alguien rechazó la escritura y nunca salió ningún pedido.

Disponible desde 2026-09-02. Volumen bajo. Se puede usar como disparador de automatizaciones.

Campos de data

CampoTipoDescripción
run_idstringID del objeto
action_idstringID de la acción
rejected_bystringID del agente, o 'customer'
reasonstringMotivo escrito por quien la rechazó
conversation_idstringConversación afectada
write_action.rejected
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "write_action.rejected",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "run_id": "obj_8f1c2a",    "action_id": "act_subscription",    "rejected_by": "mem_camila",    "reason": "low_confidence",    "conversation_id": "cv_1832"  }}

write_action.executed

Se escribió en tu sistema: se reservó un turno, se cambió un pedido, se emitió una nota de crédito.

Disponible desde 2026-09-02. Volumen medio. Se puede usar como disparador de automatizaciones.

Campos de data

CampoTipoDescripción
run_idstringID del objeto
action_idstringID de la acción
conversation_idstringConversación que la originó
triggerstringai | agent | automation | test
response_statusnumberCódigo HTTP
duration_msnumberTiempo de respuesta
idempotency_keystringClave enviada
dedupedstringtrue si tu sistema reconoció la clave y no volvió a escribir
resultstringCampos mapeados de la respuesta
write_action.executed
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "write_action.executed",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "run_id": "obj_8f1c2a",    "action_id": "act_subscription",    "conversation_id": "cv_1832",    "trigger": "ai",    "response_status": 200,    "duration_ms": 212,    "idempotency_key": "Clave enviada",    "deduped": "true si tu sistema reconoció la clave y no volvió a escribir",    "result": "Campos mapeados de la respuesta"  }}

write_action.failed

Una escritura devolvió error o venció el tiempo de espera, y la conversación se derivó a una persona.

Disponible desde 2026-09-02. Volumen bajo. Se puede usar como disparador de automatizaciones.

Campos de data

CampoTipoDescripción
run_idstringID del objeto
action_idstringID de la acción
statusstringerror | timeout
response_statusnumberCódigo HTTP o null
errorstringDetalle del error
retriablestringtrue si se puede reintentar con la misma clave
conversation_idstringConversación afectada
write_action.failed
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "write_action.failed",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "run_id": "obj_8f1c2a",    "action_id": "act_subscription",    "status": "open",    "response_status": 200,    "error": "connect ETIMEDOUT",    "retriable": "true si se puede reintentar con la misma clave",    "conversation_id": "cv_1832"  }}

write_action.blocked

Una protección frenó la escritura antes de que saliera: límites, acción apagada o datos faltantes.

Disponible desde 2026-09-02. Volumen bajo. Se puede usar como disparador de automatizaciones.

Campos de data

CampoTipoDescripción
run_idstringID del objeto
action_idstringID de la acción
reasonstringrate_limit_conversation | rate_limit_day | workspace_cap | action_disabled | writes_disabled | missing_params
detailstringExplicación en texto
conversation_idstringConversación afectada
write_action.blocked
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "write_action.blocked",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "run_id": "obj_8f1c2a",    "action_id": "act_subscription",    "reason": "low_confidence",    "detail": "Explicación en texto",    "conversation_id": "cv_1832"  }}

write_action.reverted

Se deshizo una escritura ejecutando la acción inversa declarada.

Disponible desde 2026-09-02. Volumen bajo. Se puede usar como disparador de automatizaciones.

Campos de data

CampoTipoDescripción
run_idstringEjecución que se revirtió
undo_run_idstringEjecución que la deshizo
action_idstringAcción original
undo_action_idstringAcción inversa
reverted_bystringQuién la deshizo
write_action.reverted
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "write_action.reverted",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "run_id": "obj_8f1c2a",    "undo_run_id": "obj_8f1c2a",    "action_id": "act_subscription",    "undo_action_id": "obj_8f1c2a",    "reverted_by": "mem_camila"  }}

write_action.updated

Se creó, editó o pausó una acción de escritura, o cambió su nivel de confirmación.

Disponible desde 2026-09-02. Volumen bajo.

Campos de data

CampoTipoDescripción
action_idstringID del objeto
namestringNombre de la acción
actionstringcreated | updated | paused | resumed | deleted
confirmationstringauto | customer | agent
updated_bystringQuién lo hizo
write_action.updated
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "write_action.updated",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "action_id": "act_subscription",    "name": "Juan Pérez",    "action": "created",    "confirmation": "auto",    "updated_by": "mem_camila"  }}

sync.completed

Terminó una sincronización de tu base de clientes hacia Contactos.

Disponible desde 2026-09-02. Volumen medio. Se puede usar como disparador de automatizaciones.

Campos de data

CampoTipoDescripción
job_idstringID del objeto
sourcestringOrigen sincronizado
insertednumberContactos creados
updatednumberContactos actualizados
skippednumberFilas salteadas
duration_msnumberDuración total
sync.completed
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "sync.completed",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "job_id": "job_clientes",    "source": "memory",    "inserted": 412,    "updated": 1268,    "skipped": 9,    "duration_ms": 212  }}

sync.failed

Falló una sincronización de clientes y no se aplicó ningún cambio.

Disponible desde 2026-09-02. Volumen bajo. Se puede usar como disparador de automatizaciones.

Campos de data

CampoTipoDescripción
job_idstringID del objeto
sourcestringOrigen
errorstringDetalle del error
rows_readnumberFilas leídas antes de cortar
retry_atstringFecha ISO 8601
sync.failed
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "sync.failed",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "job_id": "job_clientes",    "source": "memory",    "error": "connect ETIMEDOUT",    "rows_read": 1689,    "retry_at": "2026-09-02T14:03:11.000Z"  }}

database.connected

Se habilitó el acceso directo por réplica de solo lectura o agente de túnel.

Disponible desde 2026-09-02. Volumen bajo. Requiere plan Experto.

Campos de data

CampoTipoDescripción
tunnel_idstringID del objeto
modestringread_replica | tunnel_agent
enginestringpostgres | mysql | sqlserver | mongodb
tablesarrayTablas habilitadas
connected_bystringQuién lo habilitó
database.connected
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "database.connected",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "tunnel_id": "tun_replica",    "mode": "read_replica",    "engine": "postgres",    "tables": [      "clientes",      "facturas",      "pedidos"    ],    "connected_by": "mem_camila"  }}

database.query_blocked

Se bloqueó una consulta contra tu base por salir del alcance permitido.

Disponible desde 2026-09-02. Volumen bajo. Se puede usar como disparador de automatizaciones. Requiere plan Experto.

Campos de data

CampoTipoDescripción
tunnel_idstringID del objeto
reasonstringwrite_attempt | table_not_allowed | row_limit | timeout
tablestringTabla involucrada
conversation_idstringConversación que la originó o null
database.query_blocked
{  "id": "evt_8f1c2a9d4b",  "object": "event",  "name": "database.query_blocked",  "api_version": "2026-09-01",  "workspace_id": "ws_tinkay",  "occurred_at": "2026-09-02T14:03:11.000Z",  "data": {    "tunnel_id": "tun_replica",    "reason": "low_confidence",    "table": "clientes",    "conversation_id": "cv_1832"  }}