Documentation Index
Fetch the complete documentation index at: https://docs.lfautomatiza.com/llms.txt
Use this file to discover all available pages before exploring further.
Regras de automação seguem o padrão Evento → Condições → Ações. Toda vez que
um evento de tipo configurado acontece, a plataforma avalia as condições da regra —
se passarem, executa as ações.
Listar regras
GET /api/v1/accounts/{account_id}/automation_rules
curl https://chat.lfautomatiza.com/api/v1/accounts/1/automation_rules \
-H "api_access_token: $TOKEN"
Criar regra
POST /api/v1/accounts/{account_id}/automation_rules
Payload completo
{
"name": "Mensagem com boleto vai pro Financeiro",
"description": "Roteia automaticamente menções a boleto",
"event_name": "message_created",
"conditions": [
{
"attribute_key": "content",
"filter_operator": "contains",
"values": ["boleto"],
"query_operator": "and"
},
{
"attribute_key": "message_type",
"filter_operator": "equal_to",
"values": ["incoming"]
}
],
"actions": [
{
"action_name": "assign_team",
"action_params": [3]
},
{
"action_name": "add_label",
"action_params": ["financeiro", "aguardando-pagamento"]
},
{
"action_name": "change_priority",
"action_params": ["high"]
}
],
"active": true
}
Eventos disponíveis (event_name)
| Evento | Quando dispara |
|---|
conversation_created | Nova conversa aberta |
conversation_updated | Qualquer campo da conversa muda |
message_created | Mensagem nova (incoming ou outgoing) |
conversation_opened | Status muda pra open (reabertura também) |
Atributos consultáveis em conditions
content, status, inbox_id, team_id, assignee_id, labels, priority,
message_type, country_code, browser_language, referer, campaign_id,
qualquer custom_attributes.{chave}.
Operadores em conditions
| Operador | Aplica-se a |
|---|
equal_to, not_equal_to | Tudo |
contains, does_not_contain | Strings, arrays |
greater_than, less_than | Números |
is_present, is_not_present | Tudo |
starts_with, ends_with | Strings |
Ações disponíveis (action_name)
| Ação | action_params |
|---|
assign_agent | [agent_id] |
assign_team | [team_id] |
assign_best_agent | [] (round-robin entre disponíveis) |
remove_assigned_team | [] |
add_label | [label1, label2, ...] |
remove_label | [label1, label2, ...] |
send_message | ["Texto da resposta"] |
send_email_to_team | [{ "team_ids": [3], "subject": "..." }] |
change_status | ["resolved"] ou ["open"], ["pending"], ["snoozed"] |
change_priority | ["urgent"] |
send_webhook_event | ["https://meu-webhook.com/endpoint"] |
mute_conversation | [] |
snooze_conversation | ["1_week"] ou outra duração |
send_attachment | [attachment_id] |
add_private_note | ["Texto da nota interna"] |
Detalhe / atualizar / excluir
GET /api/v1/accounts/{account_id}/automation_rules/{id}
PATCH /api/v1/accounts/{account_id}/automation_rules/{id}
DELETE /api/v1/accounts/{account_id}/automation_rules/{id}
Clonar regra
POST /api/v1/accounts/{account_id}/automation_rules/{id}/clone
Útil pra testar variações sem mexer na original.
Ativar / desativar via toggle
POST /api/v1/accounts/{account_id}/automation_rules/{id}/active
Alterna o campo active. Útil pra pausar regra temporariamente sem perder configuração.
Ordem de execução
Quando múltiplas regras casam com o mesmo evento, elas executam na ordem em que
foram criadas (mais antiga primeiro). Cada ação afeta o estado pras próximas
regras avaliarem.
Use o campo description pra deixar claro o propósito de cada regra. Em contas
com 20+ regras, o nome sozinho não conta a história toda.
Códigos de resposta
| Código | Quando acontece |
|---|
200 OK | Listagem / leitura / atualização |
201 Created | Regra criada |
204 No Content | Excluída |
403 Forbidden | Apenas administrador |
422 Unprocessable Entity | Condição ou ação inválida |