/agents

Lê os agentes da organização: modelo, prompt, canal, eventos de conversão e o link público do chat.

Escopo necessário: agents:read. Limite: 120 requisições por minuto.

Endpoints

Método Rota Devolve
GET /agents Lista paginada
GET /agents/{id} Um agente, por id ou pelo slug público
POST /agents/{id}/chat Conversar com o agente
GET /agents/{id}/knowledge/documents Documentos da base de conhecimento
POST /agents/{id}/knowledge/documents Adiciona um documento
DELETE /agents/{id}/knowledge/documents/{doc_id} Remove um documento

Filtros

Parâmetro Exemplo Descrição
status active Situação do agente
type flow Tipo do agente
q vendas Busca por nome
include_archived true Inclui arquivados (fora por padrão)

Exemplo

curl "https://api.wevi.chat/functions/v1/agents?status=active" \
  -H "Authorization: Bearer wevi_SUA_CHAVE"

Objeto do agente

{
  "id": "dddd0000-0000-4000-8000-000000000002",
  "name": "Agente de vendas",
  "description": "Qualifica lead e agenda avaliação",
  "status": "active",
  "type": "ai",
  "public_slug": "vendas-clinica",
  "public_url": "https://app.wevi.chat/chat/vendas-clinica",
  "model": "claude-sonnet-4-6",
  "temperature": 0.7,
  "max_tokens": 4096,
  "system_prompt": "Você é...",
  "greeting_message": "Oi! Como posso ajudar?",
  "conversion_events": [{ "name": "agendou", "description": "Cliente marcou horário" }],
  "auto_tags": [],
  "features": {
    "sentiment": true,
    "handoff": true,
    "business_hours": false,
    "business_hours_mode": null
  },
  "conversation_timeout_hours": 24,
  "rag_top_k": 5,
  "archived_at": null,
  "created_at": "2026-06-12T11:47:26Z",
  "updated_at": "2026-09-01T14:20:00Z"
}

Buscar pelo slug funciona igual a buscar pelo id, o que ajuda quando você tem só o link do chat em mãos:

curl "https://api.wevi.chat/functions/v1/agents/vendas-clinica" \
  -H "Authorization: Bearer wevi_SUA_CHAVE"

Base de conhecimento

Mantém o que o agente sabe em dia a partir da sua fonte de verdade: CMS, Notion, repositório, planilha de preços. Mande o texto, a gente quebra em pedaços e indexa pelo mesmo caminho da tela de agentes.

curl -X POST "https://api.wevi.chat/functions/v1/agents/{id}/knowledge/documents" \
  -H "Authorization: Bearer wevi_SUA_CHAVE" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "tabela-de-precos.md",
    "content": "# Tabela de preços\n\nClareamento: R$ 800\nLimpeza: R$ 150",
    "source_url": "https://intranet.exemplo.com/precos"
  }'
{
  "id": "c027ce7f-...",
  "name": "tabela-de-precos.md",
  "type": "text/markdown",
  "size_bytes": 154,
  "processed": false,
  "note": "Indexação começou. Consulte processed neste mesmo endpoint para saber quando terminou."
}

A indexação roda em segundo plano. Consulte GET /agents/{id}/knowledge/documents e olhe processed para saber quando o conteúdo já está valendo nas respostas.

Limite de 2 MB por documento. Documento grande demais também piora a busca: quebre por assunto, que a recuperação fica mais precisa.

Para trocar o conteúdo de um documento, apague e mande de novo:

curl -X DELETE "https://api.wevi.chat/functions/v1/agents/{id}/knowledge/documents/{doc_id}" \
  -H "Authorization: Bearer wevi_SUA_CHAVE"

Arquivo binário (PDF, DOCX) continua sendo pela tela de agentes.

Próximo

Agente por API