Ações
As etapas que produzem efeito fora da conversa, como configurar cada uma, e as garantias que a plataforma dá quando um procedimento alcança um sistema externo.
Coletar e falar mantêm a conversa, enquanto a família Ações faz o resto acontecer: consulta o sistema que tem a resposta, calcula o que precisa ser calculado, dispara o e-mail. É onde o procedimento deixa de ser um roteiro e passa a mexer no mundo.
Nenhuma ação suspende a execução. Ela roda, devolve valores, e o procedimento segue no mesmo turno.
| Etapa | O que faz |
|---|---|
| Sublime | as ações que a plataforma executa por conta própria, requisição HTTP e fórmula |
| Integração | uma operação em um provedor externo conectado à sua equipe |
| Paralelo | várias ações ao mesmo tempo, em vez de uma depois da outra |
Requisição HTTP
É a ação que conecta o agente a qualquer sistema que fale HTTP, seja o seu ERP, a API da transportadora, o CRM ou um serviço interno. Você a configura como configuraria em qualquer cliente:
| O que | Aceita |
|---|---|
| Método | GET · POST · PUT · PATCH · DELETE |
| Endereço | a URL, com variáveis do fluxo onde a rota é dinâmica |
| Cabeçalhos e parâmetros | pares de chave e valor, também com variáveis |
| Corpo | JSON, com variáveis nos campos |
| Autenticação | nenhuma · Bearer · chave de API · básica |
A autenticação não guarda a credencial dentro da etapa: ela aponta para uma variável do workspace, do tipo segredo, e o valor vive lá. É o que permite trocar uma chave em um lugar só, e o que impede que ela apareça dentro da configuração de um procedimento.
Mapear a resposta
A parte que muda o trabalho é o mapeamento. Ao configurar a etapa você executa a requisição de verdade, ali mesmo, e a resposta volta como uma árvore navegável, onde você marca os campos que interessam para que cada um vire uma variável tipada disponível às etapas seguintes.
resposta campos criados
├── status: "in_transit" ✓ ──► status_entrega (string)
├── estimated_delivery: "..." ✓ ──► previsao (date)
└── carrier
├── name: "..." ✓ ──► transportadora (string)
└── tracking_url: "..." —
Você não escreve o caminho de um campo à mão, nem descobre em produção que a API devolve outra forma, porque o mapeamento nasce de uma resposta real.
O que a plataforma garante na chamada
Três coisas acontecem em toda requisição sem que você configure nenhuma delas.
Insistir não duplica o efeito. Toda chamada que produz efeito, seja POST, PUT, PATCH ou DELETE, viaja com uma chave de idempotência estável, derivada daquela execução e daquela etapa, e uma retentativa carrega a mesma chave, de modo que um sistema que a respeite reconhece a segunda tentativa como a mesma operação. É o que torna a retentativa automática segura em uma etapa que cobra, emite ou registra.
A sua rede interna fica fora de alcance. O endereço é resolvido antes da conexão e recusado se apontar para rede interna, loopback ou endereço de metadados; a conexão é então fixada no endereço já julgado, e cada redirecionamento é julgado de novo, até cinco saltos. Um procedimento não alcança o que está atrás do seu perímetro, nem por engano nem por um redirecionamento hostil.
A chamada tem teto, de trinta segundos de espera e cinco megabytes de resposta, o que faz uma API lenta ou uma resposta gigante degradarem para uma falha tratada em vez de um turno pendurado.
Fórmula
Calcula valores a partir das variáveis do fluxo, cobrindo frete por faixa de peso, desconto por volume, prazo somando dias úteis, rateio, imposto e qualquer outra conta que hoje mora numa planilha. Além da expressão, ela oferece dois recursos:
- Tabelas de consulta traduzem um rótulo em um número dentro da própria etapa, fazendo uma faixa de CEP virar um valor ou uma categoria virar um multiplicador. A tabela fica na configuração da fórmula e não no Conhecimento, porque é parâmetro de cálculo e não fato que o agente afirma.
- Saídas declaradas dizem quais valores a etapa produz, cada um com nome e tipo, já que uma fórmula pode devolver mais de um.
Cálculo é a classe de erro mais cara que um modelo comete, porque o resultado errado parece certo. A Fórmula tira a conta do modelo e a devolve ao determinismo, entregando sempre o mesmo número para o mesmo insumo.
Integração
Executa uma operação em um provedor que a sua equipe conectou, e hoje a plataforma oferece o Resend, para e-mail transacional, seja uma mensagem direta, um lote ou um template do provedor. A conexão é feita uma vez, em Configurações, e a etapa apenas escolhe a operação e preenche os campos, com variáveis do fluxo onde eles são dinâmicos.
Paralelo
Executa até dez ações ao mesmo tempo em vez de encadear uma após a outra, de modo que três consultas independentes de dois segundos custam dois segundos e não seis, o que importa porque, em uma conversa, seis segundos de silêncio são percebidos. Duas decisões governam a etapa:
- O que esperar, entre todas as ações ou a primeira que der certo.
- Se continuar com falha, ou seja, se uma ação que falhou interrompe o conjunto ou apenas não contribui com seus valores.
Use quando as ações são de fato independentes, porque se a segunda precisa do que a primeira devolveu elas são sequenciais e o paralelo não se aplica.
Em preview, nada é disparado
Enquanto você conversa com o agente em preview, ou o mede contra cenários, as ações não alcançam o mundo: a etapa é percorrida e o caminho avança exatamente como avançaria em produção, mas a chamada não sai e nenhum valor é coletado dela.
É isso que torna a calibragem viável, já que você pode exercitar um procedimento de cobrança cinquenta vezes sem cobrar ninguém e sem sujar o ERP com cinquenta cadastros de teste. É também o que você precisa ter em mente ao ler um preview, porque uma etapa seguinte que dependa do que a API devolveria vai se comportar como se a API não tivesse devolvido nada. O que se prova em preview é o caminho, não o dado.