API ReferenceAgents

Agents

Crie e gerencie agentes de voz com IA — o recurso central da plataforma Vendor.

Listar Agentes

GET
/api/agents

Retorna todos os agentes do usuário autenticado

Request
curl -X GET https://api.vendoria.com.br/api/agents \
  -H "X-Api-Key: vk_sua_api_key"
Response
[
  {
    "id": "clxyz...",
    "name": "Atendente Virtual",
    "description": "Agente de atendimento ao cliente",
    "systemPrompt": "Você é um assistente...",
    "voiceId": "alloy",
    "isActive": true,
    "direction": "inbound",
    "language": "pt-BR",
    "ttsProvider": "elevenlabs",
    "createdAt": "2026-03-01T00:00:00Z",
    "updatedAt": "2026-03-06T00:00:00Z"
  }
]

Obter Agente

GET
/api/agents/:id

Retorna um agente específico pelo ID

Criar Agente

POST
/api/agents

Cria um novo agente de voz

ParameterTypeRequiredDescription
namestringRequiredNome do agente
systemPromptstringRequiredPrompt do sistema que define o comportamento
descriptionstringOptionalDescrição do agente
voiceIdstringOptionalID da voz (depende do ttsProvider)
ttsProviderstringOptional"elevenlabs", "murf" ou "inworld"
languagestringOptionalIdioma (padrão: "pt-BR")
directionstringOptional"inbound", "outbound" ou "both"
initialSpeechstringOptionalFrase inicial ao atender
groqConfigobjectOptionalConfiguração LLM (model, temperature, etc)
elevenlabsConfigobjectOptionalConfig ElevenLabs (model_id, voice_settings)
Request
curl -X POST https://api.vendoria.com.br/api/agents \
  -H "X-Api-Key: vk_sua_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Suporte Premium",
    "systemPrompt": "Você é um agente de suporte premium...",
    "voiceId": "21m00Tcm4TlvDq8ikWAM",
    "ttsProvider": "elevenlabs",
    "language": "pt-BR",
    "initialSpeech": "Olá! Como posso ajudá-lo?"
  }'

Atualizar Agente

PATCH
/api/agents/:id

Atualiza campos de um agente. Envie apenas os campos a alterar.

Request
curl -X PATCH https://api.vendoria.com.br/api/agents/clxyz... \
  -H "X-Api-Key: vk_sua_api_key" \
  -H "Content-Type: application/json" \
  -d '{ "name": "Novo Nome", "isActive": false }'

Ativar / Desativar

PATCH
/api/agents/toggle/:id

Alterna o estado ativo/inativo do agente

Deletar Agente

DELETE
/api/agents/:id

Remove permanentemente um agente e seus dados

Warning

A exclusão é permanente e remove conversas, mensagens e configurações vinculadas.

Vincular / Desvincular Trunk

POST
/api/agents/:id/link-trunk

Vincula um trunk SIP ao agente

ParameterTypeRequiredDescription
trunkIdstringRequiredID do trunk SIP
trunkTypestringRequired"inbound" ou "outbound"
phoneNumberstringOptionalNúmero para criar DID automaticamente
DELETE
/api/agents/:id/link-trunk/:trunkId

Remove vinculação do trunk

GET
/api/agents/:id/linked-trunks

Lista trunks vinculados

Tools do Agente

GET
/api/agents/:id/tools

Lista ferramentas associadas ao agente