Pular para o conteúdo

Criar agente

POST/v1/instances/{id}/agentsdesde A1token da instância ou admin

Quando usar

Campos ausentes vêm dos padrões: tools: [ler, responder_no_chat], mode: aprovacao, gatilho "mensagem nova" só em conversas 1:1, limits: {max_steps: 8, max_recipients: 3, daily_runs: 200} e enabled: false. Até 20 agentes por instância. Para responder a mensagens novas, o hook de agente da instância precisa estar com target: "agents" e ligado.

Autenticação

Aceita o token da instância (só a própria instância) ou o token admin. Um token de outra instância recebe 403 forbidden (ou 404 not_found em webhooks de outra instância).

Parâmetros

Caminho

NomeTipoDescrição
idobrigatóriostringId da instância (inst_...).

Corpo (JSON)

NomeTipoDescrição
namestring (até 80)
enabledboolean
mode"aprovacao" | "autonomo" | "sugerir"aprovacao: escritas viram rascunhos; autonomo: executa; sugerir: só notas.
instructionsstringO que o agente faz (confiável: escrito por você). (até 20000)
tools"ler" | "ler_outros_chats" | "responder_no_chat" | "enviar_outros_chats" | "etiquetas" | "grupos" | "midia"[]
triggerAgentTrigger
trigger.type"message" | "manual"message: cada mensagem nova (pelo hook de agente com target agents); manual: só Executar agora. (padrão "message")
trigger.chatsstring[]Só nestes chats (JIDs ou números). Vazio = todos.
trigger.labelsstring[]Só em chats com uma destas etiquetas (id ou nome).
trigger.keywordsstring[]Só quando a mensagem contém uma destas palavras (sem diferenciar maiúsculas).
trigger.groupsbooleanTambém em grupos (desligado = só conversas 1:1). (padrão false)
limitsAgentLimits
limits.max_stepsintegerChamadas ao modelo por execução. (padrão 8, 1–20)
limits.max_recipientsintegerDestinatários distintos por execução. (padrão 3, 1–10)
limits.max_sendsintegerEnvios por execução (também na conversa do gatilho; rascunhos contam). (padrão 5, 1–50)
limits.max_writesintegerEscritas por execução (envios (padrão 10, 1–100)
limits.max_group_changesintegerMudanças em grupos por execução. (padrão 3, 1–20)
limits.daily_runsintegerExecuções por dia UTC (0 = sem limite do agente; os limites do Atendente IA continuam valendo). (padrão 200)
runtime"provider" | "codex_cli"Quem pensa. provider: o provedor de IA da instância (chave de API). codex_cli (opt-in): o Codex CLI logado neste computador com a sua conta ChatGPT; só o token admin cria, edita, executa ou simula um agente codex_cli. Veja Guias > IA por assinatura. (padrão "provider")
accept_runtime_noticebooleanObrigatório (true) ao mudar um agente para codex_cli: confirma o aviso sobre os termos da OpenAI e os limites do seu plano.

Exemplo

Janela do terminal
curl -s -X POST "$LITEZAP_URL/v1/instances/$ID/agents" \
-H "Authorization: Bearer $LITEZAP_TOKEN" \
-d '{"name":"Atendente da loja","enabled":true,"mode":"aprovacao","instructions":"Responda dúvidas sobre horário e entrega. Horário: seg a sáb, 9h às 18h. Para descontos, diga que uma pessoa vai responder.","tools":["ler","responder_no_chat"],"trigger":{"type":"message","keywords":[],"groups":false}}'

Nos exemplos, LITEZAP_URL é a URL base (ex.: http://localhost:8787) e o token vem deLITEZAP_TOKEN (instância) ou LITEZAP_ADMIN_TOKEN.

Resposta

201 Agente criado.

Campos de Agent
idstring
namestring
enabledboolean
mode"aprovacao" | "autonomo" | "sugerir"
instructionsstring
toolsstring[]
triggerAgentTrigger
trigger.type"message" | "manual"message: cada mensagem nova (pelo hook de agente com target agents); manual: só Executar agora.
trigger.chatsstring[]Só nestes chats (JIDs ou números). Vazio = todos.
trigger.labelsstring[]Só em chats com uma destas etiquetas (id ou nome).
trigger.keywordsstring[]Só quando a mensagem contém uma destas palavras (sem diferenciar maiúsculas).
trigger.groupsbooleanTambém em grupos (desligado = só conversas 1:1).
limitsAgentLimits
limits.max_stepsintegerChamadas ao modelo por execução.
limits.max_recipientsintegerDestinatários distintos por execução.
limits.max_sendsintegerEnvios por execução (também na conversa do gatilho; rascunhos contam).
limits.max_writesintegerEscritas por execução (envios
limits.max_group_changesintegerMudanças em grupos por execução.
limits.daily_runsintegerExecuções por dia UTC (0 = sem limite do agente; os limites do Atendente IA continuam valendo).
runtime"provider" | "codex_cli"
todayobject
today.runsinteger
today.cost_usdnumber
created_atstring
updated_atstring

Erros

CódigoHTTPRetentávelO que fazer
validation_failed400nãoCorrija o corpo ou os parâmetros; a message diz o campo.
unauthorized401nãoEnvie Authorization: Bearer <token> válido.
forbidden403nãoUse o token certo (admin, ou o da própria instância).
instance_not_found404nãoConfira o id da instância.

Todo erro usa o envelope {"error":{"code","message","retryable"}}. Tabela completa em Erros.

Outras operações de Agentes: Listar agentes · Ler agente · Alterar agente · Excluir agente · Executar agente agora · Execuções do agente · Ler execução · Quem pode rodar agentes · Listar rascunhos · Aprovar rascunho · Rejeitar rascunho · Simular agente