Eventos de sistema
Um evento de sistema é uma mudança de estado num sistema de registro: pedido criado, fatura contestada, ticket reaberto, pagamento recusado. Ele entra comokind: "system_event", com speaker igual a system e um canonical_type, como invoice.credited, além dos campos estruturados em fields.
Há três portas de entrada:
message num canal próprio e passa pela extração normal.
Eventos de sistema não entram na cobrança. A unidade continua sendo a conversa ou tarefa.
Objetos de negócio
Pedido, ticket, fatura, contrato, entrega e assinatura são objetos. Cada um é identificado pelo triotype, namespace e id, único no espaço, como invoice:erp:0823. Os SDKs aceitam essa forma curta.
O objeto se prende ao cliente pelo id dele naquele sistema, o handle system_id, e guarda a linha do tempo de eventos e ações e um estado derivado, sempre com as_of, a fonte e a referência ao registro de origem. O valor oficial continua no seu sistema. A memória guarda o bastante para o agente lembrar e agir, e aponta para a origem. Uma separação de perfis leva os pedidos e as faturas para o dono certo sozinha, porque o objeto está preso ao handle de origem.
Leia um objeto por GET /v1/objects/{object_type}/{namespace}/{external_id} e os eventos e ações dele por /timeline, as duas com o escopo context e comprovante. Os ids podem ter barra e dois-pontos. Nos SDKs, object_state() e object_timeline() em Python, objectState() e objectTimeline() em TypeScript:
GET /v1/profiles/{profile_id}/objects.
Ações de agente
Uma ação é o registro do que um agente, interno ou de atendimento, ou um atendente humano fez num sistema: a operação canônica (credit, reschedule), o objeto, o resultado, a finalidade e, opcionalmente, closes, a pendência que a ação cumpre.
closes aponta a pendência pelo item_id ou pelo par objeto e operação, nunca pelos dois. Registrar ação exige o escopo act da chave, para aquela operação e aquele tipo de objeto; track sozinho não basta. A ação é imutável: uma correção é uma ação nova com corrects_action_id.
Declarada, confirmada, divergente
Ação declarada só fecha pendência quando a operação dela está nas
trusted_action_ops da fonte; ação confirmada sempre fecha. Ações de uma sessão com trecho marcado como injeção de prompt ficam em quarentena: não fecham nada e não aparecem como feitas.
Fechamento retroativo
A ação pode chegar antes da pendência. Às 14h05 Marina contesta a fatura no app, e a pendência só nasce quando a sessão do app fecha e é extraída, às 14h35. O agente de cobrança age às 14h06. Ao criar a pendência, a Niadra procura ações já aplicadas sobre o mesmo objeto e operação dentro da janela, e a pendência nasceresolved, fechada pela ação das 14h06.
Contexto por tarefa
O agente interno lê o contexto centrado no objeto, com uma view de tarefa e o nívelno_customer, porque não há cliente presente:
O caminho das 14h06
- 14h05, app: a contestação entra e, em menos de 1 segundo, está legível e ligada a
invoice:erp:0823. - 14h06, agente de cobrança: lê o contexto da fatura, recebe a contestação pelo
live, lança o crédito no ERP e registra a ação. - 14h06, ERP: emite
invoice.credited; a ação passa aconfirmed. - Em segundos: o contexto de voz ganha “feito por outro agente: crédito de 40, confirmado pelo sistema”.
- 14h07, ligação: o agente de voz diz que o crédito já foi lançado.
A Niadra nunca escreve num sistema de registro. Quem age é o agente, com as credenciais dele. Para devolver o desfecho ao CRM, consuma os webhooks
action.recorded e open_item.closed.Próximos passos
Agentes internos
o guia completo do agente de cobrança.
Webhooks dos seus sistemas
mapeamento e autenticação.
Ler um objeto
estado derivado e pendências abertas.

